Boeing to Suspend 737 Max Production in January - <AUTHOR> https://www.wsj.com/articles/boeing-to-suspend-737-max-production-in-january-11576532032 <comment><USER2> I'm surprised that the market hasn't reacted more negatively towards Boeing regarding the Max 8 disaster.

Airlines operate on razor-thin margins (~1 to 2%), and several users of the Max 8 have had significant portions of their fleet out of service as a result.

Westjet [1], for example runs 124 planes currently. 13 of which are the Max 8. Over 10% of their fleet. Southwest Airlines [2], for example, runs 748 planes, 34 of which are Max 8s (with an additional 246 ordered), ~4.5% of the fleet.

The lawsuits that are surely incoming are going to pile-drive this company into the ground.

edit: [1] [https://en.wikipedia.org/wiki/WestJet#Current_fleet](https://en.wikipedia.org/wiki/WestJet#Current_fleet) edit 2: [2] [https://en.wikipedia.org/wiki/Southwest_Airlines_fleet#Curre...](https://en.wikipedia.org/wiki/Southwest_Airlines_fleet#Current_fleet)

<comment><AUTHOR> > _lawsuits that are surely incoming are going to pile-drive this company into > the ground_

Legally, everyone is indemnified up the wazoo.

Strategically, airlines are in a _worse_ position if Boeing goes under. Not only do they lose the planes on order. They also lose their service and replacement-parts provider. The survivors would, in the medium-term, face an Airbus monopoly and, in the long-term, a Chinese-European duopoly.

As emotionally-satisfying as it may be to see Boeing go under for its arrogance, it's neither helpful nor likely. (A well-managed break-up, on the other hand...)

<comment><USER3> >Strategically, airlines are in a worse position if Boeing goes under. Not only do they lose the planes on order. They also lose their service and replacement-parts provider. The survivors would, in the medium-term, face an Airbus monopoly and, in the long-term, a Chinese-European duopoly.

Boeing "going under" just means that shareholders will get wiped out, not that they cease operations.

<comment><USER4> I wonder if Lockheed Martin would get back into passenger jets.

Or Bombardier leads a Canadian aerospace resurgence.

<comment><USER5> Bombardier is part of Airbus now.

<comment><USER6> No they aren't; airbus has a stake in one of Bombardier's aircraft lines, that's all.

</comment></comment></comment></comment></comment></comment><comment><USER7> Lost in all of this discussion is the fact that Boeing problems began with South Carolina. The fact that politics played a big role in opening that plant should not be ignored. MAX wasn't just designed poorly, the organization process within Boeing was already failing. It's a corporate culture failure.

<comment><USER8> South Carolina and the 787 assembly process both looked like pretty poorly concealed union busting tactics to me.

First you made a plane that doesn't require the massive gantry cranes to construct. Smaller portable equipment does a lot of the work. You can build new, cheaper facilities. Then you move things more or less to the opposite corner of the country, but closer to the new headquarters.

Yeah, not suspicious at all.

<comment><USER9> Any chance you could elaborate on this? I am not following this comment thread, not able to read between the lines.

<comment><USER10> I remember reading South Carolina has among the lowest union representation among relevant workers.

</comment></comment></comment></comment><comment><USER11> A lot of people thought this couldn't happen.

Difficult to overstate the enormity of this to the industry.

<comment><USER12> Would the last person leaving Seattle please turn out the lights.

<comment><USER13> Renton sobs.

<comment><USER14> Is this good or bad for my house-buying efforts?

<comment><USER15> Neither. Closing the plants in Renton and Kent might move the needle.

</comment></comment></comment></comment></comment><comment> mark-r The big question is why they haven't done it already? Boeing's disconnect from reality is painful to watch.

<comment><USER16> It is a question, but the answer is probably pretty mundane.

An airplane is a tremendously complex machine, and building them is a well honed process with lots of checks and balances built in which protect the investment the company is making in building such a complex device.

So no doubt there are many many root cause analysis meetings which are going on to root out the failures in the process that let the plane get to this point.

But historically, the company has made modifications to the 737 airframe to provide new models and those changes have gone well. Certainly in the sense that they produced a viable airplane that was safe to fly.

I would speculate that due to the history of the 737 airframe, and the track record of creating new variants that are safe, and the challenge of stopping the manufacturing line for such a plane which literally has thousands of suppliers making parts on a schedule that has years of deliveries in it, it took this long to get through the various options that would _not_ require stopping the production of the plane. Stopping production is literally the second worse scenario[1] for Boeing.

[1] The worst is scrapping all existing planes.

<comment><USER12> I fully expect this was put out there to put this ball (tens of thousands of jobs lost) in the FAA's court. I also fully expect Boeing to halt production if the FAA processes drag out longer, its not economical to continue making aircraft and not delivering them, in that if they don't deliver them, they don't get paid.

There's a point where its no longer due diligence, but decision paralysis. I don't know if were anywhere near that point with the 737 MAX, but at some point we will be, and we shouldn't ever get there.

The problem is that this will hurt tons of small businesses and suppliers more than it will hurt Boeing. It will hurt the machinists who assemble the aircraft, the network of suppliers in the Seattle area. But for the suits in Chicago it will be a metrics miss and maybe less of a bonus.

<comment><USER17> As unfortunate as that is, due to overconsolidation, this is pretty much a foregone conclusion.

If Boeing were just one in a field of aircraft manufacturers, this wouldn't be half as catastrophic, since that whole supply chain would have everyone else to supply.

But that isn't the case anymore, and it is about time overconsolidation bit something in the arse.

</comment></comment></comment></comment><comment><USER18> I'm really wondering how much this will impact Boeing in the future and what their plans are for the 737 Max replacement.

<comment><USER19> It probably impacted already. The Boeing NMA is basically nowhere to be seen, the 777X deadlines are slowly being broken, and that should be the future of Boeing. For now, Boeing is dealing with the past, basically, corpses falling out of the closet. Not to mention the 787 engine issues.

<comment><USER20> It increasingly seems like NMA won't happen before a 737 replacement. 777X is going to be under a lot of scrutiny post-MAX and I would not be shocked if regulators find issues that Boeing overlooked before the plane is certified. At least the 787 engine issues are Rolls Royce and not Boeing, and RR isn't the sole supplier of 787 engines.

<comment><USER19> True. Basically Airbus will have time to roll out their own purebred NMA competitor by then, although they have the A321.

</comment></comment></comment></comment><comment><USER21> It will be difficult for Boeing to walk back the public opinion of the 737 MAX for what they have done.

I know plenty of airline customers who intend to never fly a segment that utilizes one.

<comment><USER22> I sincerely doubt many people will remember anything about this five years from now. There have been dozens of crashes involving various models of the 737 series, and the vast majority of the population could not name a single incident.

As soon as this is out of the news cycle, everyone will forget.

<comment><USER23> > dozens of crashes

That's wrong by an order of magnitude. 737 series had a total of 478 incidents, 213 of which is resulted in hull loss [1].

[1] [https://aviation- safety.net/database/types/Boeing-737-series...](https://aviation- safety.net/database/types/Boeing-737-series/index)

<comment><USER24> To be fair, the vast majority of those are not "crashes" in the sense that the parent post describes.

</comment></comment></comment></comment><comment><USER25> Flying already evokes an illogical visceral fear in most humans. (Listen to the screams, and white knuckled grasps, during strong turbulence.)

The 737 Max is likely dead, forever, for passenger traffic.

There's just too much for every stakeholder, but Boeing, to lose.

Most likely Boeing will need state help (like the auto company bailout) while it transitions to some new post-737-Max reality.

The 737 Max rise and fall will likely become a popular business school case study.

(I could be wrong, but I just don't see this plane ever being palatable for much of the flying public. The fear of flying is just to visceral, to simply act like none of this ever happened.)

<comment><USER26> I'm not sure the fear is illogical in a case when over 300 people have died due to a known design fault, particularly when the manufacturer in question tried to sweep it under the rug the first time it manifested itself.

I have no problem at all with flying and do it regularly (as recently as yesterday, on a 737-800 no less) but I wouldn't set foot on a MAX, even if I was assured that the fault was fixed.

<comment><USER27> The fear is illogical because there is a 1 in 2,925,000 odds of dying on commercial aircraft [0].

Before the MAX 8 was grounded, it had well over 2,000,000 hours of flight time on 387 aircraft performing 8,600 flights/week for 56 airlines [1]. Two out of 800,000+ flights crashed due to MCAS taking input from a broken AoA sensor, related to the poor maintenance of the airlines, and poor training by the airline and possibly pilot error.

Imagine the level of detail of scrutiny the MAX 8 is currently undergoing. I'll wager it'll have been the most scrutinized aircraft to have ever flown once it's re-certified, if not the safest. Plus, everyone knows about MCAS now so a crash due to it misbehaving in the case of a _double_ AoA vane failure is incredibly unlikely now.

So I think the fear is still illogical.

[0] [https://www.economist.com/graphic- detail/2013/02/14/danger-o...](https://www.economist.com/graphic- detail/2013/02/14/danger-of-death)

[1] [https://en.wikipedia.org/wiki/Boeing_737_MAX](https://en.wikipedia.org/wiki/Boeing_737_MAX)

</comment></comment></comment><comment><USER28> Heard on BBC Radio 4 news this morning: the cost of stopping production of the 737 Max is equal to 0.3% of US GDP.

</comment><comment><USER29> Related, though a bit earlier in the news cycle: [https://news.ycombinator.com/item?id=21799845](https://news.ycombinator.com/item?id=21799845)

</comment><comment><USER30> Non paywall version on cnbc.com:

[https://www.cnbc.com/2019/12/16/boeing-will- suspend-737-max-...](https://www.cnbc.com/2019/12/16/boeing-will- suspend-737-max-production-in-january.html)

Boeing's official statement:

[https://boeing.mediaroom.com/2019-12-16-Boeing-Statement- Reg...](https://boeing.mediaroom.com/2019-12-16-Boeing-Statement- Regarding-737-MAX-Production)

The relevant part:

"Safely returning the 737 MAX to service is our top priority. We know that the process of approving the 737 MAX's return to service, and of determining appropriate training requirements, must be extraordinarily thorough and robust" ...

"Throughout the grounding of the 737 MAX, Boeing has continued to build new airplanes and there are now approximately 400 airplanes in storage."

"As a result of this ongoing evaluation, we have decided to ... temporarily suspend production on the 737 program beginning next month.

We believe this decision is least disruptive to maintaining long-term production system and supply chain health."

Note: temporarily. It's still just a pause button.

<comment> mark-r Hitting the pause button doesn't mean the stop button suddenly disappeared.

</comment></comment><comment><USER31> why continue to make the planes when you have no idea when you can actually push them out the door? given that they continued to produce the MAX while they were grounded, they must be running out of storage space...

<comment><USER32> Because they have a huge backlog of orders to fulfill when it does get re- approved and it's very expensive to shut down and idle the production process (besides Boeing themselves there are 100s of suppliers)?

</comment></comment><comment><USER33> Can't they just rebrand the 737 max? Sort out their dodgy internal processes and add some new safety features. They've been repackaging old designs since the 60's anyway.

Either that or they go all in on a new medium-range aircraft, the market is already disrupted in Airbus' favour.

<comment><USER34> The MAX was a "bridge too far" for the 737 type. They need a clean-sheet design with big engines and fuel-efficient wings to compete with the A320neo, and the 737 can't be adapted to do that (wings too low to the ground) and it has a bad reputation. They're better off developing the Future Small Airplane (FSA), and call it a "797."

<comment><USER35> Boeing can build a fuel-efficient aircraft that is highly compatible with the 737 airport equipment. There are two obvious approaches.

The first approach is that taken by the Boeing 717. Do a T tail with rear engines. Bombardier, Gulfstream, and Embraer commonly do this.

The second approach is that taken by the Boeing C-17. Mount the wings high. Although usually done for turboprops and military cargo, passenger jets have been done in this configuration. The British Aerospace 146 is an example.

There are many more unusual options as well.

</comment></comment></comment><comment><USER36> Focus! Get MCAS squared away and get the plane back in the air. Reading some of these comments here makes me glad that none of us are in charge at Boeing. The comments are unbelievably naive or have huge gaps in business logic or lack technical rigor.

</comment><comment><USER37> I was imagining just to myself whether the jobs or economic impact of this production suspension by Boeing would be similar or not even close to the disruption caused by the Samsung Galaxy Note 7 fiasco.

In this case, the jobs are much higher value per person, and the supply chain much more dramatic -- big factories and machinery idled. But the Samsung battery disaster probably affected 10s of thousands of workers, and caused Samsung a reported $15B (?) writedown of value.

But then thinking again, Boeing has experience with bad batteries too... Maybe the two companies should share PR disaster recovery playbooks.

</comment><comment><USER38> Regarding the comments about renaming the plane, it is humourous that the first Boeing plane with a memorable name would turn out to be the plane whose name you'd hugely prefer if people would forget.

</comment><comment><USER39> I am half-happy to see this happen to Boeing. I just only want the execs to suffer for the Max and the tariffs against Bombardier. I don't have any ill will to the lower level employees.

</comment><comment><USER40> Max is done and will likely never fly again as designed.

The real question is will Boeing re-design it as doing so will be an admission of guilt.

</comment><comment><USER41> Why don't they suspend right now immediately, why is it set on January? What are they going to do with the previously produced, currently producing up to 31st of December, 2019? Are they going to blow them up on 2020 like fireworks to celebrate New Year?

<comment><USER42> production isn't just the plant itself - its not as simple as to send people home

production is a huge machine of suppliers delivering parts on demand - e.g. the chairs arrive exactly on the day that the chairs need to be mounted inside, otherwise is much more expensive to store, shelf, un-shelf, etc... expand thousands of times... and each supplier has its own suppliers, etc

also the tooling and all additional bits need to be correctly conserved, e.g. you can't leave sensitive measuring and calibration equipment out unused

this huge mechanism has a huge inertia. having it stopped in 2 weeks is amazing - but probably the supply chain was already working on how to stop the machinery in a way that's possible to start it again in some months

</comment></comment><comment><USER43> What prevents them from selling the same broken stuff under a new name like Boeing 987 something and everyone will be cool with that ?

<comment><USER44> What prevents them from selling the same broken stuff is the FAA and the European authority doing their jobs.

They didn't before, you say? It appears that they did not. But they have shown signs of waking up lately. It seems at least somewhat reasonable to hope that they are no longer just a rubber stamp.

</comment></comment><comment><USER45> I bet they will stop building the 737 max and start building the 737"new model that is the max with some changes that can be retrofitted". Like a larger stabilizer, longer frame, or maybe something easier. But something that lets them say it's a "new" model but keeps 99% of the production line untouched and can be negotiated with the existing buyers. We'll see how it works in some weeks.

<comment><USER15> Why?

<comment><USER44> Probably because the name is toxic.

But I don't think it will work, because it takes _time_ to engineer such a modification, and more time to get FAA approval.

<comment><USER15> The software fix is complete, and the name is already been replaced, its now the 737-8200.

<comment><USER46> That is not the new name for the MAX; it is still called the MAX and Boeing has not publicized any new name for it yet.

The 8200 is a customized MAX variant for a single airline's requirements, Ryanair.

</comment></comment></comment></comment></comment><comment><USER47> The FAA needs to stop hemming and hawing, being unclear about what they need, put in some overtime and get things done.

<comment> the-pigeon Ban the aircraft. Criminally charge everyone involved in suppressing it's serious issues and forcing it through approval.

Figure out how their processes become vulnerable to corruption and attempt to change them.

The problem is of course the FAA doesn't want to hurt Boeing or the industry over this. But that strongly conflicts with their job.

The hope at this point seems to be to drag it out until people forget.

<comment><USER12> Why, were talking about a fatal error in one small system on a huge and complex aircraft which is 90% the same as the previous iteration of this aircraft.

We can fix these things.

We should not be approaching engineering problems with emotional reactions to crashes. The airline industry is so incredibly safe because each crash is analyzed, the problems identified and solved. If two crashes mean we should scrap it, does that mean we just stop flying because every major aircraft type has had serious incidents.

No, we fix the problems and keep flying. You don't get better at something by giving up the first time you make a mistake.

<comment><USER48> Someone did the stats around the max 8. 300 lives lost in 3 years of operation and 400 planes in the sky. It is actually quite dangerous to fly and much more dangerous than driving when you compare by travel time and not distance. In comparison, A320 Neo and 787 have no hull losses and there's more of those planes in the sky than the maxes. 787s have been flying for almost 10 years.

<comment><USER49> Both losses were caused by the same faulty system, MCAS. I don't understand how can one make predictions about the safety of the plane with a fixed MCAS from the MCAS related crashes.

<comment><USER50> Because it's safer thing to do, when people lives are at risk. If it would be having some milk spilled or popcorn burnt, no one would try to make those overly precautious predictions. Also, because the plane has a bad track record, so it brought the scrutiny on itself.

</comment></comment></comment></comment></comment></comment><comment><USER51> I was looking into API to make an app for avoiding this plane, then I thought maybe I should not upset those who can kill hundreds of people and expect to get away with it.

I am not a nervous flyer, I even used to do paragliding but I am pretty determined to wait few years before flying on one of those. One thing I learned about paragliding was that you must trust your equipment or don't fly.

<comment><USER52> Surely a 737 Max is orders of magnitude safer than a paraglider...

<comment><USER51> The performance and safety certification of the gliders seem more trustworthy than FAA and Boeing at this point. Also it is expected to get trained for the failure modes of the wing(unlike with the 737 max, apparently). Not a dangerous sport if you don't take risks and have proper equipment.

<comment><USER53> You have to be kidding me. You are trying to assert that paragliding is safer than flying on a 737 MAX? Seriously?

How is this even a reasonable, thought out argument to work against? I downvoted you (and a lot of the other over-the-top reactionary nonsense from armchair "aviation experts") but I figured I'd at least explain why.

Why is it every discussion on this site that involves any large company full of such over-the-top vilification? It's so predictable and eye rollingly childish....

<comment><USER51> Obviously 737MAX and paragliders cannot be compared directly but paragliders don't come with an inherently dangerous design that is not disclosed to the pilots. Gliders do have failure modes but that is O.K. because pilots are trained to handle these. No surprises, therefore safer than 737 MAX with MCAS.

Hundreds of people died, Boeing repeatedly tried to deny the existence of the problem, the responsibility and at the end, the CEO only lost his seat in the board and nothing else. A deeper look unveiled multiple scandals about Boeing and FAA and you are complaining that I am vilifying this company? You have to be kidding me.

Why is it every discussion on this site that involves any technology that is a nerds childhood dream needs to be whitewashed? It's so predictable and eye rollingly childish

<comment><USER53> Doesn't need to be whitewashed but doesn't need a bunch of hyperbole painting every giant Corp as the most evil villain ever. Nobody anywhere can do any right on this website. Very tiring.

Like, does anybody here understand the engineering and business trade offs in airplane design? I doubt it. Just a bunch of dunning Kruger affected people who think knowing to program equates to expertise in every other field.

<comment><USER51> >Nobody anywhere can do any right on this website. Very tiring.

You are being unreasonable here.

I see you have an emotional investment in this but let's not pretend that this is a witchhunt. HN is a very positive community that supports good work and attempts, but in this case, we are literally talking about a company that did very bad job by producing a craft unfit for use by humans that cost the lives of hundreds. How positive and supporting you are expecting me to be to the work of a giant corporation that cost so much and tried to defer blame? If anything, scrutiny is what would keep the repetition of this. This is not a mom and pop store that made a mistake and asking for forgiveness, it is a giant malfunctioning structure that created big trouble and is resisting to change.

</comment></comment></comment></comment></comment></comment></comment><comment><USER54> So they have decided that it's cheaper to scrap that particular model than fix the issues, likely more reputation than technical.

<comment><USER12> They are suspending production until the grounding is lifted.

Not killing off the product.

They will of course not be paying the tens of thousands of workers that work on that product while production is suspended.

<comment><USER55> No layoffs according to CNBC: [https://www.cnbc.com/2019/12/16/boeing-will- suspend-737-max-...](https://www.cnbc.com/2019/12/16/boeing-will- suspend-737-max-production-in-january.html)

<comment><USER12> No layoffs at Boeing because of IAM, but you can bet when Boeing stops placing orders from their supplier network, people are going to be laid off.

</comment></comment></comment></comment><comment><USER56> So if you happen to hold any stock in any budget airlines (Southwest, Ryanair, that sort of thing) I would seriously consider dumping it now.

If the Max doesn't return to service or even if its grounding is prolonged this represents an existential threat to the likes of Southwest as part of the way they maintain their low margins is by having a fleet with one and only one type rating.

Other airlines (eg American) that bet on the Max (instead of, say, the A320neo) may suffer in the short to medium term too but at least they're better equipped to deal with this as they already deal with having a heterogeneous fleet.

Personally I never wanted to fly on the Max even before the crashes because (at least on American) they're even more cramped the the A321s and older 737s and 767s. I mean, who want that to shave off a few dollars? It's already uncomfortable enough. After the crashes? Why would I?

The leadership of Boeing needs to be ousted and, honestly, the DoJ should see if there was any criminal wrongdoing here as the response from Boeing (ie trying to blame the pilots and refusing to ground the plane) was abysmal. The fish rots from the head and if CEO pay is justified by the results they get ( _cough_ ) then they're also responsible when it goes horribly wrong, which it did.

The big winner here is Airbus.

And yes, I fully expect Boeing to attempt to rebrand and salvage the Max. Personally, I hope it never flies again.

EDIT: removed EasyJet as they operate an Airbus not 737 fleet. Southwest and Ryanair however fly only 737 variants.

<comment><USER57> > If the Max doesn't return to service or even if its grounding is prolonged > this represents an existential threat to the likes of Southwest as part of > the way they maintain their low margins is by having a fleet with one and > only one type rating.

The 737 MAX has the same rating as every 737 that Southwest and others fly. Part of the MCAS controversy stems from the fact that Boeing did not discuss it to avoid needing a new type rating. See [https://www.aviationlawmonitor.com/2019/03/accident- investig...](https://www.aviationlawmonitor.com/2019/03/accident- investigation-1/the-boeing-737-max-8-controversy-explained/) for more information.

<comment><USER58> They are saying that if the MAX isn't available, Southwest will have to consider buying a completely different aircraft.

<comment><USER57> Yeah...they can buy other 737 variants. The MAX may be one of the most fuel- efficient 737s on the market, but the 737NG line is still in production.

<comment><USER20> They are not going to buy more NGs. The NG is technically still in production but production has wound down significantly. All orders for airlines have been built, and all that remains are orders for the military version and various private customers. It would probably cost somewhat more for Southwest to order NGs now than it did during the production heyday where economies of scale made the plane cheaper to produce.

Buying brand-new, less-efficient 737NG planes when competing airlines gradually have more and more A320neos could allow Southwest to keep growing, but might not be a great long term investment. Southwest can keep flying their existing NG fleet for a very long time, however, so they can (and have to) wait for new planes.

Southwest isn't forced to stay with the 737. It's all about costs. Buying new NGs probably would cost more in the long run than (years from now when the backlong is reduced) starting to operate the A320neo, but far cheaper than either is if the MAX returns to service and they get hefty compensation from Boeing.

<comment><USER58> The A220-300 could also be a reasonable choice.

</comment></comment></comment></comment></comment></comment><comment><USER59> Oh!! The tragedy...737 Max was the preferred choice for people too scared to commit suicide & people who liked to live on the edge. Every time it took-off, there was no certainty that it will land back safely. It was a technical marvel that Airbus could not even dream of and the Chinese spys are working tirelessly to steal the its design. This is an injustice.</comment>


I created this to help my son – maybe you know someone that could use it - <AUTHOR>

I created this Windows based "text to speech" spelling helper application for my son.  My wife and I had to take ourselves out of the weekly, frustrating spelling quiz preparations.  My son now aces his spelling tests.  Seriously.  It's free.
Parents with kids in the lower grades will really dig this.
I created a video tutorial at the link below.
http://www.kpspellhelper.com <comment><USER3> Looks cool. I feel like it might be best to default to google's text-to-speech API if a connection is detected - in the example video, the windows t2s pronunciation sounded like "plum" and the user wouldn't have any other way to know it was pronounced incorrectly until they cross-check with google or spell the word incorrect. After a few mis-pronunciations they'll probably just use the google version every time anyways. Not that it's that big of a deal or anything.

</comment><comment><USER4> This is so great and sad at the same time.

It is great because you have shared an application that could be useful to a lot of parents. It is sad because you have stolen some parent-time from children.

<comment><USER5> Only if the saved time is used for something other than parental interaction. It is unlikely that spelling lessons are optimal bonding.

<comment><AUTHOR> Agreed. For my case, the interaction time preparing for the spelling test were never good. My son's penmanship is not great, so trying to decipher his pencil & paper practice test were tough. He and I both were frustrated - <USER2> this application was a huge win for both of us, and he now gets an "A" on every weekly spelling test. True.

</comment></comment></comment><comment><USER6> Well done. Great features. I just love simple and practical software. Also thanks for the video. I am installing it for my 5th grader.</comment>


Nexus 7 as a tool in the system administrators toolbox - <AUTHOR> http://blog.jamesrgifford.com/nexus-7-a-worthy-tool-for-the-system-administrator/

<comment><USER2> Using ssh keys instead of passwords protects your server regardless of how seldom you access the server from your Nexus 7. If you are connecting to publicly-accessible servers over ssh anyone else can connect to it as well and try to hack your username and password.</comment>


Is it true that iPhones get slower over time? - <AUTHOR> https://www.futuremark.com/pressreleases/is-it-true-that-iphones-get-slower-over-time <comment><USER2> Was really looking for loading time stats and similar instead of just CPU and GPU benchmarks. The user experience is what matters, brute hardware performance is immaterial. A crappy device with heavily optimized software can work much better than a more powerful device that has a bloated software stack with no optimization.</comment>


Self-Encrypted Cache Structure - <AUTHOR> https://www.nayuki.io/page/self-encrypted-cache-structure <comment><USER2> If I am not mistaken, [https://eprint.iacr.org/2019/1126](https://eprint.iacr.org/2019/1126) talks about this.

</comment><comment><USER3> I have 1 philosophical and 1 implementation concern with this.

From a philosophical perspective I don't think looting dumpsters is a valid threat model - if someone gets your _unencrypted_ hard drive then the main contents are likely more damaging than cache content. The solution to that problem is full disk encryption by default on all devices, not application specific encrypted caches that do nothing to protect your data at large.

(That said, browser caches _are_ a privacy concern because they can be used to leak cross-origin information with timing attacks. This is why Chrome moved to per-origin caches rather than a global cache: [https://chromestatus.com/feature/5730772021411840](https://chromestatus.com/feature/5730772021411840))

From an implementation perspective the encryption scheme uses unauthenticated aes-cbc. Some developer is going to use this cache in a web endpoint and trivially introduce a padding oracle attack.

</comment><comment><USER4> My only immediate problem with this design is that AES-CBC doesn't provide authenticated encryption. AES-GCM would be a better choice.

</comment><comment><USER2> The first implementation makes sense. However the second "hardened" one is completely broken, because now the cache is encrypted with the dictionary key...

<comment><USER5> Yes, instead a solution would be:

      encryptionKey = hash(salt + key)
      dictionaryKey = hash(encryptionKey)

<comment><USER2> It seems the blog was fixed now (without a note)

</comment></comment></comment><comment><USER6> I think this approach may find good application to DHT, disabling DHT search engines from browsing items for censorship or copyright infriengement.</comment>


Startup offers unlimited flights on commercial airlines for $1,500 a month - <AUTHOR> http://roadwarriorvoices.com/2015/06/23/startup-offers-unlimited-flights-on-commerical-airlines-for-1500-a-month-plus-free-checked-bags-precheck-and-wi-fi/

<comment><USER2> Newbie here. With just two or three flights per month your're exceeding the $1,500 prize. How can this be profitable?

<comment><USER3> They are probably hoping that the average person won't be taking more than 2 or 3 flights per month and it will more than pay for the people that do.</comment></comment>


Oracle 1994: Patents aren't good for our industry where innovation occur rapidly - <AUTHOR> http://www.fsf.org/news/oracle-v-google

<comment><AUTHOR> Full quote from <http://www.bustpatents.com/articles/oracle.htm>

Oracle Corporation opposes the patentability of software. The Company believes that existing copyright law and available trade secret protections, as opposed to patent law, are better suited to protecting computer software developments.

Patent law provides to inventors an exclusive right to new technology in return for publication of the technology. This is not appropriate for industries such as software development in which innovations occur rapidly, can be made without a substantial capital investment, and tend to be creative combinations of previously-known techniques.

Even if patent law were appropriate for protection of software, due to the large volume of recently-granted software patents and the rising number of new applications, the current patent process would continue to be troublesome for the software industry. Software patent examinations are hindered by the limited capability of searching prior art, by the turnover rate among examiners in the Patent and Trademark Office, and by the confusion surrounding novelty and innovation in the software arena. The problem is exacerbated by varying international patent laws, which both raise the cost and confuse the issue of patent protection.

Unfortunately, as a defensive strategy, Oracle has been forced to protect itself by selectively applying for patents which will present the best opportunities for cross-licensing between Oracle and other companies who may allege patent infringement.</comment>


Ask HN: How to become a freelancer?  - <AUTHOR>

Is it possible to become a Web developer without a college degree or previous job experience?
What does it take to become a freelance programmer making decent amount of good money? 50k+ ?
What do I need to learn? what language? what stack and technology? To get started? Is PHP the right choice for a beginner Web developer who has never worked as a developer? <comment><USER2> Learn Python/web.py. Powerful framework with no learning curve. More importantly, proportionate to how easy it is to learn, it gets the job done, _fast_.

Anything that saves you time is good, because there will be a lot of repetition. If you're doing web development, use single quotes instead of double quotes (to save shift keystrokes). Use Jade/Coffeescript/SASS instead of HTML/JS/CSS. Learn jQuery. Use Bootstrap instead of doing your own design, unless you also want to sell yourself as a designer, but tell clients you'll also provide design (they can't tell the difference). Build up a library of code that you can reuse (basically anything you find yourself copy/pasting or rewriting between projects). Use quick-and-dirty solutions instead of long, conventional ones as long as (a) it results in a net decrease in time spent, (b) the product quality stays the same, and (c) the client doesn't know or doesn't care.

Build MVPs for clients from start-to-finish by yourself instead of working with others unless the overhead is compensated by money. Learn how to write, because being fluent in English will get you surprisingly far in a market where a lot of your competitors can't use punctuation.

Charge per-project, not per-hour. This way you're rewarded, not penalized, for being a fast worker.

Experience: freelance programmer here who dropped out of college and never had a job; making enough to survive and spend the rest of my time on other things.

<comment><AUTHOR> Thank you for this, I'm familiar with Python and basic Django but honestly comparing Python and Django vs PHP/MySQL the later seems more easier the former seems a little bit to magical especially when MVC comes into play how does one understand Routes or Models, View and Controller?. Using PHP/MySQL seems like would be more easier to understand with MVC.

<comment><USER3> Practice with CodeIgniter or Laravel. It won't take long to learn. Once you learn MVC, it's all you will ever use. It helps keep things organized, portable, and efficient.

<comment><USER4> Do not, under any circumstances, use CodeIgniter. It will teach you all sorts of rubbish, and the framework is dieing (or dead). Laravel is light years ahead.

</comment></comment></comment></comment><comment><USER5> Find a business owner that needs web development done that doesn't have time to do it herself or knows a little bit less about it than you.

You can charge that business owner now. Any language will work and there are trade offs for each language.

<comment><USER6> Don't quote them an hourly rate. That means nothing to them. Tell them they will get X for price $Y (flat fee all inclusive) and they are more likely to go forward.</comment></comment>


Suddenly, Microsoft says you can't use Windows 7 and 8.1 on your new PC Idiots - <AUTHOR> http://www.computerworld.com/article/3023533/microsoft-windows/microsoft-support-windows-10-new-hardware-itbwcw.html <comment><USER2> Not everyone, not even most, but a lot of people and companies will be capable of running linux and be done with it. The big deals will be Word, Excel and other enterprisy tools. But just because a few people in a company us those three doesn't mean that _everyone_ has to run the OS that runs those.

This would be helped if people would realize that we don't need "professional" level word processors for everyone. Plain text or .rtf would really suit most needs. I'm leaving off Libre Office, because that's huge and the features would slow adoption.

Plain text, rtf + export to PDF when you need a bit of formatting, and that should do it for most people, they just don't realize it.

</comment><comment><USER3> Previous discussion: [https://news.ycombinator.com/item?id=10917473](https://news.ycombinator.com/item?id=10917473)

<comment><USER4> Also: [https://news.ycombinator.com/item?id=10918462](https://news.ycombinator.com/item?id=10918462)</comment></comment>


Scientists Make Desktop Black Hole - <AUTHOR> http://www.wired.com/wiredscience/2009/10/desktop-black-hole/

<comment><USER2> "Black hole" is misleading since the usage is a fairly significant departure from the usual definition. It's really closer to "black body" for a particular chunk of the spectrum. The Wired bit confuses matters further by talking about things being 'sucked into' the 'black hole'.

<comment><USER3> Yes, by the description it sounds like a blackbody. But it doesn't look that black in the picture... ;-)

<comment><USER4> As far as I can tell, it wouldn't unless it absorbed the visible light spectrum... but I'm no physicist.

</comment></comment></comment><comment><USER5> Paper: [http://arxiv1.library.cornell.edu/PS_cache/arxiv/pdf/0910/09...](http://arxiv1.library.cornell.edu/PS_cache/arxiv/pdf/0910/0910.2159v1.pdf)

<comment><AUTHOR> oh nice. Thanks for sharing this.</comment></comment>


Who owns Route 66? (2010) - <AUTHOR> http://shoestringtheory.com/2010/04/21/who-owns-route-66/ <comment><USER2> _" It's simply unfathomable to me that this trademark can stand as legally binding. The fact that it's held by a European company is just insulting on top of that."_

Unnecessary acrimonious statement. Is it because it is a non-US company, or specifically a European company?

I believe French people could feel similarly insulted by California _" champagne"_⁰.

0: [http://www.chapmanlawreview.com/archives/1256](http://www.chapmanlawreview.com/archives/1256)

* * *

EDIT:

Thanks for the replies. I agree California champagne is a poorly chosen example.

I understand the outrage about a Dutch company claiming ownership of the image of Route 66, but it just feels like _" insulting"_ is too strong a word.

<comment><USER3> The claim that champagne refers to bubbling wines in general and cannot be owned, is (not perfectly, but quite) the opposite of the idea that a general and public concept (route 66) is ownable by an entity.

<comment><USER4> There are other bubbling wines that are not called "champagne".

</comment></comment></comment><comment><USER5> There are about 30 different US trademarks for "Route 66", in different categories - beer, tobacco, etc. Tempting Brands owns many categories. The question is whether they have products in them.

You can register a US trademark with an "intent to use" it, but normally you have to submit a statement of use with an image of the trademark being used on some product within six months. Here, though, Tempting Brands filed in another country first, which gives them a pass on that initial requirement.

Between 5 and 6 years after initial registration, though, the trademark owner, even if non-US, must submit a statement with an image of the trademark being used on some product to the USPTO. Some of their trademarks, such as #79975044, just passed that point. There's a six month grace period after year 6 during which renewal is still possible with a double fee ($100 per class registered), and that's now timing out.

</comment><comment><USER6> Anyone know what ever happened with this?

<comment><USER7> [http://www.temptingbrands.com/ROUTE_66.html](http://www.temptingbrands.com/ROUTE_66.html)

</comment></comment><comment><USER8> Route 66 no longer exists as such. How about Franklin and Marshall?

</comment><comment><USER9> Trademark law may actually be stupider and more convoluted than even copyright.

<comment><USER3> As someone quite opposed to copyright and patents, I'd say there is an argument for trademark; the use of trademarks is weakly rivalrous - if I start using it, it can potentially occlude your ability to use it. For example, I start an Acme widget company, and you also make widgets branded Acme, of a poorer quality than my widgets. The strength of the rivalrousness depends on factors, such as locality of operation, domain of operation, and it is on that, rational, basis that trademarks are managed - you have to show you're using the trademark, you have to show that you are defending it, and you only get a regional trademark where you are actively operating and in the domain that you're operating. Five guys hamburgers can't (easily) stop Five guys auto mechanics.

On the other hand, there are people badass enough to not bother trademarking (David Tran doesn't trademark Sriracha)</comment></comment>


Boxxle in Swift – Game Boy Port - <AUTHOR> https://github.com/kennycason/swift_boxxle

<comment><USER2> By the way, this is originally a japanese game called Sokoban. Boxxle was a clone of Sokoban.

[https://en.wikipedia.org/wiki/Sokoban](https://en.wikipedia.org/wiki/Sokoban)

I wrote a space-themed iOS derivative of Sokoban many years ago, which I sadly never put up on the app store. I wanted to build more levels, free-to-play mechanics, and got sidetracked and never finished the project. This is what an early build looked like, before I built in a better input mechanism:

[https://vimeo.com/3918704](https://vimeo.com/3918704)

I ended up finding it cumbersome for each move to require a tap, so I built a mechanism whereby you could draw your movements on screen and queue them up.

[http://cl.ly/image/0c222O3I020Q](http://cl.ly/image/0c222O3I020Q) (a whole bunch of stuff is broken in this dev screenshot).

<comment><USER3> Nice!

I wrote a rather simplistic clone (no sound!) just to learn some Z80 assembly and GameBoy hardware low-level programming, back in 1997 ([http://www.student.nada.kth.se/~d94-ebr/rel_sw/gb/sokoban/do...](http://www.student.nada.kth.se/~d94-ebr/rel_sw/gb/sokoban/docs/)).

It's the first (and only!) program I've written for the GameBoy, so don't expect too much.

<comment><AUTHOR> Awesome! Is there a link to the source? I couldn't seem to find it, but I'm actually a huge fan of Z80 ASM as it was one of the first assembly languages that I tinkered with. I'd love to revisit sometime as a fun side project.

</comment></comment></comment><comment><USER4> Just to be pedantic - this isn't a port as the original source wasn't used, this is a remake.

<comment><USER5> Another nitpick: It wasn't Nintendo who created Boxxle. The game was developed by Thinking Rabbit and published by FCI.

[http://en.wikipedia.org/wiki/Boxxle](http://en.wikipedia.org/wiki/Boxxle)

</comment></comment><comment><USER6> Great job!

A few suggestions:

1) You may have better results with your pixel art if you change the filteringMode of your SKTextures to SKTextureFilteringMode.NearestNeighbor instead of .Linear.

2) You might want to store SKTextures in your imageDict instead of full SKSpriteNodes. It seems you aren't reusing those nodes, just the textures.

3) Maybe use a plist file to store the level data instead of hard-coded array constants? It's a little more flexible once you abstract the data outside of your source code.

<comment><AUTHOR> Thanks a lot, It was certainly a battle of figuring out Swift while making continual forward progress. Thanks for the suggestions. I didn't even know about the filtering mode! I also agree on only storing the SKTextures. In regards to the level data. I hated storing hard coded arrays but couldn't figure anything else out in time :) I would 1000x prefer to use a plist file to store the data. That way I could also more easily parse the common level formats. For example: [http://www.ne.jp/asahi/ai/yoshio/sokoban/handmade/soko001.tx...](http://www.ne.jp/asahi/ai/yoshio/sokoban/handmade/soko001.txt)

Thanks for taking time to read through the code!</comment></comment>


Ask HN: How will the Geosocial mobile proximity app/network nut be cracked? - <AUTHOR>

IMO, an existing user base needs to be co-opted with a compelling value proposition that creates a community around that brand/location(s). <comment><USER2> IMO, I think it's a solution in search of a problem. Hence the reason why you need to come up with a compelling value proposition.

</comment><comment><USER3> It already has! Grindr is a runaway success in the geosocial space.</comment>


Ask HN: What's your home office workstation setup? - <AUTHOR> <comment><USER2> A small party table from costco, an old monitor, keyboard/mouse from office and a chair from dining table set. I know I need upgrade very soon.

</comment><comment><USER3> I have a motorised, height-adjustable desk with a large monitor on an arm.</comment>


What is the most dangerous drug? (2019) - <AUTHOR> https://www.economist.com/graphic-detail/2019/06/25/what-is-the-most-dangerous-drug <comment><USER2> The article mentions some of the shortfalls of the scoring system used, but I'm going to repeat an important one in the comments since not everyone reads the whole article.

The scoring system used makes it look like alcohol is about as harmful as crack cocaine or heroin. That's because they don't normalize every harm per capita (some are, some aren't). What the scores show is that the total harm of nearly every adult in the UK drinking alcohol is about the same as the much smaller groups of people using crack or heroin. If an individual was choosing a drug to use, alcohol is by far less harmful per user.

I'm not totally disagreeing with the article; it makes good points but it's a little unfair to compare legal drugs vs illegal drugs on the basis of their total harm. If you want a fair comparison you should come up with a way to compare the harm that crack or heroin would do if they were legalized- I realize this is hard to do because you have to estimate how many more people would use heroin and also estimate whether the supply chain would become safer. My opinion is that an analysis assuming legality would show that crack and heroin would still be pretty harmful but that many recreational drugs like ecstasy and marijuana would be less harmful than alcohol if legalized.

Quick edit: the comparison that I'm talking about is what causal inference in statistics tries to do, but this particular example is an unsolved problem because of issues with transportability and generalizability that arise because we don't have any data where hard drugs are legal in a population that is comparable to the UK.

<comment><USER3> You make a good point. Another good point is that alcohol always comes out worst in these types of studies because it is relatively easy to detect. Blood and breath alcohol tests are prevalent, the police uses them all the time, including on people that have been killed by car accidents.

Tests for other drugs are much more difficult, because as opposed to alcohol most other drugs get metabolized very quickly. While there are tests used to determine whether someone has used a certain drug within the last week or month, etc., there are no reliable tests to determine whether someone is under the influence right now.

Thus, a lot of harm caused by other drugs gets ascribed to alcohol.

<comment><USER4> This is actually a big hurdle for legalization, IMO. I have friends who live in states where recreational marijuana is legal, but they can't smoke because their jobs do random drug tests.

They do safety critical work where being under the influence can cause serious harm (think construction). It makes sense that the employer needs to make sure everyone is sober, but its a huge pain for everyone that the only way to make sure you are sober _right now_ is to make sure you've been sober all month.

</comment></comment></comment><comment><USER5> As someone who experimented with numerous drugs in college, I always remember being buzzed or drunk when the second drug was introduced. Alcohol lowers inhibitions and puts one in a "party" mode. It's also everywhere, making it easy to consume more than one drink. Plus it's fun to "stack" with other drugs like stimulants, making intoxication more dangerous. Alcohol is THE gateway drug.

</comment><comment><USER6> Here is the original Lancet article [1] that has been used as the basis for the article.

[1] [http://www.ias.org.uk/uploads/pdf/news%20stories/dnutt- lance...](http://www.ias.org.uk/uploads/pdf/news%20stories/dnutt- lancet-011110.pdf)

</comment><comment><USER7> That's a weird chart there by the link. Tobacco can hardly cause any mortality in a direct way and if we consider indirect (via lung cancer) then we should also consider many other carcinogens. And if we swap it for pure nicotine (in form of a proper vape liquid, chewing gum or whatever) we hardly are going to detect any evidence of harm at all.

Ecstasy can indeed cause health damage if used improperly (it can be neurotoxic if you overheat, it can weaken your immune system and let a virus in, it can cause depression-heavy hangover if you use it too often) but they say LSD is even more harmful for your heath and shrooms are comparably harmful! For fuck's sake, how? Needless to say LSD and shrooms have extremely low addiction potential, ecstasy having it slightly higher.

<comment><USER8> If smoking just caused lung cancer that would be one thing. Most smokers never get lung cancer, they develop and die from cardiovascular disease and chronic obstructive pulmonary disorder.

</comment></comment><comment><USER9> I'm genuinely surprised Sugar is not even in the list.

<comment><USER10> The headline (and chart) is misleading. The article is about intoxicants.

Also, sugar isn't generally considered a drug.

<comment> mark-r Is tobacco considered an intoxicant then?

</comment></comment></comment><comment><USER11> The most heavily abused drugs are the legal ones. This fact for a long time made me an opponent of drug legalization.

But the destruction of culture and civilization in all the transit and production countries (Mexico, Colombia, central america, southeast asia) made me realize we need to deal with our own problems with drug use in our populace and needed to destroy the economic rewards in shipping and production of narcotics.

The main chart does not seem to include opioids aside from methadone, which are rampant in the US and responsible for the resurgence of heroin abuse.

</comment><comment><USER12> Title should say "party/recreational drug" or "narcotic" instead of "drug".

<comment><USER13> Narcotic properly refers to opiates, though law enforcement and uses it to refer to all illegal drugs.

Recreational drugs or drugs of abuse are more accurate.

</comment></comment><comment><USER14> It easy to gather and drink a bit of alcohol, like in ancient times. I can be social, but the dangers are bigger.

</comment><comment><USER15> [https://archive.md/UqKQG](https://archive.md/UqKQG)

</comment><comment><USER16> Sugar should be on the list!

</comment><comment><USER17> I feel like this graph is far too general to be useful

</comment><comment><AUTHOR> Social media and 24hr news

</comment><comment><USER10> If hard drugs were legalized, I doubt they'd stay less dangerous than alcohol.

<comment><USER18> I don't think there are many people out there who are itching to doing heroin and crack but don't because of legality. On the other hand, there are a whole lot of people out there who already do heroin but are dying because they're getting fentanyl instead, due to a lack of quality control and unscrupulous vendors who care more about a quick buck than the long-term survival of their customers. Not to mention all the violence, which comes from criminals vying for territorial control, rather than users.

<comment><USER19> You think if heroin and other opioids could be bought in any store as easily as alcohol, there wouldn't be a lot more use than there is today?

<comment><USER20> I agree with the grandparent that there wouldn't be more _informed_ use. However if the legal purveyors are allowed to market these substances in the same profit-motivated manner in which they currently move products (including dangerous and addictive existing _legal_ products) then I agree we likely would see more use.

Since basic common sense policy that should lead to a safer and freer world is being pragmatically limited by this profit-driven system perhaps it would pay to examine that other problem as well.

</comment></comment></comment></comment><comment><USER21> Statism is the most dangerous drug.

</comment><comment><USER22> Power</comment>


A Summary of the Metaclasses Proposal for C++ - <AUTHOR> http://www.fluentcpp.com/2017/08/04/metaclasses-cpp-summary/ <comment><USER2> I'm torn about this proposal. One one hand, I like that the feature generalized something that you can (for the most part) already do in C++, and I like the new expressiveness metaclasses would provide.

On the other hand, this is kind of insane. C++ is insane. And I'm still not convinced this proposal is more than another bandaid over the fundamental problems with the language. Why do our programming languages keep ending up as terribly complicated and incomplete specifications of scheme or smalltalk?

I don't have a better proposal though and do admire the thought and effort given to retrofitting C++ as a modern language

<comment><USER3> But C++ has always been a "modern a language". In the sense that there is nothing "obsolete" about it. Yes, it is complicated, but so is math, for example. Programming is complicated. Real world programming, that is. C++ is "complicated" because it is designed to address real life problems. It was designed based on a well-defined set of design criteria. Which are different from those Java's and JavaScript's designs were based on. If you are to question the sanity of C++, question those criteria.

</comment></comment><comment><USER4> My first reaction to $class was the following: since we are talking about metaclasses, why not use that name instead, that is "metaclass" in place of "$class"?

<comment><USER5> Not sure what you mean exactly, but $class is just an example, you can also have $interface $sometypeofstruct $unmutablevaluetype etc so prefixing that all with 'meta' would be a mess

<comment><USER6> In the proposal, '$class' is actually the proposed keyword for introducing a metaclass; you won't continue to use '$' for all of the classes created from that metaclass. stephen82 is suggesting that we use the keyword 'metaclass' instead, which I probably prefer.

</comment></comment></comment><comment><USER7> I don't see this making it into the standard.

1\. Interface = abstract class, already present.

2\. Reflection, rtti is sparsely used because c++ is primarily used for speed and large teams.

3\. Reserved words prefixed by $, etc. Well, outside of a preprocessor directives, that will be a first , if it ever happens.

By the look of the thing, the author wants c++ to be more like c#. But c++ isn't restricting on patterns, we create them. Unlike c# there is no language defined way for dependency injection, interfaces etc. Well we can argue that, but c++ is more flexible on pattern creation, and this proposal wants to put two patterns inside the standard. I just don't see it happening.

<comment><USER8> 1\. It's about abstracting what "classes" are, since the built-in "class" metaclass is trying to be one-size-fits-all. Yes, an interface is an abstract class, and if you could do things like make your own "interface" metaclass, then you can "create more patterns," in your words.

2\. This is compile-time reflection, which is how a metaclass generates code, so there shouldn't be much of a run-time speed consideration. I think the comparison with C# isn't quite right; if anything, the author wants C++ to be more like Lisp, Smalltalk, or even Python, which all have at least some semblance of a meta-object protocol (and code-writing code, in the case of Lisp).

<comment><USER7> 1\. Classes itself can be improved, but at this point, will they date breaking compatibility? Maybe from that perspective this will be given a shot.

2\. More code at compile time would work. Pythinizing may work. Lisp is quite different.

<comment><USER9> Indeed. I think this is one of the best things about the proposal: it offers a way out of the current hardcoded behaviours. At the moment we barely even think about whether or not they're correct, because they're obviously too hard to opt out of.

<comment><USER7> If anything, the proposal corners people into _more_ hardcoded behaviours.

<comment><USER9> Don't see why, you don't have to use the keywords given, and in the future existing keywords could be deprecated.

</comment></comment></comment></comment></comment></comment><comment> D-Coder If a metaclass is a way to make classes, can you have a meta-metaclass that makes metaclasses? Meta-meta-metaclasses to make meta-metaclasses? (etc)

</comment><comment><USER10> funny how D already solves all these issues.

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

> "Compile-time programming consists in defining a region in the codeline > where the code is meant to be executed at compile time, with the evaluation > of compile time data leading to a result. "

Wow, great. So in 2017, C++ is finally able to have a feature that Lisp had since about 1966.

Yes, you can call this comment "smug", but my point is less smug and it's the following:

C++ has been bloated _too much_. It used to be a nice OO language -perhaps not as elegant as Objective C- but, as the times advanced, good-intentioned people retrofitted more and more characteristics into C++, but the side efects of these "retrofits" is a chaos that is ultimately leading to more criticism of C++ and more people getting interested in alternatives like Julia and Rust.

Julia in particular has a very interesting OOP implementation that includes multiple dispatch, and also has good support for metaprogramming.

Rust, as I see it, is a good alternative to C++, and should also work for systems programming.</comment>


Tesla and FBI prevented $1M ransomware hack - <AUTHOR> https://electrek.co/2020/08/27/tesla-fbi-prevent-ransomware-hack-gigafactory-nevada/ <comment><USER2> Buried in the footnotes of the criminal complaint:

> CHS1 [Confidential Human Source] is cooperating with the FBI because of > patriotism to the United States and a perceived obligation to Victim Company > A. CHS1 has not asked for and has not been offered any form of payment, > including consideration regarding immigration or citizenship.

Does that mean this person is a foreign national? Would it be risky for this person to return home (perhaps to Russia?) after assisting the US government in this way?

<comment><USER3> From the sounds of it CHS1 is probably a Russian national. I'm honestly surprised s/he hasn't asked for compensation or a visa; although we don't know who they are the ransomware group certainly does and I would be scared they are plotting revenge (especially if they end up having to leave the US).

If I were the FBI I would be putting this dude in witness protection and building them a new identity.

</comment></comment><comment><USER4> I love reading stories about good people who step up and do what's right. It seems most of today's media is slanted to highlight those people who make the immoral, self-serving choice. Thank you, Tesla employee. Thank you for doing the right thing.

</comment><comment><USER5> Additional context:

[https://news.clearancejobs.com/2020/08/26/tesla-insider- work...](https://news.clearancejobs.com/2020/08/26/tesla-insider-works-with- fbi-to-turn-the-tables-on-russias-million-dollar-attempt-to-hijack-the- network/)

[https://www.justice.gov/opa/pr/russian-national-arrested- con...](https://www.justice.gov/opa/pr/russian-national-arrested-conspiracy- introduce-malware-nevada-companys-computer-network)

</comment><comment><USER6> muy interensante.

we _often_ theorize about / present a threat model of an insider becoming malicious in exactly this way. rare that we hear of it actually occurring.

the number used in such threat modeling scenarios is typically $1MM. maybe we need to up that to $4.5MM. (per TFA)

note the simplification in the headline: the $1MM was merely the insider's share, not the proposed ransomware amount.

<comment><USER7> The CWT ransom was 4.5M. Strange considering the Russians are willing to give the attack method 25% of the (previous) take home.

</comment></comment><comment><USER8> Sign of a new trend? Most ransomware teams use traditional tactics: phishing to establish beach head, pivot to hunt down admin creds, game over. Some teams make opportunistic use of perimeter vulnerabilities (ie pulse VPN).

Most companies struggle with basic security controls like patching. Very few would survive insider threats with admin creds.

</comment><comment><USER9> I really wish sites would stop using scribd to host primary documents, which requires an account to be able to download them. Use something like DocumentCloud instead - which is both leaner, and does not require account to download files.</comment>


Bloomberg Plans a $50 Million Challenge to the N.R.A. - <AUTHOR> http://www.nytimes.com/2014/04/16/us/bloomberg-plans-a-50-million-challenge-to-the-nra.html?_r=0

<comment><USER2> It's disgusting to see how differently the MSM spins astro- turfing when it's an anti-gun campaign, as opposed to something like the tea party.

<comment><USER2> I take it from the downvote that you disagree that it's astro-turfing? I'd like to know why you do ...</comment></comment>


Easy E-mail encryption to protect your privacy - <AUTHOR> https://kinko.me/

<comment><USER2> I don't understand how this can possibly work unless your recipients are set up to receive PGP encrypted email as well.</comment>


Bank of America froze our account because we use TransferWise - <AUTHOR> TL;DR Bank of America feels threatened by TransferWise and penalized us for using them.
Paperspace is a semi-remote company with employees spread around the world. Several years ago, we discovered TransferWise as an easy and affordable way to make international payments.  We have since been using the tool to pay all remote employees. For those of you that are not familiar with TransferWise, it's a UK based startup with the mission of lowering the costs associated with international money transfers. The crux of this problem is that banks use a fake exchange rate (made up by the bank) which costs companies collectively billions of dollars. It's a dubious practice which IMO should be regulated but that's a topic for a separate conversation. In any case, TransferWise is loved and trusted by thousands of organizations like ours and is backed by leading investors such as Richard Branson, Andreesen Horowitz etc. They have over 1,000 employees and move over $4B per month. In other words, they are legitimate.
So, what happened?  My guess is, Bank of America decided it didn't like that using a competitor and decided to freeze our account.  We lost all ability to transfer money and had to scramble to pay vendors, make regular payroll (in the US) etc.  To get up and running again, we were instructed to fill out a 16 page form on paper about what our business does that we had to wait up 48 hours to regain access to our money.  We are in the midst of this process.  We were on the phone all day yesterday and were told there is no way to expedite this process and that we would just have to wait until they got around to validating the information in the form.
I wanted mention this here as a warning to all TransferWise users and to hopefully draw attention to this nefarious practice such that banks stop the nonsense immediately.
Happy to answer any questions. <comment><USER2> Take all of your money out of BoA (Bend Over America) and open an account at the local credit union. You'll be happier in the long run.

</comment><comment><USER3> We use Chase and use USForex for our FX payments. No issues to report.

A bank can't lock you into their shitty FX product. I would look at a way to have TransferWise "pull" via ACH instead of you pushing the money (if they support that). Banks usually don't care about pulls.

<comment><AUTHOR> This is good advice but we actually do pull from BofA. The mere act of using TransferWise is what triggered the freeze. Or at least that's what I was told.

<comment><USER4> I think, AML vendors that sell their software to banks are adding ACHs/wires to international transfers (transferwise, xoom, ria, etc).

</comment></comment></comment><comment><USER5> My bet is this is related to AML (anti-money laundering) more than BAML being vindictive. Especially since you were using it to pay people remotely. Not forgiving them for poor customer service, but that's what it seems like to me.

<comment><USER6> Mine too. Frequent transfers of amounts below the $10000 reporting cap will definitely trigger an alarm at the bank.

</comment></comment><comment><USER4> Are you wiring from your BofA account to TransferWise's Wellsfargo account in NY? Or are you doing ACH for amounts < $10K?

There is another explanation for BofA behavior: their AML software triggered your account.

</comment><comment><USER7> Your TL;DR should be: Don't use Bank of America. Most major banks these days are not a good idea. Instead, look for relatively stable but smaller banks or even credit unions locally. They will not only treat you better but won't do crazy shit like that. Only disadvantage is that they may have some outdates processes/systems but in terms of them not screwing you over with stupid so called "policies", you are better off.

<comment><AUTHOR> We've definitely considered this and the only reason we haven't is that BofA offers a relatively nice mobile app, web interface, support (24/7), and permission management (roles) for our team. I agree in principle but it's a tool that we actually spend a non-trivial amount of time in so the experience of interacting with the service is something we, unfortunately, can't fully discount.

<comment><USER8> Consider switching fully to TransferWise by using their "Borderless" account.

</comment></comment></comment><comment><USER9> Well, TransferWise has fees and "fake exchange rate" as well. Forex is not a centralised market ;)

They are doing the same as any bank or forex broker in that regard.

</comment><comment><USER10> I too think it might be some AML warning but at the same time, use it as a reason to drop BofA.</comment>


Wikileaks' Leaks Leaked: Newspaper Has All the Cables - <AUTHOR> http://www.readwriteweb.com/archives/npaper_has_access_to_all_wikileaks_diplomatic_cables.php

<comment><USER2> I thought that they gave the Big 2 papers the entire dump, and they decided not to publish them all?</comment>


Facebook: Share Photos and Videos Anywhere You Have Email - <AUTHOR> http://blog.facebook.com/blog.php?post=109768117130

<comment><USER2> Getting an error...

         Invalid URL
         The requested URL "/blog.php?post=109768117130", is invalid.

         Reference #9.4f574eca.1248322361.1cfd8323

<comment><USER3> Are you by any chance not in the U.S.? I've always gotten that error message trying to get to blog.facebook.com (from Japan).

Go in through some U.S.-based proxy and it ought to work.

<comment><USER2> Weird that they would block non-US access to their blog.

<comment><USER3> doubt it's intentional

</comment></comment></comment></comment><comment><USER4> I will use this, because the last time I wanted to upload a picture to facebook, I had to use some awful Java applet that crashed my browser (Note: this is not so much anti-Java as anti-today's-implementations-of-things- surrounding Java).

<comment><USER5> _(Note: this is not so much anti-Java as anti-today's-implementations-of- things-surrounding Java)_

How is that not anti-Java? Today's implementations (there's more than one?) of things surrounding Java are all we have.

<comment><USER4> Yes, there's more than one. On Ubuntu, for instance, just look at how many JVMs there are to choose from in the package manager.

</comment></comment></comment><comment><USER6> I love the email name I got. Any time the words "knobby" and "moat" are what get randomly generated I snort like a drunk frat boy.

</comment><comment><USER7> Promotion of unimpressive new Facebook features hardly qualifies as something which "gratifies one's intellectual curiosity", which is, roughly, the most important measurement of weather something should be posted here.

Begone!

<comment><AUTHOR> Poster here. This "unimpressive feature" is at the heart of YC backed Posterous. Thought it would be interesting to see the comparison.

And if you want to talk about site guidelines, your comment is against them:

 _"Please don't submit comments complaining that a submission is inappropriate for the site. If you think something is spam or offtopic, flag it by going to its page and clicking on the "flag" link. (Not all users will see this; there is a karma threshold.) If you flag something, please don't also comment that you did."_

<comment><USER8> Many sites have email as a feature. We're thrilled to see more attention being paid to that feature.

But our vision is quite a bit more than just that feature.

<comment><USER6> _But our vision is quite a bit more than just that feature._

So is Facebook's. ;-)

<comment><USER8> It's easy to frame the marketplace as a zero sum game. Someone's win equals your loss and vice versa.

The reality is that model is a massive oversimplification, and thinking that way is value destructive.

<comment><USER6> I didn't say it was zero sum. I like Posterous quite a lot.</comment></comment></comment></comment></comment></comment>


"Little Languages" by Jon Bentley (1986) [pdf] - <AUTHOR> http://staff.um.edu.mt/afra1/seminar/little-languages.pdf <comment><USER2> Counterpoint: "A Universal Scripting Framework, or: Lambda: the ultimate "little language""

"Abstract. The "little languages" approach to systems programming is flawed: inefficient, fragile, error-prone, inexpressive, and difficult to compose. A better solution is to embed task-specific sublanguages within a powerful, syntactically extensible, universal language, such as Scheme. I demonstrate two such embeddings that have been implemented in scsh, a Scheme programming environment for Unix systems programming. The first embedded language is a high-level process-control notation; the second provides for Awk-like processing. Embedding systems in this way is a powerful technique: for example, although the embedded Awk system was implemented with 7% of the code required for the standard C-based Awk, it is significantly more expressive than its C counterpart."

[http://www.ccs.neu.edu/home/shivers/papers/ll.ps](http://www.ccs.neu.edu/home/shivers/papers/ll.ps)

<comment><USER3> I'm torn. I think most polyglot projects I deal with are overly complicated. However, I also feel most embedded languages I deal with are overly complicated.

Some have clearly worked out. Format strings, for example, are much more appealing to me than the equivalent code. Not even getting into the crazy abilities of common lisp. (Seeing what you can accomplish just from the format string, I really wonder why it isn't more widespread.)

And regexes, despite all of the well justified jokes about them being problematic, are often much better than the code that would replace them. It is a shame there is not a BNF equivalent, sometimes.

But it seems most "inner languages" I have had the pleasure to deal with personally have not truly helped. My suspicion is that me and my colleagues just tried to do it all. Knowing when to say "not supported" in a toy language is tough. And the penalty for not doing so, is catastrophic, it seems.

<comment><USER4> Agreed. Regexps and format strings are cool. Regarding small, dedicated languages, I also like SQL and (to a lesser extent) CSS selectors.

<comment><USER5> I think the LittleLanguages [0] should be further subdivided into: * languages for describing something (e.g. regular expression, format strings, graph .dot format, LaTeX math equations, etc.) that are usable both from standalone UNIX tools, and from inside programming languages * languages with a dedicated tool (awk, etc.) that are not widely available embedded inside other programming languages. Usually these languages allow you to perform some actions / transformations

I think both papers agree that the former is "good" (the reimplementation of awk in Scheme uses regular-expressions).

In the counterpoint paper it turns a LittleLanguage (Awk) into an Embedded Domain Specific Language by embedding it inside Scheme.

SQL is more difficult to categorize: I think the SELECT expression should be considered a LittleLanguage, however the UPDATE/INSERT part is better when having a full programming language available (see procedural languages inside SQL / triggers, which hint at the limits of the base SQL language).

[0] [http://wiki.c2.com/?LittleLanguage](http://wiki.c2.com/?LittleLanguage)

</comment></comment></comment></comment><comment><USER6> Little languages are good for little programs. Once your program grows up, a little language starts holding it back. Your program needs a language for grown-ups. The truth is all little languages are quite primitive, and this is by design. Little languages are designed for a specific narrow purpose. Beyond that narrow purpose they are much less expressive, clunky and inefficient.

Real life tasks often require more than one little language. You can start with a simple text extraction using Awk, then use Sed for text conversion, and glue it all together with Bash. But very soon it becomes hard to maintain and extend this collection of scripts and easier to replace them with one Perl or Python program, which can do all of the above and more.

So the bottom line is, use little languages then they suit your task, but know their limitations.

<comment><USER7> I've had a lot of luck with little languages that have an escape hatch into the implementation language.

My "little languages" always have atomic programs/expressions whose meaning is given by an implementation in the base language.

Sometimes, e.g., when my little language has an optimizing compiler or some fancy semantics, the atomic programs/expressions need a tighter interface than "does something". In those cases, I write down the full semantics of the language and figure out what lemmas I need to prove about atomic programs/expressions in order to prove whatever property I want about the overall language. I then enforce those lemmas at runtime using asserts (or, in the case of termination, wrapper code that enforces a timeout).

This pretty much only goes wrong when "everything" is factored out into the atomic programs/expressions. I avoid these situations by only using "little languages" when I can do something _useful and difficult_ using the semantics of the little language. Most common examples include: automatic optimization, automatic parallelization, and automatic verification/static analysis.

But even when it does go wrong in this way, it's no the end of the world: if everything is implemented in the atomics, then you just refactor the implementations of the atomic programs/expressions into a library, delete the interpreter/compiler, and write some wrapper code.</comment></comment>


There Is Only One A4 Paper Time in Our Lives - <AUTHOR> https://medium.com/@transno/there-is-only-one-a4-paper-time-in-your-life-34d295cd6cac <comment><USER2> If we have any need to do tomorrow, had better start now.</comment>


Ask HN: What's the point of a constructor function anyways? - <AUTHOR> While trying out a project in Javascript, I decided to finally learn a bit about the "prototype". I'm at the crossroads where I want to decide whether I want to use "pure" prototypal inheritance as with "Object.create" or whether I want to go with "new Class(params...)". As I investigate and weight between my choices, I realize that "When Object.create is used, it is like having only the prototype objects, and empty constructors." So what is the point of constructors anyways? Picking between Object.create and "new" is based on how important are constructors for getting things done. Can you help me brainstorm through this? <comment><AUTHOR> Going back to Smalltalk, it seems like original OO was prototypal. I wonder what made them change this.

Here's the article I was just looking at:

[http://onsmalltalk.com/objects-classes-and-constructors- smal...](http://onsmalltalk.com/objects-classes-and-constructors-smalltalk- style)

Choice quotes

         But a constructor would really help pretty this up and encapsulate the knowledge about what fields are required for construction rather that forcing the client to individually initialize the object and hoping he does it correctly. So let's write a constructor for #Person, we'll put it on the "Person class", or the Person's class side as it'd normally be called.

          Some Smalltalk'ers prefer to write their constructors in a different style, one that enforces encapsulation a bit more, by not allowing public setters for all the instance variables, like so...

         Person class>>firstName: aFirstName lastName: aLastName
        ^(self new)
            initializeFirstName: aFirstName lastName: aLastName;
            yourself.

          Person>>initializeFirstName: aFirstName lastName: aLastName
        firstName := aFirstName.
        lastName := aLastName.
        relatives := Set new.

        Smalltalk is not so much a language, as an extensible notation for creating languages. To rip off a famed martial artist, empty your mind, be formless, shapeless, like Smalltalk. If you put Smalltalk into a financial application, it becomes a custom finance language. You put Smalltalk into a shipping application, and it becomes a custom shipping language. Be Smalltalk my friend.

<comment><AUTHOR> Another great article:

[http://programmers.stackexchange.com/questions/224033/can- we...](http://programmers.stackexchange.com/questions/224033/can-we-live- without-constructors)

Wish I found this one from the very beginning!

</comment></comment><comment><USER2> I ended up using constructors to create instances of an object, and Object.create to enable inheritance when defining the object.

        function Person(name, birthday, ...) {
          ...
        }

        Person.prototype = Object.create(Animal.prototype);

See these for more:

* [http://outof.me/javascript-prototypal-inheritance-for-classi...](http://outof.me/javascript-prototypal-inheritance-for-classical-developers/)

* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/Intr...](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript#Inheritance)

* [http://stackoverflow.com/questions/8453887/why-is-it-necessa...](http://stackoverflow.com/questions/8453887/why-is-it-necessary-to-set-the-prototype-constructor)

</comment><comment><USER3> The point of constructors in JavaScript was to mirror the "look" of Java. Brendan Eich has mentioned this. You don't technically need them and can use functions to return objects.</comment>


Meet The Man Who Created The Crack Epidemic - <AUTHOR> http://www.esquire.com/features/rick-ross-drug-dealer-interview-1013?click=pp

<comment><USER2> I haven't read all the article yet, but I was just listening to a podcast yesterday on the subject of crack which might be interesting: [http://www.stuffyoushouldknow.com/podcasts/crack- works/](http://www.stuffyoushouldknow.com/podcasts/crack-works/)</comment>


Inside a Nuclear Control Room - <AUTHOR> http://www.pbs.org/wgbh/nova/tech/nuclear-control-room.html

<comment><USER2> Unfortunately (particularly for those of us with 30" monitors) they don't have a full screen option like the amazing Mars Gigapan: <http://gigapan.com/gigapans/113071>

Edit: Found it - Awesome on a big monitor <http://gigapan.com/gigapans/73573>

</comment><comment><USER3> I've worked at this plant, I've been in that control room during a refuel outage. I was there back in the 90's to install some feedwater pump vibration monitoring equipment when I worked for GE as an engineer. Later went on to design feedwater (level) control systems for other plants. Brings back some great memories.

Edit: I'm just hanging out listening to Giants/Dodgers... if anyone has any questions on the control panel systems, acronyms, etc fire away, I'll try and answer if I can. One memory was the all the acronyms I used to know. AMA

</comment><comment><USER4> I really hope they plan to change the user and pass they have printed on two seperate labels on the computer on the right wall near the keyboard

<comment><USER5> Why would they? That computer isn't hooked up to a network, and there's a very small probability that Joe Random Hacker would be able to talk his way into a nuclear control room.

<comment><USER6> Also, it's a simulator control room.

</comment></comment></comment><comment><USER7> That looks familiar ... In the '80s, I built equipment for Westinghouse's nuclear systems division and love the view of the synchroscopes.

<comment><USER8> The good old days of Westinghouse. I left there two years ago and all Westinghouse consists of now is the Nuclear division :)

A whole lot of subgroups within that though of course.

</comment></comment><comment><USER9> Growing up I really wished that I could work on things like that: I love switches, knobs, dials, klaxons, etc. but the best I have is vim and a command line. Obviously usability can be improved but I'll still lament the decline of big clunky switches and blinkenlights.

</comment><comment><USER10> Very cool, my daughter was an operator on the Reed research reactor [1] and its control room is a lot simpler :-) Of course as an operations guy these days I see all those cool status panels and think it would be fun to pick some up for work. Then to find the gal who did the voice overs for Starcraft

      "There is a packet anomaly in router one, there is a
       packet anomaly in router one."

:-)

[1] <http://reed.edu/reactor/>

</comment><comment><USER11> somebody needs to introduce a touch screen and some LCD displays to these people.

<comment><USER12> In nuclear power plants you just don't walk in and install new equipment. When upgrading control room to digital, you pretty much also need to upgrade the automation of the plant to be digital and qualifying it to be used in NPP is a real nightmare. In mainstream software markets you can always release bugfixes and add new features afterwards. In NPP your system must work the right way in every possible situation right from the start. I don't think, there are many software companies writing fail-safe programs of that size. And what's even more difficult, you have to prove it to be fail-safe to the regulators.

<comment><USER13> > I don't think, there are many software companies writing fail-safe programs > of that size. And what's even more difficult, you have to prove it to be > fail-safe to the regulators.

That's not possible. It is not possible to prove a nontrivial program to be fail-safe, any more than it is possible to prove a nontrivial axiomatic system to be internally consistent -- and for the same reason: Gödel's Incompleteness Theorems.

The Turing Halting Problem, and Gödel's Incompleteness Theorems, are deeply connected. The second cannot be resolved because the first cannot be resolved.

[http://en.wikipedia.org/wiki/G%C3%B6dels_incompleteness_theo...](http://en.wikipedia.org/wiki/G%C3%B6dels_incompleteness_theorems)

A quote: "The first incompleteness theorem states that no consistent system of axioms whose theorems can be listed by an "effective procedure" (e.g., a computer program, but it could be any sort of algorithm) is capable of proving all truths about the relations of the natural numbers (arithmetic). For any such system, there will always be statements about the natural numbers that are true, but that are unprovable within the system. The second incompleteness theorem, an extension of the first, shows that _such a system cannot demonstrate its own consistency_." (Emphasis added.)

<http://en.wikipedia.org/wiki/Halting_problem>

A quote: "Alan Turing proved in 1936 that a general algorithm to solve the halting problem for all possible program-input pairs cannot exist. A key part of the proof was a mathematical definition of a computer and program, what became known as a Turing machine; _the halting problem is undecidable over Turing machines_." (Emphasis added.)

<comment><USER14> The halting problem is undecidable over all possible Turing machines (i.e. programs, assuming Turing machines are an adequate model for the sort of programs of interest). It is entirely possible to choose some subset for which you know how to decide the halting problem, and program within the that subset.

It is a matter of cleverness (rather, successful algorithm design and theorem proving) how large you can make that subset. Such a subset could, for example, consist of programs written in a particular (non-Turing-complete) language, such that it is known how to construct a proof of (non-)halting because the structure of the program corresponds to the structure of a proof assembled from parts corresponding to the language's constructs.

This subset, this language, will necessarily exclude universal Turing Machines and other forms of interpreters — but I see no particular reason this is a problem for writing power plant control systems.

The structure of the above argument applies just as well to characteristics other than halting. For example, one can straightforwardly prove that any program does not access unallocated memory, provided that that program was written in a memory-safe language; the language is designed such that none of its constructs, nor any composition thereof, can be caused to do so. The analogous impossibility condition for this example is that you cannot express a C (or other non-memory-safe language) implementation in this language (without a virtual memory layer).

<comment><USER13> > The halting problem is undecidable over all possible Turing machines (i.e. > programs, assuming Turing machines are an adequate model for the sort of > programs of interest). It is entirely possible to choose some subset for > which you know how to decide the halting problem, and program within the > that subset.

No. Think about what you're saying. To be able to choose from among useful, nontrivial programs, those to whom the unsolved Turing halting problem doesn't apply, is to solve the Turing halting problem.

> It is a matter of cleverness (rather, successful algorithm design and > theorem proving) how large you can make that subset.

This is a first-class logical error. Choosing the subset as you suggest, is equivalent to solving the Turing Halting problem, yet the problem is known to be insoluble. Surely you see this.

> This subset, this language, will necessarily exclude universal Turing > Machines and other forms of interpreters — but I see no particular reason > this is a problem for writing power plant control systems.

There is no other way to say this -- you are mistaken, in the most basic way. The Turing halting problem is not the common cold, that you can wait out, nor is it a question of language design, that you can finesse. It is fundamental, and the original claim -- approximately "prove to be failsafe" -- is not possible for any program more complex than "Hello World".

If you want a failsafe program to regulate your drilling operation or nuclear power plant, yes, you can have it, but all it can do is print "Hello World" over and over again.

If instead you want a useful program, one that can actually do useful work, you must accept that the Turing halting problem is (a) unsolved, and (b) insoluble.

> It is a matter of cleverness ...

It is not a matter of cleverness. It is a problem of understanding the limits of technology.

<comment><USER15> Choosing such a subset is not solving the halting problem. The halting problem says it is impossible to find a mechanical procedure that says whether an arbitrary program will halt. If a mathematician, by some intuition, is able to come up with a subset of programs for which some property can be proven, then this is not solving the general problem. Since this subset is not equal to the general set of programs, nor has it been found by some mechanical, formal means, it is not a violation of the theory of the halting problem. It can be a matter of a carefully crafted programming language, along with certain annotations (e.g., dependent types). Really, before making insistent statements like this, you should do some research (e.g. there's the whole field of program verification).</comment></comment></comment></comment></comment></comment>


The 25 hardest video games of all time - <AUTHOR> http://www.theguardian.com/technology/2016/mar/18/the-25-hardest-video-games-of-all-time <comment><USER2> A list 25 top that doesn't have Battletoads, Devil May Cry or Ikaruga. Furthermore, lists Simpsons and Time Crisis as hard. They both together doesn't beat "Prehistoric Isle in 1930".

<comment><USER3> It lists harder similar games, and tries not to take too many games with the same gameplay style, which I think is acceptable for an opinion piece like this.

Mushihimesama is harder than Ikaruga. Ninja Gaiden II is harder than Devil May Cry. Battletoads would probably have been a good pick, probably replacing Ghosts and Goblins.

I'd have chosen Boshy, Kamilia or Wings of Vi over IWBTG, but IWBTG is more recognizable.

</comment></comment><comment><USER4> I'm not familiar with most of the games in this list. My personal entry would be Gravitar ([https://en.wikipedia.org/wiki/Gravitar](https://en.wikipedia.org/wiki/Gravitar)). Asteroids-style controls, limited fuel that you have to replenish by hovering above the ground and beaming up fuel, and all the terrain has strong gravity.

</comment><comment><USER5> I remember The Lion King on Sega being incredibly difficult as a child, even when I've tried to play it years later the ostrich jumping is still a lottery for me.

</comment><comment><USER6> Never got to play the original Devil May Cry. I wonder if I can get it on Steam or something.

</comment><comment><USER7> What about Terminator 2 for Genesis?

</comment><comment><USER8> Time crisis shouldn't be on that list.

<comment><USER2> Agree</comment></comment>


How can you determine how much your stock will get diluted when joining startup? - <AUTHOR>

Hi, I have received an offer from a startup, let's say the startup has 50M shares outstanding and is valued at 300 million. If I get offered 20K in stock options over 4 years, and they are at series c funding, any figures on how much I can assume my stock will get diluted by the time they go public? how can I tell if i'm getting a good deal? <comment><USER2> Are you happy with the salary offered and what you'll be working on?

Given the company's valuation these two things will be more important than the stock options.

</comment><comment><USER3> Usually the dilution doesn't matter because the valuation goes up so much each funding event that you still end up ahead in total value. If it doesn't, well, that is usually the company failing, not you getting cheated.

It is possible to have the ability added to your contract to let you bail out on any funding event, this is usually only given to executives, however.

</comment><comment><USER4> Don't put all your eggs in one basket on the stock options. As @svisser pointed out, are you happy with the company, what you will be working on, your salary, and benefits. Those are immediate rewards for your work and matter most. At this point in the company's life, your options are more a formality than anything.

Even if the company does go public, you are probably several years away from that happening, and who knows if you will still be at the company or still like the job. In addition, by that point you will have also probably (hopefully) received some additional grants along the way to even things out.

</comment><comment><USER5> Dilution really doesn't matter that much - your chances of getting _anything_ are vanishingly small.</comment>