The Computer in the Basement: Learning to Code, Then and Now


Coders at Work is a compilation of interviews with fifteen huge names in computer science--like Douglas Crockford, Guy Steele, Peter Norvig, Joe Armstrong, and, of course, Donald Knuth. Reading the origin stories for these pioneers, what stands out is how hard it used to be thirty years ago to get started in programming.

Now, anyone can command enormous amounts of computing power for almost nothing. The last generation didn't have that luxury. You hear the same story over and over again: growing up, these guys happened to go to school somewhere that had (or had access to) a large, expensive behemoth of a computer, and they happened to be among the few students who ever got to play with them. In other words, they got really lucky.


Steele: I was in elementary school from 1960 through '66. But I think the real turning point was when I got to Boston Latin School--it would have been in the equivalent of the ninth grade. A friend asked me, "Have you heard about the new computer in the basement?" I thought this was the newest story after the one about the fourth-floor swimming pool and the school only has three stories. But he said, "No really, it exists."

It turns out that T. Vincent Learson had arranged for an IBM 1130 minicomputer to be in the basement of the Boston Latin School. He was an alum and a very generous one apparently. My friend proceeded to show me a Fortran program of about five lines and I was immediately fascinated.


Armstrong: When I was at school. I was born in 1950 so there weren't many computers around then. The final year of school, I suppose I must have been 17, the local council had a mainframe computer--probably an IBM. We could write Fortran on it. It was the usual thing--you wrote your programs on coding sheets and you sent them off. A week later the coding sheets and the punch cards came back and you had to approve them. But the people who made the punch cards would make mistakes. So it might go backwards and forwards one or two times. And then it would finally go to the computer center.

Compare that to the situation today. Every Apple computer that has come out in the last four years has easy-to-use programming tools built right in--Python, Ruby, the works. And using HTML and Javascript, all it takes is one text file and a browser to create applications of near-arbitrary complexity.

As if that wasn't enough, it turns out that you can now command your own remote number-crunching workstation for the low, low price of... zero dollars.

Starting November 1st, anyone who doesn't already have an account with Amazon Web Services can get free usage for twelve months. The specs are pretty incredible. Every month you get:

  • 750 hours of Amazon EC2 Linux Micro Instance usage (613 MB of memory and 32-bit and 64-bit platform support) ‚Äì enough hours to run continuously each month*
  • 750 hours of an Elastic Load Balancer plus 15 GB data processing*
  • 10 GB of Amazon Elastic Block Storage, plus 1 million I/Os, 1 GB of snapshot storage, 10,000 snapshot * Get Requests and 1,000 snapshot Put Requests*
  • 5 GB of Amazon S3 storage, 20,000 Get Requests, and 2,000 Put Requests*
  • 30 GB per of internet data transfer (15 GB of data transfer "in" and 15 GB of data transfer "out" across all services except Amazon CloudFront)*

We all know how computing power and storage have gotten geometrically cheaper over the years, but this is just ridiculous. Here you have a full-featured Linux server, a powerful database, ample storage, and a generous amount of bandwidth, all in the cloud, all for free.

Think of what this means for kids, or hobbyists, or recreational mathematicians: they now have a powerful computer at their fingertips, one requiring virtually no setup (because it's virtual); which can run just about any software; which is always on; and which can be manipulated and reset remotely, all through the command line.

Once they outgrow that, they can whip out their credit card (or borrow their mom's) and cheaply lease their very own supercomputing mini-cluster. Literally.