Friday, October 08, 2010

Babbage's heart-warming message for the middle-aged

You might think that designing the first computer would be a young man's game. Far from it. Charles Babbage started work on the Analytical Engine in 1833. He was 42 years old.

He kept working on designs for the Analytical Engine until 1846 when he was 55. He then stopped working on it and spent time on the Difference Engine No. 2 which was constructed by the Science Museum in the late 1980s.

Babbage returned to the Analytical Engine in the mid-1850s when he was 65 and kept working on it until his death in 1871 (aged 79).

The primary reason Babbage started so late on the Analytical Engine was that he was building up experience and knowledge prior to being 42 that led to its invention. He had started working on the Difference Engine No. 1 in 1822 (aged 31) and ideas for the Analytical Engine (such as the barrel based micro-programming and loops) came from trying to solve the problems associated with the Difference Engine.

That contrasts sharply with trends in the software industry where there's currently a cult of youth demanding that programmers be young and therefore relatively inexperienced. This comes about from the desire to deal with people knowledgeable about the absolute latest technologies, overlooking the fact that computer software undergoes macro shifts relatively infrequently (e.g. the rise of functional programming in the 1950s, structured programming in the 1970s, the dominance of object-oriented techniques in the early 1990s, ...).

Babbage's life points to the fact that experience can make an enormous difference and shouldn't be overlooked.

7 comments:

Artie Gold said...

The advantage of youth is having less to forget. The advantage of age is knowing *how* to forget.

When one is new to a field, all that is known, the current state of the art, looks like revealed wisdom. As such, no effort is lost in intellectual friction.

After a long time, though, after seeing many successive "states of the art" one can better see things from a meta level -- and have a better clue as to what is likely to stay and what is likely to be transient.

manu said...

So, the only device that was almost successfully built during his lifetime was the one he designed when he was 31. His later designs had to wait till late after his death to be even partly built and only reached completion to become part of a museum. I do not consider that very heart-warming.

Bif said...

This post talks to me. Maybe I can talk to some other, frustrated 40-somethings who are going through the same thing I am.

I just turned 40. Having just been laid off from a pretty cool and lucrative tech gig, I'm only now able see clearly. I have resurrected an idea I had when I was 30 and the 'wasted', intervening 10 years were indeed filled with wasted effort, but with secondary effects; all that gained experience.

