2010 is another census year in the US. I dutifully filled out the questionnaire for my household many months ago, and I mailed it in. It was a little easier this time, since our children are no longer living in our household. A head count is required to properly apportion the US House of Representatives, so a census was made a part of the US Constitution. The actual wording of the census clause is interesting, and it underscores how far we've developed from our early roots. The constitution calls merely for an enumeration, but the government has been collecting statistical information on its citizens using the same form. Some have objected to this as a violation of privacy, but many court decisions have stated that it's a proper function of government. The 2000 census long form questionnaire, however, seemed to go a little over the top, and there was considerable backlash against it. Did the government really need to hear from me whether I had a toilet in my house (Question 39)? Most of this information can be had, perhaps more accurately, from statistical sampling. Nowadays, they could just Google it. My supermarket, via my toilet paper purchases linked to my "loyalty card," probably has a good idea of my toilet habits. The government should just mine their data.
This article isn't about the census, but it's about a landmark in computer history that comes to my mind every census year; namely, the punch card.[1] It all started in 1880, when Herman Hollerith lands his first job with the US Census Bureau. Hollerith was a graduate of the Columbia School of Mines, so he had an engineering credential that enabled his employment as a technical expert with the Census Bureau tasked with finding ways to automate census tabulations. Hollerith subsequently invented punch card processing and filed a patent for it in 1884. His 1884 patent application was actually for punched paper tape, not punch cards, but his claims were broad enough to cover punch cards. What's interesting is that the punch card, in itself, was not novel. It had been used on the Jacquard loom. Likewise, reading punched holes electrically was known in the prior art through telegraphy. What Hollerith patented was the use of punched media for tabulating purposes, the application of which was limited at that time to the US census and a few minor surveys. Hollerith's concept was applied immediately to the 1890 census.
Figure two from Hollerith's 1889 patent showing how electrical contacts are made through the punched holes.[2]
The early card reader used spring-loaded pins that passed through the punched holes to reach cups of mercury that completed electrical contact. Such an arrangement was necessary, since high currents were needed to activate the solenoids on the electromechanical counters that recorded the tallies. Hollerith also invented the card sorter that dropped cards with certain punch characteristics into bins. I've actually seen modern versions of this in operation. Hollerith founded the Tabulating Machine Company in 1897, and Hollerith's company, through mergers, became IBM. The now familiar (or, should I say, once familiar) IBM card with rectangular holes was introduced in 1928. Hollerith's original card had just 45 columns, and the new IBM card had eighty. Remington Rand introduced a ninety column card in 1930, but it never caught on. IBM's later dominance in computing may have been a consequence of its superior cardsmanship.
Hollerith was immortalized in the original Fortran compiler via the Hollerith constant that indicated that a series of numbers was to be interpreted as characters. Here's an example.
A punch card used for Fortran programming.
As a child, I was always fascinated by computers, having seen some examples in early science fiction movies, but I've never taken a formal computer programming course. When I arrived at college, I was shocked at the then current paradigm for computing. Students would punch their programs onto cards and then pass boxes of cards through a slot to the high priests of computing, who would run the programs and stuff the printouts into a box for later pickup. It was somewhat later, when I had access to a timeshare terminal, that I decided to learn programming on my own.
Much of this article is based on an excellent summary of punch card technology by Emerson W. Pugh and Lars Heide at the IEEE Global History Network web site. Emerson Pugh, a physicist who had a 36 year career with IBM and a past president of the IEEE, has published extensively on computing history. One of his books,[3] concerned mostly with the history of ferrite memory technology, is on my bookshelf.
C PROGRAM HELLO1
The sequence 11H in line 100 indicates that the next eleven characters are alphanumeric.
WRITE (6,100)
STOP
100 FORMAT (11HHELLO WORLD)
END
References: