← All stories
● Covered by 1 source · 1 reportLow impact1 neutral

Programming Language Adoption Driven by Social and Economic Factors, Not Just Technical Merit

🔄 Updated 1d ago
New to BrevFeed? We gather this story from every outlet covering it into one summary — ranked by real-world impact, not just the latest headline — so you never miss what matters. What is BrevFeed? →

Key points

  • Programming language adoption is weakly connected to technical merits.
  • Social and economic factors are key drivers of language success.
  • Languages must serve programming as a vocation, art, and job.
  • Failure occurs if a language makes any of these aspects difficult.

The Non-Technical Drivers of Language Success

An analysis of programming language lifecycles, drawing from Andrew Oram's series for the Linux Professional Institute, highlights that the success or failure of a language is largely determined by social and economic factors, not solely its technical specifications. This perspective, emphasized by Simon Peyton Jones, suggests that a language's technical merits are only a minor component in its widespread adoption and longevity.

The study categorizes languages by their outcome: 'immortal' (C, C++, JavaScript), 'respectable' (COBOL, FORTRAN, BASIC, Perl), and 'failed' (Pascal, Objective-C, PL/I, Ada, Tcl). The underlying reasons for these outcomes are explored through the lens of how well a language supports the multifaceted nature of programming.

Programming as a Vocation, Art, and Job

The core argument posits that programming is simultaneously a vocation (a calling), an art (creative expression), and a job (daily work for compensation). A programming language or tool must effectively cater to all three aspects for it to gain and maintain adoption. If a language makes any of these three unnecessarily difficult, it is unlikely to survive once alternatives become available.

This framework provides a way to understand why certain languages, despite their technical elegance, have not achieved widespread use, while others with known limitations have become industry staples. The human element of programming, encompassing passion, creativity, and practical necessity, is central to a language's fate.

Examples of Failure Modes

Languages can fail by making the 'job' aspect too difficult. For instance, standard Pascal lacked a usable string type, and Tcl struggled with larger programs, making daily development tasks cumbersome. Such deficiencies increase the friction for developers trying to complete their work, leading to abandonment when more practical options emerge.

✨ This summary was generated by AI from the outlets' reporting listed below. It is not independently verified and may contain errors — check the original sources. How BrevFeed works →

The daily brief

One email each morning: the day's tech stories, clustered across outlets and summarized. No account needed.

One email a day. Unsubscribe in one click, any time.

Today's brief

Spend a few minutes, get the whole day. Every topic's top stories in one hands-free rundown — listen, watch, or read the transcript.

~7 min · 6 stories · Aug 15

▶ Play today's brief Listen on Spotify

New every morning, and the back catalogue is archived by date.

Reporting from

A recent analysis of programming language longevity and failure concludes that social and economic factors, rather than purely technical merits, primarily determine a language's adoption and survival. Languages succeed when they serve programming as a vocation, an art, and a job, making daily work, creative expression, and inherent interest manageable for developers. This perspective explains why some technically sound languages have failed while others with perceived flaws have endured.