Being Popular

Paul Graham’s essay Being Popular argues that programming language popularity depends less on inherent merit than on meeting practical hacker needs.

What Determines Popularity

Languages don’t succeed based purely on technical excellence. “Expert hackers” drive adoption—they identify quality tools and influence broader communities. But languages must first gain a critical mass of about twenty independent users to become “real.”

Essential External Requirements

  • A free implementation
  • A well-written, accessible book
  • Something meaningful to build (ideally becoming the scripting language of an established system)

Hackability and Brevity

Hackers prioritize terseness and the ability to “subvert” language constraints. Classic Lisp macros are “powerful, and dangerous” tools granting programmers genuine control.

Practical Features

Successful languages excel at:

  • Writing throwaway programs quickly
  • Providing comprehensive libraries
  • Supporting interactive development with fast startup

The Organic Growth Model

“Garage startup” incremental development typically produces superior technology compared to “big bang” heavily-marketed launches.

My Takeaway

Languages improve through continuous iteration with small, demanding user bases. Committee-driven design paralyzes improvement.


What makes a language popular in your view? I’d love to hear at persdre@gmail.com.