Hasty Briefsbeta

Bilingual

Greenspun's 10th rule and the sad state of software quality

a year ago
  • #Programming Languages
  • #Technical Debt
  • #Software Development
  • Moore's Law, predicting transistor count doubling every two years, has remained relevant for over 60 years.
  • Zawinski's Law observes that programs tend to expand in complexity, often adding unnecessary features.
  • Frisch's Law and Brooks's Law highlight that adding more developers doesn't necessarily speed up software development.
  • Linus's Law states that with enough reviewers, all bugs become shallow.
  • Conway's Law suggests that software reflects the organizational structure that produced it.
  • Tom Cargill's adaptation of the 80/20 rule indicates that the last 10% of code takes 90% of development time.
  • Greenspun's 10th Rule criticizes non-Lisp programs for reinventing poorly implemented Lisp features.
  • Lisp's homoiconicity and expressiveness make it ideal for DSLs and scripting, but its adoption remains low.
  • The software industry tolerates poor quality, driven by fast-moving, break-things culture.
  • Solutions include learning Lisp, writing expressive code, avoiding custom parsers, and reducing technical debt.