[A picture of private offices at Fog Creek Software] Alert! This ancient trifle retrieved from the Joel on Software archive is well-past its expiration date. Proceed with care.

Joel on Software

2002/09/18

by Joel Spolsky
Wednesday, September 18, 2002

Orlando Sentinel: "After investing $273 million, NASA is canceling a cutting-edge launch-control computer system for the space shuttle that is over budget, behind schedule and too expensive to operate."

(A few paragraphs later) "The CLCS program began in 1997 as an effort to upgrade KSC's 1970s-vintage system."

Here's my question. In the 1970s, computers didn't have much memory. An expensive mainframe from that era couldn't have had more than a megabyte or so of core memory. It seems to me as if the most complex piece software that could possibly be run on such systems would pale in comparison to the complexity of the software in a modern CDMA cellular phone, also about a megabyte in Assembler code. (I know, somebody's going to tell me about how mission critical this stuff is, and how lives depend on it, but heavens, $273 million dollars?)

The question is, why are NASA, the FAA, etc. still running these ancient systems, and why have so many quarter billion dollar projects failed to replace them? Jeez, they didn't even have relational databases in those days, to say nothing about structured program, GUI development tools, and books by Kent Beck. Recreating those old systems with modern tools would probably be a weekend Visual Basic/Access project. OK, I'm exaggerating a little. But if the problem is that you can't even get parts (vacuum tubes, no doubt) for the old system, you don't need a zillion dollar Big Science project: you need a four week project writing a CPU emulator for that old mainframe that runs on PCs.

OK, maybe now we won't be subject to all those annoying lectures about how great SEI Level 5 is because the shuttle uses it. Flipping back and forth between today's news and that old FastCompany hagiography will keep you entertained for hours!

Ged Byrne points out that it was actually a different system that used SEI Level 5.

Copy Editors Needed!

I have a few articles which have already been translated, but are waiting for someone to edit them and do a final check before I post them.

If you would like to volunteer to edit some articles in any of these languages, please let me know: Farsi, Hungarian, Italian,  Portuguese (Portugal), Ukrainian.


Have you been wondering about Distributed Version Control? It has been a huge productivity boon for us, so I wrote Hg Init, a Mercurial tutorial—check it out!

Want to know more?

You’re reading Joel on Software, stuffed with years and years of completely raving mad articles about software development, managing software teams, designing user interfaces, running successful software companies, and rubber duckies.



About the author.

I’m Joel Spolsky, co-founder of Fog Creek Software, a New York company that proves that you can treat programmers well and still be highly profitable. Programmers get private offices, free lunch, and work 40 hours a week. Customers only pay for software if they’re delighted. We make Trello, insanely simple project management, FogBugz, an enlightened bug tracker designed to help great teams develop brilliant software, and Kiln, which simplifies source control. I’m also the co-founder and CEO of Stack Exchange. More about me.

© 2000-2014 Joel Spolsky