No, That Was a Feature, Not a Bug

Patrick Logan notes in passing that an Object Oriented system without a class hierarchy — using pure delegation between objects — was a radical idea back in 1986. Right now the only really mainstream impact it’s made* is in Javascript. But now:

Javascript is getting “serious” by adding classes and type checking and so on. Bah. Forgive them for they know not…

[* that is, until we all welcome our new Io overlords!]

Happy Holidays Commercial

The holiday commercial for Macs (vs PCs) made me laugh, because it has some nerd cred: one of the things that sucks about programming for PCs is you typically need to do it in C++, whereas on the mac you get to use tasty Objective-C. (Unless you’re me, in which case you are stuck in a C++ API anyway because you use a cross-platform toolkit which happens to be done in C++…)

The embodiment of the PC, by the way, is comedian and author John Hodgman, who uses a Mac.

Emacs Weenie

UPDATE: Steve says in the comments that he wrote this when he was “hammered.” It should be taken in that spirit. :) Very understandable.

Effective Emacs

The key to understanding Emacs is that it’s all about _efficiency_, which includes economy of motion. Any trained musician will tell you that economy of motion is critical to becoming a world-class virtuoso. Any unnecessary motion is wasted energy and yields sloppy results.

Using the mouse is almost always the worst possible violation of economy of motion, because you have to pick your hand up and fumble around with it. The mouse is a clumsy instrument, and Emacs gurus consider it a cache miss when they have to resort to using it.

Compared to Emacs Wizards, graphical-IDE users are the equivalent of amateur musicians, pawing at their instrument with a sort of desperation. An IDE has blinking lights and pretty dialogs that you can’t interact with properly (see Item 6), and gives newbies a nice comfortable sense of control. But that control is extremely crude, and all serious programmers prefer something that gives them more power.

I love emacs, but I hate rants like this. If this guy really cared about efficiency, he would have learned what interface specialists like Tog have known for eons: that keyboard shortcuts *feel* faster, but mouse motion *is* faster, empirically. I started reading this hoping for cool emacs ideas and I got to this paragraph and thought, “guess this guy prefers advocacy to facts.” After all, if he was all about economy of motion, wouldn’t he be using vi? No triple buckys!

If there was any question of this guy doing anything but chest-thumping, you could just read on to:

You don’t need a menu bar. It’s just a crutch placed there for disoriented newbies. You also don’t need a toolbar with big happy icons, nor do you need a scrollbar. All of these things are for losers, and they are just taking up precious screen real-estate. Turn them all off with the following code in your .emacs file:

“For losers”?

I can’t believe this made it to the front page of Reddit. Must be the LISP wankers.

Playa Hatin’

UPDATE: Entry has been deleted. Poor guy musta got overwhelmed by rubyists pointing out the error of his ways. Feel kinda bad for him. Something similar happened to me once.


Well, it’s begun. The extreme Ruby buzz is bringing out angry, ignorant hating from Pythonistas.

Let me sum up the article for you: “Ruby isn’t like Python or Lisp. It’s more like Smalltalk and Perl. Waaaaaah.”

Yeah, almost as if it were primarily inspired by Smalltalk and Perl.

Stupid buzz.

Detailed rebuttal here, containing most of the points that leapt to my mind when I read the Eel thing.