Dennis Ritchie – An Unsung Legend
We all know about the passing of Steve Jobs this week. I think its safe to say the world doesn’t need another blog post about his death, what it means to the modern world, modern software, and the tech industry. To be sure, Jobs built Apple into a powerhouse in the last few years (and the last years of his life), and without his work, and Apple the company, Glowdot would not be what it is today.
But this post is about Dennis Ritchie, and I’m willing to bet most readers haven’t heard of him. And that’s a shame, because without him, none of the Apple products or apps you know and love would exist — or at least, they wouldn’t exist in the form you know them. Dennis Ritchie was truly the father of the technologic world as we know it now. And that his death has gone largely unreported, while people build shrines outside of Apple stores to Steve Jobs, is kind of a shame.
Ritchie created the C programming language. Every language I use on a daily basis is based on the C language. Objective-C, which almost every app you use on your iOS device (per Apple’s pretty strict demands) is built in Objective-C, which is C with an object oriented extention. When I build apps and games in Unity, I use C#, which is sort of a mix of C++ (itself an object oriented extension of C), and Java (a C-like language). And even PHP is C-like. The influence of the C language is really everywhere, from language structure, to commonly named built-in language methods (like printf, for example). It’s just impossible to understate the influence of C.
But Ritchie also helped develop Unix. OSX is built on Unix. iOS is built on Unix. The majority of the Internet is built on Unix, or Linux, which is an open source implementation of Unix.
Keep in mind we are talking about technologies created decades ago, which have been snowballing ever since, culminating in our purely digital world — a world that quite simply wouldn’t be possibly without C, Unix, and the Internet. Everything we do and use is an extension of these technologies.
I started programming on a Commodore 128 in 1986. My first programming class was in high school in 1993 — a class in Pascal (an ancient language no one uses anymore, which is nothing like C). But it wasn’t until my first year of college, in a class called “Unix Programming in C” that I really decided this was what I wanted to do with my life. The textbook for that class was the same textbook in any C/Unix class – “The C Programming Language” by Brian Kernighan and Dennis Ritchie. Messing around on a C128, making primitive games and generating beeps was one thing, but learning Unix and C, socket programming, even early text-based GUI programming, opened the world to me. Even in 1993, these now old technologies inspired the same explosion of ideas that our new i-devices do for me today.
As an interesting side note, the “Hello World” program, which anyone learning programming surely knows, originates from the K&R C book (although it is attributed to Kernighan, not Ritchie). If you haven’t heard of Hello World, it’s the first step to learning a new language — making a simple program that simply prints “Hello World” to the screen.
So this post is my little RIP to a true legend. Dennis Ritchie. Thank you for my career.