Skip to Content

I was at San Jose Airport when I saw on my phone the news that Dennis Ritchie passed away. Honestly – unlike the news of Steve Jobs’ death, this did not exactly shock me. But I truly felt sad at some level, and my mind raced back to my school days and to the hand-me-down tatered covers of K&R – the definitive book on C programming.

 

The first programming language I learnt was BASIC on a hand-me-down PC, with storage on a cassette. I used to feel incredibly proud being able to write video games in BASIC. A year later, an uncle of mine visited us, and he was going to USA for higher studies. He gave me the K&R book – and told me “stop building stupid games, and learn this”. If I remember right, that book was not opened for another couple of years.

 

And then a friend introduced me to a scientist in the space research center, who was a programming expert. He offered to teach me C. And I told him I have the K&R book. His answer was “Don’t insult Dennis Ritchie, kiddo – you are not ready for K&R”. And he was right – I was not. I went back and read the first chapter – and “hello world” made sense to me. But by the time it came to pointers – it was beyond me, and I felt terrible. But my teacher patiently walked me through each chapter, and in a few months – I was getting good at C. And finally – the book started making sense. That tattered book is still in my parent’s home, and I fondly browse through it every time I visit. Along the way, I also learned UNIX. And I did not know then that Dennis Ritchie was one of the guys who invented it,

 

C++, ABAP and Java followed – and us young programmers used to ridicule them all, and the statement that ended all arguments was “that is not how it should be done according to K&R” . The big deal about ABAP was Field symbols and bit wise operators when I started in it. No trouble – it was nothing for peeps with a strong C background.

 

The guy who taught me C was appalled that I became an ABAP programmer. He used to yell at me – on phone, and on email that “That is not real programming – Ritchie will curse you boy”. And we used to laugh about it. I sent him a short note from my phone when I heard the news. And just as I expected – he was devastated.I had to make one other call – to my parents, to send me the K&R by Fedex.

 

I don’t program any more as a job, and I miss it. But programming was what helped me the most in building a career. It still is the one thing that gives me the most thrill – and I owe it directly or indirectly to K&R, and to Ritchie.

 

And I am sure I am not the only one feeling this way. Almost every programmer owes it to Ritchie – C is behind almost every language that came after it, right up to the stuff we need to make iPhone and iPad apps work. I know for sure – since that is what I am doing now, learning Objective C. Goes without saying that so is Unix – I cannot count how many derivatives came out of it. Even my favorite IBM Watson machine, is a Linux machine (and so is HANA)

 

Rest In Peace, Dennis Ritchie – and Thank You, from me and fellow programmers !

To report this post you need to login first.

11 Comments

