Duck and Cover

John von Neumann lived for 19,402 days. How do I know that? I simply opened up one of those black screens on my computer that we call a terminal. I typed in rebol, and pressed the enter key, which is the same as the carriage return key on a typewriter. Then I typed in 9-feb-1957 - 28-dec-1903 and pressed the enter key and the number 19402 was displayed. I had executed a computer program called rebol, which 'interprets' the rebol programming language and then I executed a command with which rebol calculated the difference in days between von Neumann's birth date and the date of his death. There are plenty of internet sites at which you can make this same calculation. It wasn't always this easy.  For now, let's just think of a programming language as a piece of software that decodes one of any number of specific syntaxes into instructions to the CPU of the computer. Although there can be any number of programming languages, the computer's CPU understands only one set of instructions.  
 
I was not quite 8 years old when von Neumann died.  My inner landscape had a nightmare creature on the horizon.  I was the eldest of 11 children. Like many elder siblings in large families, I kept some things to myself. I worried about "the bomb". I had cause to. Many worried about the bomb, including my parents. We are talking about the atomic bomb that von Neumann had a hand in developing. At that time, I attended a little township school out on the prairie. It had only one classroom.  We practiced "duck and cover" - crawling under our desks for protection against an A-bomb attack. A lot of good that would have done! North Dakota is a border state. Thus we were the front lines of a possible Russian bombing mission coming over the north pole.  Later, the Minute Man Missile Project built underground silos all over North Dakota. The silos held missiles with atomic warheads. They were meant to be a deterant against the Russians. We never felt so safe! Seriously, those were pretty scary times. They were scary for Russians also.
 
I now count among my friends several naturalized citizens who immigrated from Russia, including a sister-in-law. The average Russian citizen (not a communist by the way) was scared to death of the US. After all, the US was the only county that had used atomic bombs in warfare, and targeted non-combatants. I am a Christian, yet sometimes I thank God that Russian policy makers were atheists.  I like to think that the atheist's belief that when you are dead, you are just dead might have had a moderating effect. As opposed to those who think that when they die they will go to heaven and be united with loved ones, or be in a state of rapture or in the company of dozens of virgins. The last sounds down right scary. The idea of having to handle dozens of virgins makes me want to set my hair on fire. It sounds like teaching Middle School.
 
By this time, military installations all over the world had computers on site.  These installations and their computers needed to be able to communicate with each other.  Strategies were developed to insure that there be no dependency on a central switchboard which could be disabled in an attack. The process was called routing. Each computer and its military facility, called a 'node', could communicate to another 'node' by going through intervening nodes and at each node, numerous paths could be chosen. One way to understand this is for you to open a terminal on your computer and type in something like "traceroute nbc.com" or "tracert nbc.com". You will see nodes displayed by their IP addresses. If you do a route trace more than once, you will see that the route can be different each time. The internet protocol called "routing" can be traced back to the Cold War of the 1950s. This technique insured that if one node went offline, another could be chosen.
 
Another way to think of routing is if you were to cross a running stream by hopping from rock to rock and if you were to cross this stream frequently, it is not likely that you would take the same route each time. And in routing, each path from one node to another is called a "hop".
 
By the mid-1950s punch cards were used to program computers and programming languages were being introduced.  I'll talk about that more in the next article.