Dennis Ritchie day

Tim O’Reilly proposes that we designate the 30th of October as “Dennis Ritchie day”. That works for me. Pass it on.

Since my readers are probably wondering: Yes, I knew Dennis slightly. He contributed to The Art Of Unix Programming and was very supportive of the project. He was indeed as pleasant and gracious as others report…a true gentleman and, of course, a hacker of such stratospheric accomplishment as to have few or no peers. But he treated me like one anyway — and that was an honor.

22 comments

  1. What a great idea for a holiday!

    On the subject, how about a holiday celebrating John McCarthy? Hasn’t he made as great contributions to programming as DMR? (For convenience’ sake, how about that being on November 2nd?)

    Also, Jerry Brown is a bad man! Giving a day for a plagiarist?

  2. I was given a lot of YOU CAN PROGRAM IN 21 DAYS bullshit growing up.

    I seriously think it stunted my intellectual growth, but my father worked
    at a mine and was never in a position to know any better. So living in our
    black box, not to mention a windows world I can’t blame him.

    I’ve learned to let go of the bitterness.

    Not too long ago I came across k&r. I wish I had that from the beginning.

    It’s just a hobby for me. But I grew deeply attached to k&r. While the
    world mourns the death of Jobs, I feel that true recognition for genius should
    be directed to individuals like Ritchie. I feel sad learning of his loss.

    May Ritchie’s legacy live on.

  3. I wish people would suggest these things with more notice. By the time it’s the 30th for you fine folks in the US, we’ve already had our 30th in much of the rest of the world.

  4. Dennis Ritchie is a legend and the K&R book is definitely my favorite book on programming. I disagree with ESR about learning python as a first language. I would advise newbies to learn C and shell. That’s all.

    1. >I would advise newbies to learn C and shell.

      I speak under possibility of correction by someone who knew dmr better than I did – but I don’t think that’s advice he would have given.

  5. I disagree with ESR about learning python as a first language. I would advise newbies to learn C and shell. That’s all.

    I wouldn’t advise anyone learn C as a first language.

    I WOULD advise that anyone who wants to be a serious developer should learn C before they go too far. Just like i think they should try to understand what things like LISP, Prolog, Python, Erlang, Haskell, Javascript, LUA, Java and C++(in no particular order) have to teach. Anyone that goes into a programming job only knowing Python (or C or ASM or C++ or …) is doing themselves and their prospective teammates a disservice. (But hey I also think that anyone who wants to be a serious developer should also take little pieces of things as diverse as computer system design and psychology)

  6. Python is much better than C as a first language, but what’s relevant here is that if someone wants to start off with C, please do not advise them to try to learn it from K&R. Classic it is, but it’s written at much too high a level for newbies. Only after they have been programming for quite a while, will they be ready to mine it for the gems within.

    1. >Only after they have been programming for quite a while, will they be ready to mine [K&R] for the gems within.

      Hrm. Not sure I buy this. Not only did I learn C from K&R, most of the programmers around me in the early ’80s did, too. Am I supposed to believe that today’s noobs are less capable?

  7. @esr: Weren’t you programming for years before you learned C? I think I remember something about you programming in Lisp before that? Tell me if I’m wrong. My point is that people new to *programming* should learn C from some other book. (They have the handicap of learning programming concepts along with the language. I think you already had jumped over that hurdle when you encountered K&R.)

    I remember my own first encounter with C. I had programmed in FORTRAN and various microcomputer assemblers. I needed help from Tom Plum’s book (and others) to learn about how auto and static variables actually worked, how linkers work, etc. K&R make too many assumptions about what’s in a newbie’s head.

    1. >Weren’t you programming for years before you learned C?

      Yes. But not all the people around me had that kind of experience. They seemed to cope with it OK.

  8. “I had programmed in FORTRAN and various microcomputer assemblers. I needed help from Tom Plum’s book (and others) to learn about how auto and static variables actually worked, how linkers work, etc. K&R make too many assumptions about what’s in a newbie’s head.”

    I started with asm (Z-80 and 6502) and learning C afterwards was rather simple. Allocating stack frames, pointers/arrays/string, all the usual suspects as far as C newbies are concerned, were the easiest things to grasp – as I remember, I had some trouble getting rid of my asm habit of doing pointer arithmetic with bytes but beyond that it was pretty much smooth sailing.

  9. “I started with asm (Z-80 and 6502) and learning C afterwards was rather simple. Allocating stack frames, pointers/arrays/string, all the usual suspects as far as C newbies are concerned, were the easiest things to grasp – as I remember, I had some trouble getting rid of my asm habit of doing pointer arithmetic with bytes but beyond that it was pretty much smooth sailing.”

    @warmi: Yes, but where did you learn that stuff from? It couldn’t have been K&R; they don’t discuss them, just sort of mention them in passing. I programmed in FORTRAN, then programmed assemblers “in FORTRAN” when micros came along. (“A good FORTRAN programmer can program in FORTRAN in any language.”) I had to learn that stuff elsewhere….

  10. Can we give anyone involved with Java a day?
    And could that day include a hooded axe-wielding executioner?

Leave a Reply to Ryan Cancel reply

Your email address will not be published. Required fields are marked *