Programmers aren’t so humble anymore, maybe because nobody codes in Perl

Accessing the article

  • Several commenters note the Wired paywall is bypassable via archive sites or by disabling JavaScript.

Why Perl Declined

  • Many argue Perl’s loss of mindshare came from a combination of:
    • The long, stalled transition from Perl 5 to “Perl 6” (Raku), which created uncertainty and an “Osborne effect” for new projects.
    • Competition from web-focused languages and ecosystems (PHP, Ruby/Rails, Python/Django, later JavaScript), which were easier to deploy and learn for web work.
    • Perl’s extreme dynamism and syntax made automated refactoring and large-scale evolution (like Python 3’s) much harder.
  • Others think Raku is overblamed; the bigger shift was generational: from Unixy shell/awk/C users (for whom Perl was a natural extension) to developers raised on Java, VB, etc., who gravitated to Python and similar languages.

Perl’s Strengths and Lasting Influence

  • Strong nostalgia: many describe Perl as their first “real” language, especially for CGI and sysadmin automation.
  • RegEx and text processing are repeatedly praised as unmatched; many say they still “think in Perl regex.”
  • Backwards compatibility and runtime stability are viewed as major virtues; scripts from decades ago often still run unchanged.
  • Perl influenced Ruby, PHP, regex dialects (PCRE), and ideas like taint mode.

Pain Points: Readability and Team Use

  • TIMTOWTDI and dense, sigil-heavy syntax make it easy to write “write-only” or puzzle-like code.
  • Nested data structures and references are seen as awkward compared to JSON-like literals in Python/Ruby/JS.
  • Perl scales poorly to large, multi-developer codebases: too much expressive freedom, inconsistent styles, and weak object/argument conventions (despite newer features like signatures).

Perl vs Python (and Ruby/PHP)

  • Python is credited with:
    • Indentation-enforced readability.
    • A clear object model and strong “Pythonic” culture.
    • University adoption and libraries like NumPy/sklearn as growth engines.
  • Critiques of Python:
    • “There should be one obvious way to do it” is seen as aspirational; modern Python has many competing tools and patterns.
    • Packaging and environment setup are perceived as messy; debate centers around tools like uv, pipenv, Poetry, Conda, with no consensus “standard.”
    • Some complain of version/packaging bitrot vs. Perl’s long-term script stability.
  • Ruby is often described as “Perl’s spiritual successor,” filling the same scripting/web niche with saner syntax and Rails; several say if you know Ruby, there’s little reason to learn Perl now.
  • PHP is remembered as winning early web share by being trivial to embed in HTML and easy to deploy via plain FTP hosting.

Security and Taint Mode

  • Perl’s taint mode is widely admired as a language-level way to track untrusted input and force explicit sanitization, especially via regex.
  • Ruby previously had a similar mechanism, but removed it; commenters wish more languages had built-in “parse, don’t just validate” features or taint-like systems.

Culture, Humility, and Money

  • Several note the irony that Perl’s “virtues” famously include hubris, not humility.
  • Some attribute today’s lack of humility in programming less to language choice and more to high salaries and the influx of “tech bros” drawn by money.
  • A recurring theme: Perl’s very ease of writing terrifyingly clever code teaches humility later, when you must maintain or debug it—leading some to adopt a deliberately plain, readable style.