So now I'm working with a lot of young people and although they sometimes fill me with intense feelings of hope and possibilities for the future - no one told them it couldn't be done so they just do 'it' (I'm only figuring that out now) - at the same time, that naiveté (in the most positive meaning of the word) is also something I'm quite happy to be tempering with the innumerable and sometimes critical mistakes I've made in the last 10 years. You can't feel that gut-pull the other way unless you've followed it both directions...and made a John-shaped hole in the wall on your way out.

The last time I coded was 1998 and then I quit and stayed home to raise my kids for a while and then went into system-design that really wasn't coding or even keeping up my chops. I thought I was done coding forever. "I'm too old, I have the ideas, I need others to execute them."

Then this economic depression hit (yeah, I'll just come out and say it) and my boss called one Friday morning to give me the news. As...he...was...speaking this old nugget from 10 years ago just POPPED back into my head. Like a Sesame Street letter, sitting there hovering over my now-balding melon. Except - I'm past my prime, washed up, The Parrot and I are just nailed to the perch - what am I going to do(?) write this thing in VB6?...PFFFF! "Minimum Viable Language" should be a term in our start-up times.

So my origins, Pascal and VB and C have been replaced by Ruby and Haskell and Python (not in any order) and my quest for money (what I THOUGHT was FREEDOM) has turned 180 degree into a quest for trying to do this almost to SPITE MONEY. To mitigate the negative effects of money. But I'm old - I can't learn a new language and "walk the walk" with these new, expressive languages...at least not in time - someone else will create this tool, someone else will probably bend it to the corrupt parts of money, to the easy and greedy road, and to something that only benefits the singularity-point of the giant economic Pyramid scheme that we ALL! ALL! ALL! participate in.

Close friend dies from cancer. Well Yeah - actually you are going to learn a whole new language and it turns out that it's harder than it used to be, because all online documentation for these new languages suck suCK SUCKS and all your bad-ass, guru, relational-db knowledge is competely useless and you'll have to not just learn the technical part, but just wrap your relationally-entrenched mind around it. And maybe you'll fail - maybe it will take all your savings, maybe it will force you to live in a smaller house, sell the AMG, eat ramen and give up some other trivialities, and maybe it will be an abysmall failure and everyone will point and laugh and post your failure on blogs. Videos of your failure and anguish will be shown to the entire world, your bad ideas will be translated into 1000 languages as a warning for other entrepreneurs.

But you will be alive.

This blog post obviously struck me because I leave about one comment per year in blogs so thanks for the kick in the pants and the "it's never too late". You just gave me a push down the hill (so to speak ;) ) to put down the Coffee and iPad and code the rest of a custom analytics graph on Google App Engine - my new life. I feel 20 again! Maybe my wife will think I'm 20 again tonight :)

Bif said...

This post talks to me. Maybe I can talk to some other, frustrated 40-somethings who are going through the same thing I am.

I just turned 40. Having just been laid off from a pretty cool and lucrative tech gig, I'm only now able see clearly. I have resurrected an idea I had when I was 30 and the 'wasted', intervening 10 years were indeed filled with wasted effort, but with secondary effects; all that gained experience.

So now I'm working with a lot of young people and although they sometimes fill me with intense feelings of hope and possibilities for the future - no one told them it couldn't be done so they just do 'it' (I'm only figuring that out now) - at the same time, that naiveté (in the most positive meaning of the word) is also something I'm quite happy to be tempering with the innumerable and sometimes critical mistakes I've made in the last 10 years. You can't feel that gut-pull the other way unless you've followed it both directions...and made a John-shaped hole in the wall on your way out.

The last time I coded was 1998 and then I quit and stayed home to raise my kids for a while and then went into system-design that really wasn't coding or even keeping up my chops. I thought I was done coding forever. "I'm too old, I have the ideas, I need others to execute them."

Then this economic depression hit (yeah, I'll just come out and say it) and my boss called one Friday morning to give me the news. As...he...was...speaking this old nugget from 10 years ago just POPPED back into my head. Like a Sesame Street letter, sitting there hovering over my now-balding melon. Except - I'm past my prime, washed up, The Parrot and I are just nailed to the perch - what am I going to do(?) write this thing in VB6?...PFFFF! "Minimum Viable Language" should be a term in our start-up times.

So my origins, Pascal and VB and C have been replaced by Ruby and Haskell and Python (not in any order) and my quest for money (what I THOUGHT was FREEDOM) has turned 180 degree into a quest for trying to do this almost to SPITE MONEY. To mitigate the negative effects of money. But I'm old - I can't learn a new language and "walk the walk" with these new, expressive languages...at least not in time - someone else will create this tool, someone else will probably bend it to the corrupt parts of money, to the easy and greedy road, and to something that only benefits the singularity-point of the giant economic Pyramid scheme that we ALL! ALL! ALL! participate in.

Close friend dies from cancer. Well Yeah - actually you are going to learn a whole new language and it turns out that it's harder than it used to be, because all online documentation for these new languages suck suCK SUCKS and all your bad-ass, guru, relational-db knowledge is competely useless and you'll have to not just learn the technical part, but just wrap your relationally-entrenched mind around it. And maybe you'll fail - maybe it will take all your savings, maybe it will force you to live in a smaller house, sell the AMG, eat ramen and give up some other trivialities, and maybe it will be an abysmall failure and everyone will point and laugh and post your failure on blogs. Videos of your failure and anguish will be shown to the entire world, your bad ideas will be translated into 1000 languages as a warning for other entrepreneurs.

But you will be alive.

This blog post obviously struck me because I leave about one comment per year in blogs so thanks for the kick in the pants and the "it's never too late". You just gave me a push down the hill (so to speak ;) ) to put down the Coffee and iPad and code the rest of a custom analytics graph on Google App Engine - my new life. I feel 20 again! Maybe my wife will think I'm 20 again tonight :)

Bif said...

This post talks to me. Maybe I can talk to some other, frustrated 40-somethings who are going through the same thing I am.

I just turned 40. Having just been laid off from a pretty cool and lucrative tech gig, I'm only now able see clearly. I have resurrected an idea I had when I was 30 and the 'wasted', intervening 10 years were indeed filled with wasted effort, but with secondary effects; all that gained experience.

So now I'm working with a lot of young people and although they sometimes fill me with intense feelings of hope and possibilities for the future - no one told them it couldn't be done so they just do 'it' (I'm only figuring that out now) - at the same time, that naiveté (in the most positive meaning of the word) is also something I'm quite happy to be tempering with the innumerable and sometimes critical mistakes I've made in the last 10 years. You can't feel that gut-pull the other way unless you've followed it both directions...and made a John-shaped hole in the wall on your way out.

The last time I coded was 1998 and then I quit and stayed home to raise my kids for a while and then went into system-design that really wasn't coding or even keeping up my chops. I thought I was done coding forever. "I'm too old, I have the ideas, I need others to execute them."

Then this economic depression hit (yeah, I'll just come out and say it) and my boss called one Friday morning to give me the news. As...he...was...speaking this old nugget from 10 years ago just POPPED back into my head. Like a Sesame Street letter, sitting there hovering over my now-balding melon. Except - I'm past my prime, washed up, The Parrot and I are just nailed to the perch - what am I going to do(?) write this thing in VB6?...PFFFF! "Minimum Viable Language" should be a term in our start-up times.

So my origins, Pascal and VB and C have been replaced by Ruby and Haskell and Python (not in any order) and my quest for money (what I THOUGHT was FREEDOM) has turned 180 degree into a quest for trying to do this almost to SPITE MONEY. To mitigate the negative effects of money. But I'm old - I can't learn a new language and "walk the walk" with these new, expressive languages...at least not in time - someone else will create this tool, someone else will probably bend it to the corrupt parts of money, to the easy and greedy road, and to something that only benefits the singularity-point of the giant economic Pyramid scheme that we ALL! ALL! ALL! participate in.

Close friend dies from cancer. Well Yeah - actually you are going to learn a whole new language and it turns out that it's harder than it used to be, because all online documentation for these new languages suck suCK SUCKS and all your bad-ass, guru, relational-db knowledge is competely useless and you'll have to not just learn the technical part, but just wrap your relationally-entrenched mind around it. And maybe you'll fail - maybe it will take all your savings, maybe it will force you to live in a smaller house, sell the AMG, eat ramen and give up some other trivialities, and maybe it will be an abysmall failure and everyone will point and laugh and post your failure on blogs. Videos of your failure and anguish will be shown to the entire world, your bad ideas will be translated into 1000 languages as a warning for other entrepreneurs.

But you will be alive.

This blog post obviously struck me because I leave about one comment per year in blogs so thanks for the kick in the pants and the "it's never too late". You just gave me a push down the hill (so to speak ;) ) to put down the Coffee and iPad and code the rest of a custom analytics graph on Google App Engine - my new life. I feel 20 again! Maybe my wife will think I'm 20 again tonight :)

Max said...

His life does not preclude the possibility however that you can hire young people at significantly lower cost and still get good, or even great, output. Hence the businessman's preference.

Oblio said...

Bif, you're awesome and inspiring.

I am cynical and work in tech. I hope to get out someday as for the brief time I was in management I got far too many resumes from men twice my age making 3 times what we were paying looking for something to coast on until retirement. I don't want that when I am 55. And this is a little cynical, but the reason you want young people is that they don't have wives, kids, or much in the way of material possessions. So they'll make mistakes but they'll make them nights and weekends, working 60 hours a week for what really is very little money.