Friday, May 27, 2011

A new means of releasing software

From a recent conversation with a colleague, I learned that worms have been around a lot longer than I imagined:

.                      JOHN WALKER   JANUARY 1975
.
.
. THIS PROGRAM IS A TOTALLY NEW WAY OF DISTRIBUTING VERSIONS OF
. SOFTWARE THROUGHOUT THE 1100 SERIES USER COMMUNITY.  PREVIOUS
. METHODS REQUIRED THE DELIBERATE AND PLANNED INTERCHANGE OF
. TAPES, CARD DECKS, OR OTHER TRANSFER MEDIA.  THE ADVENT OF
. 'PERVADE' PERMITS SOFTWARE TO BE RELEASED IN SUCH A MANNER THAT
. IF SOMEONE CALLS YOU UP AND ASKS FOR A VERSION OF A PROCESSOR,
. VERY LIKELY YOU CAN TELL THEM THAT THEY ALREADY HAVE IT, MUCH
. TO THEIR OWN SURPRISE.

Self replicating software a decade before the Morris worm.

Cool.

One thing that I keep in the back of my mind is that even with nearly 30 years of computing experience, I’m still a newbie. There is a vast body of knowledge and experience that precedes me, and much of that is locked away in the archives of the minds of the brilliant people who invented the things that I use today. It’s unfortunate that only a fraction of that knowledge gets passed on from one generation to the next.

An example of this is my maternal grandfather. He was born early in the 20th century, grew up on a farm, worked as a machinist, factory worker and owned a small engine repair shop. He knew nothing about technology and probably didn’t know anything about combustion, yet he could listen to an engine for a couple seconds, pull out a screwdriver, turn a couple screws on the carburetor and make it run like new.

As a teen, he was responsible for heating the house. That meant spending the winter cutting down trees and splitting the logs needed to keep the house warm two winters into the future (the wood from the current winter had to dry a couple years before it could be used to heat the house). So he knew how to look at a tree, place the chain saw in the right place at the right angle and drop the tree right where it needed to land.

When I was a teen, we had various storms and other events on the family farm. Dozens of trees were damaged and need to be cut down. My grandfather couldn’t run the chain saw anymore (heart attack), but he knew how to drop trees. I could run the chain saw, but I had no clue how to drop a tree. (Or – I knew how to drop a tree…I didn’t know how to drop a tree in a predictable direction.)

You see where this is going…. Winking smile

As we walked the farm from end to end, he eyed up each damaged tree. Three puffs on his ever present pipe, an eyeball on the most off-balance, mangled, crooked tree around, and he knew how to make it fall. He pointed to a spot on the trunk and held his hand at the angle that I needed to hold the chain saw. As I wrestled the 1960’s vintage gasoline powered saw, whose power to weight ratio was far more weight than power, he tweaked the angle of his outstretched hand and I tweaked the saw to match.

Every single tree fell exactly where it needed to go.

And of course if the saw wasn’t singing the right melody, he held up his hand, I paused, he pulled the ever present screwdriver out of his shirt pocket, touched it to the carburetor and the chain saw magically changed it’s tune.

What I regret most is that I was only able to retain and use a tiny fraction of his knowledge. I’m sure that if I did that today without him guiding my saw, the trees would fall in a direction modeled by some function involving /dev/random, and the saw’s melody would pain the neighborhood.

This happens every generation, and certainly happens in system administration, development and the other foundations of our technology.

Too bad.

4 comments:

  1. You might enjoy this clip of Mike Rowe (Dirty Jobs) giving a talk about this kind of thing:

    http://www.youtube.com/watch?v=r-udsIV4Hmc

    ReplyDelete
  2. What you describe is information and knowledge being lost. That's sad. Know what's worse? Information and knowledge that is readily available about the computer history and people still keep doing the same mistakes over and over.. and they think that this new 'thing' they invented wasn't thought by anyone else before so how could they learn something from anyone?

    Tons of different programming languages, new 'paradigms' being created to tackle such small problems that the great inventors of our area would laugh (or cry).

    IT seems to be destinated to live in a loop, wasting resources. However, it looks like we've a lot of resources to spare.. since we seem to be improving somehow.

    ReplyDelete
  3. Giovanni - I couldn't agree more.

    Justin - That's a great show, but felling trees isn't really a 'dirty job'. I enjoyed it too much.

    ReplyDelete
  4. The heart of the matter in this topic is, in my view, a balance between learning and innovation. NPR ran a story yesterday about the inability of the Chinese education system to produce people who could do more than repeat what they've been taught. My son attended a conference recently in which the head of South Korea's equivalent of our federal Department of Education bemoaned the inability of S. Korea's education system to produce innovative thinkers.

    So, the American model of freedom and innovation is messy but is the envy of the world for its ability to create new ideas and new solutions.

    The question is, do we have a proper balance of learning to innovation?

    ReplyDelete