"Nobody is buying my oompa band records because discos don't play enough tuba music!" I know it's unthinkable to MS, but maybe the reason win 8 isn't selling is because it just plain sux!
It's kind of too broad a question to begin with, and will largely depend on when you 1st "discovered" computers. I'm kinda old school.. so I might say Livermoore Basic, Tiny basic, or as a fun one. "Zork" (which actually came along years after I had already discovered the joys of computer geekdom)! If you re really into doing a complete history.you'd have to go back all the way to the Babbage computing engines.. or even before that. . While one certainly reminisces about "the grand old days" of this particular program or that, ultimately it boils down to just that: YOUR experiences with with those great old programs. And what might have been influential to me is now just so much saw dust under the feet of those moving on to the next "killer app". Not trying to say there weren't some very influential programs, the exact opposite in fact. There were a LOT of influential programs. Too many for a truly objective one size fits all list.
God has rebooted the world a total of 17 times. There have been 4 BSODs (Blue Skies of Death). Only 3 species were accidently deleted, though there are several billion empty folders where some species used to reside. There are currently only 3 life forms on planet earth: MS engineers, U.N. workers, and viruses. (there are no bugs.. never have been , never will be.) The world is slowing down as more data accumulates. Currently it takes about 10 minutes of processing per 1 sec of real-time, but once the algorithms are fully engaged we expect this figure to rise exponentially. Since it is impossible to achieve real-time performance, our engineers are guaranteed lifetime salaries. On a side note: As a result of these studies, MS now holds the patent on breathing. Pay up MFs!
Haven't the telcos ever heard of "Lowest Cost Spanning Trees?". This is what's done in internet routers to prevent exactly the kinds of infinite loops causing the problems there. Spanning trees still provide the carriers with the best available pricing for a given set of call end points over the available routers, but also ensure that infinite loops don't occur within the network, thus providing proper connectivity to the end user.