It is hard to take the measure of a legend. At first, one doesn’t know where to begin to appreciate such a man, where his strengths and weaknesses are, or even whether they ought to be considered at all in the spirit of an outstanding legacy. Perhaps it would have been alright if the person in question had been controversial at any point, if he had antagonized a public figure, or even if he’d had a failed marriage. But no, Dennis Ritchie lived a simple and dignified life, sculpted the world we know today, and left without a note.
To the uninitiated: Ritchie invented the computer language called C and, with his friend Ken Thompson, the operating system (OS) UNIX. The former was a veritable weapon of change because it did not revamp the past, but obliterated it. It created a new world of faster, more aesthetically pleasing computers and calculation engines. It muscles to machines and their reins to man.
Ritchie was born on September 9, 1941, in Bronxville, New York. He received his bachelor’s and master’s degrees from Harvard University, in physics and applied mathematics, respectively. The subject of his 1968 doctoral thesis was subrecursive hierarchies of functions – which would go on to play a significant role in the conception of user-defined functions in C.
His master’s program, Ritchie has been quoted as saying, made him realise his aversion to functional languages, which were very prevalent in the 1970s, because they treated all output as the product of mathematical computations. Instead, Ritchie sought out a procedural language, which would give the programmer access to different kinds of data and allow him to manipulate that data in steps.
Because it was unheard of or, more likely, irrelevant, procedural (or imperative) languages had no traction in the industry. In the same period, in 1967, Ritchie joined the now-defunct Computing Sciences Research Centre at Bell Labs, an opportunity that allowed him to build on his need for imperative programming structures. This came to be for two reasons. Dennis’s father, Alistair E. Ritchie, had just then retired from Bell Labs himself after an illustrious career working with pre-transistor-era switching circuits. His legacy left the labs placing a lot of faith in his son.
The second reason was Dennis’s meeting with Ken Thompson, another legendary programmer, credited with writing the UNIX OS. Thompson and Ritchie would go on to work together on a long list of projects for their employer, culminating eventually in the Multiplexed Information and Computing Service (MULTICS) project. MULTICS was notable as the first time-shared OS.
Ritchie’s first real step towards C came in the guise of his work on UNIX. Thompson then worked with the Basic Combined Programming Language (BCPL) to write UNIX, a barebones vocabulary used to communicate directly with the high-end hardware running each machine, which he went on to attenuate to his needs and gave it efficiency, breadth, power and style. This new avatar he called B.
In 1969, after UNIX was released for commercial use, Bell Labs foresaw a serious problem looming up: even though it was B at work, UNIX was essentially BCPL, which meant that the OS wouldn’t work on all machines. In fact, to install the OS, only a specific kind of machine could be used – like a precursor to today’s Apple computers. This issue was fixed by Ritchie, who worked on B to add declarations, function definitions and statements. Declarations allowed the user to create new types of data and work with them, functions allowed complex functions and procedures to be grouped together, and statements allowed the mobilization of the user’s will. Together, they formed what is today popularly known as the “C source file”.
According to Ritchie, the development of C took four years, from 1969 to 1973, with the most productive year being 1972. After 1973, the language found widespread application quickly and steadily, and the world of computing changed so much that there was a rupture in its continuum. The first large-scale deployments were in building OS and embedded system applications. In 1981, IBM built the PC-DOS OS for its range of personal computers and, following suit, Microsoft’s MS-DOS was released in 1982. Both were built with C.
But all these are the life and works of Dennis Ritchie the programmer. What about the man underneath? It so happens that Dennis Ritchie the programmer was also Dennis Ritchie the man underneath. Except for his work at Bell Labs, he was like any other geek of his time, experimenting with meaningless lines of code, trying to understand how machines could better be improved, and making sense of the world one logical statement at a time. Despite such simplicity, Ritchie deserved such a river of praise that flowed through the web as when Steve Jobs died.
Even though he didn’t get it, not one engineer, programmer or technician on the planet could have forgotten that the man who had invented Gates, Jobs and Page was dead.
No comments:
Post a Comment