I love programming but I hate the programming industry

Scope of the Problem

  • Many argue the author dislikes the corporate world and capitalism more than “programming” itself.
  • Common theme: companies primarily value short‑term economic impact, not elegance, deep craft, or societal benefit.
  • Several note this is not unique to software; most jobs exist to make money for owners, not to provide meaning.

Corporate Incentives vs. Craft

  • Widespread view: production speed and feature output trump code quality until technical debt becomes painful.
  • Others counter that “code quality vs speed” is a false dichotomy over more than a few weeks; messy systems slow future work.
  • Disagreement over “clean code”: some see it as readability and maintainability; others say popular “Clean Code” styles hurt performance and don’t scale.
  • MVP culture is criticized: prototypes often ship to production and never get cleaned up.

Types of Employers and Work

  • Experiences vary widely: some report bullying into spaghetti code; others describe thoughtful teams, autonomy, and meaningful products.
  • Startups are seen both as places where engineers can truly engineer and as equally shallow “ship fast” environments.
  • Alternatives mentioned: academia, government, defense, NGOs, civic tech, non‑profits, and non‑software industries (construction, manufacturing) with internal dev teams.
  • Tradeoff emphasized: more meaningful/independent roles usually pay significantly less.

Alienation, Capitalism, and “Meaning”

  • Multiple comments frame the author’s complaints in terms of alienation and Marxist critiques of capitalism, even if not named as such.
  • Some argue you shouldn’t expect deep personal meaning from corporate work; find meaning in hobbies or side projects.
  • Others insist it’s reasonable to want work to address real human needs rather than “bullshit metrics.”

Process, Roles, and Hiring

  • Scrum, heavy process, and proliferating roles (PMs, scrum masters) are blamed for reducing engineer agency and adding “imposters.”
  • Hiring practices (especially LeetCode‑style interviews) are widely disliked and seen as disconnected from real work.

Coping Strategies and Paths Out

  • Suggestions include: going indie (e.g., small games), joining small or niche companies, negotiating more autonomy, or explicitly separating “day‑job code” from “artistic code.”
  • Several stress managing expectations, doing “good enough” work, avoiding over‑investment in corporate outcomes, and being ready to move on.