An IBM Key Punch machine which operates like a typewriter except it produces punched cards rather than a printed sheet of paper

8:20 AM 0 Comments

University students in the 1970's bought blank cards a linear foot at a time from the university bookstore. Each card could hold only 1 program statement. To submit your program to the mainframe, you placed your stack of cards in the hopper of a card reader. Your program would be run whenever the computer made it that far. You often submitted your deck and then went to dinner or to bed and came back later hoping to see a successful printout showing your results. Obviously, a program run in batch mode could not be interactive.
But things changed fast. By the 1990's a university student would typically own his own computer and have exclusive use of it in his dorm room.


Three views of paper tape

9:08 AM 0 Comments

After observing the holes in paper tape it is perhaps obvious why all computers use binary numbers to represent data: a binary bit (that is, one digit of a binary number) can only have the value of 0 or 1 (just as a decimal digit can only have the value of 0 thru 9). Something which can only take two states is very easy to manufacture, control, and sense. In the case of paper tape, the hole has either been punched or it has not. Electro-mechanical computers such as the Mark I used relays to represent data because a relay (which is just a motor driven switch) can only be open or closed. The earliest all-electronic computers used vacuum tubes as switches: they too were either open or closed. Transistors replaced vacuum tubes because they too could act as switches but were smaller, cheaper, and consumed less power.
Paper tape has a long history as well. It was first used as an information storage medium by Sir Charles Wheatstone, who used it to store Morse code that was arriving via the newly invented telegraph (incidentally, Wheatstone was also the inventor of the accordion).
The alternative to time sharing was batch mode processing, where the computer gives its full attention to your program. In exchange for getting the computer's full attention at run-time, you had to agree to prepare your program off-line on a key punch machine which generated punch cards.


The Teletype was the standard mechanism used to interact with a time-sharing computer

8:16 AM 0 Comments

A teletype was a motorized typewriter that could transmit your keystrokes to the mainframe and then print the computer's response on its roll of paper. You typed a single line of text, hit the carriage return button, and waited for the teletype to begin noisily printing the computer's response (at a whopping 10 characters per second). On the left-hand side of the teletype in the prior picture you can observe a paper tape reader and writer (i.e., puncher). Here's a close-up of paper tape:


The IBM 7094, a typical mainframe computer [photo courtesy of IBM]

9:55 AM 0 Comments

 There were 2 ways to interact with a mainframe. The first was called time sharing because the computer gave each user a tiny sliver of time in a round-robin fashion. Perhaps 100 users would be simultaneously logged on, each typing on a teletype such as the following: 


A reel-to-reel tape drive [photo courtesy of The Computer Museum]

9:44 AM 0 Comments

ENIAC was unquestionably the origin of the U.S. commercial computer industry, but its inventors, Mauchly and Eckert, never achieved fortune from their work and their company fell into financial problems and was sold at a loss. By 1955 IBM was selling more computers than UNIVAC and by the 1960's the group of eight companies selling computers was known as "IBM and the seven dwarfs". IBM grew so dominant that the federal government pursued anti-trust proceedings against them from 1969 to 1982 (notice the pace of our country's legal system). You might wonder what type of event is required to dislodge an industry heavyweight. In IBM's case it was their own decision to hire an unknown but aggressive firm called Microsoft to provide the software for their personal computer (PC). This lucrative contract allowed Microsoft to grow so dominant that by the year 2000 their market capitalization (the total value of their stock) was twice that of IBM and they were convicted in Federal Court of running an illegal monopoly.
If you learned computer programming in the 1970's, you dealt with what today are called mainframe computers, such as the IBM 7090 (shown below), IBM 360, or IBM 370.


HAL from the movie "2001: A Space Odyssey". Look at the previous picture to understand why the movie makers in 1968 assumed computers of the future would be things you walk into.

10:24 AM 0 Comments

