Thursday, November 14, 2013

Healthcare.gov fiasco, last flight of the Space Shuttle Challenger and an ancient programmer’s joke

On January 28, 1986 the Space Shuttle Challenger blew up in the skies above Florida 73 seconds after its ill-fated launch.
How was this possible? Why was it so poorly designed and built? What were the skills and qualifications of its builders?
Do not worry about them. They knew what they were doing. They built an almost perfect space vehicle to be launched from tropical Cape Canaveral. According to its specifications, the shuttle should have been operated at temperatures above ~15 Celsius / ~60 Fahrenheit degrees.
However, January 28th was an unusually cold day with temperature around freezing at night. A few icicles even hung from the rocket booster.
When asked, engineers who designed the Space Shuttle said “Do not launch. It’s too risky. Most likely it will fail”.
After this message was transmitted through multiple layers of management and reached the top bosses of NASA it was significantly softened.
NASA management only saw a small risk and decided “So what? Launch it!”.
The Challenger was launched and flew more or less OK until the 73rd second of its last flight.

I recalled this story while reading James Marcus Bach's eloquent commentary on the root causes of the HealthCare.gov fiasco (http://www.satisfice.com/blog/archives/940).
I am certain that when the software engineers who designed the HealthCare Exchange were asked to launch or not to launch they answered “Do not launch. It’s too risky. Most likely it will fail”.
After this message was transmitted through multiple layers of management and reached the top bosses of Health and Human Services it was significantly softened.
HHS management only saw a small risk and decided “So what? Launch it!”.
For the first 73 seconds the healthcare exchange flew more or less OK, and you can find what happened next in the newspapers, on TV and on Ben Simo's site (http://blog.isthereaproblemhere.com/).

It’s not the first time this has happened on a software project. An ancient programmer’s joke describes a similar situation.

In the beginning was the plan, and then the specification; And the plan was without form, and the specification was void.

And darkness was on the faces of the implementors thereof; And they spake unto their leader, saying:
"It is a crock of ****, and smells as of a sewer."

And the leader took pity on them, and spoke to the project leader: "It is a crock of excrement, and none may abide the odor thereof."

And the project leader spake unto his section head, saying:
"It is a container of excrement, and it is very strong, such that none may abide it."

The section head then hurried to his department manager, and informed him thus: "It is a vessel of fertilizer, and none may abide its strength."

The department manager carried these words to his general manager, and spoke unto him saying: "It containeth that which aideth the growth of plants, and it is very strong."

And so it was that the general manager rejoiced and delivered the good news unto the Vice President. "It promote the growth, and it is very powerful."

The Vice President rushed to the President's side, and joyously exclaimed: "This powerful new software product will promote the growth of the company!"

And the President looked upon the product, and saw that it was very good.

I do not know who created this joke, but today I reread it one more time and especially liked the ending: “And the President looked upon the product, and saw that it was very good.

No comments:

Post a Comment