You must be Logged on to comment or reply to a post.

  1. Gregory Misiorek
    Hi Vijay,

    thank you for writing this blog. i’m not a developer, but cannot be but amazed at the longevity of C and its grand and great grand children as well as at the total lack of knowing outside of the programming world who Mr. Ritchie was.

    i did read the book and i did get lost shortly after reading the first chapter, but i do appreciate the elegant brevity and terseness of both C and UNIX, especially when compared with their more baroque off-springs.

    Mr. Ritchie, the fruits of your labor will live on, even after the riches of this world are long gone and forgotten.

    Best regards,

    greg

    (0) 
    1. Vijay Vijayasankar Post author
      Hi Greg

      Very well said – “Mr. Ritchie, the fruits of your labor will live on, even after the riches of this world are long gone and forgotten.”

      K&R did two things that makes me smile looking back.
      1. it taught people how to squeeze the most out of your computer with good programs . 
      2. An unintended side effect was a lot of unmaintainable code was created – trying to write code with minimum variables, lines of code and very complex pointer algebra

      Cheers
      Vijay

      (0) 
      1. John Astill
        C was the start and first 10 years of my career. I still have my K&R book and Unix Programming Environment in my bookshelf. Some things are too good to throw away. Much fun was had with pointer arithmetic and function pointers back then.

        JohnA

        (0) 
  2. Bala Prabahar
    Hi Vijay,

    K&R, C and Unix – taught me, in that order, how to think; and I owe majority of my success to the way I think. Thank you Mr Ritchie for:

       – Developing Unix on almost unused PDP-7 in Assembly Language
       – Writing C
       – Rewriting majority of Unix kernel in C
       – Writing great book K&R
       – Last but not the least, delivering Open Source

    When I began my career in ’88, C was known for writing system software. I joined application development team; luckily, yes I call lucky, my team had decided to use C in Unix to develop Application Software, probably one of few those days.

    Our team was about 15 member team. Of 15, 3-4 were familiar with C – I mean really familiar with C writing device drivers,C-ISAM routines etc. My team manager decided to train everyone in C. So he asked C-veterans to teach us for 5 days. First thing they asked us to buy K&R. We bought, used printf to print Hello World successfully. We were so excited.

    We didn’t have any challenges on first day. As days progressed, we found it very difficult to follow. There was a final test on Friday to evaluate C-Competency. Everyone except one failed. Everyone was really upset.

    My team manager and senior members who taught us discussed, analyzed the feedback received from us. The guy who passed became a hero. The manager asked him to provide his views on what the problem was and probable solution:

    In a nutshell, this is what he suggested:

       Problem: K&R begins with a simple program; then additional requirements are added to introduce new features of C. K&R follows a step by step approach to introduce complex features of C. However the class format didn’t follow that approach.

       Solution: Teach C concepts the way K&R is written.

    As soon as the manager heard this, he was really thrilled and asked that member to teach us second time for 5 days. Needless to say, he nailed it. He did an awesome job and everyone passed second time. That really opened my eyes: Start simple and then add more complex concepts later. I don’t know if this philosophy is good or not these days; but this is what I’ve been following for 20+ years. Whenever I experience a complex problem/challenge, first thing comes to my mind is K&R, a small book.

    Thank you Mr.Ritchie. Unix took years to mature; it seems some flavor of Unix would stay for loooong time unlike any other O/S.

    RIP Dennis Ritchie.

    Thank you Vijay for writing such an excellent blog.

    Regards,
    Bala

    (0) 
    1. Vijay Vijayasankar Post author
      Hi Bala

      Thanks for taking us down your own memory lane. You are right – he was as much a great teacher with the way K&R was structured as he was a trailblazer with the language itself.

      Cheers
      Vijay

      (0) 
  3. Graham Robinson
    Hi Vijay,

    thanks for this blog.

    K&R (officially known as “The C Programming Language” by Brian Kernigham and Dennis Ritchie) is one of those books that changed the world – or at least the world of technical writing.

    Before K&R programming manuals were reference books – like encyclopaedias – where you really needed to know what you were looking for and then search in the index or table of contents to find it. This meant that to start programming in any language you needed to go on formal training or find someone generous enough to start you off.

    K&R changed all that. The book was short but complete and  it was designed to be read from cover to cover and also to be useful as a reference as well. And it was chock full of complete working examples.

    Most importantly it introduced us all to the “hello world” program that is probably the only program that has been written in every language by every developer. 🙂

    Cheers
    Graham Robbo

    (0) 
    1. Vijay Vijayasankar Post author
      Hi Robbo

      That is an excellent point – I remember struggling through the Unix manual myself. And then someone pointed me to a cheatsheet from a list server, and I almost cried with joy 🙂

      and on hello world, I wonder how many new programmers realize where it came from

      Cheers
      Vijay

      (0) 
  4. shanto aloor
    C was the first programming language which I learned.

    R.I.P Dennis Ritchie… We will miss you for sure…. but your work will not and can not be erased from the world. And as a programmer I am truly thankful to you, for all the things what I am owing now.

    Thanks and Regards
    Shanto Aloor

    (0) 
  5. Kumud Singh
    Hi Vijay,
    First blog in my morning and it makes me go down the memory lane wherein I started with C lang. right from my 11th and 12th standard and continued in my Engineering.Dennis Rithchie book, it would be difficult to find someone in this field not to have read his book.Pointers awed me first,challenge at second and fun in final phase. C++ evolved only because of C limitations. Had there been no limitation, C++ would never have come. Java, father of C++ is again evolution.Eclipse, the fashion designer for Java programmers.So on and so forth….
    Then I joined my first s/w company and entered into ABAP.But foundation is laid down by C.

    All my regards for Dennis.

    Thanks,
    Kumud

    (0) 
  6. Alvaro Tejada Galindo
    Vijay:

    I didn’t start programming with C, but did with C++…so one of the first things I learned was that C++ was a superset of C, created by Dennis Ritchie…then I found out he also co-invented Unix…awesome…truly a genius.
    When I start doing ABAP, my C++ skills really helped me a lot…and actually…I think my C++ skills still help me in every new programming language that I want to learn…without Mr. Ritchie, no C++ would have been invented…and probably…I wouldn’t be doing ABAP right now…so I owe him a lot…may his soul rest in peace.

    Greetings,
    Blag.

    (0) 

Leave a Reply