Wednesday, August 28, 2013

“abandon all hope, ye who enter here.”

haha..this is a cool comment


I might mention that there is a dark side to using complex algorithms in software systems. The algorithms may not be understandable by others (or even the original author, after a long passage of time). I had incorporated some sophisticated regular expression pattern matching technology into AWK. Although it is documented in the Red Dragon book, Brian Kernighan once took took a look at the pattern-matching module that I had written and his only addition to that module was putting a comment in ancient Italian: “abandon all hope, ye who enter here.” As a consequence, neither Kernighan or Weinberger would touch that part of the code. I was the one that always had to make the bug fixes to that module!


can someone become a better programmer?
Al: My number one suggestion is to think before you program. Then I would advocate
writing lots of code, having experts critique your code, reading good code written by
others, and participating in code reviews. If you’re really brave, you could try to teach students to write good code.
... ...
I have certainly found that in every book that I have written with programs in it, the programs have gotten more efficient and shorter with the writing of the book. During the year we wrote the AWK book, many of the programs in it became 50% shorter. This is because we learned how to use the abstractions in AWK even more effectively than we initially had thought.