JOHNNIAC was a reference to John von Neumann, who was unquestionably a genius. At age 6 he could tell jokes in classical Greek. By 8 he was doing calculus. He could recite books he had read years earlier word for word. He could read a page of the phone directory and then recite it backwards. On one occasion it took von Neumann only 6 minutes to solve a problem in his head that another professor had spent hours on using a mechanical calculator. Von Neumann is perhaps most famous (infamous?) as the man who worked out the complicated method needed to detonate an atomic bomb.
Once the computer's program was represented electronically, modifications to that program could happen as fast as the computer could compute. In fact, computer programs could now modify themselves while they ran (such programs are called self-modifying programs). This introduced a new way for a program to fail: faulty logic in the program could cause it to damage itself. This is one source of the general protection fault famous in MS-DOS and the blue screen of death famous in Windows.
Today, one of the most notable characteristics of a computer is the fact that its ability to be reprogrammed allows it to contribute to a wide variety of endeavors, such as the following completely unrelated fields:
  • the creation of special effects for movies,
  • the compression of music to allow more minutes of music to fit within the limited memory of an MP3 player,
  • the observation of car tire rotation to detect and prevent skids in an anti-lock braking system (ABS),
  • the analysis of the writing style in Shakespeare's work with the goal of proving whether a single individual really was responsible for all these pieces.
By the end of the 1950's computers were no longer one-of-a-kind hand built devices owned only by universities and government research labs. Eckert and Mauchly left the University of Pennsylvania over a dispute about who owned the patents for their invention. They decided to set up their own company. Their first product was the famous UNIVAC computer, the first commercial (that is, mass produced) computer. In the 50's, UNIVAC (a contraction of "Universal Automatic Computer") was the household word for "computer" just as "Kleenex" is for "tissue". The first UNIVAC was sold, appropriately enough, to the Census bureau. UNIVAC was also the first computer to employ magnetic tape. Many people still confuse a picture of a reel-to-reel tape recorder with a picture of a mainframe computer


ILLIAC II built at the University of Illinois

11:10 AM 0 Comments

it is a good thing computers were one-of-a-kind creations in these days, can you imagine being asked to duplicate this


Reprogramming ENIAC involved a hike (part 2)

9:01 AM 0 Comments

Even with 18,000 vacuum tubes, ENIAC could only hold 20 numbers at a time. However, thanks to the elimination of moving parts it ran much faster than the Mark I: a multiplication that required 6 seconds on the Mark I could be performed on ENIAC in 2.8 thousandths of a second. ENIAC's basic clock speed was 100,000 cycles per second. Today's home computers employ clock speeds of 1,000,000,000 cycles per second. Built with $500,000 from the U.S. Army, ENIAC's first task was to compute whether or not it was possible to build a hydrogen bomb (the atomic bomb was completed during the war and hence is older than ENIAC). The very first problem run on ENIAC required only 20 seconds and was checked against an answer obtained after forty hours of work with a mechanical calculator. After chewing on half a million punch cards for six weeks, ENIAC did humanity no favor when it declared the hydrogen bomb feasible. This first ENIAC program remains classified even today.
Once ENIAC was finished and proved worthy of the cost of its development, its designers set about to eliminate the obnoxious fact that reprogramming the computer required a physical modification of all the patch cords and switches. It took days to change ENIAC's program. Eckert and Mauchly's next teamed up with the mathematician John von Neumann to design EDVAC, which pioneered the stored program. Because he was the first to publish a description of this new computer, von Neumann is often wrongly credited with the realization that the program (that is, the sequence of computation steps) could be represented electronically just as the data was. But this major breakthrough can be found in Eckert's notes long before he ever started working with von Neumann. Eckert was no slouch: while in high school Eckert had scored the second highest math SAT score in the entire country.
After ENIAC and EDVAC came other computers with humorous names such as ILLIAC, JOHNNIAC, and, of course, MANIAC. ILLIAC was built at the University of Illinois at Champaign-Urbana, which is probably why the science fiction author Arthur C. Clarke chose to have the HAL computer of his famous book "2001: A Space Odyssey" born at Champaign-Urbana. Have you ever noticed that you can shift each of the letters of IBM backward by one alphabet position and get HAL?