737 Max: 1960s Design, 1990s Computing Power and Paper Manuals - <AUTHOR> https://www.nytimes.com/2019/04/08/business/boeing-737-max-.html <comment><USER2> Why exactly does this author think an airplane needs a lot of computing power? Airplane software does not deal with especially large amounts of data or intense computations. Faster hardware does not provide an inherent safety benefit.

There is a large degree of coupling between avionics hardware and software amd updating that software is prohibitively expensive. There's just no point in doing it unless you get a tangible benefit.

Furthermore, avionics systems take a long time to develop are not often rebuilt from scratch, so the hardware naturally lags far behind the computing power we're used to.

The recycling of avionics systems is definitely fueled by a desire to reduce costs. However, it's also important to note that older, mature systems with a history of service inherently offer a degree of safety compared to something which is untested.

The issue this article complains about can easily be seen as a safety feature.

To be fair, the author does spend most of the article talking about missing features and design issues rather than harping on "processing power". It is a poor title.

<comment><USER3> Wait until they finds out what software powers the nuclear weapons of 90%+ of the world, top-tier fighter jets, "critical" infrastructure like power (including nuclear), and countless financial/banking systems.

To be fair the article doesn't critique using 1990s (or earlier) hardware/software. It's merely a clickbait headline. The only reference is dismissed by the very next sentence as insignificant [Boeing could be replaced with any ~~expert~~ somewhat-knowledgable person on the subject]:

> The flight-control computers have roughly the processing power of 1990s home > computers. A Boeing spokesman said the aircraft was designed with an > appropriate level of technology to ensure safety.

This only adds to my lowered standards when approaching NYT articles over the years. They've long been abandoning being correct for being entertaining at a seemingly accelerating rate. Which is too bad considering plenty of people continue to hold them to a higher credibility over the typical clickbaiter sites. Considering they are a subscription service I'm not convinced this is justified.

<comment><USER4> The NYT fired basically their entire editorial staff in 2017. The accelerated degradation has been noticable.

<comment><USER5> This is a good and comprehensive article. You and the grandparent comment are focusing on one minor component and using it to raise FUD about the rest of the article and indeed the entire NYT now. It's a lazy form of debate. HN used to be better than this.

<comment><USER4> I'm just providing facts. NYT fired a ton of editors, because they're expensive.[1]

They've also hired younger, cheaper writers.

As a result, the overall quality of the product has fallen, noticeable.

