Another hero fallen – Dennis Ritchie, 1941-2011

2011 October 13
by mackan

Dennis Ritchie, for those of you who don’t know, is one of the coolest people you have never heard of. Regardless of what tech you are using, you are able to read this, beacause of him.

I will write a geeky sentence so that geeks understand the gravity of his work: Ritchie invented C. And co-invented Unix.

For a lot of those who follow this blog, that doesn’t mean much. That previous sentence might seem as incomprehensible techno-speak without meaning. But for those of the general population that are computer geeks, it means that we lost an icon.

You see – “C” is the very programming language used for developing operating systems. Without C, you would never have seen Windows ever come alive. Or Linux. Or Mac OS. And without Unix… Heck, without Unix, you wouldn’t even be reading this. Unix is a family of operating systems. Most of Internet’s servers run some sort of Unix dialect.

Back in the day it was The Operating System for Telephone Switches. Today, though, it is used for every type of computer task. If you are reading this on a Linux or Mac, you are right now running unix. The server that hosts this web page is running Unix. The computer I am writing this on is running Unix.

As a young geek, I had no idea who Ritchie was. But I was, already back in the late 80s, affected by his work. “C” was the first “real” programming language for a lot of computer enthusiasts back then. You see, most micro computers (or “home computers”) from that age could be programmed using either low-level machine code or a high-level language called BASIC. Now, BASIC’s best selling point back then was that it had a syntax similar to really stupid sounding English. So it was kind of easy to learn. However, if you wrote programs in “really stupid sounding english”, you also learned a lot of really ugly programming habits. Your code would run, but would both be a mess to read, and computationally “expensive” (ie SLOW) to run.

Low level machine code, on the other hand, was mad fast. And mad hard. Every computer model had it’s own set of hardware, and since you wrote code directly for the hardware, porting a program from one architecture to another was tedious, if not impossible.

Enter “C”.

C was somewhere in between. And was standardised enough so that you could write pretty decent code for any computer out there. The “source code”, which was basically text files with instructions, were converted to code that the machine understood, by a “compiler”. For every new computer system that came out, all you had to do (theoretically) was to get (or write…) a new “C”-compiler, and then you could compile all your old software on the new architecture.

If anyone wonders why game development took so much time for the FIRST architecture, but was then ported so fast to other computers back then, this is why. The games were written in C. (With some parts optimised for the specific architecture, written in machine code.)

I started programming in C back in 1988. Had there been options like Python back then, I would have started with that, but back then C was the multi-purpose language that was spread the most. By learning C, I had access to tons and tons of source code, for reference and I would learn quickly.

A whole generation of programmers of that age learned their craft, using C. Even if they have moved on to other languages later on, C was the door that opened up to a new world.

By standardising programming, through C, and computing in general, by contributing to Unix, Dennis Richie changed the world. For you, too.

He’s one of the coolest guys you never heard of. If you’re not one of us.

EDIT: 13 oct 12:19 Added geeky YouTube clip.

One Response leave one →
  1. 2011 October 13
    MiaD permalink

    Älskar klippet. Älskar.

Leave a Reply

Note: You can use basic XHTML in your comments. Your email address will never be published.

Subscribe to this comment feed via RSS