When the gods dance...

Monday, January 28, 2013

MacWrite, MacPaint and the history of software.

        Thread started by Dave Winer 2 days ago.

What early software was influential?

On Thursday I wrote a piece about MacWrite and MacPaint, two pieces of software that influenced much if not all the software that followed. There are many other examples of seminal software products. In most cases, the products are not the first of its kind, as MacWrite was not the first word processor, but for whatever reason, put enough of the pieces together to lead the way to the future. It's not always obvious in the moment, but with the benefit of hindsight we can see.
They don't, for some reason, study these products in computer science. They fall between the cracks of "serious" study of algorithms and data structures, and user interface and user experience (which still is not much-studied, but at least is starting). This is more the history of software. Much like the history of film, or the history of rock and roll.
In film, the movies of the 1930s were unusually influential. Probably because it was the first decade of sound.
In popular music, the sixties and early seventies were seminal. The music of a very small number of artists and bands took music in a new direction.
It seems to me that the 1980s were like that for software. Before that, serious people dismissed the idea that ordinary people would use computers. You know, the clip from the Steve Jobs movie where fictitious Woz says no one will ever use this stuff. People believed that (not Woz, he's always been a visionary and an inclusionist, the movie did him a disservice). To be a believer meant being lonely. That is, until we all read Ted Nelson's book! So, if we were to make a list of art that led to the popular use of computers, Nelson's work would surely be in there. As would Woz and Jobs, and Bill Atkinson, Randy Wiggington and Susan Kare, who pioneered a little thing like graphic icons. Made a huge difference, and influenced software design for all who came after.
And Unix, sparse, bare-bones and character-based was also hugely influential. In the commercial software world it lay dormant during the 80s, mostly used in academia. But the seed was planted. If you got a compsci education in the late 70s or 80s you used Unix. And then, in the early 90s when networking boomed, it was Unix it boomed around. It became the server platform. The web basically is Unix with a somewhat friendly interface slapped on it (said with a bit of irony). I never thought users would tolerate http:// but it shows how wrong you can be (an idea always worth considering).
Other obvious products of the 80s whose influence are still felt today (and remember this is my list, not anyone else's): Visicalc, Lotus 1-2-3 and Excel in spreadsheets. The popular word processors and databases of the day. PowerPoint. The Finder. Hypercard.
I had to start a separate paragraph for two long-gone and much-missed products: Think C and Turbo Pascal. I used the former, for quite some time, to develop serious software. It did something no one thought was possible -- instant compiles of huge C programs. This was a barrier that was broken by Turbo Pascal a few years earlier. Proves one of the fundamental rules of good software design -- always revisit your assumptions as time goes by and Moore's Law continues to change the rules of hardware. What you couldn't do a few years ago might work perfectly well today.
As I played around with this idea, I started thinking of people whose opinions I would value on this, and then realized this was turning into a software Hall of Fame, like the Rock and Roll Hall of Fame. Something that the movie business doesn't do and should imho -- go back twenty or thirty years and recognize the films they missed when they were new, but turned out to be seminal. Honor people who you didn't know were great when they made their early contributions.

I would ask people like Woz, Ray Ozzie, Dan Bricklin, Mitch Kapor, Joel Spolsky, Marc Canter, Michael Miller (former editor of PC and InfoWorld and a walking encyclopedia of software), Jon Udell, Chuck Shotton (people you might not have heard of but who have great depth of knowledge). Robert Carr and Greg Stikeleather. I'd love to ask Brendan Eich what languages influenced the design of Javascript. Or ask TBL what software he was using in the years leading up to the web. What software was Jimmy Wales studying before he figured out that we needed a global open encyclopedia? What led Adam Curry to come up with the idea for the "last yard" -- the idea that led to podcasting? Who else? Here's a chance for us graybeard programmer types to help put things in perspective.
For my programmer friend who wanted to know about MacWrite and MacPaint, I suggested watching James Burke's great Connections series, which I've written about previously. Every "invention" is more of a synthesis of ideas that were floating around. This is the brilliance that makes change possible. If we had our priorities straight we wouldn't honor the lone inventor (an idea that I don't think even exists) rather we'd celebrate the synthesizer, the Rolling Stones, who loved the music of American blues musicians and figured out how to make it relevant to everyone, but never forgot their roots. Just one of a billion examples.

  Perhaps we're ready to give up the mythology of tech innovation, and start studying how forward motion really happens.

No comments:

Post a Comment