Discovery Coding: A coding practice where programmers write code first to understand a problem rather than outlining or planning. Often perceived as messy, discovery coding contrasts with structured approaches like outlining. Despite cultural preferences for structured methods, discovery coding fosters unique insight by exploring system constraints. The writing community accepts discovery writers; programming should also embrace discovery coding as a valid method, acknowledging different thinking styles without ranking them.
https://jimmyhmiller.github.io/discovery-coding
Hacker News Discussion about Discovery Coding TLDR: Discovery coding emphasizes exploration over rigid planning, allowing developers to understand problem spaces through iterative prototyping. Critics argue it risks shipping incomplete solutions, while proponents highlight flexibility, rapid learning, and adaptability. Balancing exploratory coding with structured testing and refactoring is key to effective software development.