> How do they write the right stuff? The article claims that it is their process, and although they are certainly extremely thorough, I don't buy it. At the very least, they cannot be compared to most developers apples to apples. Why? > NASA and the Lockheed Martin group agree in the most minute detail about everything the new code is supposed to do — and they commit that understanding to paper, with the kind of spec…
This seems incredibly short sighted. To wit, the fact that Keller - or whoever is in that role these days - has to certify that the code and the system it runs on will work as expected speaks volumes about how serious this is. If it doesn't, things tend to blow up, which is sure to ruin your day. Also, I would be remiss if I didn't mention Therac-25, a medical device which killed or severely injured several patients.…
They Write the Right Stuff (1996)
21–30 of 33 posts
Re: They Write the Right Stuff (1996)
#22> How do they write the right stuff? The article claims that it is their process, and although they are certainly extremely thorough, I don't buy it. At the very least, they cannot be compared to most developers apples to apples. Why? > NASA and the Lockheed Martin group agree in the most minute detail about everything the new code is supposed to do — and they commit that understanding to paper, with the kind of spec…
In it you'll find that this level of requirements gathering, blueprint/spec writing and code inspection are actually cheaper in a relatively short time (months, not years).
Writing specifications that are extremely detailed ends up giving you all the logical failures ahead of time, and makes typing code more of a spell checking exercise. By having the logical failures before the code ever runs, you get to debug & fix them before any code runs. This ends up being faster & cheaper in total than waiting for users to find bugs.
However - I understand that for many companies they actually don't care if users find bugs as time to market is more expensive than the future bug finding. But if you have a product already in the market, and you expect to support it for ~year, you probably can do much more detailed design and avoid so much pain.
Re: They Write the Right Stuff (1996)
#23Earlier quoted context omitted.
This seems incredibly short sighted. To wit, the fact that Keller - or whoever is in that role these days - has to certify that the code and the system it runs on will work as expected speaks volumes about how serious this is. If it doesn't, things tend to blow up, which is sure to ruin your day. Also, I would be remiss if I didn't mention Therac-25, a medical device which killed or severely injured several patients.…
Your response suggests you misunderstand the point I was making. I completely agree with you that there are certain niches which require extreme precision for safety purposes like that which is being discussed in the article as well as your medical device example. What irritated me about the article is that it was comparing these niche fields which have completely different requirements and incentive structures to th…
Re: They Write the Right Stuff (1996)
#24I remember there were some comments: > Are you prepared to pay 10x for a text editor, say? My answer: Hell yeah, if I am earning thousands using this editor, why not pay couple hundred bucks for a really well-made program with good support, etc.
But as I understand, there exists no demand for this type of thing among general users. People are ready to pay for tons of useless features being added (just to signal that the project is progressing) but not ready to pay for simpler solutions that are really focused on quality, security and consistent performance.
Re: They Write the Right Stuff (1996)
#25There's an understanding/level-of-detail hurdle that I've run into a lot: people have a desire to over-pseudocode and under-specify in usual design decisions. If you really want to get a good spec that will result in both good estimates and avoid surprises in terms of "whoops, this won't work actually" then you need to get really detailed here.
There's also a business one. Most businesses don't have quite as exact requirements as "fly to this point in space" or such. And often, the requirements iterate with user feedback. Or you try five things and see which users like the most. So the extra time delays really add up, when there's already a bunch of stuff going on behind the scenes than just the final feature that launches to the general public. If you're in this discovery phase, perfect is the enemy of "learning," and learning is what you need.
Re: They Write the Right Stuff (1996)
#26I am not sure where we are now, was OOP the dark middle age or the industrial revolution? Or will that AI be?
Would be really interested in your opinions!
Re: They Write the Right Stuff (1996)
#27Single-comment threads:
2007 https://news.ycombinator.com/item?id=51098 (note how the title already says "old")
2009 https://news.ycombinator.com/item?id=498219
2012 https://news.ycombinator.com/item?id=3891669
2016 https://news.ycombinator.com/item?id=12014248
2018 https://news.ycombinator.com/item?id=17164407
Slightly larger:
2008 https://news.ycombinator.com/item?id=132640
2014 https://news.ycombinator.com/item?id=7121140
Re: They Write the Right Stuff (1996)
#28Earlier quoted context omitted.
This seems incredibly short sighted. To wit, the fact that Keller - or whoever is in that role these days - has to certify that the code and the system it runs on will work as expected speaks volumes about how serious this is. If it doesn't, things tend to blow up, which is sure to ruin your day. Also, I would be remiss if I didn't mention Therac-25, a medical device which killed or severely injured several patients.…
Your response suggests you misunderstand the point I was making. I completely agree with you that there are certain niches which require extreme precision for safety purposes like that which is being discussed in the article as well as your medical device example. What irritated me about the article is that it was comparing these niche fields which have completely different requirements and incentive structures to th…
Namely, we're at a point where agile practices have become so common that nothing is ever 'done' and it is acceptable to ship something with errors, assuming it can and will be patched later.
Both Mom & Dad started out as COBOL programmers on punchcards, and I've heard plenty of 'war stories' about how these kinds of situations were far less common because an error meant your program simply didn't run.
Unlike say a web browser which will mostly spit back out whatever weird HTML and CSS you feed into it, errors and all.
In consumer software, it's not, 'we follow orders or people die' but for people working on this, it probably feels that way if your stuff is used by enough people (iOS) or is critically important (medical billing).
If it doesn't do what it says on the tin, people are incredibly unforgiving of even the smallest mistakes.
Re: They Write the Right Stuff (1996)
#29> How do they write the right stuff? The article claims that it is their process, and although they are certainly extremely thorough, I don't buy it. At the very least, they cannot be compared to most developers apples to apples. Why? > NASA and the Lockheed Martin group agree in the most minute detail about everything the new code is supposed to do — and they commit that understanding to paper, with the kind of spec…
Building complex software is a learning process, and you'll find that what was specified wasn't practical, you'll find better ways to do things, etc.
Re: They Write the Right Stuff (1996)
#30The article is from 1996. And the experts then describe the then software industry as "hunter and gatherers". I am not sure where we are now, was OOP the dark middle age or the industrial revolution? Or will that AI be? Would be really interested in your opinions!
- Unless you were a larger firm or project, version control was something you never even heard of
- A lot of the internet was still being put together
- Perl was a big deal and a LOT of it was bad e.g. "use strict" was almost never used so you could use variables willy nilly
- The Joel Test was yet to be written (5 years out roughly) and people were scoring low on the test then
- The only exposure to Linux was generally when you were in college unless you were hardcore. Otherwise, everything was windows. E.g. I remember installing Slackware from a CD that came with a giant book and then thinking: "What do I do now?"
- Java was the new hotness and Rutgers (my school) was the first major university to offer it for there 101 (actually RU CS first class was 111 b/c 101 was "business computing").
- There was no Google, Stack Overflow etc. You were lucky if people like Jeremy Zawodny happened to write a blog post about the weird Perl + MySql bug you were running into and/or if your local book store had Databases for Dummies
It really is amazing to me now to see how MASSIVE frameworks for JavaScript come out every year and the whole ecosystem spasms. Perl CGI was the de facto way to write web stuff for almost a decade. In fact LAMP used to mean "Linux Apache Mysql Perl" until php came along and even then giant website were still written in Perl e.g. Amazon, IMDB etc