Linux Journal Interview With Brian Kernighan
pndiku writes "Linux Journal has an interesting interview with Brian Kernighan where he talks about AWK, AMPL and how he had nothing to do with the creation of C."
← Back to Stories (view on slashdot.org)
The story has a link to ampl.org, the correct link is ampl.com.
John.
'...and how he had nothing to do with the creation of C'
That's something to be proud of!
I have over 70 freaks, do you?
I had nothing to do with the creation of C either!
...and someone asked me about the wisdom of gets(), I'd also be pointing at Dennis Ritchie and yelling, "It was him! Burrrn him!"
Isn't SCO already suing Brian, both for being involved in a Linux OS, and because "C" happens to be found in the middle of SCO's trademark name?
So, we still have K&R, just as before. Only now, maybe some readers understand better that K&R is not the names of the C inventors, but the name of the people who wrote the book about how to use C ;)
The book you are referring to:
The Practice of Programming
Kerningham and Pike
Addison-Wesley, 1999
is a classic text and it's very clearly written. The front cover sums up in three words the core philosophy of the entire book:
Simplicity
Clarity
Generality
It is a delight to read although it uses C/C++ as the example language everywhere and tends, therefore, to be a little C oriented, although there are examples in other languages.
Much of the material will be familiar to people who've done a CS degree (e.g. trees, O-notation, etc.) but the section on testing is very worthwhile if you are planning to write code that will last a long time.
John.
He mentions that he considers C to be the best combination of expressiveness and efficiency. I wonder, fellow Slashdotters, what you think the most expressive language is (efficiency aside)?
Amazing magic tricks
wrote with Dennis Ritchie(which is the main inventor of C).
<nazi class="grammar">
First off, which is in the wrong case. which is the objective case. It should be the nominative form, that.
Second, that/which is the wrong word. Dennis Ritchis is a person, and therefore should be substituted by the pronoun who (not whom, as that would cause that same nominative/objective problem again).
</nazi>
my pet machine
Brian K is a really nice guy, it seemed to me. Another gift of the city of Toronto and the University of Toronto to humanity! I heard him talk at UofT a year or two ago. It seems he teaches Visual Basic in his programming course at Princeton. I'm a C nut so that came as a shock to me. Still, I really admire the guy.
He says " I wound up at Princeton" and "through good luck I got a job at Project MAC at MIT" and "probably because of the MIT experience, I got a job at Bell Labs in the Computing Science Research Center". Princeton, MIT, Bell Labs?? not easy!
New year Resolution: Don't change sig this year
Like many people, I have mixed feelings about Microsoft. They have done much good for the world, producing a common environment that has enabled a lot of creative people to build new software and hardware and sell it at reasonable prices. Microsoft's work has made computing accessible to a huge population who would otherwise not be able to use computers.
listen folks: Microsoft did not bring computers to the masses. Computers were well on their way to the masses through the fine works of the many many other people in the computer industry.
Microsoft has held computers back from the masses. Monopolies charge unreasonably high prices. High prices stop people from buying things. A grindingly competitive software industry would have delivered many more computers to many more people and businesses.
Microsoft has harmed us all, and the world economy, immeasureably, by much more than the money they've pocketed for themselves.
stick to CS, Brian, it's something you're good at.
Let's see ...
If you had done as much important work, I think you would be worthy of an interview, too. That's no guarantee that you'd have much to say, of course.
"And this is my boy, Sherman. Speak, Sherman." "Hello." "Good boy."
Can't speak for Mr. Ritchie, of course, but it could be that he was refering to the FreeBSD 4.4 built into MacOS X
The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...
1. He says the graphical interfaces for running java are more responsive on Windows than X, not that everything is. You take that out of context, and in the process invite flame war Win vs X...
3. You are inviting a flame war Lisp vs C. They are very different languages to start with, and both have "loyal followers", one of the best recipes for flame war.
That's why your first post comes through as flamebait, and 2nd post comes through as a troll trying to draw more attention to your first flamebait.
(And btw, I didn't moderate it, this is just my impression.)
Awk and those three books were the basis of my early career and I would think had the most impact on my thoughts and programming style. Not quite the philosophy of programming, but darned close. I'm still advocating the use of small, interoperable tools in my current work, even though I no longer do the programming.
Some ideas are just right.
One of my favorite Kernighan quotes of all time:
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
... since C is now owned by SCO, so is everything written in said language
That explains why SCO isn't going after Microsoft.
Windows being written in VB and all.
Let's see:
1) He mentions he writes interfaces for.. Visual Basic
2) He mentions he writes code in Java
3) He mentions Microsoft in a positive light
4) He admits to owning a Mac
Fuck, man, the only thing he didn't do is say "vi" or "emacs".
Does this mean that, in reality, all of the contention regarding languages, operating systems, and idealogies is completely artificial and that we should really just use what we like instead of jumping on a particular bandwagon and denying the legitimacy of anything else?
Man, I think I want to go back to bed.
If you were me, you'd be good lookin'. - six string samurai
I've found that most people in my classes who can't program have never even heard of the K&R book, and would probably be hard-pressed to tell you who K&R are. I guess the book can only help if people read it. ;)
if(!cool) exit(-1);
Here's an HTML version of Why Pascal is Not My Favorite Programming Language. There's a Postscript version on Kernighan's website
Very practical. He wants to use the computer as a tool. Not a propaganda platform. Windows is fine and dandy for some applications, Unix for others. It all depends on what you're trying to do.
-
Umm just one quick question you say that you're running Linux on a Mac; there is no version of BBedit that runs on Linux. Unless you are doing something strange like running it through MOL
You read the article didn't you. DIDN'T YOU. Never do that again.
(It led you to assume that the rest of slashdot will.)
My aunt used to work with these guys at the Labs here in NJ quite often. Shes dieing now and we sit for hours and talk about how she used to program in C and how much she loved unix. Hours on end of stories about these guys and different projects. I work with a guy now who worked with her, lots of stories from him as well. Awesome stuff, true geniuses. Gotta thank these guys for changing the world.
-- chris
http://elusive.filetap.com
Isn't it odd that I'd recommend to people who want to become programmers to avoid taking Brian Kerningham's class?
... like what you see on Slashdot every day). It's not just a programming course -- it covers pretty much every aspect of the field of computing and its related subjects, though in somewhat limited depth.
I know people who have taken his classes. I live with one of them (a CS type), and used to live with another (a non-CS type). All of them have nothing but good things to say about Kernighan's classes.
The class in which he teaches VB is oriented towards non-CS types, and, from what I saw of my former roommate's coursework, I can't imagine a better course to give people who are basically computer illiterate SOME idea of just what goes on inside the magic box, and some familiarity with all the issues surrounding information technology (legal, ethical, etc.
Complaining about VB's namespace problems in this context is like bitching about giving a toddler a tricycle because he'll never win the Tour de France on anything with three wheels. My former roommate had no problems with his programming assignments that he wouldn't have had in any other language, and, judging from what I've seen of people trying to pick up C and Java for the first time, VB is a far better choice of language for a course that aims to give people a flavor of what computers are all about.
It should read, "Conversation with God (or a God)".
Jokes aside, the names Kernighan and Ritchie are firmly planted in the minds of most CS majors. We have "celebrities" like Torvald or Stallman but at the end of the day, professors always say "Read page XXX in Kernighan and Ritchie", which we always proceeds to ignore until our code doesn't work. Then once again, we reach for the pretty little white book and thank someone or something for the well written proses. Unlike many other CS books, K&R seem to have cover most of the possible contingencies a fledgling CS major might have. I hate books that tell you how to do things only in one way, their way. K&R was written so well that I didn't have to.
EvilCON - Made Famous by
I'm sure most programmers, deep down inside, feel the same way. Windows is the undisputed king of the desktops. It is just easier to use Windows than most other OSes. No one can deny its role in popularizing computers. What drove some of us nuts is that it crashed a lot and some of the practices of MS. With Windows 2000, the first complain really quiet down a lot.
EvilCON - Made Famous by
I'm sure most programmers, deep down inside, feel the same way. Windows is the undisputed king of the desktops. It is just easier to use Windows than most other OSes. No one can deny its role in popularizing computers.
All True.
What's more, I make a decent living off of Microsoft's products -- and like a good parasite, I don't actually harm my host.
-kgj
In the interview KR said:
There are only two real problems in computing: computers are too hard to use and too hard to program.
Does everyone buy this? What about issues of availability and maintainability? How about:
There are three real problems in computing: computers are too hard to use, too hard to program and too hard to administer.
If you mean the "FreeBSD" userspace, then maybe, but I've yet to see anybody argue convincingly that MacOS X is actually "freebsd with stuff on top". It has a different kernel, different IO layer, the FreeBSD de-facto graphics layer is X11 not Quartz, and so on. Calling MacOS FreeBSD is like calling Windows with Cygwin Linux. I think this guy knows the difference ;)
It's true that there is the Mach kernel involved (here's a simplified cake-layer diagram), but from the context that Ritchie provides ("The way I use them, which is as a casual programmer, it doesn't matter--they are all the same...") none of that is really relevant. The APIs that he expects from a unix are there in the FreeBSD 4.4 code layer. (X11 is there too, by the way). He would have to be using the word "FreeBSD" very pedantically to mean that it's FreeBSD/PPC and not the FreeBSD 4.4 in OSX. It doesn't sound like he's being pedantic in this interview.
The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...
I would argue administer==use
Or perhaps more accurately:
If it was easy to use, we wouldn't have to administer it. My microwave has a 'puter in it. It's easy to use, and I don't have to administer it.
This post is licensed under the Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License.
While MS is overpriced and abusive today, historically they did lower the bar for entrance into the computer realm. Befor MS-DOS and Windows, every brand of computer used its own OS (if you want to consider ROM-BASIC an OS) and software had to be rewritten for each platform.
With MS having the forsight and balls to reserve the ownership of MS-DOS and grant IBM a license they opened the doot to one OS running on machines manufactured by multiple venders.
Consider that when your average PC cost $4,000.00 (US) (not the high-end systems, average desktop systems), MS-DOS was only around $120.00 - $150.00 a copy. Compaired to the multi-thousand dollar cost of even the cheapest Unix systems of the day DOS was a bargain! Sure, it lacked a lot of what makes Unix so great, but it had enough to let people run their entire businesses on their desktops.
Remember, before Linux came into being, Unix (and it's clones, dirivatives, etc...) was an expensive and very closed environment.
Boobies never hurt anyone. - Sherry Glaser.
The fact that the language under critque was FORTRAN, unfortunately today, obscures the underlying truths they were discussing.
"Brian, what do you think of UNIX? Is it a good and reliable platform for development?"
"Is it true that you suggested the name "UNIX" for the long ago OS, Multics? What does that word mean?"
"What are your hobbies? Reading? Sports?"
"Could you say that you love computers (IT)?"
Etc. What a waste of a good man's time.
Nearly all the interview questions are either (a) things widely available in the literature (as in FAQs, not digging research - did the interviewer really not know what AWK stood for? If so, shame on him), or (b) idiotic questions that I might ask if I was interviewing a 6th grader.
If you can't think of anything interesting to ask your subject, don't bother with the interview!
Advice: on VPS providers
Pascal's main problem is that nearly every "real world" implementation of Pascal has dealt with the problems presented in the paper, Unfortunately in different and incompatible ways.
Kernighan sounds like he applies this kind of perspective to computers. From what I've read, for all the flame wars about Perl vs. Python, Vi vs. Emacs, *NIX vs. Windows, etc, the "monks" in these groups seem to be much more focused on the commonalities among systems rather than the differences between one and another. Kernighan talks about all the languages and operating systems he uses; Larry Wall gleefully puts the best of every language he can get his paws on into Perl; Guido van Rossum doesn't seem to object to letting a future version of Python run on top of Perl6's Parrot runtime engine; Craig Mundie has no fear preaching the Microsoft word at the Open Source Conference; and Tim O'Reilly tells people that he gets along well with all the people he has met at Microsoft.
I think that's wisdom.
DO NOT LEAVE IT IS NOT REAL