Duck Season — cover art: a tall wood-and-brass Victorian equalizer console with nine tall ivory-tipped sliders set at different heights, a small mole sound-engineer in shirtsleeves adjusting the middle slider, with a small duck and a small rabbit perched on the console's upper edge as a quiet Looney-Tunes nod.

2005 · Drunken Blog Rants · Essay

“Every language has at least one '1' and at least one '5'. Funny how it worked out that way. Every language makes very different choices about how to deal with these fundamental trade-offs.”
— From Duck Season, April 2005
Read the essay

© 2005 Steve Yegge. Originally published at Drunken Blog Rants.

Author’s note

For once I dialed in tne length about right. This one, published a month before I left for Google, is a response to someone who asked me if I am sneakly trying to get people to use Lisp, and if it would help him be lazier as a programmer.

In short, I told him no, you will have to work extra hard to use Lisp, because it is like Linux, requiring a lot of hands-on setup and maintenance compared to a more mainstream offering.

I was expecting this to be a boring read but it kept me going to the end.

AI Notes

One of the gentler Drunken Blog Rants: an essay about why language evangelism can't work, from a writer constitutionally unable to stop doing it. Steve opens with the full Bugs-and-Daffy routine ("Wabbit season! Duck season!") to avoid getting shot as a Lisp salesman, then explains why the whole argument is rigged — control and convenience can't both be maximized, in operating systems and editors as much as in languages, so every flame war is really two people defending different slider settings. There is also a short round of insult comedy in which each contender takes exactly one line of abuse: Lisp "looks like oatmeal," while ML and Haskell "are both from Planet Weird."

The score grid itself has fallen out of the page somewhere in twenty years of platform migrations, so the text now jumps from "here's an impromptu stab" straight to "Why looky, Java wins by a nose!" and the arithmetic has to be taken on faith. Steve would shrug at that — the numbers were gut feel by design, and in the comment thread he concedes he can't reconstruct why Perl lost its only 5. The prescriptions have aged more strangely than the scores. Readers are told to keep Java at work and adopt a hobby language in the garage; Steve backs Gambit and Kawa Scheme, with Ruby as a side bet. Within the year Rails detonated, the side bet paid off beyond anything the essay predicts, and both Schemes stayed in the garage.

Related listings

  • 2005

    Choosing Languages

    Companion piece. Choosing Languages is the prose survey; Duck Season is the same survey rendered as a working spreadsheet.

  • 2005

    Scheming Is Believing

    Two months earlier. Scheming names the slider Steve thinks the equalizer is missing — the one that lets you move the others. Duck Season is the equalizer with that slider held in mind.

  • 2005

    Decision Time

    A few weeks later — the equalizer applied to a single problem. Duck Season is the methodology; Decision Time is the verdict.