[1] [https://www.google.com/amp/s/deadline.com/2017/06/new- york-t...](https://www.google.com/amp/s/deadline.com/2017/06/new-york-times- editors-decry-humiliating-layoffs-1202121627/amp/)

</comment></comment></comment></comment></comment><comment><USER6> The "1990s Computing Power" comment is ignorantly harsh. The MAX (to the best of my knowledge) uses a similar AMD29050-based architecture as the 777 (where it was pioneered) and the 737-800/900\. It's amply fast and very very reliable, hardware and software (setting MCAS aside which is new to MAX).

Any sane person would prefer the solid well-proven choice over the bleeding edge. People used to make similar comments about the AGC and the Space Shuttle GPCs e.g. that such-and-such-a-PC-was-faster. Yeah, so what?

<comment><USER7> I'm not sure I agree here.

There exist possibilities for far more safety with more compute.

For example, when a mechanical failure occurs (for example an engine explodes and partially falls off) the flight characteristics of the plane change dramatically. Current systems fall back to human control, and hope that human will be able to figure out how to control a now very "unique" machine.

Future systems could dynamically create new flight models based on collected data to be able to fly the machine in entirely new ways.

For an example of this, did you know it's possible to fully control a quadcopter even with 3 out of 4 rotors broken and no working fins/flaps? [1]. That sort of 'fly it how it has never been done before' is out of reach of human control, and might save lives.

[1]:. [https://www.ethz.ch/en/news-and-events/eth- news/news/2013/12...](https://www.ethz.ch/en/news-and-events/eth- news/news/2013/12/new-algorithm-makes-quadrocopters-safer.html)

<comment><USER8> This tech is _just now_ making it into military aircraft in the F-35 (it's designed to compensate for failures or combat damage while keeping the plane's handling relatively consistent), so I would guess it'll be a while before we see a civilian version.

<comment><USER9> "Figure out a way to fly the thing in the new, crippled configuration" is hard. Figure out a way that's _better_ than what the human pilot came up with may be even harder.

<comment><USER7> It's hard, but it's a very measurable problem.

You randomly deform the airframe in a physics simulator, then get a real pilot to try to fly the simulated damaged airframe to the nearest airport.

You then get an AI to try doing the same.

As soon as the AI manages to get to the airport more often than the human, the tech will save lives, on average.

My guess is a PhD student could come up with an AI passing the above test inside a year. Yet aviation standards are stringent enough AI will be decades away from production use, if ever.

<comment><USER10> Your link to ZTE trumpeting the success of an algorithm helping an actual physical model of a quadcopter with a disabled rotor operating in lab conditions to crashland a bit more softly might be interpreted as a hint that the general case of _safely landing a stricken aircraft_ is the sort of problem that probably isn't solved by a single PhD in a year...

Keeping those with enough hubris to say "yeah, shouldn't take long if we've got some sort of sort of simulator to devise scenarios for a neural network to overfit to" about a wide range of failure modes that an entire field has spent decades studying well away from safety critical systems might be one of the more underappreciated aspects of tight regulation.

</comment></comment></comment></comment></comment></comment><comment><USER11> Kind of unfair. Do they really think that an aircraft should be powered by the same software or hardware that powers a modern computer or smartphone? An aircraft needs incredible reliability. You don't get that with modern software/hardware architectures.

<comment><USER12> Yeah, the B-52, adopted in 1952, is planned to be is service through the 2050s. An airframe design expected to last for over 100 years. Keep in mind that flight itself is barely 100 years old.

And paper manuals? Are they expecting to use iPads for in flight documents or something? Shall we compare failure states of paper vs tablets?

<comment><USER13> That article says that other plans will display the error and the recommended checklist automatically, which certainly seems faster than flipping through a bunch of books trying to find a specific page based off of some lights.

<comment><USER14> A lecturer of mine once said - knowing what kind of people we teach here for programmers, I am scared of going to the doctor.

The less software is in something(and less cloudy/iot) the better. And the more I program the more I prefer stupid and mechanical things when reliability is on the line.

A paper manual is always there for you.

<comment><USER15> >A paper manual is always there for you.

Then have the paper manual as a choice and/or backup.

If the programmers working on aircraft are so incompetent that they can't get a the digital manual correct, than they have no business programming any of the other multitude of systems that are critical to fly-by-wire systems.

<comment><USER4> And the time it takes to realize your iPad has run out of battery or you accidentally open an advertisement before grabbing your paper manual is too long.

The manuals have never been an issue. In fact, having a physical, rigorous checklist has been shown to improve the likely hood of a successful outcome.

<comment><USER16> iPad (and others) based electronic flight bags are already in place on passenger airlines. Your points are valid, but the debate is pretty much over.

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> Mass media in general is stressing too much the fact that 737 MAX is allegedly based on dated designs.

I think it's fair to say that MAX versions present some compromise solutions (like the now-infamous MCAS, which is there to compensate for the "unnatural" bigger engines). But I think that is not the main point. They would be good solutions it they worked as intended.

There are some other more fundamental and more daunting, afaik unanswered questions.

Like, why does such a critical system like MCAS take only a single AoA sensor as input, when there are two sensors available? Specially considering that the inputs from both are hardware-available to MCAS (the new software version is going to take data from both).

Boeing affirmed in its manuals that the elevators would be able to compensate for the trimmed vertical stabilizers. Now the preliminary report in the Ethiopian's crash shows that the pilots wheren't able to perform such compensation, even by pulling the control columns all the way back.

Those and some other issues are much more critical.

<comment><USER18> >Like, why does such a critical system like MCAS take only a single AoA sensor as input

The classic approach is to have three sensors, so in case one fails you can know which one. Having two only indicates something is wrong but is not useful on the fly.

<comment><USER19> Three with a disagree algorithm is definitely what I'd expect out of such a critical system, but two with signal averaging would still be much better than just one.

<comment><USER20> Or alternatively with two, and disabling MCAS if they disagree, seems a better solution than having one and having no way to tell if it is working (keeping in mind both can still fail simultaneously). Not an ideal solution but better.

<comment><USER17> This is one of the features of the MCAS software update.

</comment></comment></comment></comment></comment><comment><USER21> Hm. I hesitate to defend Boeing here, but I think the outset of this article is a bit unfair.

> Pilots start some new Boeing planes by turning a knob and flipping two > switches.

> The Boeing 737 Max, the newest passenger jet on the market, works > differently. Pilots follow roughly the same seven steps used on the first > 737 nearly 52 years ago: Shut off the cabin's air-conditioning, redirect the > air flow, switch on the engine, start the flow of fuel, revert the air flow, > turn back on the air conditioning, and turn on a generator.

So? What does this have to do with anything? Is the goal to produce an airplane where pilots press a button "fly to destination", and the plane does it?

> The strategy, to keep updating the plane rather than starting from scratch, > offered competitive advantages. Pilots were comfortable flying it, while > airlines didn't have to invest in costly new training for their pilots and > mechanics. For Boeing, it was also faster and cheaper to redesign and > recertify than starting anew.

> But the strategy has now left the company in crisis, following two deadly > crashes in less than five months.

How was it the strategy to keep updating the plane that left to this crisis? The strategy itself is not to blame here, and I very much like the idea to gradually improve a proven model. It was a _bad execution_ of this strategy that left the company in crisis.

In Germany, the national train agency Deutsche Bahn (and its predecessors) basically had a policy for nearly a century to order rolling stock that was designed to be produced for around 40 years. During this production run, the model was gradually improved. Some of the rolling stock designed in the 50ies is still in use, and quite reliable at that [0]. During the 90ies, agency and industry switched to a policy where basically every train generation was newly developed from scratch (for example, the ICE high speed trains). Guess what - you can channel _a lot_ of public money into private hands that way, but bleeding edge technology is not what you want or need when you are trying to build a reliable transportation system.

[0] [https://de.wikipedia.org/wiki/N-Wagen](https://de.wikipedia.org/wiki/N-Wagen)

<comment><USER22> > So? What does this have to do with anything? Is the goal to produce an > airplane where pilots press a button "fly to destination", and the plane > does it?

When you're nose down heading into the ground, taking your hand off the stick to adjust the trim can get panic-y. Especially since the MCAS may be working against your trim adjustments.

The design of the Max line seems to be _just_ enough compete with the A320neo, and _just_ enough to not "need" re-certification. But these two _just_ s, together, may have cost several hundred people their lives.

</comment></comment><comment><USER23> When it comes to flight computers it makes sense to be conservative when it comes to computing power - the goal should be simple, proven, and functional. But when it comes to diagnostics why not use more computing power? As the article states _A second electronic system found on other Boeing jets also alerts pilots to unusual or hazardous situations during flight and lays out recommended steps to resolve them._ Seems better than flipping through a paper manual when you've only a minute or two to save the plane.

<comment><USER24> Because new diagnostics mean new pilot training, meaning the new plane is not economical to buy when compared to the competition, meaning no plane at all.

Those other Boeing jets required costly new training. Boeing were trying to build an update to the 737 that did not require this.

</comment></comment><comment><USER25> The thing that baffles me - why the hell has there never been any innovation in the form of making it easier to diagnose a problem and move through the necessary steps in a checklist beyond fumbling through a paper manual? In a situation where seconds count, it seems illogical that this has never been improved upon. Didn't at least one of these planes crash because the pilots are believed to have only gotten X number of steps through a list of possible reasons?

<comment><USER26> As mentioned in the article, other Boeing jets do automatically present a checklist on the display when they detect a problem:

> _A second electronic system found on other Boeing jets also alerts pilots to > unusual or hazardous situations during flight and lays out recommended steps > to resolve them._

The 737 is stuck in the past because given the choice, nobody wants to have to retrain their pilots on more modern systems.

<comment><USER27> >The 737 is stuck in the past because given the choice, nobody wants to have to retrain their pilots on more modern systems.

Ding ding ding!

</comment></comment></comment><comment><USER28> Does anyone else here feel aeroplane software should be mandated as being open source? Boeing would have never even dreamed of releasing the 737-Max software in the state it was in and the more eyes you have on things like this the better.

<comment><USER29> Do you think there are a massive amount of developers out there who are at the same time avionics experts? I just don't see how being opensource would help. You wouldn't be able to even test these software projects because it requires and emulator or actual hardware to run on that you do not have. What would it chage if it was opensource?

<comment><USER28> I think the argument you're making is completely false.

First Premise is that there re not many avionics expers - I agree so having _more_ of those experts able to look at review and learn from different implementations would be a good thing.

Second premise is that you need to be an avionics expert to review and improve avionics software, I'm not convinced, there are many clever people out there.

Third premise you can't test or run the software becuase there is no emulator; maybe if the software was open source someone would start writing an emulator - maybe an emulator could be open sourced?

Fourth point; nothing would change if it was open source - I think the quality of code that would be released would go up and that's the main thing I'm talking about, embarrassment would be the optimal solution to something like this - I'd be very suprised if Boeing would release software that used a single sensor as input to a critical system like this.

<comment><USER29> I see so basically it would mean no benefits at all. Thanks for confirming.

Now the other problem that I have this in this thread. The Boeing issue is not a software issue at all. Even if we chose the best case scenario for the software it would be still a physical design & lack of pilot education problem.

<comment><USER30> Airbus agrees Boeing should make its software opensource.

</comment></comment></comment></comment></comment><comment><USER31> The entire management chain that dictated these design compromises should be surgically removed from Boeing and prosecuted for negligence.

Of course, that will never happen.

<comment><USER32> This doesn't get said enough.

Within days of the Lion Air crash, MCAS was strongly suspected to be the problem. And yet Boeing management allowed 157 more people to die in the Ethiopian Airlines crash. And then the Boeing CEO still tried to tell everyone that it was a safe airplane.

The entire top management of Boeing, and the entire board of directors, should be perp-walked out the door.

Of course, that will never happen.

</comment></comment><comment><USER33> >In the recent crashes, investigators believe the MCAS malfunctioned and moved a tail flap called the stabilizer,

Fact checking at the NYT seems to be dead. The MCAS moves the entire stabilizer -- which is not a "flap" in any sense. Can they not find a pilot or some other knowledgeable person to read through an article like this before publishing it?

</comment><comment><USER34> I'd rather take a well tested i386 than a new processor that crashes Linux with microcode errors.

Paper manuals actually instill confidence. Should pilots contact Stackoverflow in an emergency?

</comment><comment><USER35> I guess pilot retraining will always be time consuming, but can anything be done about recertification so that new designs don't face this issue?

<comment><USER36> Good grief. No!

Because as we are literally discovering, not knowing the details of how and why the automatic stabilization software is driving your trim wheel _can kill you_. The biggest single part of the failure chain here was the fact that this _should_ have been an invasive change requiring recertification as a different aircraft and retraining for pilots instead of pretending that it was just like a 737-600.

<comment><USER37> You are on my page. Type certification is the process to discover issues like this.

I'm not familiar with pilot training and certification but it seems to me that even if the 737 MAX was type certified certifying a pilot with previous 737 experience would have been just supplemental training. Ultimately a nothing burger.

I've seen a lot of cases where people get bent thinking of all the bad things that will happen because they think customers won't like some change. Always in the end if it's not a show stopper the customers just lump it.

</comment></comment></comment><comment><USER22> I'm sure this conversation will be looked at during discovery in any future lawsuits:

> _Boeing also designed the system to rely on a single sensor — a rarity in > aviation, where redundancy is common. Several former Boeing engineers who > were not directly involved in the system's design said their colleagues most > likely opted for such an approach since relying on two sensors could still > create issues. If one of two sensors malfunctioned, the system could > struggle to know which was right._

> _Airbus addressed this potential problem on some of its planes by installing > three or more such sensors. Former Max engineers, including one who worked > on the sensors, said adding a third sensor to the Max was a nonstarter. > Previous 737s, they said, had used two and managers wanted to limit > changes._

</comment><comment><USER38> Three angle of attack sensors should have never been something that could be overridden by cost savings measures. The engineers wanted three sensors and the management said no without ensuring all planes sold had sufficient mitigating controls. We need justice.

</comment><comment><USER39> >> "They wanted to A, save money and B, to minimize the certification and flight-test costs"

This seems to be the root cause of the problem. Competition is not always good.

<comment><USER40> I think Boeing was in a wrong mindset: certification was seen as a burden instead of being seen as an help to build a better aircraft. But maybe it was not only the fault of Boeing. The certification process of FAA is perhaps not friendly enough toward big air-frame changes (like putting the wings slightly higher to make room for the bigger reactor). Here, the certification process has not identified that a failure of one AOA sensor was able to cause a difficult to avoid crash. Maybe we should allow the use of less reliable source of data (like GPS, ...) each time a sensor has a problem.

</comment></comment><comment><USER41> Except rumors from media there is no clear explanation about what is going on inside Boeing. I just hope Boeing management is not the old Microsoft management.

</comment><comment><USER42> While i386 may be enough to run a plane, what other software or hardware of the same age is still in use?

</comment><comment><USER43> The Windows XP of passenger jets.

<comment><USER44> Windows XP was actually pretty modern for its time. Maybe you mean Windows ME. ;)

<comment><USER37> Thank you for reminding me of something I'd rather not remember.

One thing I remember is Microsoft tried repeatedly with Win95, 98 and ME to get USB support to work correctly. Failing each time and having to start over. Much to the horror of peripheral manufacturers. With Windows XP that finally mostly worked.</comment></comment></comment>


Sycophantry Masquerading as Bargains - <AUTHOR> http://www.overcomingbias.com/2015/12/sycophantry-masquerading-as-bargains.html <comment><USER2> This argument seems a little, I dunno if I have the right word for it - pointless?

Picking on doctors seems popular when it comes to professional regulation, but in reality we do this every day for everything that is non-trivial that we can't fully understand ourselves.

So we bring doctors under state regulation (rather than self-regulation via the AMA) - who will run this regulatory agency?

I hope your answer is "doctors" because any other answer is nuts, and would remind me of the Cultural Revolution where the distrusted intelligentsia were systematically ousted from positions of authority and replaced with proletariats. And then millions of people died from insane agricultural, industrial, and medical policy...

All professions that are non-trivial are _always_ going to be largely self- regulating, because its members are the only people _qualified_ to regulate it. Which isn't to say that this doesn't pose risk for corruption and conflicts of interest, or that self-regulation shouldn't answer to the population at large, but the idea that this delegation is somehow sycophantly or somehow inherently bad is... silly.

The regulatory systems we establish - whether self-regulating or regulated via state policy - _are_ a bargain. They're imperfect but there is no other way about it, unless you want to go down the path of having architects dictate medical policy or doctors dictate building codes. (though I do detect the sentiment of "software engineers should dictate everything" a lot on HN)

This whole blog post has shades of anti-intellectualism that creeps me out a bit - that assume that the intelligentsia must be malicious, and that they have somehow subjugated the rest of society to their whims. We've heard this rhetoric before, and it didn't lead anywhere good.

<comment><USER3> >This whole blog post has shades of anti-intellectualism that creeps me out a bit - that assume that the intelligentsia must be malicious

I don't agree. I think the point of the article is about the nature of the exchange.

>in this supposed bargain, what we give the professionals is concrete and clearly valuable, while what they give us (over what we'd get without the deal) is vague and very hard for us to check.

and

>There is actually no bargain, there is just the rest of us submitting to professionals' prestige. Cheaper yet outcome-effective substitutes to expensive professionals have long been physically available, and yet we have mostly not chosen those substitutes due to our eagerness to affiliate with prestigious professionals.

I don't see an argument to change regulatory structures in the article.

</comment></comment><comment><USER4> Predicting that everything will be done by "machines" is just kicking the can down the road. Who built the machine? How do you know that they programmed it with the correct knowledge to make accurate diagnoses (in the case of medicine)? Some authority is likely going to have to certify that the machine is built and programmed correctly. So, whatever authority we confer on doctors know is just going to shift to whoever has to certify that the machines are correct, which, again we consumers will not be able to accurately judge ourselves.

In the case of a machine that tests for a rare disease, it could just automatically say "no" every time and have a pretty high success rate. Someone will have to verify that the machine is actually performing some kind of test.

<comment><USER5> Still, it will take only 1 doctor (or committee) to verify the machine. Then it can be replicated, and replace every other doctor in existence for diagnosis. This will be a game-changer.

<comment><USER6> Even doctors themselves aren't certified by a single other doctor, or even a single committee of doctors. There are many rounds of tests, monitored and double-checked performance with actual patients, and examinations. It takes years. It would start out as a support tool providing a second or third opinion, then gradually be assigned more authoritative weight as it proves it's accuracy and value.

</comment></comment></comment><comment><USER7> His premises are not very sound.

> We make similar bad "bargains" with a few kinds of workers, to whom we grant > extraordinary privileges of "self-regulation." That is, we let certain > "professionals" run their own organizations which tell us how their job > (...) is to be done, and who can do it.

The author speaks of "privileges" and "prestiges", but for doctors, his go-to example, it _always_ was a prestigious (and privileged) profession, way before any modern diplomas/regulations were introduced. (Self-)regulations and certifications did not result in privileges, since they were already there. In fact they attached quite a few strings where before there were none.

> (...) that they will only admit appropriately qualified individuals into > their ranks, and that they will always act honestly (...)

Regulations/certifications are here to provide a minimum evidence of competence in a given field. Are they a weak evidence? Absolutely. But it also always beats the alternative, which is "just trust me". The point is that in advanced societies anything critical, profession or otherwise, cannot be built on trust, it has to be built on some kind of proof and accountability, however imperfect. And the author here is not demanding or proposing different, better proofs to the current system, he is just saying that enforcing such proof via regulation is a privilege built on prestige.

> Notice how in this supposed bargain, what we give the professionals is > concrete and clearly valuable, while what they give us (...) is vague and > very hard for us to check.

This is the laziest part of the argument, and to be honest it feels as if it's from someone who has never set foot abroad. Of course we can check it. We just have to compare with countries where these regulations ("privileges") are not enforced. You want to know how it looks like when pilots, architects, or surgeons can practice without a licence (or fake it)? Just go to Congo or Sierra Leone, and observe the number of accidents, failures, or outright fraud. Notice also how all societies, when they modernize, move to the same type of regulations, regardless of their cultural/religious/political specificities.

> and yet we have mostly not chosen those substitutes due to our eagerness to > affiliate with prestigious professionals

And of course there are countries that are (comparatively) considered "low prestige", like Poland or Thailand, that attract a large number of medical tourists because despite being lower profile the professionals there abide by the same vetting mechanisms, and their doctors are on par with ours... So the "it's just prestige" thing doesn't hold up.

> Cheaper yet outcome-effective substitutes to expensive professionals have > long been physically available

The point of "exclusive" regulations is not to say that someone un-certified couldn't do it, but that someone certified can, and that in critical domains only them should. A surgeon is not certified because they're privileged, but because they're the closest thing you can get to "guaranteed not to accidentally stab you in the neck while operating". There is no free ride, where there is a cheaper alternative, there is a cheaper guarantee, and in some domains "cheaper" is not acceptable. The only example given is of nurses Vs physicians, an unconvincing argument since both are a self-regulated profession.

(I have to admit the name of their blog cracks me up every time.)

</comment><comment><USER8> >"You give them something tangible and clearly valuable, and they give you a vague promise on something you can't see, and can't even check if anyone has ever received."

Nice analogy and all, but I find the condescending and disdainful tone towards a widely practiced religious act inappropriate.

<comment><USER9> The practice the author was referring too, paying indulgences is (thankfully) not a "widely practiced religious act".

<comment><USER10> Indeed. Though it unfortunately was widely practiced at one time, the Catholic Church now specifically prohibits money changing hands in exchange for indulgences. Indulgences are still part of Catholic teaching, but can only be obtained via some "good work" such as prayer, scripture reading, etc.

The post does misrepresent what an indulgence _is_ in Catholic teaching. But the indulgence-sellers did that, too.</comment></comment></comment>


The trouble with Linux: it's just not sexy - <AUTHOR> http://www.techradar.com/news/software/operating-systems/the-trouble-with-linux-it-s-just-not-sexy-679859 <comment><USER2> I'm not sure Windows is especially sexy either, altho Apple clearly is.

Linux will struggle for years to come in the corporate desktop market: as the article suggests, the of cost of change is just too high. Secondly, Office has not yet been matched by OO or similar. OO simply does not cut it for enterprise. As much as I hate M$ and love Linux, if I'm doing heavy duty spreadsheet work it has to be Excel.

In the personal desktop market Linux stands a better chance, but not much more. It suffers from a lack of marketing. E.g. Apple wins hands-down with a technically inferior product because it looks nice and they spend a bomb sexing it up. And of course Windows is so ubiquitous Linux gets only a fraction of the shelf space.

</comment><comment><USER3> I'd say JoliCloud is probably the nicest linux I've seen:

<http://www.jolicloud.com/product/features></comment>


Auto Generate your Phd Thesis - <AUTHOR> http://chegra.posterous.com/auto-generate-your-phd-thesis

<comment><USER2> I have found SCIgen[1] to be much more convincing.

[1] <http://pdos.csail.mit.edu/scigen/>

</comment><comment><USER3> Uses an array to store the alphabet, which also includes a subset of the punctuation and numbers. Classic Java.

<comment><AUTHOR> Permutate over the alphabet using a recursive algorithm, that would generate a possible sequence of characters of the specific length of the thesis.

</comment></comment><comment><USER4> Kind of a cross between the infinite monkeys and the P vs NP question. Cute, but not very insightful.

<comment><AUTHOR> More on the side of infinite monkeys and the question of intelligence.

<comment><USER4> Perhaps the connection to P vs NP isn't obvious. Let me explain my thinking.

Suppose you have a problem not known to be in P, but know to be in NP. Let's use integer factoring as an example.

Since it's in NP we have an efficient process for checking an alleged solution. So now here's a strategy for solving the problem.

Guess a solution, then check it. If it's right, you're done. Otherwise Lather, Rinse, Repeat.

This "Thesis Generator" is doing the same thing. Generate a "thesis" and check if it's good. if so, you're done. If not, Lather, Rinse, Repeat.

<comment><AUTHOR> For me the interesting part of it was that what is knowable is finite. Also, any problem can be conceived as a brute force search. Although not practical but for me it is interesting.</comment></comment></comment></comment>


IOS 6: Expanded iCloud, Silver UI, Apple Maps, And A Baked-In Facebook - <AUTHOR> http://techcrunch.com/2012/06/11/apple-announces-ios-6-wwdc/ <comment><USER2> What's this about Silver UI? I read the article and can't find any mention of it; as far as I can tell iOS 6 looks exactly like 5 did.</comment>


Amateur Radio Antenna Bill Dies at Senator's Desk - <AUTHOR> http://www.arrl.org/news/arrl-vows-continued-pursuit-of-the-amateur-radio-parity-act-in-the-115th-congress <comment><AUTHOR> "After having passed the House of Representatives on a unanimous vote, the bill stalled in the Senate due to the intervention of only one member, Sen. Bill Nelson (D-FL).

Over the course of the past year, Sen. Nelson has received thousands of e-mails, letters, and phone calls from concerned constituents asking for his support of H.R. 1301. Numerous meetings were held with his senior staff in an effort to move the legislation forward. Negotiations, which led to an agreement with the national association of homeowner's associations and publicly supported by CAI and ARRL, were brushed aside by Sen. Nelson as irrelevant."

Love how one guy can wield all that power.

<comment><USER2> It was a crappy bill to begin with, so my thought is if you are a ham and want to put up good antennas don't buy your property with a HOA.

<comment><AUTHOR> Hard pressed to find newer homes that don't have COA/HOA. Hams that are trying to downsize or go to 55 plus communities are really stuck.</comment></comment></comment>


C# Is the Future - <AUTHOR> http://www.filipekberg.se/2015/07/20/chsarp-is-the-future-ssw-tv/

<comment><USER2> I used to develop on Visual BASIC 6.0 and it got left behind for Visual BASIC.Net that had some mods from Java to make it better. On Error Goto was replaced with try/catch etc and instead of numbering things at 1 it started at 0. Most people left Visual BASIC for C# instead because of industry standards changing.

Now that the Compiler is open sourced and being ported to different platforms you might see more C# developers adopt it.</comment>


The universe is a very big place - <AUTHOR> http://www.newgrounds.com/portal/view/525347 <comment><USER2> "Space is big. You just won't believe how vastly, hugely, mind-bogglingly big it is. I mean, you may think it's a long way down the road to the chemist's, but that's just peanuts to space." --Douglas Adams

<comment><USER3> Not to nit-pick but I believe it's "I mean you may think it's a long way down the road to the chemist, but that's just peanuts to space". "Drug store" is a decidedly American phrase.

<comment><USER4> When books get released in other countries they go through and change many of these locale specific things, at least they do when it's going UK -> US, I think it's less common the other way because we're already so exposed to their culture.

</comment></comment></comment><comment><USER5> In fact I think you will find that the universe covers pretty much everything; <http://getonmyhorse.com>

<comment><USER6> <http://en.wikipedia.org/wiki/Multiverse>

:)

</comment></comment><comment><USER7> Here's another visualization. It overlays the objects on a grid, which explicitly sets the sense of scale.

<http://www.nikon.com/about/feelnikon/universcale/index_f.htm>

</comment><comment><USER8> A pretty mind boggling video on the same theme: <http://www.youtube.com/watch?v=17jymDn0W6U>

<comment><USER9> It's interesting to me how dramatic music always tends to accompany this subject. Whether you prefer the religious or secular variety, I think it's safe to say there's something universally _spiritual_ about visualizing the universe.

A thought which pretty much begs a link to Symphony of Science: <http://www.youtube.com/watch?v=XGK84Poeynk>

</comment></comment><comment><USER10> That's pretty cool. It reminds me of an old movie about orders of magnitude and scale that just went through factors of 10 in constant time from a person out to the observable universe.

It's weird how there are vast scales where there's nothing.

<comment><USER2> You mean Charles and Ray Eames' "Powers of 10":

<http://www.youtube.com/watch?v=1Z53wTtGGA0>

<comment><USER10> That's the one.

</comment></comment></comment><comment><USER11> Direct link: [http://uploads.ungrounded.net/525000/525347_scale_of_univers...](http://uploads.ungrounded.net/525000/525347_scale_of_universe_ng.swf)

</comment><comment><USER12> This managed to nail all the BS pseudo physics that drives physicists crazy to hear repeated.

<comment><USER13> Please set them straight! :-)

</comment></comment><comment><USER14> "Powers of 10" sliders like this are kinda fun. This is easily one of the better ones I've seen (though it's really a "Powers of 1000").

Just wish it had a smoother way to zoom, the slider is a bit jumpy when it's small.

<comment><USER15> Try the arrow keys.

<comment><USER14> * smack * duh. Should've read the author's comments, eh? My mistake. I was assuming the circles on the end would perform the same action, but guess not.

Thanks for pointing it out ^^;

</comment></comment></comment><comment><USER16> Also good: Carl Sagan's Pale Blue Dot [http://www.youtube.com/watch?v=p86BPM1GV8M&feature=fvw](http://www.youtube.com/watch?v=p86BPM1GV8M&feature=fvw)

</comment><comment><USER17> I'd love to show this to some narcissists I know. But then again, they might think it is revolving around them rather than humbling.

</comment><comment><USER18> TL;DR: The universe is 930 Ym across.

</comment><comment><USER19> Just wow.</comment>


Parsing Miss South Carolina's Statement - <AUTHOR> http://blog.powerset.com/2007/8/31/parsing-miss-south-carolina

<comment><USER2> Someone posted a perfect set-up for this and I nailed it:

<http://news.ycombinator.com/item?id=48652>

Apparently there are still some people who haven't seen the clip yet. They must be working harder on their start-ups.

</comment><comment><USER3> I don't know if finding meaning in a statement of no meaning is something worth bragging about...

</comment><comment><USER4> Sadly, "Who doesn't have maps?" doesn't seem to return any results.

My new startup: [<http://youtube.com/watch?v=pzDS3i4vv6w>] Like Such as Maps!

</comment><comment><USER5> Understanding women: the final frontier for AI research?

</comment><comment><USER6> She sounds like a talking Markov chain.

</comment><comment><USER7> I think Kimmel said it best: <http://tinyurl.com/2abgv8>

</comment><comment><USER8> I'm from South Carolina, you insensitive clod.

<comment><USER9> You sound much more like you are from 'Slashdot'.

<comment><USER8> Aren't we all?

<comment><USER9> yeah</comment></comment></comment></comment>


Five reasons closed beta launches suck - <AUTHOR> http://econsultancy.com/uk/blog/6827-five-reasons-closed-beta-launches-suck <comment><USER2> You mean besides the fact that it's really stretching the truth in calling them launches?</comment>


David Graeber has passed away - <AUTHOR> https://en.wikipedia.org/wiki/David_Graeber <comment><USER2> Really saddened to hear this.

I've only recently started digging into his work and I can only imagine how it'll impact my worldview for years to come.

For those unfamiliar with his work, here are some essays I recommend as a start:

1\. On the Phenomenon of Bullshit Jobs: [https://www.strike.coop/bullshit- jobs/](https://www.strike.coop/bullshit-jobs/)

2\. What's the Point If We Can't Have Fun? [https://thebaffler.com/salvos/whats-the-point-if-we-cant- hav...](https://thebaffler.com/salvos/whats-the-point-if-we-cant-have-fun)

3\. How to change the course of human history (at least, the part that's already happened) [https://www.eurozine.com/change-course-human- history/](https://www.eurozine.com/change-course-human-history/)</comment>


Trump Pushes Bill to Cut Number of Green Cards Issued by Half - <AUTHOR> https://www.wsj.com/articles/trump-pushes-senate-bill-to-curb-legal-immigration-1501694221?utm_source=hs_email&utm_medium=email&utm_content=54924931&_hsenc=p2ANqtz-8Z4MXe7cQlqVGEKEiSka62B_e8b7DYD4CufaMTOxcjZVTDMN5egAMxszvMnA4QctubMjab8UOl7cf_6S6I-EXC7QLJ8Q&_hsmi=54924931 <comment><USER2> Cutting the issued cards in half seems a bit of the wrong focus point in this bill and creates a lot of controversy/doesn't really get the intended effect (i.e. merit based policy); so I would can that and the "English" requirement.

Don't a lot of other countries implement a merit-based immigration policy? I say that but also knowing that a lot of other countries also prioritize refugees (Canada) in addition to merit-based immigration. The system I would prefer would be : prioritize refugees, merit-based skills & financial stability for employment and allow spouses and children to come along (preferably allowing spouse to live and work as well). Some countries, like Switzerland, prioritize EU citizens first for employment for instance before considering employment for immigrants from non-EU states. France, another one, is pushing forward with a tech visa program that is a bit enticing since your spouse can also live and work in the country. Overall, this proposal seems to fall closer in line with how other countries are doing things (not exactly the same) but somewhat closer.

I would be curious to know the numbers in terms of population growth percentages to what other countries capped immigration numbers are; also taking into account people migrating out of the country or in the case of the EU, to and from a given country that works with the EU (i.e. Switzerland).

</comment><comment><USER3> Sad to see the DV lottery is being canned. I've been applying for the last few years.

<comment><USER4> This proposal is unlikely to go anywhere.

</comment></comment><comment><USER5> So I was confused by this article, and did a little bit of research. Specifically, I was confused how cutting 50k applications could cut our immigration rate in half. We're a country with a population of 330 million people, 50k shouldn't cause a dent.

It turns out, that the legal immigration rate into the US hovers around 1-2 million people a year.

The Illegal immigration rate hovers around 10 million people a year.

Over the course of the 1990s, ~10 million people immigrated legally, and 100 million illegally.

So my immediate reaction is that this bill is Trump half-assing again. Dealing with illegal immigration is a difficult issue. But dealing with legal immigration, is far, far easier. After all, these are the law abiding people. So to me, this looks like, just like the Muslim ban, Trump going after something that looks like easy points to put on the board, regardless of policy.

Illegal immigration is much harder to deal with. There are so many people here already, that you're stuck with either the status quo, deportation, or mass amnesty, none of which are great options. On top of that, the Democratic party likes to turn a blind eye to the issue, as the demographic trends this enables works in their favor long term. Similarly, there is strong economic lobbying pressure, usually to the Republican party, by businesses not to crack down on illegal immigration, by businesses who exploit these people as workers without any rights or protection. Historically, while Republican presidencies have been willing to deport people found with illegal immigration status, they genuinely undermine or completely stop enforcement against businesses that hire illegal immigrants, which in turn results in higher illegal immigration during Republican presidencies. Credit due where credit is due, I've seen a few articles mention that that isn't the case for Trump's administration, but I haven't found anything conclusive yet.

So, I welcome with someone with more knowledge than a few google searches, but this seems like a bullshit bill that hurts good people, to give Trump an "easy win".

<comment><USER6> I think you've read your numbers wrong. There's a total of 10 million illegal immigrants in the US. Inflow is about 200K.

</comment></comment><comment><USER7> 'While still targeting the middle class for downward wage pressure.' I am not saying it's a bad thing, just coverage on this issue seems odd.

</comment><comment><USER8> Pass the paywall: [https://t.co/evMDPWlEHx](https://t.co/evMDPWlEHx)

<comment><USER9> How does this work?

<comment><USER3> HTTP referrer header is set to allow those incoming from social media to get X articles free a month.

</comment></comment></comment><comment><USER10> I don't see how anyone can be against this. Should we really take an unskilled immigrant who can't speak english over an AI researcher? This is a similar merit system as used by Canada and Australia.

Reminder that people who couldn't work or speak english were sent back at Ellis Island. People who came here knew they were going to have to work and wouldn't be getting handouts. The idea that we just took in whoever wanted to come here is revisionary history used to push agendas.

<comment><USER11> It looks like you've been using HN primarily for political and ideological arguments. That's not a legit use of the site, so we ban accounts that do it, so would you please stop?

HN is intended for gratifying intellectual curiosity, and the two things are pretty much incompatible, because political and ideological flamewar burns up everything else.

<comment><USER10> I've given obviously contrarian opinions on subjects posted to HN, but none of it was off-topic to the posted subject. If you don't want these topics being discussed just delete the thread, what's the point if contrarian opinion is going to be banned?

[http://www.paulgraham.com/say.html](http://www.paulgraham.com/say.html)

</comment></comment></comment><comment><USER12> This won't have much impact as I doubt there'll be that many Green Card applicants while he is in charge.

<comment><USER13> If we could just get away from the notion that the President (and the rest of the Federal government for that matter) is "in charge" of anything beyond the explicitly enumerated powers in the Constitution - these political changeovers wouldn't feel so important to most members of the civil society.

<comment><USER10> The funny thing is the far left will switch between comparing Trump to Hitler then the next day make fun of him for not getting legislation passed. Is he an authoritarian dictator or a weak leader who can't get things done?

<comment><USER14> I will risk some downvotes to point this out...

You must be confused. There is no left in this country. The Dems are a center right party shifting rightward over the last few decades in line with the general rightward shift in most national officeholders.

For all this deriding of "the left" I hear from my righty friends I cannot name very many authentically leftist officeholders or party leadership. Instead, that party just offers what used to be considered Republican plans (like Gingrich or Romney's views on health care, or the Reagan/Bush tax policy)

<comment><USER15> > The Dems are a center right party shifting rightward over the last few > decades in line with the general rightward shift in most national > officeholders.

That's not entirely true; the Democratic rightward shift pretty much stopped around 2008, plus or minus a little bit. It's dominated by a center-right faction, but it has a substantial (and resurgent over the past ~decade, after having been in retreat since the late 1980s) faction that is somewhere between center-left and left (but not hard left.)

<comment><USER14> I think worldwide the rightward shift really accelerated in the timeframe you're talking about and the years that followed, when seemingly every elected person of seemingly all persuasions started to love austerity.

And in the US, the Obama years were tempered from day 1 by the crowd that wanted to moderate a perceived left counter-push which never materialized in legislation. Witness Obamacare is not and never was seriously proposed to be single payer, it has always been a 1990s GOP alternative to single payer.</comment></comment></comment></comment></comment></comment>


There IS a mobile web - <AUTHOR> http://www.plexical.com/blog/2011/09/19/there-is-a-mobile-web/ A contrarian commentary on Jeremy Keith's presentation at the BD conference last week.<p>"Mobile web" is a language thing, but language is important. It enables us to talk about stuff. <comment><USER2> The argument seems to be semantics but if there were no such thing as a mobile web there'd be no need for the hoops Adactio et al. are jumping through to respond to it.

</comment><comment><USER3> This guy seems to be missing the point somewhat and dragging the argument further into the ether.</comment>


OKCupid seeks to block Mozilla Firefox over gay rights - <AUTHOR> http://m.bbc.com/news/technology-26830383

<comment><USER2> See my response here: [https://news.ycombinator.com/item?id=7505882](https://news.ycombinator.com/item?id=7505882)</comment>


Sudden drop of number of contributors in the Linux Kernel since August 2018 - <AUTHOR> https://www.openhub.net/p/linux/contributors/summary <comment><AUTHOR> Which coincides with the announcement of Linus's break one month later, Samsung's Open Source Group restructuration's announcement and IBM/Red Hat deal announced 3 months later.</comment>


FAA Faces Legal Action on Its Rules for Model Aircraft - <AUTHOR> http://spectrum.ieee.org/automaton/robotics/aerial-robots/faa-faces-legal-action-on-its-rules-for-model-aircraft#.U_42E3t718c.hackernews <comment><USER2> The article elides (through ...) the really really important first bullet point of the law they cite, which says: "1) the aircraft is flown strictly for hobby or recreational use; "

IOW the article says: "that the FAA's Special Rule contradicts the intent of Congress when it passed the FAA Modernization and Reform Act in 2012, part of which states: "[T]he Federal Aviation Administration may not promulgate any rule or regulation regarding a model aircraft, or an aircraft being developed as a model aircraft, if . . . the aircraft is operated in accordance with a community-based set of safety guidelines and within the programming of a nationwide community-based organization.""

The "..." is the part about it being strictly flown for hobby or recreational use. The is the only part elided in this quote

This is really shady writing, as the rest of the article makes a lot of arguments about how this law affects commercial use, that they want an FAA interpretation that doesn't exclude commercial use, and the lawsuits around this set of clauses, but leaves out the main problem for these folks: the law doesn't say what they want it to.</comment>


Zynga Acquires Serious Business - <AUTHOR> http://www.insidesocialgames.com/2010/02/11/zynga-acquires-serious-business-gets-even-bigger/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+InsideSocialGames+(Inside+Social+Games)&utm_content=Google+Reader

<comment><USER2> Having managed their infrastructure for about a year now, I'm pretty happy to hear this. Serious has an incredible team!

</comment><comment><USER3> This makes me sad, because Serious Business has a SICK logo, and I fear it will now go away :)</comment>


Show HN: Padmation – iOS and Android Garage door opener - <AUTHOR> https://padmation.com/

<comment><USER2> Looks cool. There's a mistake on the learn more page though that you should fix. "Now any time you have your phone your new garage door opener is too."

<comment><USER3> Another on the products page: "Our mobile phone garage door opener will even send you a text message _you_ if you forgot to close the door!".

<comment><AUTHOR> Thanks for the feedback! We're looking for a few people to purchase for $150 (to cover our costs) and help make sure the product features and fit are right!!

<comment><AUTHOR> Payment is through stripe and we'll email to get shipping etc.

Instructions are pretty simple - there's a contact switch that puts the os in setup mode and creates an ad hoc network for the app to configure the wifi with your network. It gets linked up with your account and then you wire it up to your garage door button wires (usually 2 thumb screws on the door unit). After that mount the magnetic sensor.

<comment><USER4> You need an account? Am I right in guessing that this then grants your server the ability to open and close my garage door?</comment></comment></comment></comment></comment>


JavaScript: The Modern Parts - <AUTHOR> https://amontalenti.com/2019/08/10/javascript-the-modern-parts <comment><USER2> I think today the Javascript ecosystem looks much better than 3 years ago, at the peak of Javascript fatigue.

What we had actually was tooling fatigue, and not language features fatigue. Today, with CLI tools like the Angular CLI, we have a ready to use optimized bundle via one out of the box CLI command, so no longer do we have to learn how to configure Gulp or Webpack.

I'm very glad that I decided not to learn Webpack and stick to the CLI, now Webpack is going to be replaced by Bazel transparently, and from a user perspective, nothing changes other than getting an even faster build and a smaller bundle transparently, without having to be a build tools expert.

I can now focus on developing the application and not the tooling, which is awesome for me. There are only so many hours in the day and I like to focus my learning budget on what moves the needle most.

<comment><USER3> > at the peak of Javascript fatigue

Are you very sure the peak was 3 years ago? Based on what? IMAO the mess only gets worse.

You just mentioned webpack is going to be replaced?? That's unfortunately very typical for the JS eco system. 7 years ago we had Grunt, then about two years later Gulp, then about a year later Webpack, now apparently Bazel? Interesting, never heard of it, but I still feel fatigue. I spent quite some time to master Webpack, and again I'll have to start all over for the 4th time now learning the next bundler..

I just started with React Hooks some months ago. First we had mixins(about 5 years ago), that was replaced with Higher Order Components, then we had to start writing React in the brand new ES6 classes, then we saw the Render Props, the Pure Functions, etc.. and now ES6 classes and all the rest are deprecated, because Dan Abramov had another idea for again a new design principle that's just less than a year old: Hooks.. Oh, and we don't do that in JS, that is not sane anymore, every job I get nowadays is Typescript.

I mean, think twice before you say the Javascript fatigue is past it's peak.

<comment><USER4> While the JavaScript ecosystem is on the volatile side, learning new tools and frameworks every few years is just part of our job. Only in very boring tech jobs would you only have to learn new things maybe once every 5 years.

I wouldn't really bother wasting time "mastering" something like Webpack or what replaces it - as the other commenter said we just end up using an abstraction over it anyway.

<comment><USER5> It's not learning a new frameworks and tools. It's the fact that these tools are usually fragile, and quite frankly not very much new is in there.

Also, what's your goal? To learn new tools over and over again? Or to crate something that that people will use?

You sound like a music "producer" (read - tech hobbiest) who keeps switching tools, synths, and hardware instead of just creating music.

<comment><USER6> Yes, I don't even think the most important issue is that we as developers have js fatigue. The biggest issue is that we are developing web applications that are outdated before they are even released. Our software relies on thousands of dependencies that are constantly changing or even dying off. Updating an application that was built two or even just one year ago is often not a trivial task. So while the frameworks and tooling have thankfully improved, in general the cost of developing and maintaining an application seems to be much greater than in the past (e.g. PHP MVC app with some jQuery sprinkled in).

<comment><USER7> It's blogs and sites like Udemy. Their business model depends on people needing to learn new technologies constantly. So when they tell you "MVC is dead" or "Rails is dead", there is a direct profit motive in it for them. They tell you everyone is using Backbone.js, so you move. Then the next year it's Angular. Backbone is outdated, no one uses it anymore. Then the next year it's React.

The blogs drive the technology shifts in order to get clicks. And every time the technology shifts, Udemy sells a million tutorial videos at $10 a piece. Everyone gets up to speed on the new thing just in time for the blogs to find new clicks and Udemy to find new videos.

Meanwhile the real world still runs on Laravel, Rails, Flask, and Postgres.

</comment></comment></comment></comment></comment></comment><comment><USER8> I'm the original author of this post. Was surprised to see this here this morning -- as I expressed in this tweet: [https://twitter.com/amontalenti/status/1165252347909607424](https://twitter.com/amontalenti/status/1165252347909607424)

Glad to answer any questions about the post here.

I am hoping to write a second part to this post eventually. It was honestly sitting in my drafts folder for a solid 6-8 months, and then I finally cleaned it up and published it two weeks ago. But I still have more thoughts!

<comment><USER9> it was a really enjoyable article, I bookmarked your functional js paper for later too. Thanks for sharing it. </delurk>

</comment></comment><comment><USER10> >Understanding webpack, and why it's important

Not sure how Webpack is being attributed as being a part of Javascript here. It's a bundler, with Javascript support being one small piece in a much larger puzzle. It's not even the only bundler out there, JSPM is currently in beta which goes in a different direction than Webpack, then you have Parcel and other options as well.

>Understanding babel, and why it's important

Eh. I haven't used Babel in years since switching to TypeScript.

This doesn't seem very focused on Javascript, seems like a lot of emphasis being placed on tooling more than the language itself.

<comment><USER11> I agree with your assessment, but the "major" web framework ecosystem (React, Angular, Vue) all use webpack as a de facto part of their toolchain. And webpack, in turn, relies on babel. Other bundlers are commonly used as part of plugin system.

Regardless of transpiler tooling, the tooling is how most people are confident in using the most modern variants of JavaScript code. So it's an important part of the modern js story.

<comment><USER12> I agree, JavaScript the Good Parts was written in a time when there essentially was no ecosystem in Javascript to speak of, so it was by definition focused on nothing but the language.

In 2019 JavaScript comes as part of a much more developed (and useful!) ecosystem that is completely tied in with tools such as Babel and Webpack and the alternatives mentioned.

Even if you don't use or want to use any particular one of them, knowledge of all of them, at least what they do, is more or less essential to work in modern JavaScript to understand how the ecosystem fits together and how most projects out there use the language.

</comment></comment></comment><comment><USER13> >Whereas Java and C users may still have debates about where, exactly, open source projects should publish their releases, that issue is settled in the JavaScript community

I thought Maven Central was pretty much the canonical answer in Java land. Nobody cares what tool you actually use to pull these down (SBT, Gradle, Maven..).

>What this means, however, is that to do JavaScript development "The Modern Way", while adopting its new features, you simply must use a local transpiler toolchain

Surely this depends on the browsers your application is targeting? And presumably, the sort of feature you're using (can it be polyfilled or is it a syntax feature?).

>In 2018-2019, several things have changed about the JavaScript community. Development tools are no longer fledgling, but are, instead, mature. There are built-in development tools in all of Safari, Firefox, and Chrome browsers

I agree they're decent, but there are still cases where they struggle - particularly after code has been transpiled. I still run into issues these days where the browser is trying to show a source-mapped JS file instead of the actual bundle code which masks a real issue.

>And, for web frontends, it's your only choice

[https://caniuse.com/#search=webassembly](https://caniuse.com/#search=webassembly)

If you don't care about IE11 (or you polyfill), it's hardly your only choice. wasm is still far from perfect but there's no question you can start writing some logic in languages other than JavaScript, and interoperate.

>If you're the kind of programmer who thinks, "I code in Python/Java/Ruby/C/whatever, and thus I have no use for JavaScript and don't need to know anything about it", you're wrong, and I'll describe why. Incidentally, you were right in 1998, you could get by without it in 2008, and you are dead wrong in 2018.

>To be a serious programmer, you'll have to know JavaScript's Modern and Good Parts — as well as some other server-side language, like Python, Ruby, Go, Elixir, Clojure, Java, and so on

This reads to me as downright patronising to e.g. embedded software engineers who might be writing hardware drivers in C/C++ day to day.

Perhaps this should read "to be a serious web developer with front-end responsibilities" (JavaScript is sufficient, not necessary on the back-end and - of course, subjectively - there are much better choices to use).

<comment><USER14> There's a bizarre, naive belief that all programming is web programming.

It's patronising and inaccurate, but it's common among people who think Javascript is a serious language.

<comment><USER15> Javascript is a frustrating language. On the one hand it's more "serious" than [legacy] C, C++, Java, and Python because it had first-class functions and real lexical closures from day one.

On the other, it had imprecise typing, no multiprocessing, and no access to the file system. Some of that has been fixed, but Javascript was designed by one person in a week to script web browsers and that's still painfully obvious.

<comment><USER16> > On the one hand it's more "serious" than [legacy] C, C++, Java, and Python > because it had first-class functions and real lexical closures from day one.

Why do closures make a language "serious"? To me languages are just languages. Seriousness is defined the problem you are solving. Are flight controls serious? Probably. Is yet another small scale CRUD app serious? Probably not.

There is a lot of "serious" code written in every major language. There is a huge amount of "serious" code written in C and C++, and all of this without first class functions or lexical closures.

<comment><USER15> Good question. I'll try to give my answer, but others will have their own opinions. Computer languages move in the direction of supporting "good ideas" as those ideas become generally recognized as being good. Usually those ideas start in academia and gradually find their way to industry. Some examples: Structured ("goto-less") programming, object-oriented programming, automatic memory management, strong typing, lexical closures, first-class functions, functional programming, automatic bounds checking, and prevention of memory ownership violations.

A "serious" language is indeed partially defined by its fitness for the stated job at hand, but also for how well it handles the often unstated requirements of productivity, security, maintainability, and robustness in the face of likely future needs. Languages that have more of the above features tend to do better at these unstated requirements.

What is and isn't a "serious" language can change over time depending on what we learn is important. C was a serious language for a while, but it has not been one for a couple of decades because of its non-support of anything remotely resembling security. C is still used because of its extreme portability, but it probably should be abandoned.

Conversely, languages that support first-class functions, lexical closures, and automatic memory management are now in the serious category because those things present huge improvements in productivity, maintainability, and robustness in the face of future changes. (I'll even go out on a longer limb and say that programmers who learn to _think_ in terms of functional composition become more productive coders in any language.) Pure O-O languages are beginning to move in the non-serious direction because they cannot be readily parallelized in an era when parallel computing is the only way forward now that Moore's law is dead.

Javascript anticipated a couple of these features before other mainstream languages, and now it's moving beyond web browsers. So yeah, with some reservations I'd call it serious.

Nowadays I'd never write major code in a language that doesn't directly support most of the "serious" features I listed above; it would be too much of a hit to my productivity. It would feel like building a house with a hammer and nails when nailguns were readily available.

If I were writing embedded apps like flight controls today, I'd use Lisp for the high-level parts and Rust and maybe a bit of assembler for the low level parts.

<comment><USER16> I find the idea of viewing a language as "serious" to be fundamentally flawed. Every project has a set of requirements and constraints. Usually the pragmatic language choice is dictated by external factors. Things like library support, developer expertise, and tool maturity are much bigger factors for most businesses.

The "serious" professional choice for my company (an OS vendor, with a focus on certifiable systems) is currently C. The tooling we use is for C, the expertise within my company is in C, and the industry that we work with understands and expects C.

At some point, the operating systems industry will transition to more modern languages. Rust is promising, but it is a long way from being a serious consideration for FAA certifiable projects.

</comment></comment></comment></comment></comment></comment><comment><USER17> > Yes, it has taken 20 years, but JavaScript is now just as viable a choice > for your backend and CLI tooling projects as Python was in the past.

Considering how often Node projects break our build, I respectfully beg to differ.

<comment><USER18> i agree with the sentiment. i was just thinking about it yesterday. what if there was a pure javascript based system programming language? with none of the event loop thingies?

i mean can we have a normal javascript that compiles to a x64 binary and calls the OS?

<comment><USER19> JScript.Net compiles to .NET bytecode and has for the past 20 years or so.

</comment></comment></comment><comment><USER20> To be clear, this has no association with the original "Javascript: The Good Parts" by Douglas Crockford book.

</comment><comment><USER21> It looks like an interesting light summary of the state of things. The technical articles might be more useful, for me.

As a primarily Python/C++ developer who dabbled with JS in the early and late 2000s, can anyone recommend an efficient way to get started with modern JS development for hints like interactive frontends with a different-language. I'm comfortable with large language ecosystems, but there seems to be an intimidating number of incompatible paradigms - and there's both the technology and toolings.

Easiest to start with one track e.g. react/tutorials and branch from there? Good books that approach the problem efficiently and for a decent existing programmer/scientist?

<comment><USER8> I'm the original author of the post. A friend who reviewed a draft of it asked me the same question. I had the following recommendations:

1\. Solid recorded talk (on YouTube) on using npm run-script to automate local builds: [https://www.youtube.com/watch?v=0RYETb9YVrk](https://www.youtube.com/watch?v=0RYETb9YVrk)

2\. Modern JavaScript Explained for Dinosaurs: [https://medium.com/the-node- js-collection/modern-javascript-...](https://medium.com/the-node-js- collection/modern-javascript-explained-for-dinosaurs-f695e9747b70) \-- this is a long post that goes into technical depth on the stuff that I covered at a high level in my post

3\. Webpack -- The Confusing Parts: [https://medium.com/@rajaraodv/webpack- the-confusing-parts-58...](https://medium.com/@rajaraodv/webpack-the- confusing-parts-58712f8fcad9) \-- long post that goes into depth on Webpack, in particular.

Aside from all of these, the book I have found the most helpful if you want to zoom straight ahead to React is "Road to React": [https://leanpub.com/the- road-to-learn-react](https://leanpub.com/the-road-to-learn-react)

It's 200 pages, oriented around real code, and straightforward.

</comment></comment><comment><USER22> Javascript is not the only answer to frontends ever since WebAssembly arrived. Microsoft is releasing Blazor for C# in a month (server-side first then client-side) [1] and there are similar projects being worked on for Rust, Java, etc.

1\. [http://blazor.net](http://blazor.net)

</comment><comment><USER23> JavaScript brief history and ECMAScript(ES6,ES7,ES8,ES9) features

[https://medium.com/@madasamy/javascript-brief-history-and- ec...](https://medium.com/@madasamy/javascript-brief-history-and-ecmascript- es6-es7-es8-features-673973394df4)

</comment><comment><USER24> I have some ES6 compliant JavaScript to run on the browser. Now I would like to compile it into web-assembly and serve that from a server to the browser, to make it faster to run and download.

Is that possible with the modern JavaScript tools?

<comment><USER25> From what I've heard WASM isn't a viable alternative in the first place. It's good for compute-heavy tasks, but the overhead involved in going from browser to native to browser is too much to make WASM an alternative to what JavaScript is usually used for -- rendering interfaces and making pages interactive.

<comment><USER26> > From what I've heard WASM isn't a viable alternative in the first place. > It's good for compute-heavy tasks, but the overhead involved in going from > browser to native to browser is too much to make WASM an alternative to what > JavaScript is usually used for -- rendering interfaces and making pages > interactive.

I don't think that's the case anymore: [https://dassur.ma/things/is- postmessage-slow/](https://dassur.ma/things/is-postmessage-slow/)

<comment><USER27> Article is unrelated. The overhead for Wasm is from copying structs into and out of the Wasm's linear memory. Wasm only has ints and floats at the boundary, so you have to copy everything into structures it can understand.

Note that there is work to improve this (interface types, anyref, etc), but we're not there yet.

</comment></comment></comment></comment><comment><USER28> >In that era, I wrote one of the most widely deployed pieces of JavaScript on the web, and maintained a system powered by it.

Anyone know what he is talking about here? I searched google but couldn't find what he was talking about.

<comment><USER8> I'm the original author of the post.

I was talking about Parse.ly's analytics engine, where most of the data we provide to our customers on first-party analytics around their audience stems from some lightweight JavaScript code they embed in their websites. It's now installed on thousands of high-traffic sites[1] and provides analytics on over a billion web/mobile browsers per month (as described in this Strata talk[2], for example).

I wrote a little bit about my experience writing that code in this HN comment: [https://news.ycombinator.com/item?id=10206956#10207998](https://news.ycombinator.com/item?id=10206956#10207998)

It was a fascinating piece of code to work on because not only did it have to be lightweight and fast across all browsers, but it also had to be tiny to embed, and it needed to be x-browser tested all the way back to IE6 and strange mobile browsers. Plus, at the time it was originally written (2010-2012), there were hardly any good JS build tools outside of early versions of uglifyjs.

Over the years, other engineers have improved the performance even further, while retaining the kernel of the code. We even did a change last year which improved client-side performance through a number of clever build/CDN tricks. We've also had to hold our ground firmly on privacy, which it turns out is one of the key areas third-party JavaScript started to take a turn in the wrong direction, especially in the adtech universe. (We are a content analytics company, with a similar SaaS business model to MixPanel for product analytics and NewRelic for performance analytics. So, for us, privacy is paramount.) I wrote about this here: [https://blog.parse.ly/post/3394/analytics-privacy- without-co...](https://blog.parse.ly/post/3394/analytics-privacy-without- compromise/)

[1]: [https://trends.builtwith.com/analytics/Parse.ly](https://trends.builtwith.com/analytics/Parse.ly)

[2]: [https://conferences.oreilly.com/strata/strata- ny-2018/public...](https://conferences.oreilly.com/strata/strata- ny-2018/public/schedule/detail/69132)

<comment><USER28> Very cool and interesting stuff. Many thanks for the reply and info.

</comment></comment></comment><comment><USER29> Why "ES2017", specifically? ES6 is ES2015, and ES2019 was published a few months ago and is well-supported in node.

<comment><USER8> I'm the original author. This is just an oversight -- the original draft I wrote here was at a time when ES2019 wasn't yet published. Agree that you can safely use any ratified (recent) standard with Babel.

</comment></comment><comment><USER30> JavaScript is fun, but I wish they had chosen Scheme - both for scripting and instead of HTML.

</comment><comment><USER31> What's the view that TypeScript is the modern Javascript?

<comment><USER11> TypeScript adoption has been swift and decisive. In 2019, the majority of js developers that take surveys use TypeScript.

Edit: Mea culpa. I got my numbers mixed up, or whatever source I thought I remembered just doesn't exist. 46% in 2018 (state of js) says nothing about 2019, and is not a majority. That 46% is also backed up by a similar survey that npm ran. It's worth adding though, I think, that js devs benefit from ts type inferencing and IDE support even if they aren't using it directly

<comment><USER32> > In 2019, the majority of js developers that take surveys use TypeScript.

TS is quite popular, but this cannot possibly be representative of the general population of js devs, not even close.

it's more like ES6 >> JSX >> TS >> Flow.

<comment><USER11> 46% was the survey number, so I definitely misremembered the facts. But your comparison here is inevitably necessary, since TS compiles to ES6/JSX, (as does Flow)

<comment><USER32> what was the survey sample size and how was the sample selected? (46% of 0.001% is still 0%).

my assessment isn't what things compile to but what they are authored in.

<comment><USER11> Good question. The state of js survey was self-selected, with 20.2k responses. The data is available if you're interested. The npm survey, on the other hand, was sent to 800k registered npm users and received 33.4k responses, and also found 46% TypeScript usage. I imagine there is significant selection bias in a number of ways. And, while the state of js survey found 46% "have used ts and want to use it again", the npm survey did not ask about preference. Still, a decent number of responses that I think is pretty interesting, regardless of your own preferences!

</comment></comment></comment></comment></comment></comment><comment><USER33> No you dont need a transpiler. The new language features are exiting, but its really just old concepts from other languages. And IMHO these old conceps are not better and some of them are worse. JavaScript was lucky and got some things right, like first class functions, prototype instead of classes, function scope, no need for getter/setters. Node.js also got lucky with its module system. JavaScript was lucky because it was async. Javascript got adopted in more then just browsers because it was lightweight. Etc.

</comment><comment><USER34> The "modern" Javascript parts make me almost physically sick.

Gimme back my plain old browser Javascript. It was primitive, but at least it wasn't actively harmful.

<comment><USER35> Care to elaborate?

"Modern" javascript runs just fine in your plain old browser.

<comment><USER36> Parent is talking about all the vulnerabilities and slowness that can come with it. Fair enough, it runs, but it can also open the door to fingerprinting and other weird nasties. Particularly anything reliant on the `npm install` way of managing dependencies is a potential risk from both server and client point of view.

<comment><USER35> Where is parent talking about any of that?

What about today's javascript lends itself to fingerprinting any more than javascript from twenty years ago?

<comment><USER37> Agreed - I don't see how adding things like "let" instead of "var" or the spread operator (e.g "[...x]" instead of "[].concat(x)") makes fingerprinting or anything nefarious any more likely, apart from making it more pleasant to program so maybe more people will use it?

The "old" javascript was turing complete (as the article points out), as is the current one. It is not like they've added "Object.turnOnNefariousPrivacyInvasions()".

Granted, the browser APIs have evolved (e.g. webcam access, localstorage etc) and are exposed via Javascript, but that is nothing to do with JS the language.

<comment><USER38> Those APIs also have a much stronger security model behind them today. Browsers require things like TLS and user confirmation before sharing geo information. Other actions like the clipboard API require user interaction (eg. button clicks).

JS of the past was the wild west. You want to add a bookmark? Go for it! You want to trigger a print dialogue? Why not!

<comment><USER39> >JS of the past was the wild west. You want to add a bookmark? Go for it! You want to trigger a print dialogue? Why not!

Yeah. People forget that in the bad old days you could even do things like redefine the global Array constructor[0].

[0][https://johnresig.com/blog/re-securing- json/](https://johnresig.com/blog/re-securing-json/)</comment></comment></comment></comment></comment></comment></comment>


The Real Reason They Still Play 'Mrs. Robinson' On The Radio - <AUTHOR> http://www.upworthy.com/the-real-reason-they-still-play-mrs-robinson-on-the-radio <comment><USER2> I'm as against monopolization as the next guy, but...

6 companies having a major presence in the market actually seems like a lot. How many have a major presence in the mobile OS market? Carrier market? Browser market? Soft drink market? None of those hit 6.

Similarly, that there even _are_ 140 other movie studios to compare to is amazing. There's nowhere near 140 mobile OSes, or carriers, or browsers. Maybe 140 soft drink brands, but not that anyone has access to in one area.

"Control" is so vague it could mean anything. Do these 232 media executives review every show, every article? I don't think so. An article is written, goes to an editor, maybe approved by a middle manager, and then hits the presses. Reddit and my local paper have the same owner if you go high enough on the chain, but there is certainly no connection or common message between the two. In general, I think executives care about profits, not message.

90% media market share does not mean the same thing as 90% of what Americans consider important. You can try to defend the connection if you like, but you can't just assert it without evidence or argument.

Even so, correlation does not imply causation. Maybe Americans would care about the same things regardless how many companies controlled the media. Maybe the reason these companies are so successful is that they're telling Americans what they already want to hear.

There is just way too much to the issue to say that because 6 companies control 90% of the media market we're all trapped in some common viewpoint.

Finally, go to the original source please: [http://frugaldad.com/2011/11/22/media-consolidation- infograp...](http://frugaldad.com/2011/11/22/media-consolidation-infographic/)

</comment><comment><USER3> It only works because many people choose to never venture outside what they are hand-fed. The "90%" cited only comprise about 3% of my actual consumption. You can get variety if you're willing to poke around a bit, and it's usually cheaper -- if big media scares you, help the small outlets you use and love become more profitable. Otherwise, please give the "OMG someone do something!" routine a rest.

</comment><comment><USER4> The Sun has a far higher circulation than the WSJ, yet in the info-graphic the circle is much smaller. Unless the circle size is meant to represent the size of the continent. I could have sworn Iberia was in Europe, though.

In short, this is why I hate almost all info-graphics.

</comment><comment><USER5> I'm not sure why this lists GE as having Comcast as a notable property. They only co-own NBC Universal with Comcast.</comment>