A Haskell programmer describes how large language models threaten the joy of programming by turning developers from active authors into cogs that hand off work to agents. The key risks are losing practice and ownership, accepting lower-quality, alien generated code, and being lured into spec-driven, token-limited workflows. Rather than rejecting LLMs outright, the recommended stance is selective adoption: keep writing the interesting, human-facing code you enjoy and let models handle bookkeeping, planning, and tedious tasks that are easy to check. Treat LLMs as tools to surface todos, organize research, and expand context, but never as decision-makers for critical design choices.
Concrete practices preserve skill and deliver productivity gains. Use agents to convert conversations into actionable todos (e.g. markdown with frontmatter), require research outputs to include sources and links, and run an automated review cycle where a reviewer agent vets any generated artefact before human acceptance. Code yourself after planning with the model; reserve generated code for low-risk cleanups, routine refactors, or finishing obvious repetitive cases. Watch out for common failures - missed abstractions, bloated copy-paste, and coupling that reveals poor organization - and beware of environmental and trust costs from relying on frontier models.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.