Software Needs Philosophers — cover art: a small storybook lecture-hall at evening with a single great oak desk under a brass lamp, an open codex of nested logical brackets, and a small thoughtful owl in spectacles laying a feather quill across the page.

2006 · Stevey's Blog Rants · Rant

“It's philosophers who gave us the ability to think rationally, to stick to the facts. If it weren't for the work of countless philosophers, facts would still be getting people tortured and killed for discovering and sharing them.”
— From Software Needs Philosophers, April 2006
Read the essay

© 2006 Steve Yegge. Originally published at Stevey's Blog Rants.

AI Notes

Steve published this the day after "Lisp is Not an Acceptable Lisp" set his comment section on fire, with the hate mail still arriving; one commenter had invited him to drop dead, though only "on the internet." He concedes the Lisp post was rushed and offers to let everyone call it a troll, then asks the question the pile-on actually raised: why does criticizing a programming language get you treated like a heretic? His answer maps language communities onto organized religion in unsparing detail — popes, cardinals, laity, rank earned by winning converts rather than by writing code, and an explanation of why Paul Graham, eminently qualified, can never be Pope of Lisp. The evidence is autobiographical: raised Roman Catholic until he renounced it at thirteen (his Uncle Frank, "a devout terrorist Catholic," had warned him off reading the Bible unassisted), raised assembly-language programmer ("Assembly is just flagellation"), then seven years in the Church of Java. Each conversion, he reports, takes less than the one before.

The title oversells what's inside. Steve admits he knows "basically nothing" about philosophy, and near the end he confesses that he spent a year attempting this essay, a dozen tries from a dozen angles, before publishing this one as the salvage, on the theory that some reader might someday write the world-changing version he couldn't. What the salvage holds is an angry, sometimes unfair anatomy of technical flamewars by a man still visibly stung and not above a low blow himself; Java fanatics get compared to the staff of a medieval torture chamber. The anatomy has held up. Swap Lisp-versus-Java for any framework war since and the popes and heretics all still answer to their names.

Related listings

  • 2008

    The Universal Design Pattern

    Two years later — Steve's most technical essay, built explicitly on a Hofstadter quotation. The Universal Design Pattern is Software Needs Philosophers carried out in practice: the working programmer doing actual philosophical work.

  • 2006

    Lisp is Not an Acceptable Lisp

    Same month. Both essays are about programmers' habit of substituting tribal loyalty for careful thinking. Philosophers names the deficit; Acceptable Lisp shows the deficit in action inside a single community.

  • 2006

    Good Agile, Bad Agile

    Same year. The most famous of Steve's anti-cargo-culting essays — another example of the discipline of careful thinking applied where it is usually displaced by ideology.

Where it was argued