A Healthy Hatred of OOP, or the principles of my message-driven framework - <AUTHOR> https://bythehilt.com/articles/dialogues-guiding-principles-or-a-healthy-hatred-of-oop <comment><USER3> Your essay is arguing against a strawman of what "good" OOP is supposed to be. Your examples...

 _> Objects just aren't supposed to be reaching into each other with 'getters' and 'setters' and messing with information. _

The getX() and setX() is an _anti-pattern_ of good OOP.

 _> Instead of using objects for compartmentalizing functionality, they were just used as a holding pen for loosely related functions. _

No, good OOP has class/object with _both_ private state and associated functions combined to provide a _public interface_ for clients to use.

(Although Java & C# (unlike C++) may have muddled this aspect because their language specification does not allow "free" functions to live in a plain namespace. Therefore, programmers are forced to use the "class{}" keyword with static functions as a workaround. Maybe that's where your "holding pen" characterization came from?)

 _> A traditional OOP approach uses shadowy architecture to remove the responsibility of an object,_

No, good OOP tries to _push responsibility_ into classes/objects so they can act as independent agents with minimal coupling to the outer context they sit in.

I'm guessing your comments are based on seeing a lot of poor practices masquerading as OOP which affects what you think OOP actually is. Unfortunately, it's like trying to argue against Javascript because of overuse of "eval()" or arguing the flaws of Haskell because variable names are often 1 character long.

There are definitely problems with OOP but they are not the bullet points you mentioned.

<comment><AUTHOR> >I'm guessing your comments are based on seeing a lot of poor practices masquerading as OOP which affects what you think OOP actually is

I personally feel that the current OOP model eventually devolves into the bullet points you listed given enough complexity.

One reason why I think this occurs is that there is no concept of a 'message' in OOP, only methods or functions of a class. There's explicit coupling even when calling a method with no arguments because you know the method is valid for that object.

Contrast this with the example of the 'listener' in the room. A speaker broadcasts his message but the independent agents ultimately decide what to do with that message.

The OOP approach calls "object->listen" on each listener. My approach simply broadcasts the message and lets the objects determine how to handle it themselves.

<comment><USER3> _> One reason why I think this occurs is that there is no concept of a 'message' in OOP, only methods or functions of a class. _

If you mean there is no formal/explicit OOP syntax in C++/C#/Java etc for a "message bus" or "queue" for a decoupled publish/subscribe type thing, you're right. Yes, Golang/Erlang have that concept a little more "baked" into the language.

But that's still orthogonal to the supposed OOP flaws you brought up.

The C++/C#/Java approach to the missing "message" functionality would be either to create a class with a managed buffer to "hold messages" for other classes to write or read from... or use a library that interfaces with an external messaging bus.

<comment><AUTHOR> >The approach to the missing "message" functionality would be either to create a class

Yeah, I explicitly covered this. I don't feel like piling some 'controller' object on top of other objects necessarily accomplishes what I'm after.

But it does work and I've used the pattern plenty.

</comment></comment></comment></comment><comment><USER4> The OOP referred to in this article is certainly a straw man, but the alternative suggested has problems too.

Teams that work well act almost like they're mind-reading one another. High quality orchestration of disparate parts is in tension with encapsulation.

Actor-based programming is highly concurrent but in my experience it's harder to reason about as it scales up. Emergent behaviour of interactions between hidden states is sometimes the goal, and sometimes an unwanted side-effect. Network protocols are tricky to get right for a reason; splitting everything out into a shared-nothing message-passing architecture isn't a panacea.

I lean more towards explicit but immutable data structures, and referentially transparent functions over those data structures. In this world, parallelism can increase performance without observable concurrency. Concurrency is the root of non-determinism; non-determinism should be avoided unless it's inherent to the problem at hand.

OOP is a middle ground in this world, but it's ill-defined. Depending on style, it can be stateful and imperative, functional or message-oriented. OOP is not an absolute bad; with effort, it can be massaged, or herded, into working patterns. But it's certainly not a universal optimum.

</comment><comment><USER5> _A traditional OOP approach would have much of the functionality taken out of the player objects, using them simply to hold state._

I don't agree with that characterization. The author certainly has a point that, in some languages in particular, like java, there tend to be massive over-decomposition of problems into reams of factories, controllers, controller factories and controller factory manager factories, but that isn't OOP, that's due to cultural and syntactic issues with those languages. (I know, I know, No True Scotsman.)

In the Rails world, which is a non-trivial component of the broader OOP software world, there is a saying: "Fat Model, Skinny Controller" which is much more in the spirit of what the author is advocating, despite remaining OOP.

Again, this isn't to deny the authors general point, but I don't believe it is bound to OOP, so much as it is to a certain style of OOP coding that arose from early (java in particular) over-engineering and excessive decomposition.

</comment><comment><USER6> I made up the term 'object-oriented', and I can tell you I didn't have C++ in mind

\-- Alan Kay, OOPSLA '97

</comment><comment><USER7> Joe Armstrong's thoughts on how Erlang is more OO than OO languages:

[http://erlang.org/pipermail/erlang- questions/2009-November/0...](http://erlang.org/pipermail/erlang- questions/2009-November/047748.html)

Joe likes to be funny, so don't get upset and confrontational about it.

The central idea is this I think:

\---

I now believe the following to be central to the notion of OO.

          - Isolated concurrent things
          - Communication through message passing
          - <USER2>

All the other stuff (inheritance, private/public methods, ....) has nothing to do with OO.

\---

<comment><USER8> FYI, Armstrong thinks that OO sucks [1] so it's weird to see him claim his language is a better OOP language than others.

[1] [http://harmful.cat-v.org/software/OO_programming/why_oo_suck...](http://harmful.cat-v.org/software/OO_programming/why_oo_sucks)

<comment><USER7> ... "Joe likes to be funny" ...

Besides this idea of taking a label away from something you don't like is also a good strategy in general. He obviously doesn't think Erlang should do multiple inheritance. He just points out languages that have been calling themselves OO these years have been impostors.

Also not sure if I mentioned, Joe like to make witty jokes. So don't take it too seriously.

</comment></comment></comment><comment><USER9> >> When I started learning C++ I was shocked. Instead of using objects for compartmentalizing functionality, they were just used as a holding pen for loosely related functions. Instead of communicating between themselves, objects were operated on by some bigger parent object. I found it absurd and fought it for a long time.

This has nothing whatsoever to do with C++. It's like blaming a microwave oven because your kid put a ball of tin foil in it.

C++ is a great language when you are developing big compiled programs and need strong metaphors for decoupling and modularity. Most developers today work on distributed systems where the individual cooperating pieces that they write are much smaller. Your 1000 line HTTP handler in python won't benefit much from strong static type checking, but the linux kernel does, and so do a lot of the infrastructure components we all take for granted every day.

<comment><USER10> The Linux kernel is written in C, not C++. C has static typing, but it is definitely not strong static typing.

<comment><USER9> Yeah I did not mean to imply that the kernel was written in C++. As to whether C is "strongly typed" or not that is a matter on which we can disagree, as there is no agreed-upon definition of what that means. In my view it certainly falls on the strongly-typed side of the line when compared to the languages most developers use today. The point of my response is that OO methods as embodied in C++ were a response to the growing complexity of compiled programs back when it was developed, and those principles definitely helped developers, including myself, get a handle on that complexity.

</comment></comment></comment><comment><USER11> One of the more ironic titles I've seen.

Alan Kay (progenitor of Smalltalk and OOP) has said on various occasions that it should have been called message-oriented programming, rather than object- oriented.

"I'm sorry that I long ago coined the term 'objects' for this topic because it gets many people to focus on the lesser idea. The big idea is 'messaging'"

[http://lists.squeakfoundation.org/pipermail/squeak- dev/1998-...](http://lists.squeakfoundation.org/pipermail/squeak- dev/1998-October/017019.html)

</comment><comment><USER12> The same thing happened with REST, TDD and Microservices, etc. The term gets hijacked by people that are less than skilled at executing it. And unfortunately there are more unskilled than skilled people in software; so usually the hijacked term wins the contest. It then takes decades of the "original guy" sending out a BBS message / IRC message / vBulletin post / Blog post / Tweet / HN comment / etc to try to correct people's understanding by saying "actually, that's not canon!".

</comment><comment><USER13> Comment on the code:

As a Lua aficionado I hate to see stuff like this:

      Ball = {}
      Ball.__index = Ball

      function Ball.new (x, y)
        local table = {}
        setmetatable(table, Ball)
        table.x = x
        table.y = y
        return table
      end

Explicit setmetatable() call and manual __index setting? You can automate this and hide all the metatable magic = less code to write, less potential for bugs.

E.g. in my own Lua object system the above would be:

      Ball = Class()

      function Ball:Properties(x, y)
        return { x = x, y = y }
      end

</comment><comment><USER14> I think that we suffer from a paucity of precise language around OOP. Everything is OOP, everything is what Kay created, etc.

But that's clearly not the case, and so people have these radically divergent systems of programming within the framework of "object orientation".

My read of this article and it is very message-passing OO to me. Its broadcast mechanism is interesting, for sure. But it reads a lot like Erlang's supervision tree without all that troublesome thinking about a network.

But it's approach is still very "OO".

</comment><comment><USER15> The downside of message passing is debugging. No call stack so you can't trace things back to their source.

<comment><USER16> An agent framework I built for my AI research has exactly that.

I use an additional message parameter, automatically inserted and maintained by the framework, which is a list of the messages (FIPA style operation + parameters) from the originating agent forwards to the point of debugging. This gets voluminous and is gated by debug levels.

<comment><USER17> Same here. The framework I've been building over and over for various companies for the past 20 years has extensive debugging capabilities. With the right 'messages all the way down' mindset, it gets extremely powerful.

</comment></comment></comment><comment><USER18> The only good thing that OOP brings to the table is, in my opinion, access control.

<comment><USER19> Also referred to in this context as encapsulation. OOP provides a method of information hiding that allows implementation details to be changed later without changing the public API.

<comment><USER20> one downside being that you risk creating obscured islands of mutable state, complecting engineering efforts.

<comment><USER19> I view that more as a risk of using mutable state, not OOP. Regardless, I'd rather have the mutable state contained in as limited a scope as possible.

</comment></comment></comment></comment><comment><USER21> Isn't this basically event driven programming?

</comment><comment><USER22> _> Objects just aren't supposed to be reaching into each other with 'getters' and 'setters' and messing with information._

In pure Actor Model adding two numbers would probably involve 2+ actors, yet Erlang is not doing this for some reason... I guess on a lower level hardcoding messages makes complete practical sense.

</comment><comment><USER23> Some meta feedback on the article: this font is too big to comfortably read on mobile, fitting about five to seven words on a line (the typically recommended line length is about 14 words).

</comment><comment><USER24> How does this make fp? If we fill fp with plugs for 1 man projects with 1 watcher we'd have 1000s of entries a day.

</comment><comment><USER25> The less actual code I see in articles like this, and the more abstraction I read about, the less I take the concept seriously.

In fact, all of this seems like bullshit to me. The actual code inside of the repo is, well, object-oriented. How I interpret this is that the author seems to have no idea what they're even talking about, and that they write more about code than they write code itself.

Show me what you mean, don't just talk about it.

<comment><AUTHOR> I should have a tutorial out very soon. The documentation is not yet complete but does have a few examples.

Also, of course it's object-oriented. The article is titled a "healthy" hatred for a reason.

<comment><USER26> I just have one smallish question. Is the need to bench then add an actor the only way you "allow" transfer of children between parent actors?

In similar systems that I have constructed in the past, I have used a number of methods for passing actors in different states.

Pass a fully instantiated actor via a transfer process. Nothing changes for the actor, beyond reassigning parentage.

Pass a cleaned actor via a similar process to the bench and add process. This was used to allow an actor to be reduced to a resting state as it were. In most cases you could think of it as a resurrection method that allowed discarded actors to be reinstated with only specified base properties in place.

Anyway, I don't use Lua at all, but I like these type of actor messaging models. I look forward to reading through the rest of your documentation once it's done.

O.

<comment><AUTHOR> >Is the need to bench then add an actor the only way you "allow" transfer of children between parent actors?

Currently, yes. Since this is sort of an entity component system and that actors can always create more children anytime they want, I suppose I just always assumed that actors could be "spun-up" with any sort of functionality and then deleted when not used.

Benching/Joining an actor is more for handling errors at runtime or for debugging ("If I temporarily remove this actor will it solve my issue?").

</comment></comment></comment></comment><comment><USER27> TLDR: Terrible programming practices end up putting blame on labels and languages.

</comment><comment><USER28> The more I read about functional programming the more I question why are things this hard in traditional oops. If so many people have been doing oops for so many years then it must have something that is easy to pick up or something that is easier to work with. But after doing some functional programming the number of lines are painfully less and the code is easier to understand. I was thinking may be I was giving too much credit to FP but I was not it's simply just the way things are. But why has FN been used only as an academic tool and not as a goto programming paradigm? Can someone shed some light on this?

<comment><USER29> Broad generalizations here, but from my understanding -

Back in the dark ages, the performance difference between imperative code and functional code was too large for FP to gain much traction outside of academic circles.

By the time the hardware was anywhere near reasonable, OO had become a thing. People missed some of the key points Alan Kay had, latching on to the one thing that was immediately understandable: objects could model the nouns of your problem domain. That popularity meant that the mainstream was focused on OO, rather than FP.

I went through college in the late 2000s, at a well respected university, for computer science. I had classes devoted to OO(A/D/P); I had none devoted to FP. If you were exposed to it, it was via having to learn a Lisp in the AI class, or similar.

<comment><USER28> Okay. That's a great way to put it.</comment></comment></comment>


Ask HN: Best places to work in NYC as an engineer? - <AUTHOR> Curious what companies someone with 3-5 yrs experience should look at.  Key criteria are strong teams to learn from and a culture of mentorship (comp is important but second tier).<p>Thanks for any suggestions. <comment><USER2> If you are looking for growth, I've heard 8 Sleep (a YC alum) is hiring at all levels. Could be a great time to get in early ;)</comment>


Airlines crack down on 'mileage runs' - <AUTHOR> http://seattletimes.com/html/travel/2024565123_airlinemileagerunstravelwisexml.html <comment><USER2> The House doesn't like to be gamed. It's no different than a casino in Vegas - if you figure out how to beat The House, they change the rules (or the direction your knees bend).

If it feels like you're getting a deal, that hole will eventually be closed.

<comment><USER3> This reminds me of my buddies beating a casino. It goes like this:

Play roulette, start with a low bet ($5) on black or white (50/50). If you win, you've profited the amount of the original bet. If you lose, double your bet and play again. Repeat until you win and you will have profited the amount of the original bet. Repeat.

This works so long as you have enough cash to keep doubling the bet. Hitting the maximum allowed bet on the table is not a problem, you just split it in half and keep going.

My buddies at one point had ~$60k on the table, and didn't have enough to go to ~$120k if they lost...

They did this for about two weeks straight, profiting something like $10k. One morning when they tried to enter the casino, the guards at the door said they were not welcome, and if they didn't leave immediately the police would be called. They assume they had been spotted on camera, or the table operator reported them.

<comment><USER4> The Martingale simply does not work. An infinitely wealthy gambler employing this strategy over an infinite time horizon on a fair game has a neutral expectation. For every gambler who comes out ahead, another one comes out behind. Additionally, real life gamblers aren't infinitely wealthy and casino games are negative expectation.

If it "works" for you, you're just the survivor bias.

<comment><USER5> > For every gambler who comes out ahead

That's only true in games where the only winnings are the bets of the players. Roulette, and blackjack, is different because your winnings on success are set and paid by the house.

<comment><USER6> He's not saying that there is _literally_ one winner per loser, but that statistically the group of winners and group of losers will be about the same size, for a fair game.

</comment></comment></comment></comment></comment><comment><USER7> Avid mileage runner here. It does seem like the end of an era, though there are still some smaller loopholes available to be exploited for cheap status.

For example, for Star Alliance flyers, until recently (yesterday in fact) you could achieve Star Alliance Gold status (priority check in and boarding, free checked bags, first to be upgraded, last to be bumped, lounge access, etc) for cheap by registering for Aegean Airlines' loyalty program as they only required 20k miles to achieve Gold status whereas most other Star Alliance partners require 50k. You could also keep this status for 3 years as long as you logged some miles each year (other airlines require you make the 50k level every year.)

Yesterday Aegean too announced revisions to their loyalty program which pretty much put an end to this. But there are still other loopholes in other airlines' programs being rooted out by the dedicated.

<comment><USER8> The trick I've used to get Star Alliance Gold really fast is to hop up using status match challenges.

Find any _non-Star-Alliance_ airline where you can get silver status easily; and email firstname.lastname@example.com. They'll probably give you gold status immediately, and you have 3 months to fly 12,500 miles to secure it through the following year.

FoundersCard right now has the benefit of instant silver status on Cathay Pacific (OneWorld), no need for any flying. (Email me if you're interesting in a referral link.)

Using this method, the only cost to getting gold status is (1) FoundersCard membership dues (easily pays for itself with other discounts), and (2) a round-trip to Europe or Asia, plus maybe a domestic flight to round up the miles earned.

<comment><USER9> Note that most airlines now limit you to one status match per lifetime.

</comment></comment></comment><comment><USER10> They are missing a huge point when it comes to Mileage runs. The majority of people doing mileage runs are not trying to earn miles to spend, they are doing it in order to make the next level of status.

For United the benefits of 1k might be much greater than Platinum (the next level down), so if you are only 5 to 10k miles away you would do a mileage run.

The article also fails to mention that United has not changed the way you earn status. It is still miles traveled and mileage runs (assuming you have spent enough during the year) are still viable

<comment><USER11> That -- the quest for the next level of status -- is exactly what the article focuses on, so they didn't really miss it. And it explicitly mentions that the status levels now require a minimum spend in addition to a minimum of miles.

</comment></comment><comment><USER12> _Shudder_ \- you'd have to pay me more than $500 to spend a weekend on an airplane. It's very tiring holding the things up by the armrests :-/

<comment><USER13> If you are 25 years old, this is how many weekends you have left in your life (on average):

[https://i.imgur.com/MA3YeuX.jpg](https://i.imgur.com/MA3YeuX.jpg)

Let's spend one on a plane so that we can make it into the gold lounge and get free yogurt-covered raisons!

<comment><USER14> I'll gladly trade a single weekend for ~2 years of priority boarding and automatic first class upgrades.

<comment><USER15> What's the appeal of "priority" boarding? First one on the plane? Yay!

<comment><USER16> It's a reasonable question, and it's one of the things about airline status that I actually value a lot, so here's an attempt to answer it.

First, if you have carry-on luggage and the flight is full, this guarantees you access to overhead space. That can be a big deal. Having to gate-check your bag can be irritating if you've got things in there that you need, and the longer the flight, the more important this is.

Second, at least on Delta, the people who board priority have a separate line. That line continues to exist even after general boarding starts. The upshot is that, even if you board with everyone else, you can cut the line and not have to stand around waiting. If you prefer sitting down to standing in a line, then this is valuable and good.

Third, and related to #2, boarding early means you're likely boarding with other frequent travelers. Those people are better to board with because they are quicker and more efficient, on average, about things like clearing out of the aisle, getting settled, etc. This means less waiting around and being jostled in the aisle.

All of this adds up to a much more pleasant experience.

<comment><USER15> Thanks

</comment></comment></comment></comment></comment></comment><comment><USER17> That's kind of a bummer. I have read about some of these tricks before. It's not something I would personally do since sitting on a plane for an entire weekend just to get points sounds like a special kind of torture. Yet it was nice knowing that there were people out there willing to do it just to game the system.

</comment><comment><USER18> I would love to see a study of whether it is more cost effective to be loyal to an airline and collect miles or to just always buy the cheapest flight.

I imagine that the occasional free flight on non-blackout dates doesn't make up the cost difference of always choosing the cheapest flight but I have no data to back it up.

<comment><USER19> Collecting miles isn't necessarily focused on earning free flights. The tiered statuses offered by most airlines include a variety of other perks that can make them attractive, and that couldn't readily be achieved via lowest-bidder flying: dedicated lines at airport security, advance boarding, free upgrades, free bags, waived fees, greater flexibility to change a ticket, dedicated customer support numbers, etc.

While some of these can be purchased as one-offs, the cost of doing so would probably offset the "cheapest flight" approach, and the convenience of receiving them automatically has some value on its own.

The cost/benefit might still not be there, but it's not as straightforward as the ticket savings vs. free flight savings question you put forward. You have to also bear in mind that many miles hunters are logging some (or most) of their travel on an employer's dime.

<comment><USER20> Those "benefits" basically amount to an easing up of the legacy airlines' prison-camp style. Why would one want to reward that instead of simply choosing the airlines that treat you more like a person to begin with?

</comment></comment></comment><comment><USER21> This is a shortsighted mistake that is costing airlines something very important: loyalty. Anyone who frequents FlyerTalk or other airline related sites knows that frequent flyers are switching away from the devalued and decoupled miles airlines because of the changes.

Cracking down on milage runs is one thing. It makes sense for airlines to price flights according to their value (including rewards value). But tying rewards to spending instead of miles is a mistake. Many people like myself will just move to airlines who still reward their travelers well.

<comment><USER22> Two things: firstly, the analysis I've seen suggests that some kinds of business travels lose and some gain, depending on the travel patterns -- in particular, frequent short-duration flyers (e.g., people who commute from DC to NYC twice a week) gain, while infrequent long-distance travelers (e.g., people racking up miles going NYC to Shanghai a few times a year) lose. So maybe the airlines think they'll one class of traveler for every one of another class that they lose?

Secondly, the overarching assumption is that American (and its alliance) will follow the other major players and switch once the merger is done, at which point there won't really be anywhere to go, at least for people mostly traveling domestically in the US. They control the market.

</comment></comment><comment><USER23> Hardly sounds like a "crack down", more like closing a loophole. And, frankly, it seems like a loophole that needs closing - the airlines were essentially paying people to take longer flights.

</comment><comment><USER24> I find long-haul cheap flights so miserable that, honestly, anyone who's prepared to do this for the miles I think deserves them. I can't say I'm a big believer in money for its own sake, but if there's one thing I'd want it for it's business class. My god.

</comment><comment><USER25> > The last point is essential. Leff told me about a mileage run he took in > 2003. United ran a promotion where its elite fliers could get five-times > bonus miles, instead of the double miles they were ordinarily entitled to. > So he flew round-trip to Singapore for $700 and pocketed around 100,000 > MileagePlus miles, then enough to redeem for a round-trip business class > ticket to Europe.

Last time I looked, domestic one-way business class reward seats were going for 25,000 points on MileagePlus, and that's their "Saver" reward, which isn't available as much as their "Standard" reward, which is 50k each way for business class.

So it sounds like United is trimming your ability to accrue miles, but also requiring more miles to earn a seat.

</comment><comment><USER26> Classic case of Adverse Selection: [http://en.wikipedia.org/wiki/Adverse_selection](http://en.wikipedia.org/wiki/Adverse_selection)

</comment><comment><USER27> I always liked that the reward for mileage runs was... getting to fly some more!

</comment><comment><USER28> This is great. I fly because I need to get somewhere, not because I'm trying to game the system to board ahead of the other travelers with my elite status or "earn" bonus mile tickets which just adds extra ticket costs for all of the rest of us.

</comment><comment><USER29> I don't get it. What does an elite status really buy you? If I had to fly somewhere and had an extra $500+ for an extra "miles run" I sure as hell would find a more entertaining way to spend it than to take an entire weekend to fly around. How many of these runs would you have to do to justify it, and is it worth it?

Edit: I should ask it this way: how much do you have to pay directly to get all the perks Elite status gives you? Can you buy Elite status for $500? $1,500? This is as opposed to how much do you have to spend on extra tickets you don't need to get the upgrades? Basically, I assume that it's cheaper to buy extra tickets and fly around, than to buy the status directly (otherwise people wouldn't do it). The question is how much cheaper is it?

<comment><USER30> It depends on the airline. A few years ago, when I used to fly and average of at least one round trip per week, including many from the US to Europe it would get me: \- Free domestic upgrades to business class \- Access to showers in the airport, behind security \- Hot food and free drinks in the lounge \- Priority access for boarding and no baggage charges \- Early access to seats for reward usage (including transatlantic business class upgrade) \- Access to excellent ground agents to help adjust itineraries, including frequent waiver of change fees \- A nice quiet place behind security to wait during layovers

That was basically SA gold. If you are higher tier (e.g. LH HON Circle), then add things like free full service restaurant and private passport control to the list.

</comment></comment><comment><USER31> Do you have to actually take the flight, or is buying the ticket enough?

<comment><USER32> Modern "mileage runs" require the travel to actually be completed.

In the late 1990s/early 2000s, people used to go on "baht runs", buying a cheap Thai Airways airpass that allowed many segments of intra-Thailand travel for a very low price, and earning many "qualifying segments" on TG's partner carriers, allowing people to make top-tier United status for under $1000 (by getting 100+ qualifying segments).

There were reports that some people didn't actually fly the trips (e.g. supposedly some people paid locals to board with their boarding passes).

These days, like the "pudding guy" and the "buying Treasury bonds with credit cards" and the "dollar coins", are over.

<comment><USER17> I remember reading a story where a guy was paying people in some Asian country to take flights for him so he could get miles. I recall it working out for him.

</comment></comment></comment><comment><USER33> Seems like a very odd way to spend your time and money. I would argue that the same amount of effort spent trying to make more money would likely pay off better in the long term.

</comment><comment><USER34> This is sadder than sad</comment>


Florida used to be where Americans came to die. Now it smells of national decay - <AUTHOR> http://www.spectator.co.uk/2017/02/i-went-to-see-disney-world-and-saw-a-dying-country/ <comment><USER2> The article starts out talking about Florida, but ends just talking, in a very opinionated way, about President Trump. The title is misleading, and I don't see what this has to do with the focus of hackernews.</comment>


AT&T GigaPower coming to Cupertino, CA – 1 Gbps to home - <AUTHOR> https://medium.com/@ATTPolicyCA/at-t-gigapower-comes-to-california-and-speed-is-just-the-beginning-41c60cc053e9

<comment><USER2> "Article" aka advertisement written by "President of AT&T California".

No mention of download caps. Will they exist? At 1 gb/s a customer can blow thru a 150 GB/mo cap in 20 minutes. It's going to be a very very long 29 days 23 hours and 40 minutes until that next IP packet makes it through.

Fortunately I'm on Comcast (hey, they're better than ATT). And I don't know if ATT did ever implement a cap. But here's [1] an article from a few years ago where they were certainly planning to do it.

[1] [http://www.wired.com/2011/03/att-dsl- cap/](http://www.wired.com/2011/03/att-dsl-cap/)</comment>


Show HN: Between – Screens. A code / design micro-podcast - <AUTHOR> http://betweenscreens.fm/

<comment><USER2> the pagination is a little wierd, but thats fine.

also, is there supposed to be a 2-3px thin white line in the top of the site? or is it just because of firefox

<comment><AUTHOR> Hey,

thanks for the feedback! Already thinking of ways to make the pagination less exotic :)

The white line on top is by design. Good eye!</comment></comment>


Faceless Together: Understanding 4chan - <AUTHOR> http://kazerad.tumblr.com/post/96020280368/faceless-together <comment><USER2> A nice little writeup.

One of the interesting bits:

 _Of course, the consequence of this is that 4chan is completely depraved by normal societal standards. Without the pressure to conform, it turns out people are naturally pretty weird. But, you know, they live it. It's a culture where nobody is really shamed or hurt for the things they enjoy. Someone can try to shame them, but it's not going to have any effect and it's usually more of a joke.

The other consequence of this - and the one that probably scares the most visitors away - is that people can't really be shamed for being what we would consider horrible people. Someone can be flagrantly racist, homophobic, misogynistic, or whatever, and you can't really harm them. All you can do is talk to them. Things that would garner death threats on Tumblr or Twitter tend to be short, comparatively nonconfrontational exchanges on 4chan. With many people from Tumblr or Twitter, that does not sit well._</comment>


Quitting Gmail: any way to create a searchable archive of my gmail mbox? - <AUTHOR> https://old.reddit.com/r/privacy/comments/c03qeh/quitting_gmail_any_way_to_create_a_searchable/ <comment><USER2> Claws Mail.

I have all my email since circa 1996 right here in my ~/Mail directory, something like 60+K messages accessible through Claws Mail, which is probably the fastest around both to operate and to do searches with. I've changed my mail accounts several times in the past but kept in subdirectories all the old mail, which got indexed automatically, so I can search both my current mail archives and the 20+ years old expired ones in a breeze. Backing up is just a matter of copying recursively the ~/Mail (mail archive) and ~/.claws-mail (accounts, address book, filters etc.) directories somewhere.

[https://www.claws-mail.org/index.php?section=general](https://www.claws- mail.org/index.php?section=general)

[https://www.claws-mail.org/win32/](https://www.claws-mail.org/win32/)

</comment><comment><AUTHOR> The issue with making email inboxes available for searching becomes even trickier when encryption (PGP/SMIME) is involved. Does anybody have a viable solution online/offline for this scenario?

<comment><USER3> The only solution I can think of is that your index is stored encrypted, but it has the ability to read and decrypt all your encrypted mail, and store that internally the same as any other email.

</comment></comment><comment><USER4> Mailstore Home. It's free

</comment><comment><USER5> Download them and import into thunderbird and use the built search.

<comment><USER3> From the request:

> 2) Import this into some kind of database that I can easily search whenever > I need to [hence not just a local copy on Thunderbird for example

Presumably the OP wants to be able to search when remote from the thunderbird instance.

<comment><USER6> I just VNC into my machine at home, can even do it from a phone using something like bVNC.

I use Eudora for checking, searching and non cloud archiving, then Gmail as a spam filter and the basic view for sending the odd email.</comment></comment></comment>


ReadSpeaker  O'Reilly - Highlight Text & Click Speaker Icon to Listen - <AUTHOR> http://radar.oreilly.com/2010/03/the-second-netflix-challenge-a.html

<comment><AUTHOR> powered by <http://www.readspeaker.com/>

this or other tech could make web accessibility really happen - also makes web surfing much easier esp. on long pages.</comment>


Joining the MIT Media Lab - <AUTHOR> http://joi.ito.com/weblog/2011/04/25/joining-the-mit.html

<comment><USER2> Wishing you all the best.</comment>


Most Millennials Would Throw Work Friends Under the Bus for a Promotion - <AUTHOR> http://www.businessweek.com/articles/2014-07-09/most-millennials-would-sacrifice-a-work-friendship-for-a-promotion <comment><USER2> The article implies that Baby Boomers are more virtuous, however I'd contend that those same people wouldn't have been so virtuous when they were 18-24.

Loyalty from the 18-24 age-group is difficult to come by, regardless of which generation they belong to.

Now, the article fails to mention _who_ the subjects of the study were betraying -- their Millennial peers, or non-Millennial ones? I would hazard to guess that most Millennials would happily betray their Boomer co-workers, perhaps even gleefully (schadenfreude?) -- _and vice versa_.

The question is open to interpretation even more -- Millennials count potentially _everybody_ as a "workplace friend" (due to a far larger pool of competition), whereas Baby Boomers generally have only themselves as workplace friends.

<comment><USER3> This might out me as overly cynical, but I'd go a step further and say that baby boomers don't have to throw coworkers under the bus because our younger generation got collectively thrown under the bus by our/their politicians already.

<comment><USER4> That's a little harsh. The job market has changed, there is less of a hierarchy for people to climb. Thanks to technology. There is more competition for the better jobs thanks to globalisation.

These are two things which are not the fault of boomers.

Millennieals need to innovative out of their situation, change the game. Something like their own political party.

</comment></comment></comment><comment><USER5> From the article:

 _First, job-hopping millennials proved disloyal to employers, and now apparently they're also disloyal to each other._

I would say, first employers proved disloyal to their employees . . .

The rest is just a rational response to a changing work environment and culture.

<comment><USER6> Yeah, that line stood out to me as well. I'd love to stay with one employer for a long time, but doing so now is just shooting yourself in the foot. From what I've seen, the best way to increase your salary is changing employers, maybe if raises weren't always so meager this wouldn't be the case.

</comment></comment><comment><USER7> News flash: people early in their business careers make different tradeoffs than people late in their careers.

</comment><comment><USER8> Not untrue, but it's important to note that in many cases 'workplace friend' is basically 'someone they made me sit near that I feel share some interests'. Not exactly someone you'd invite to your birthday party.

</comment><comment><USER9> The question can be interpreted in many ways. I could think that a friend who is making me choose between them and a promotion is not a friend worth having.

<comment><USER10> It's not always the friend that makes you choose.

Suppose Al and Bob have been accepted to ycombinator. Things don't work out very well and 1 month out from demo day they're pretty sure they are going to bomb. Al gets a spectacular employment offer -- contingent on a start date before demo day. Bob doesn't. In fact, Bob has faith that they'll be able to make <metric of the year> if they try hard enough. Through no fault of Bob (and possibly no fault of Al), Al now has an incentive to throw Bob under the bus.</comment></comment>


TPP negotiations threaten to forcibly commercialise state-owned bodies - <AUTHOR> https://www.thesaturdaypaper.com.au/news/politics/2015/07/30/tpp-negotiations-threaten-forcibly-commercialise-state-owned-bodies

<comment><AUTHOR> From [http://www.huffingtonpost.ca/2015/07/30/tpp-canada- cbc_n_790...](http://www.huffingtonpost.ca/2015/07/30/tpp-canada- cbc_n_7905046.html)

 _".. foreign entities could sue the government of Canada for subsidizing a Crown corporation if that foreign entity can prove it's at a competitive disadvantage because of those subsidies ... State-owned corporations "are almost always state-owned because they have functions other than those that are merely commercial, such as guaranteed access to important services" or social and cultural functions ... "The very mission of the CBC – telling the bilingual and multicultural story of Canada – will be reduced to simple profit making."_

TPP negotiations are scheduled to conclude today. There will be a live- streamed press conference in ~15 hours, [https://ustr.gov/tpp/maui- livestream](https://ustr.gov/tpp/maui-livestream)

<comment><USER2> Curiously enough a friend in Germany got _" Live straming is not available in your country due to licensing issues"_ error on this video. As he said, `pretty [much] sums it up'.

</comment></comment><comment><USER3> I have followed news about the TPP for a while, since this great cartoon [1] grabbed my attention a few years ago. Without exception, coverage since then has been negative, describing a collection of rules that will benefit large corporations at the expense of just about everyone, the OP's article just being the most recent. I have tried finding articles in favor of it, just to get a more balanced perspective, but no luck.

How one earth is this thing still going forward? Is there any hope of stopping it?

[1] [http://economixcomix.com/home/tpp/](http://economixcomix.com/home/tpp/)

<comment><USER4>
      How one earth is this thing still going forward?

I wrote to my MP about it. He said "UK has already signed 91 trade deals using the same kind of [investor-state dispute resolution] [...] many people who are against TTIP are actually against free trade. This is crazy."

Personally I didn't find that a very convincing argument, but there you go.

<comment><AUTHOR> The scope of the new (TPP/TTIP/TISA/RCEP) trade treaties are much broader and include new disputes related to fast-evolving digital rights, which cross borders more easily than slower moving, geographically tied industries like farming.

Here is a list of pre-TPP ISDS disputes between corporations and countries, in the areas of health, climate, energy, finance, environment and essential public services: [http://www.isdscorporateattacks.org/#!attacks/c1cm0](http://www.isdscorporateattacks.org/#!attacks/c1cm0)

Now imagine ISDS applied to copyright, software patents, data sovereignty, banking and payment regulation, and much more.

</comment></comment></comment><comment><USER5> In a way, these developments are not historically surprising. If you look at the gradual process of state consolidation in Europe since the Industrial Revolution, you'll see a pattern of changes in law that were done in the interest of expanding trade interests. Places like Italy or Germany _had to integrate_ if they wanted to compete with states that could better exploit industrial economies of scale. Economic interests were powering national movements in most countries.

Now this process is happening at a higher scale. We are moving towards a fully-integrated system where industrial interests can reach the farthest corners of the world. It has to be expected that they would drive legislation towards harmonization. In fact, in some ways this is a good thing: if European companies can compete with US ones on a level playing field, it's better for everyone.

The problem is that political representatives are not properly exploiting this historical chance. These compromises are being done "towards the bottom" of available choices, consistently choosing options that would reduce rights and quality of life of average people on all sides. EU single-market integration was a similar process, and has delivered improved standards in many areas of life (note: I'm not talking about the Euro, but EU-wide regulation on safety, worker rights and so on); TPP looks like a simple money grab, a rush towards dismantling what is left of European-style welfare.

This is doubly disappointing because this sort of chance doesn't come along every year or even every generation.

</comment><comment><USER6> ...but it is still OK for the US to subsidise agriculture.

</comment><comment><USER7> These treaties are just an hostile takeover of the corporate world on our fake democracies.

But yeah we can still vote for the best presidential liar ... huh ... candidate. So good to be free.

<comment><USER8> If you like your doctor...</comment></comment>


Researchers launch tool to understand spread of fake news - <AUTHOR> http://sciencebulletin.org/archives/8482.html <comment><USER2> There is no such thing as fake news!</comment>


Show HN: PHP Compressed Strings Library - <AUTHOR> https://github.com/orware/compressed-string-demo <comment><AUTHOR> Most users on HN might not be too interested in a Library such as this (and I must admit the demo page I'm linking to above probably doesn't do the best job of explaining the background or utility of such a package), but hopefully a few of you will find it interesting.

As I mention in the page, I was drawn to the issue when I noticed how much memory was being used when I pulled a large data set from one of our Oracle databases here at work and I thought to myself, "Self, is there any better options?".

My main goal with the application I'm still working on, is to create a database proxy API (so I can submit a JSON request to this PHP application with an actual SQL query, that could then prepared/sent to the Oracle database and the results returned as JSON back to the user). Lots of security-related stuff I'm working on as well to make it happen in a way that won't cause any issues for the database, but this particular subproblem related to memory usage took up a few weeks of my time as I looked into and experimented with using JSON strings directly, and then into GZIP strings (particularly because GZIP was going to be the final output in most cases with Content Negotiation).

All in all it was pretty fun to build the package and just run various performance tests so if you have any questions feel free to ask and I hope someone might be able to use this in their own projects too :-).

Enjoy!

<comment><AUTHOR> One other thing to add...in creating the demo I wanted to use the Shakespeare JSON data set that someone had shared at some point on here (they had shared the link).

I ended up having a bit of difficulty using it at first because it had some extra tab characters throughout the file and PHP's json_decode() function didn't quite tell me exactly where the problem was.

Other tools didn't seem to be useful either (online validators are only for small files typically and don't allow file uploads) and even Notepad++'s JSON related plugins didn't seem very helpful.

I finally ended up using the JSON Streaming package available for PHP which allowed me to run through the file and identify some of the offending lines.

Then I noticed a pattern of the tab character not being escaped in the line strings and just did a mass replace/removal of the tab characters in the file which then allowed me to create the sqlite shakespeare.db file included in the repository.

This by itself might be useful for others to use as well in their own projects :-).</comment></comment>


New study blaming warming on disrupted Atlantic flow has scientists "grumpy" - <AUTHOR> https://arstechnica.com/science/2018/07/new-study-blaming-warming-on-disrupted-atlantic-flow-has-scientists-grumpy/ <comment><USER2> The RealClimate.org piece is a very nice piece of scientific prose; I enjoyed the historical preface. The scientific discussion was clear enough that I could get an overall sense of the field but specific enough that I know where to look if I want to make a deep dive into any one of the various related claims: [http://www.realclimate.org/index.php/archives/2018/07/does-a...](http://www.realclimate.org/index.php/archives/2018/07/does- a-slow-amoc-increase-the-rate-of-global-warming/)

More generally, though, climate science makes me queasy. I'm more than happy to accept the dominant theories and sort of understand that there's a lot of people who understand enough of the related science to have an informed opinion, but I feel like it would take at least a Ph.D. and a postdoc before I could really get to that point. There are just _so many_ complex systems in play.

<comment><USER3> If you want to take a deep dive, the IPCC is the place to be : [https://www.ipcc.ch](https://www.ipcc.ch)

> The Intergovernmental Panel on Climate Change (IPCC) is a scientific and > intergovernmental body under the auspices of the United Nations, set up at > the request of member governments, dedicated to the task of providing the > world with an objective, scientific view of climate change and its political > and economic impacts. It was first established in 1988 by two United Nations > organizations, the World Meteorological Organization (WMO) and the United > Nations Environment Programme (UNEP).... The IPCC produces reports that > support the United Nations Framework Convention on Climate Change (UNFCCC), > which is the main international treaty on climate change. IPCC reports cover > "the scientific, technical and socio-economic information relevant to > understanding the scientific basis of risk of human-induced climate change, > its potential impacts and options for adaptation and mitigation." The IPCC > does not carry out its own original research, nor does it do the work of > monitoring climate or related phenomena itself. The IPCC bases its > assessment on the published literature, which includes peer-reviewed and > non-peer-reviewed sources. Thousands of scientists and other experts > contribute (on a voluntary basis, without payment from the IPCC) to writing > and reviewing reports, which are then reviewed by governments. IPCC reports > contain a "Summary for Policymakers", which is subject to line-by-line > approval by delegates from all participating governments. Typically this > involves the governments of more than 120 countries.

</comment></comment><comment><USER4> The tl;dr of the article. If the oceans conveyor belt currents stop it could lead to an even warmer Earth rather than an Ice age as is often predicted.

<comment><USER5> Is the grumpiness related to the reduced impact of human activity on global temperatures in this model?

Or maybe more a response to the press's general tendency to report new studies as significant before there's consensus or even a chance for others in the field to fully evaluate the claims.

<comment><USER6> It's not a model. It's a correlational study.

> Most of Chen and Tung's evidence for this comes from laying Atlantic > circulation data next to global temperature data and noting that it looks > like temperatures rose more quickly during periods when circulation slowed.

<comment><USER7> Correlation does not imply causation.

<comment><USER6> That was, indeed, my point.</comment></comment></comment></comment></comment>


Unions Did Great Things for the Working Class - <AUTHOR> https://www.bloomberg.com/view/articles/2018-06-13/unions-did-great-things-for-the-american-working-class <comment><USER2> I've noticed a begrudging realization among those that sit around and think about these things that maybe unions were not as bad as we made them out to be.

Sure, they have some inherent inefficiencies. Sometimes certain ones become corrupt (Corporations become corrupt all the time, but nobody calls them a cancer to Capitalism).

But over all, there's the sinking realization that capital owners are a lot more cruel (Amazon warehouses), comically greedy (cutting already meager welfare programs) and unimaginative (Juicero, stock buybacks instead of new products) than we thought capable. All of a sudden all this money flowing to the very top looks like a tremendous waste.</comment>


Around 62% of all Internet sites will run an unsupported PHP version in 10 weeks - <AUTHOR> https://www.zdnet.com/article/around-62-of-all-internet-sites-will-run-an-unsupported-php-version-in-10-weeks/ <comment><USER2> We converted several old PHP-5.x apps to be 7.x-ready about a year or more ago. The apps had various authors and various levels of maintenance over the years. (By and large they were internally used apps at a large institution which is why one app could be very different from another app.)

If you have been dreading a transition, don't sweat it. From our experience, it was easier than a developer might think when they first open that old PHP codebase. Oh, and the speed increases the benchmarks promised are real. Even the bad apps saw a noticeable speed increase.

<comment><USER3> I will second that it isn't very painful at all. Longevity is one of the strengths of PHP, it is not hard to find continuously operational PHP codebases that are 15 or more years old.

Those codebases are often hideous but they've been getting stuff done, and that's admirable.

Generally when updating a codebase like that, it's important to also make sure that passwords are being stored securely, SQL queries are using prepared statements, and XSS/CSRF protections are in place, and a protocol is set up for keeping up with new PHP versions. Then hopefully it will be ready to go back to minimum maintenance mode for some more years.

</comment></comment><comment><USER4> I completely recognize myself in this post, when it stated that hosters will provide clients the last version for new hosting and change version when asked.

But if you think that explaining clients that there are new versions and they should upgrade works, think again !

I still got 6 or 7 websites I'm hosting with PHP5.2 ! And I know they won't work as it if I migrate them on 7.x.

For the last 2 years I'm pushing them to update the code. But they won't, as it's websites done by agencies that don't exists anymore, and it has suits them for years so why change ?

So what do I do ? I can't shut them (as they sure won't like it and might send their lawyers after me). I can't refuse to host them (as they are already clients and, in France, it's difficult by law to refuse to sell to someone).

Of course my hosting contracts should have been better 18 years ago and it's mostly the fault of the young me.

But here I am. My best solution would be to make the changes by myself under their validation. And no one will pay me for that.

<comment><USER5> You can increase the price for old php versions due to the increased risk of security issues and be transparent about it. Once you become too expensive they will either update or move away.

<comment><USER4> That's a great idea, thanks !

</comment></comment></comment><comment><USER6> This is misleading. PHP 5 may have its support by PHP developers end, but it will still be supported by distributions like RHEL, CentOS, Debian 8, and Ubuntu 14.04 where the support doesn't depend on PHP developers.

<comment><USER7> Debian no longer supports Debian 8, although the commercially funded Debian LTS project run by the consultancy Freexian provides a lower level of best- effort support into 2020.

And Ubuntu 14.04 won't be supported past next April, which while more than double the 10 weeks discussed in this article isn't all that far into the future.

Beyond those two details, you're right.

The broader point remains that support for older PHP will degrade rapidly from this point forward, even if a bit of it lingers on for a handful of years.

</comment></comment><comment><USER8> Agree with the WordFence guy. It's more likely that attackers will target PHP apps rather than PHP itself. Probably not a big deal, but I also see the point of the Paragonie guy. Once PHP 5.x is EOL, there will be real incentive to go after PHP flaws, rather than PHP app flaws.

That market share, though... 62%, wow!

<comment><USER9> The remaining 38% already run on PHP 7.x?

<comment><USER10> Most likely, yes. Hhvm (Facebook) is practically a dead/different language for the rest of us.

There is not much friction between 7.0,7.1,7.2, etc, so hopefully at least this 7.x share will continue to keep upgrading.

</comment></comment></comment><comment><USER11> I am _extremely_ skeptical of the source this article cites, which claims that 79% of the top 10 million sites use PHP. See [https://w3techs.com/technologies/overview/programming_langua...](https://w3techs.com/technologies/overview/programming_language/all).

This is completely out of line with my experience, job listings, and all other sources I can find. See [https://en.wikipedia.org/wiki/Programming_languages_used_in_...](https://en.wikipedia.org/wiki/Programming_languages_used_in_most_popular_websites) and [https://www.codingdojo.com/blog/7-most-in-demand- programming...](https://www.codingdojo.com/blog/7-most-in-demand-programming- languages-of-2018/) and [https://www.tiobe.com/tiobe- index/](https://www.tiobe.com/tiobe-index/)

<comment><USER12> I believe it. Aren't like 30% of all websites WordPress blogs? Considering people who use WordPress want a one-click solution, they certainly don't care about their PHP version. The other 49% might contain some Joomla and Drupal installations and phpBB (or similar). All those software is known to be easy to install, so most people choose it for their private content.

We are not talking about IT people but John/Jane Smith running their hobby site about fishing or their community to exchange ideas about old cars. They might not even have users but they are still websites.

<comment><USER13> It's not just hobby/personal sites, Magento has about 30% of the e-commerce platform market share, Shopify for comparison has 7%.

If you take Magento and WooCommerce (the most popular e-commerce WP plug-in) you have about 50% of the e-commerce market share (by installs/shops not revenue cuz well eBay and Amazon got that handled).

A lot of companies even fairly large enterprises use Drupal, Joomla and ofc Wordpress.

</comment></comment></comment><comment><USER14> This isn't true at all. The vast majority of these PHP 5.x installs are from vendor provided security supported Linux distributions - including those without cost such as CentOS, Debian and Ubuntu.

<comment><USER15> an important factor since PHP 5.4 is still the default install on the latest releases of both RHEL and CentOS

</comment></comment><comment><USER16> I found that there are different numbers on the spread of old PHP around, depending on who you are asking, WordPress and Composer are also having usage stats. The numbers from w3tech are maybe not that accurate, as they are probably generated by sniffing the X-Powered-By header.

PLUG: We have blogged about PHP deadlines as well: [https://blog.fortrabbit.com/on-php-deadlines](https://blog.fortrabbit.com/on- php-deadlines)

</comment><comment><USER10> There are many sites that run on PHP 5.2-5.5, which are EOL from PHP.net already.

If shameless self-plug is allowed, take a look at my presentation at DrupalCon Vienna: "PHP7+: The why's and the how's": [https://events.drupal.org/vienna2017/sessions/php-7-whys- and...](https://events.drupal.org/vienna2017/sessions/php-7-whys-and-hows)</comment>


Ask HN: Life planning and goals – Tools and methodologies - <AUTHOR> Dear fellows As I feel HN is composed by successful and rational people, I really want to ask your tips, tools and methods to create and/or organize the goals and planning of your future days and years. I'm tired of working for surviving and feeding the feedback loop, so I want to create a meaning for my life and accomplish my goals, but I have a huge intelectual debt in this area (planning, saving, finding meaning in life).<p>Thanks <comment><USER2> What are your goals?

<comment><AUTHOR> I have my goals, but the thing is putting it organized, planned and easy to follow. That way I think that I prioritize my goals.

<comment><USER2> One person's goal might be to bicycle across the US. Another person's goal, to retire at 65. A third person's goal -- work for a FAANG. Someone else's to find a life partner and raise a family.

Better and worse tools for thinking about each of these goals iare different. That's why I asked.</comment></comment></comment>


F-35 stealth jet 'will not be able to fire its guns until 2019' - <AUTHOR> http://www.telegraph.co.uk/news/worldnews/northamerica/usa/11319455/F-35-stealth-jet-will-not-be-able-to-fire-its-guns-until-2019.html <comment><USER2> This clip from the Pentagon Wars always comes to mind when I hear about a delay in the F-35. Needless to say this clip is on my mind every few months...

[https://www.youtube.com/watch?v=aXQ2lO3ieBA](https://www.youtube.com/watch?v=aXQ2lO3ieBA)

<comment><USER3> This clip never gets old, no matter how many times I watch it.

This is how I imagine somewhere in the world malware is currently getting engineered at this very moment.

<comment><USER4> Was 'malware' an accident or a purposeful entry? (I read 'software', then did a double-take and read 'malware' instead...)

<comment><USER5> I'm pretty sure he meant malware. What's the difference between a software engineer writing malware to the specifications set by an employer (whoever that might be) and the mechanical engineer shown in the clip?

For example, a request such as making the vehicle amphibious could translate into a request for making the software attack both OS X and Windows.

</comment></comment></comment></comment><comment><USER6> Surely at some stage it's better to write off this mess and start again from scratch? It really seems like they're throwing good money after bad.

It's a nice idea to have a completely flexible plane capable of doing every role, but it's clearly not working. What we're ending up with is the proverbial camel designed by a committee who was designing a horse.

<comment><USER7> Why would you think the next program would be any better?

These are the normal teething problems every new advanced fighter goes through. The F-22 went through them. The F-16 and F-15 went through them, though it was so long ago nobody remembers. Nearly every project reaches a point where people say "This will never work. Let's cancel it."

But there's no plan B. We can't fly the F-16 for another 25 years.

In any event, the gun doesn't matter that much. Gun kills are very rare, and usually they happen because the pilot wants a gun kill. They probably wouldn't even have included the gun but for some bad experiences in the '60s with the F-4.

By the way, the "flexible plane idea" has been incredibly successful in the F-18.

<comment><USER8> > But there's no plan B. We can't fly the F-16 for another 25 years.

Serious question: why not? Assuming the F16 is going to be updated with improved technology is any other country producing fighter jets that are going to overtake the capabilities of the F16 any time soon?

<comment><USER9> The Chinese are pushing on a Gen 4.5ish fighter and the Russian Su-30 variants are nothing to sneeze at. The Eurofighter is a step up over the F-16 but doesn't totally eclipse it.

However, the irony is that the F-35 probably won't be able to turn or accelerate with aircraft like the Su-30 or Eurofighter so in a dogfight it would be outclassed.

<comment><USER7> It's not designed to be a knife fighter. Stealth is supposed to give it a big BVR advantage.

I used to think that was a big mistake, but lately I'm coming around to the idea that the oft-wrongly-heralded end of the dogfight is pretty much upon us. As missiles get smarter and (more importantly) integrate more sensors they get much harder to dodge.

It's one thing to slip a single frequency semi-active radar homing missile or a four quadrant heat seeker in 1980. It's something quite different to shake a missile with IR, visual, and active EM sensors with the computing horsepower to integrate them all into a single predictive model. I was involved in IR missile development twenty years ago, and the consensus from the test pilots even then was the higher resolution sensors and extra smarts made modern (mid '90s) missiles almost impossible to shake once they locked on. That was just IR, too.

From what I can tell going forward the last guy to get detected wins.

<comment><USER10> It's going to wind up being how cheap can we make this drone to loiter with 1 missile attached? Cheap enough? Cool, just let the litter the sky, anyone dumb enough to try flying through will have to avoid detection or face instant death, so it will boil down to black stealth bombers only flying at night again, but even these will be drones.

<comment><USER9> Honestly I think the drone approach is where the smart money is. You could build many, many jet-engined drones that can provide air support over a wide area and would be fairly difficult for anyone to shoot down. The cost per unit would be low enough that you wouldn't particularly care if you lose a few here and there.

I have to think some nation is going to pursue the swarm of drones idea and once it's proven in combat the whole air power paradigm will shift.

<comment><USER7> Almost everyone I talk to agrees on this point and thinks the F-22/F-35 is the last generation of manned fighters (in the US, anyway). There's quite a bit of disagreement on the timeline, though.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> Article is somewhat misleading. The software that implements the gun (Block 3F) is slotted for 2017. That is largely a program management decision and not a major "technical" snag.

The F-35 may not be able to fire its guns in operational service until 2017, but test pilots will likely fire the gun well before then. The F-35 is designed to use 25mm rounds instead of the more common 20mm rounds used currently in other jets including the F-22 Raptor. The 25mm rounds have to be physically certified, then the software for the gun validated and certified, and finally pilots (& ground crew) trained to operate the gun.

<comment><USER12> The cannon itself has already been test fired on the ground. [https://www.youtube.com/watch?v=KD_A69B1cyg](https://www.youtube.com/watch?v=KD_A69B1cyg) for video of that.

<comment><USER13> It looks like it's just a 5 barrel General Dynamics GAU-12/U.

[https://en.wikipedia.org/wiki/GAU-12_Equalizer#Specification...](https://en.wikipedia.org/wiki/GAU-12_Equalizer#Specifications_.28GAU-12.29)

^- Same video as YT

What's delay in integrating this into the platform? Haven't they done this several times before? Or is this a low priority item (how often do jets use their cannons)?

<comment><USER14> It's mostly the new ammo that's being developed and most weapons aren't scheduled untill block 3F, Block2B is just JDAMs and AMRAAMs.

</comment></comment></comment></comment><comment><USER4> That's good news. I sincerely hope that it won't be able to until 2050.

<comment><USER15> Yep. I am not unhappy when death machines don't work.

<comment><USER16> I feel good until I realize who's paying to fix it.

<comment><USER15> Fortunately I'm not a US taxpayer.

<comment><USER7> Well, that makes sense then. You won't be depending on this "death machine", so why _would_ you want it to work out?

</comment></comment></comment></comment></comment><comment><USER17> Not to imply the F-35 is the be-all end-all but the article is a bit misleading.

Military avionics is developed in a waterfall fashion with functionality spread out over several increments.

Initial weapons capability is to be included in block 2B increment which /should/ be released to the fleet this year [1]. The fleet is currently using block 2A, the gatling gun seems to be block 3f by the release date cited in the article.

Secondly, even after the software development is done there are still /months/ of testing (including flight tests) required before it's released to the main force. As example, f35 block 2b was reportedly finished last summer but will be ready to be fielded _this_ summer.

[1] [http://www.janes.com/article/40733/farnborough-2014-block-2b...](http://www.janes.com/article/40733/farnborough-2014-block-2b-software- testing-for-f-35-nears-completion)

</comment><comment><USER18> The F35 is hilarious. [https://www.youtube.com/watch?v=mxDSiwqM2nw](https://www.youtube.com/watch?v=mxDSiwqM2nw)

<comment><USER19> And some counter points to that - "Pierre Sprey's Anti-F-35 Diatribe Is Half Brilliant And Half Bullshit"

[http://foxtrotalpha.jalopnik.com/pierre-spreys- anti-f-35-dia...](http://foxtrotalpha.jalopnik.com/pierre-spreys- anti-f-35-diatribe-is-half-brilliant-and-1592445665)

</comment></comment><comment><USER20> This explains a lot about why we can't kill the F-35 program: the contracts are spread over 45 states, by design.

[http://www.theatlantic.com/features/archive/2014/12/the- trag...](http://www.theatlantic.com/features/archive/2014/12/the-tragedy-of- the-american-military/383516/)

<comment><USER21> That article says that the B-2 contracts were spread over 46 states. I don't see anything about the F-35.

<comment><USER19> There's a 45 state source here:

[http://www.bloomberg.com/news/2013-02-22/flawed-f-35-fighter...](http://www.bloomberg.com/news/2013-02-22/flawed-f-35-fighter- too-big-to-kill-as-lockheed-hooks-45-states.html)

</comment></comment></comment><comment><USER22> The article states that the gov't has been forced to deny the report. So, is it true? Will they be able to fire its cannon or not?

<comment><AUTHOR> We will know at the next update in front of Congress. I am not sure when they are scheduled. I posted the article mainly for the whole "software glitch" angle. I am a little uneasy about the number of items on this bird that keep going back to software. Sadly, it looks like we should have built the full complement of F-22s and got rid of this. The F-22 seems to be ironing out its problems where the F-35 just keeps getting worse.

</comment></comment><comment><USER23> Is the software gun issue with the F-35 fleet in general, or with the very glitchy F-35B? The article doesn't do a good job of explaining that-though since its a British article, I'd assume its the F-35B, which will be on the QE2 class carriers.

Really, if you want a culprit for the F-35, blame the US Marine Corps (MARINES, RAWR!!) for insisting on the highly faulty and problem plagued F-35B. If the Brits had insisted on building proper through deck carriers, this wouldn't be an issue (at least the F-35B issues). The QE2 class are awfully big, and really should just be through deck without the ski jump.

<comment><USER24> Neither the F-35B nor the F-35C carries a gun. The USAF's F-35A is the only model affected by this issue.

Also, the Marines want the STOVL F-35B for operation on LHA/LHDs, as well as small island bases with short/limited runways. It's not just the ski-jumping Brits who want that feature.

With that said, you're right that the STOVL capability has added substantial complexity to the airframe.

<comment><USER23> That's the problem, the Marines want to field their own superfluous air force. USN carriers routinely go to sea with understrength airwings, its not as if there's not enough room on CVNs to support Marine F-35Cs.

<comment><USER7> It's not superfluous. The navy doesn't base its aircraft on improvised forward landing strips.

Naval aviation is of extremely limited utility as a result of a short range. If the fighting starts or moves inland the carrier is mostly useless.

<comment><USER9> Eh, something like a F/A-18 has somewhat short range but the Super Hornet is better in that regard and there's always mid-air refueling. It simply doesn't make sense to jeopardize the success of the backbone of American airpower for a mission capability that is niche.

I mean, when has the Harrier ever been the difference between success and failure for a USMC operation? Sure it's nice, but it's also a jet that is very difficult to fly and prone to crashes.

<comment><USER7> The Super Hornet has something like a 350 mile radius with a "normal" strike package. That's not very much, and it gets worse every year as US carrier fleets are forced further into blue water to deal with the latest Moskit descendants.

That's why the Navy is so hot to develop the X-47 into something they can deploy.

If refueling aircraft are available then far more capable land-based aircraft should have been used anyway.

As far as when the Harrier has made the difference, well, we haven't fought many pitched battles lately, so it's hard to say. But you can't design a military with the idea you'll _never_ have to fight a pitched battle.

EDIT: By the way, one of the advantages of the F-35B is supposed to be that its design is inherently less crash prone. We'll see.

<comment><USER9> > As far as when the Harrier has made the difference, well, we haven't fought > many pitched battles lately, so it's hard to say. But you can't design a > military with the idea you'll never have to fight a pitched battle.

That's the thing though, by shoehorning that VSTOL requirement into the program, we've made the F35A and F35C significantly worse aircraft. That in turn may mean that we may end up in a more difficult conflict because of the shortcomings of the aircraft.

Sure, if at all possible you want your military to be able to handle all scenarios. But truth is that the budget is not unlimited (as the USSR found out) so you have to distribute your eggs such that you get the best capabilities for the most likely scenarios.

I'm sure the F-35B will be less crash prone than the Harrier as well as more capable. I just don't think the costs justify it.

<comment><USER7> >Sure, if at all possible you want your military to be able to handle all scenarios. But truth is that the budget is not unlimited...

True, but we're spending less on our military as a percentage of GDP than we have since before WW II. We can afford the F-35B.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER25> * Stealth is not always about not being detected, it's also about reducing the distance you will start being detected.

* The F35 has battle awareness, but I wonder if those systems could have been integrated into existing airplanes, I'm not a aeronautics or avionics engineers though. Obviously it might increase pilot effectiveness, and decrease the amount of stuff pilots have to learn.

* I also read that the f35 has been designed around many sensor systems, allowing it to see enemy aircrafts much more before they would, giving it more time to react or to avoid dog fights: that's the argument against a non maneuverable aircraft, that information is more important in a fight situation. Also stealth is not always about land radars, it's maybe also about embedded aircraft radars, which are much less capable.

* The only point of VTOL is because air bases are hard to come by and build. It requires a large strip of road to take off, and flat areas are hard to defend. VTOL allows a jet to land in remote areas.

Maybe the F35 is all about electronic, detection and spying and not about dog fights, maybe the military also doesn't want to talk about the functionalities that make a difference so that other countries don't pick up on it. Although it's weird to see that so many will be built, since it seems like a very specialized jet.

<comment><USER26> It's not specialised at all. The theory was to make a generic jet that could do any mission and therefore achieve economies of scale for parts etc. But it turns out that trying to be all things to all men means compromises that make no one happy. Compare two existing jets, the F16 and the A10 for example. They have one mission each and they do it well - but you couldn't send one to do the others mission.

The VTOL capability is also needed for aircraft carriers.

<comment><USER27> The F-16 isn't a single role aircraft; it can dogfight/intercept, perform CAS, perform SEAD, and conduct interdiction raids.

<comment><USER28> True, but it was _designed_ as a single-role aircraft: a lightweight, inexpensive air superiority fighter. The other roles only came later, when people realized what a versatile airframe that program had produced.

<comment><USER27> But that's true of most modern aircraft. The F-4 was intended as a fleet interceptor, and was put into numerous other roles. The S-3 was intended for ASW and ended up doing recon, ECM, and land attack roles. Even the F-14 ended up as the Bombcat with the addition of targeting pods.

<comment><USER26> Right - set out with a clear purpose in mind, produce a clean, elegant design, and be delighted when it can do other things too. That is the Unix philosophy too, or it was before systemd, the F35 of init systems.

</comment></comment></comment></comment></comment></comment><comment><USER29> The F-35 is the Duke Nukem Forever of the military aircraft industry. Over budget, over schedule, trying to be everything but ending up doing nothing well.

</comment><comment><USER30> Makes you wonder about [http://isocpp.org/blog/2014/12/five-popular-myths- about-c-bj...](http://isocpp.org/blog/2014/12/five-popular-myths-about-c- bjarne-stroustrup):

 _" C++ has been used for demanding embedded systems and critical systems for years, examples are The Mars Rovers (scene analysis and autonomous operations), The F-35s and F-16s (flight controls), and many, many more"_

Also: what does that software do? I can think of several:

\- Interface with friend-or-foe detectors \- Check that the plane is in the air

But I cannot see why either would take four (more, but let's ignore that) years to develop.

<comment><USER31> The F35's avionics suite is not just for controlling the aircraft (which is difficult in itself), it's for controlling, analysing and displaying the data from sensors (radars, RWR, IFF, infra-red, etc) on an integrated display system, data transfer (can transmit its own sensor info to other aircraft and receive it from others), and interfacing with a variety of NATO weapon systems.

The F35's integrated system design was a (possibly too much) very audacious design, and includes over 10M lines of C++. It was questionable why C++ (instead of using existing ADA software) was used from the "re-inventing the wheel" perspective, but existing software in ADA very likely wasn't good/sophisticated enough and would have required significant re-writes anyway. Over the past 10-15 years there has also been a huge move away from ADA to more COTS languages/solutions by management in order to "save money".

<comment><USER30> Software can always be improved, and this may need it, but this headline and my remark are specifically about the gun (also: the plane is flying, isn't it? If so, I assume that all those detectors, displays, etc. already work to sufficient extent)

Reading [http://www.thedailybeast.com/articles/2014/12/31/new-u-s- ste...](http://www.thedailybeast.com/articles/2014/12/31/new-u-s-stealth-jet- can-t-fire-its-gun-until-2019.html), the plane carries so few bullets that it may be necessary to make its shots count, but even that shouldn't be that hard that it takes years and years to develop the software to shoot a gun.

Caveat: I know next to nothing about what the U.S.A. expects these guns to do or what they can do. My model of what a gun does is "spew out lead when the pilot presses a button", with very few refinements. A video camera that stops shooting when the original target goes out of range and a friend-or-foe detector input that stops shooting, would be nice additions, but since the missile system works. I would guess that the 'interfacing with a variety of NATO weapon systems' part shouldn't be that hard for the gun part of the plane's software. Or are these guns almost auto-firing and do they want to shoot at enemy vehicles that are in close combat with friendly forces, and only hit enemies? Maybe even have the gun control steering of the airplane (target turns left, please follow, so that I can keep firing)? That would seriously complicate matters.

Or is this a matter of bureaucracy in action in that this module missed a shipping deadline and now has to wait for the next software release for the entire plane that will come in 2019?

<comment><USER31> It probably would only take a month to get software to "just" fire the guns working. But the defence industry I believe (left it 7 years ago, but still know people in it) still largely use the waterfall model for designing software a lot up front, and for safety-critical software, there's a lot of static analysis done on the code, so you can't just write it and ship it.

I think what probably would take so long is integrating this new gun firing module into the entire software suite, or as you say, waiting for the next software version.

</comment></comment></comment></comment><comment><AUTHOR> oh, this gets worse

"Equipped with a gun, Air Force's F-35A version barely carries enough ammunition. Despite being able to shoot 3,300 rounds per minute, it will only be carrying 180 to 220 rounds."

"The two other versions of F-35 – for the Navy and Marine Corps – have different configurations with external gun pods, however, they will not have a software for them either, the Daily Beast reported."

[http://www.defencetalk.com/computer-glitch-prevents-us- most-...](http://www.defencetalk.com/computer-glitch-prevents-us-most- advanced-f-35-fighter-jet-from-firing-until-2019-report-61223/#ixzz3NgeCm600)

For comparison, the F-22 has "A 480-round closed loop ammunition feed and storage subsystem is housed integrally under the right wing root/fuselage for easy ammo upload and download of empty casings." using the proven M61A2 which is in a bunch of fighters.

[http://www.globalsecurity.org/military/systems/aircraft/f-22...](http://www.globalsecurity.org/military/systems/aircraft/f-22-weapons.htm)

</comment><comment><USER32> The longer before its operational, the sooner its deployment will be replaced or reduced by UCAV (combat drones). Technology will make it economical and tactically advantageous for unmanned aircraft to replace manned fighters and bombers in many situations. It will be interesting to see how autonomous they become.

</comment><comment><USER33> Maybe the purpose of the F-35 project is to con the Chinese into building shitty fighters, too?

<comment><USER34> We actually ended up doing something like this with the F-111; ruining a generation of Soviet fighter planes (though the Aardvark and Su-24 are pretty good low level bombers). The F-111, you may recall, was the last "do everything, all three service branch" jets we attempted to field.

<comment><USER35> You got us to cancel the lovely TSR-2 in favour of a modified F-111 version that was itself cancelled....

[http://en.wikipedia.org/wiki/BAC_TSR-2](http://en.wikipedia.org/wiki/BAC_TSR-2)

Eventually we ended up with a classic Euro-compromise in the form of the MRCA/Tornado - a swing winged jack of all trades.

<comment><USER26> Not the first time we've fallen for that American scam, you'd think we'd have learnt [http://en.m.wikipedia.org/wiki/Black_Arrow#Cancellation](http://en.m.wikipedia.org/wiki/Black_Arrow#Cancellation)

 _Prior to the cancellation of Black Arrow, NASA had offered to launch British payloads for free; however, this offer was withdrawn following the decision to cancel Black Arrow_

So much for the "special relationship" eh?

</comment></comment></comment></comment><comment><USER36> I recommend this top 10 video doc. A good though slightly hokey presentation but good roundup of military aircraft - [https://www.youtube.com/watch?v=IudSJE- TLxk](https://www.youtube.com/watch?v=IudSJE-TLxk)

</comment><comment><USER37> Understanding the F-35: It's about information warfare.

My hypothesis (I have no expertise in this area) is that the public is blind to fundamental changes in (aerial) warfare, much like people in the 1930s might have criticized aircraft carriers for poor guns and armor. The articles below revolutionized my perspective: Warfare is now (or will be) information technology warfare. The article at the end is best, but first a few excerpts:

1) _Instead of focusing on individual planes, squadrons, or "strike packages" executing a particular mission, the new concept looks at all the deployed aircraft as a whole, linked together by secure wireless networks into the "combat cloud." This cloud would be enabled by "fifth generation" aircraft — specifically F-22s and a substantial number of F-35s — and their ability to connect electronically both to each other and to legacy aircraft._ [1] This combat cloud shares data in a sort of mesh network, so instead of a pilot seeing only their own plane's sensor data they see the combined sensor data of all planes in the cloud, and share that with units and command on the ground.

2) Another way to describe it is that the fifth generation aircraft are primarily forward-deployed nodes in a network (fighting an enemy network across an air gap); there's even talk of their pilots operating fleets of drones. [2]

3) The sensor data's UI is much improved, with a massive impact (something HN readers will appreciate): _" In my fourth gen airplane, I was the fusion engine, the pilot was the fusion engine. I took the inputs from the RHWG, from the Radar Homing Warning Gear, from the radar, from the com, multiple radios, from my instruments. I fused that into what was happening in the battlespace, all the while I'm trying to do the mechanical things of flying my airplane and dodging missiles and all these sorts of things," he says. / Combine the fusion engine, the ISR sensors, the designed-in stealth, the advanced helmet, and the eight million lines of software driving what it can do ... "What we've done with the fifth generation is the computer takes all those sensory inputs, fuses it into information. The pilot sees a beautiful God's eye view of what's going on. And instead of having to fuse three pieces of information and decide if that's an adversary or not, the airplane is telling him with an extremely high degree of confidence what that adversary is and what they're doing and what all your wingmen are doing. It's a stunning amount of information,"_ [from the article in #6]

3) Stealth: In this new perspective it's information warfare defense, hiding data (your position, etc.) from the enemy, or sensor defense.

4) A leak said that F-35's could conduct cyber attacks on radar systems, effectively hacking the radar's computers via their sensor inputs (based on my limited understanding of limited info). [I can't find a good link at the moment]

5) Background: This combination of information warfare components (sensors, stealth, computers) are part a cohesive plan developed in the 1970s, the Pentagon's second "Long Range Research and Development Planning Program" or "Offset Strategy". A third is beginning now; some interesting background at the links. [3][4]

6) The best overview I've seen of the F-35 and the new form of warfare: [http://breakingdefense.com/2014/06/a-gods-eye-view-of-the- ba...](http://breakingdefense.com/2014/06/a-gods-eye-view-of-the-battlefield- gen-hostage-on-the-f-35/?print=1)

[1] [http://breakingdefense.com/2013/01/why-the-air-force- needs-a...](http://breakingdefense.com/2013/01/why-the-air-force-needs-a-lot- of-f-35s-gen-hostage-on-the-com/)

[2] [http://breakingdefense.com/2014/12/pawlikowski-on-air- force-...](http://breakingdefense.com/2014/12/pawlikowski-on-air-force-offset- strategy-f-35s-flying-drone-fleets/)

[3] [http://breakingdefense.com/2014/11/hagel-launches-offset- str...](http://breakingdefense.com/2014/11/hagel-launches-offset-strategy- lists-key-technologies/)

[4] [http://breakingdefense.com/2014/12/dod-to-silicon-valley- vcs...](http://breakingdefense.com/2014/12/dod-to-silicon-valley-vcs-how-bout- some-help/)

</comment><comment><USER38> Better not have an wars till 2019 then.

<comment><USER39> it's less and less relevant. With less and less care for civilian casualties (and cover up by declaring anyone over 15 a enemy) With drones (they are imprecise, but see 1) With less emphasis on actual ground occupation (the US as been unable to organize any democratic transition after a war since WWII) With virtualization of war.

it's still relevant because the transition is not complete, but the clone war is coming faster than the new plane is coming, you can afford to lose a drone and you don't want to lose a pilot, you learn faster developing a drone program.

<comment><USER40> > With less and less care for civilian casualties

Did you completely skip history class? In all of recorded history civilian casualties during a war have never been lower.

<comment><USER41> Are the statistics for civilian casualties lower because we've actually killed less civilians or because we've labeled more civilians as enemy combatants? This could easily skew the numbers in either direction very quickly.</comment></comment></comment></comment>


Show HN: Olive – Your Spare Change Can Help Kids Learn to Code - <AUTHOR> https://olive.gives <comment><USER2> On your landing page, change "Link you bank..." to "Link your bank...".

The FAQ says "In order to fund operations and grow our platform we currently take up to 5c from every dollar donated, however our goal is to reduce that figure as the number of users grows." Does that mean after the first dollar is donated $0.05 is removed or is it continuous (i.e. a %age)?

Does Olive provide a statement for total yearly charitable contributions for tax purposes?

Thanks and interesting idea!</comment>


Google works to torpedo Microsoft bid for Yahoo - <AUTHOR> http://www.nytimes.com/2008/02/04/technology/04yahoo.html?ex=1359781200&en=656a22271c9aed4f&ei=5090&partner=rssuserland&emc=rss&pagewanted=all

<comment><USER2> It's in Google's best interest to keep MS and Yahoo separate. It would rather fight two so-so competitors than a stronger, composite one.</comment>


Looking for Smart Engineers - <AUTHOR>

Hi HN,
I work at Optimizely . We have tons of openings for smart engineers and other openings ( including interns ) . We have jobs in both Amsterdam and San Francisco.  You can get all the openings here https://www.optimizely.com/jobs.  H1B transfers are welcome. We have awesome perks and all paid health insurance.   Let me know if you need a introduction, my contact info are below. Please write a small introduction about yourself and resume if you have one.
I am specifically looking for iOS Engineer for my team. Let me know if you have previous experience with iOS will be happy to work with you ( you are in big demand here ).
About Optimizely
We are the fastest growing startup in valley. For more info see here http://www.zdnet.com/optimizely-on-pace-to-grow-faster-than-any-other-saas-company-in-history-7000013814/. We are extremely profitable and growing like weed. The experience you would have here would be awesome.
Hemant Verma
email : fameoflight <at> gmail [dot] com <comment><USER2> I've applied there, but you kept ignoring me. Good background (3 years full- stack at good companies), but I have been out of the game for almost 3 years due to illness. Can't believe that's enough to end it.

<comment><AUTHOR> Can you forward your resume to me. I will look into this and promise to give you a definite reply.

<comment><USER2> Done.

Title: "HN -- Resume from joeldidit"</comment></comment></comment>


Facebook's exec calls WhatsApp co-founder a 'new standard of low-class' - <AUTHOR> https://www.cnbc.com/2018/09/26/facebook-exec-david-marcus-defends-company-after-whatsapp-speaks-out.html <comment> shady-lady > I find attacking the people and company that made you a billionaire, and > went to an unprecedented extent to shield and accommodate you for years, > low-class,

Facebook didn't make him a billionaire. He & co. made a 19 billion dollar business. Anything after that, facebook can take credit for. But everything right up to the contract signing/announcement can't be attributed to them.

<comment><USER2> Well, they are the ones who paid him thus it fits. Until you have a real customer, your product valuation is theoretical... even if your product is a company.

<comment><USER3> The troubling sentiment in my opinion is that you can't be critical of the people who pay you a lot of money.

<comment><USER2> I do agree. Just because someone is your customer, does not mean they are without fault.

</comment></comment></comment></comment><comment><USER4> There was a contract and a vesting period along with stipulated details regarding what happened with WhatsApp for a certain period of time. Is he saying FaceBook should have broken that contract and done whatever, or that they were too accommodating? His comments are either clueless or pure bullshit spin.</comment>