I noticed a couple of short videos - interviews with Brian Kernighan - on my YouTube home page the other day. This is probably because I recently viewed a Kernighan video in the same series after reading this post on the history of naming grep on JCS's blog.
For you youngsters out there, CS people of my generation relied on
Brian's books "The C Programming Language" and "The Unix Programming
Environment"to get us started with C and Unix respectively. Even
though they were both published in the 1970s I'd still consider the
both as "must reads." The section on software development at the end
if the Unix book is still probably one of the best written
introductions to compilers out there. I'd also add a few more books he
co-authored to the "must read" list:
- The Elements of Programmign Style
- Software Tools
- The Practice of Programming
- and I'd even say The AWK Programming Language
I read these books in the 80s, 90s and post 2000 so even when reading examples using ancient Fortran, the concepts still hold up and the writing is extremely accessible.
My Brian Kernighan story is that way back in the mid 1990s when I was starting to design what would become Stuyvesant's intro CS course, I sent out emails to as many "thought leaders" as I could get a hold of including both professionals and academics. I cold-emailed Brian based on a conversation I had with a former student. My former student, Bruce, had wandered into Brian's office while in college for "office hours" on a lark and ended up having a great conversation. He felt Brian might respond.
I shot off an email and a few days later got back pages and pages of really useful thoughts and commentary. I was blown away by the response. Either he took some serious time to think this out and respond to some nobody teacher cold-emailing him or he's just that good that he can rattle off a tome length response to some random teacher emailing him. Either way, it was a huge help. It also made an impression so while I might fail at times, I try to be responsive when people cold call or otherwise ask for help that I can provide.
I met Brian a number of years later at Google and in addition to being tolerant of my fanboy-ing, I found him to just a really special individual
Both these videos are short and I think both CS students and teachers will find them very interesting.