Thursday, December 04, 2014

Computer History–The Importance of Stories

I ran across quiz today (Do you recognize these Obsolete Technologies?) If you know me you are probably not surprised that I recognized all 15 of them. I’ve been around a while. Several of my friends on Facebook did as well. As so other happens the reminiscing started next. Tales of FORTRAN and punch cards and the very first PCs abound. It’s fun for us and probably has the younger people shaking their heads. I started to ask myself if knowing this old stuff helps us or just clutters our brains. Do these stories perhaps help us to explain things to students I wonder?

My students today never had to use punch cards, paper tape and some of them are unfamiliar with floppy disks. Mainframes? Not even a distant memory. The way computing is moving faster and faster does that matter? Maybe not. But maybe it does.

We made a lot of mistakes over the years and knowing them can be valuable. Things that we think of as advanced and modern have their roots in the past. Concerns about privacy and data security in the cloud are not dissimilar at all from the same concerns in the days of mainframe computing with remote terminal access for example.

Web forms are little different from block mode terminals connected to mainframes. Web services are just a new version of server programs for client server applications in timesharing system.  I could go on of course.

We teach students at my school some computer history as part of our freshmen CS course. It’s a little and I often wonder how much sticks beyond the unit test. On the other hand when I am teaching programming I try to weave in some stories from my experience in industry. I think that helps make the usefulness of concepts more real and less theoretical. The book Made to Stick: Why Some Ideas Survive and Others Die talks about the importance of telling a story to make ideas “stick.”

I’m lucky in that regard in that I have real industry experience which means stories. There is something more impressive about telling students who 5 people lost a month (5 man months) of time because they used “magic numbers” rather than named constants then talking about it as theory. Not everyone has first hand stories like that though. Most of us have some second (or third hand) stories but often we don’t have a story to help make the message stick.

We don’t do a good job or recording and sharing these stories though. Computer History MuseumThe Computer History museum does have a nice and growing Computer Science oral history project. How much of that makes it into lectures or textbooks? Probably not a lot. And students have short attention spans and are looking for multi media anyway.

As an undergraduate I ran across a book called “Programming Proverbs” that was very helpful to me. That link BTW is to the index to a series of blog posts I did based on the book almost 8 years ago. I think what I want today is a book on programming stories. I don’t know that such a book exists but I very much wish it did. Maybe even indexed by concept for use by teachers and students teaching themselves.

What do you think? Do you have favorite stories you use to explain things? Is there a book or other reference you go to for such stories? Is this even a good idea?

No comments: