The Vasa Tale
I'm left thinking about feature overload thanks to an interesting chain of posts: The language of the future is JavaScript -> The browser wars are upon us again -> Brendan Eich's JavaScript 2 and the Future of the Web.
Due to the nature of the typical software development process (add features -> release -> repeat), software seems destined to destroy itself through feature overload. It's true for applications, but even programming languages aren't immune.
There's a beautiful simplicity in JavaScript, and I hope it doesn't get bloated to death.
Thinking about this left me recalling a classic anecdote offered by C++ language designer Bjarne Stroustroup regarding the demise of a Swedish warship named the Vasa.
CUJ: You have often used the story of the Vasa to encourage taking the simple route in defining the C++ language. But it is pretty much common public opinion that C++ is one the most complicated languages in existence. Any comment on that? If there are different "levels'' of C++ usage, how would you characterize them?
BS: Clearly there was a danger; why else would I bother telling a cautionary tale? Construction of the Vasa started in 1625, at the request of King Gustav. It was originally intended to be a regular warship, but during the construction the king saw bigger and better ships elsewhere and changed his mind. He insisted on a flagship with two gundecks; he also insisted on a lot of statues suitable for a Royal flagship. The result was (and is) very impressive. Rather top heavy, though. On its maiden voyage the Vasa only made it half way across Stockholm harbor before a gust of wind blew it over; it sank killing about 50 people."
(The CUJ interview is here.)
Even though the creator of C++ seems like an unlikely teller of the story, it's still a great story.
Due to the nature of the typical software development process (add features -> release -> repeat), software seems destined to destroy itself through feature overload. It's true for applications, but even programming languages aren't immune.
There's a beautiful simplicity in JavaScript, and I hope it doesn't get bloated to death.
Thinking about this left me recalling a classic anecdote offered by C++ language designer Bjarne Stroustroup regarding the demise of a Swedish warship named the Vasa.
CUJ: You have often used the story of the Vasa to encourage taking the simple route in defining the C++ language. But it is pretty much common public opinion that C++ is one the most complicated languages in existence. Any comment on that? If there are different "levels'' of C++ usage, how would you characterize them?
BS: Clearly there was a danger; why else would I bother telling a cautionary tale? Construction of the Vasa started in 1625, at the request of King Gustav. It was originally intended to be a regular warship, but during the construction the king saw bigger and better ships elsewhere and changed his mind. He insisted on a flagship with two gundecks; he also insisted on a lot of statues suitable for a Royal flagship. The result was (and is) very impressive. Rather top heavy, though. On its maiden voyage the Vasa only made it half way across Stockholm harbor before a gust of wind blew it over; it sank killing about 50 people."
(The CUJ interview is here.)
Even though the creator of C++ seems like an unlikely teller of the story, it's still a great story.
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home