PRIDE AND PREJUDICE (THE VASA)
A koder with attitude, KV answers your questions. Miss Manners he ain’t.
Dear KV,
I teach computer science to undergraduate students at a
school in California, and one of my friends in the English
department, of all places, made an interesting comment
to me the other day. He wanted to know if my students
had ever read Frankenstein and if I felt it would make
them better engineers. I asked him why he thought I
should assign this book, and he said he felt that a book
could change the way in which people think about their
relationship to the world, and in particular to technology. He wasn’t being condescending; he was dead serious.
Given the number of Frankenstein-like projects that seem
to get built with information technology, perhaps it’s
not a bad idea to teach these lessons to computer science
undergraduates, to give them some notion that they have
a social responsibility. Do you agree?
CS Prof
Dear CS,
While I have to agree in general with the idea that telling and retelling stories is a good way to teach people, I
have to say that the idea of using Mary Shelley’s novel for
this is very much antiquated and unlikely to be effective
in a computer science class. I, myself, was once forced
through a “Computers and Society” course in college,
and although we didn’t read Frankenstein, we were beaten
over the head with a litany of how bad computers and
technology were for society from a professor who was
trivial to manipulate. All I had to do was agree with her
every utterance and write technology-bashing essays for
her class to get an A. Was this an effective use of time?
Of course not, it was a show. If you really want to
HAVE A QUESTION FOR KODE VICIOUS?
E-mail him at
kv@acmqueue.com. If your question appears
in his column, we’ll send you a rare piece of authentic Queue
memorabilia. We edit e-mails for style, length, and clarity.
reach an audience, you have to engage them with stories
that you understand and can relate to their experience.
When I think of the kind of story I want to tell to undergraduate students, I think of the Vasa, a ship and story
that I think should be better known among engineers.
I first learned of the Vasa from a T-shirt at a conference
in 1990. A company that a friend had started used the
cross section of the ship to lampoon the ISO OSI effort on
network protocols. “Another 7 Layer Model That Failed”
read the caption. The connection was that ISO had seven
layers and the Vasa had seven decks, but when I found
out why the Vasa had tragically failed I became fascinated,
because it was such a classic engineering failure story.
The Vasa was built between 1626 and 1628 for King
Gustavus Adolphus of Sweden, who was, at that time,
attempting to rule the Baltic Sea. In the 17th century,
rulers were expected to be capable of more than just
giving orders, so Adolphus not only organized wars, he
also helped design the ships of his naval fleet. At the time
Swedish warships had one deck of cannons on each side
from which they fired fusillades at enemy ships, sometimes even hitting and damaging the other ships. When
the Vasa was commissioned, this single row of cannons
was considered state of the art.
Sometime during the construction of the ship Adolphus found out that the Poles had ships with two decks
of guns, so he modified the design of the Vasa to have
a second gun deck. This would have made it the most
powerful naval vessel of the time, capable of delivering
a broadside of devastating proportions. The men he had
contracted to build his ships attempted to explain that
the ship had too little ballast to support two gun decks,
and that the resulting ship would likely be unsafe to sail.
The king insisted—just like, say, many project managers—
that his orders should be followed. On a software project
you can quit, but if the king is your boss you might lose
more than your job—you might, say, lose your head—so
the project went forward.
In 1628 the ship was finally ready for QA (quality
assurance) testing. Seventeenth-century QA of ships was