Dennis Ritchie: the greatest innovator you've never heard of
Within hours of my last post on the passing of Steve Jobs, I learned that another icon of the technology world had also just passed away, on October 12th. An icon whose achievements were at least as profound as those of the Apple founder, but with a far lower profile. Those open source developers and tech/geeks among you would know that I’m talking about the great Dennis Ritchie. The huge outpouring of emotion surrounding Jobs' death resulted in Steve Jobs Day, and uncountable blog posts. A Hong Kong student created a modified Apple logo as a memorial which rapidly went viral. There were even comparisons made between Jobs and Thomas Edison as the greatest inventor the world has seen! But news of Ritchie's passing went with little more than a murmur, except amongst those of us with a deeper understanding of the history of modern technology. In my own cloud computing world of Ninefold, virtual server technology would never have been possible without the work of this private, unsung individual.
Dennis MacAlistair Ritchie was the US Bell Labs Computer scientist who arguably more than anyone shaped the digital era. He was the primary designer of the the C programming language and, with long-time colleague Ken Thompson, developed the UNIX operating system - software that today powers everything from tablets to search engines, including all those fancy Apple devices on which Steve Jobs built his empire. UNIX and C also underpin the world wide web, the great connector which has changed modern life as we know it.
Ritchie’s influence in the evolution of computers since the 1960s has been profound. If I can indulge myself in some reminiscing, in my youth I spent more than enough time as an assembler programmer working on the PDP range of minicomputers, as well as its successor the DEC VAX – neither of which many of you will remember. However, Ritchie and his colleagues developed C on a DEC PDP-11. (C in turn was based on an earlier language called, predictably enough, B. Less predictably, there wasn't an A!) I clearly remember the excitement in those early days of C and UNIX. I also remember the fear it brought to the big proprietary tech companies - although they wouldn’t admit it - that had so much to gain from resisting the arrival of open systems methodologies.
Today, most of what we know about the web relies on Ritchie’s two creations, C and UNIX. Browsers are written in C. Most of the entire internet runs on the UNIX kernel which is written in C. C is the basis of nearly every programming and scripting tool in use today: Java, JavaScript, Perl, PHP included. And of course all those devotees who follow the religion called Ruby can thank Dennis Ritchie and his development of C. UNIX and C were the products of research that began as a side-project, using equipment bought on a promise that Ritchie and Thompson would in fact develop a word processor!
In so many ways, Ritchie has shaped our world more fundamentally than either Steve Jobs or Bill Gates; not that Ritchie cared for such comparisons. What sets him apart from Jobs and Gates is that he didn’t seek personal wealth or fame but was driven by scientific curiosity. He was a research scientist, not a marketer and definitely not a businessman. Put Ritchie alongside Steve Jobs and it’s very easy to tell which is the learned scientist and which the cool marketing and brand dude!
Despite his prodigious achievements, Ritchie always maintained a low profile. He led a very private life with a quirky sense of humour and real humility. He also credited part of the success of C to those who helped to push it hard from the beginning. "It’s a lottery, and some can buy a lot of the tickets. There are plenty of beautiful languages (more beautiful than C) that didn't catch on. But someone does win the lottery, and doing a language at least teaches you something."
Ritchie often joked that C had "the power of assembly language and the convenience of... assembly language", openly admitting that, despite its popularity, C was a less than perfect creation.
Importantly, by creating C, Ritchie also introduced the concept of open systems. C was developed so that Ritchie and his colleagues could port UNIX to any computer, and so that programs written on one platform (and the skills used to develop them) could easily be transferred to another. The broader open systems movement continues today with the aim of preventing vendor lock in via proprietary systems. Open systems, combined with the power of the internet, underpins much of the development of new business models such as disruptive cloud and virtual server technologies; with a utility based approach involving scalable, self service, on demand computing and bandwidth.
So. Steve Jobs and Dennis Ritchie. Two prodigies,two giants of the tech world so different in style and image. Perhaps it isn't appropriate to compare them as they both played their role. But, as colleague Brian Kernighan suggested in Wired, Dennis Ritchie was "the shoulders Steve Jobs stood on".