In his book Let Over Lambda, Doug Hoyte says Lisp is the result of taking syntax away, Perl is the result of taking syntax all the way. Lisp practically has no syntax. It simply has parenthesized expressions. This makes it…
In his book Let Over Lambda, Doug Hoyte says Lisp is the result of taking syntax away, Perl is the result of taking syntax all the way. Lisp practically has no syntax. It simply has parenthesized expressions. This makes it…
Dogfooding refers companies using their own software. According to Wikipedia, In 1988, Microsoft manager Paul Maritz sent Brian Valentine, test manager for Microsoft LAN Manager, an email titled “Eating our own Dogfood”, challenging him to increase internal usage of the…
The term technical debt describes the accumulated effect of short term decisions in a software development process. In order to meet a deadline, for example, a project will take shortcuts, developing code in a way that’s not best for future…
The other day on TeXtip, I threw this out: Imagine if the web had been built on LaTeX instead of HTML … Here are some of the responses I got: It would have been more pretty looking. Frightening. Single tear…
Terrific quote from Jessica Kerr via Dan North: If you feel like you’re missing an inside joke, here’s an explanation. In object oriented languages, languages that don’t simply support object oriented programming but try to enforce their vision of it,…
Can regular expressions parse HTML? There are several answers to that question, both theoretical and practical. First, let’s look at theoretical answers. When programmers first learn about regular expressions, they often try to use them on HTML. Then someone wise…
A couple days ago I wrote a blog post quoting Cal Newport suggesting that four hours of intense concentration a day is as much as anyone can sustain. That post struck a chord and has gotten a lot of buzz…
When I got a new computer a few days ago, I installed the latest version of Emacs, 24.2, and broke my Python environment. I decided to re-evaluate my environment and start over. I asked a question on the Python Google+…
From Data and Reality: The thing that makes computers so hard to deal with is not their complexity, but their utter simplicity. … The real mystique behind computers is how anybody can manage to get such elaborate behavior out of…
The other day Atamert Ölçgen quoted a passage from Dune in response to something I’d posted on Google+. I haven’t read the Dune books, but the passage puts generalists in a favorable light, and since I’m something of a generalist,…
Vivek Haldir’s recent post Quantum of Work points out something obvious in retrospect: programming is intrinsically fractured. It does little good to tell a programmer to unplug and concentrate. He or she cannot work for more than a few minutes…
Here’s an interview I did with Microsoft Channel 9 right after my talk in Brisbane. You can find the interview in multiple audio and video formats on Channel 9.
Tommy Nicholas recently wrote a blog post advocating typing rather than copying-and-pasting code samples. I thought this was the most interesting paragraph from the post: When Hunter S. Thompson was working as a copy boy at Time Magazine in 1959,…
Toward the end of his presentation Don’t fear the Monad, Brian Beckman makes an interesting observation. He says that early in the history of programming, languages split into two categories: those that start from the machine and add layers of…
Erik Meijer listed eight fallacies of declarative programming in his keynote address at YOW in Melbourne this morning: Exceptions do not exist. Statistics are precise. Memory is infinite. There are no side-effects. Schema doesn’t change. There is one developer. Compilation…