Yagni
Yagni, an acronym for 'You Aren't Gonna Need It', is a principle from Extreme Programming that advises against building features that are not immediately necessary. This approach contrasts with traditional software engineering practices that emphasize extensive upfront planning. By focusing on current needs and avoiding presumptive features, teams can reduce costs and improve efficiency in software development.
- ▪Yagni is a mantra used in agile software teams to avoid unnecessary features.
- ▪The principle originated from a conversation between Kent Beck and Chet Hendrickson during the C3 project.
- ▪Building presumptive features can lead to delayed value and wasted resources.
Hacker News (Newest) files mainly under programming. We currently carry 5,306 of its stories.
Story provenance
Source · retrieval · rights · ranking — open for full record
inspect →
Story provenance
Attribution is not the same as permission. This drawer separates discovery metadata, excerpts, WeSearch-generated summaries, reuse status, and whether the publisher receives the visit. Nothing here claims a legal grant the publisher has not made.
Record
| Original publisher | martinfowler.com |
| Canonical URL | https://martinfowler.com/bliki/Yagni.html |
| Publication time | Thu, 21 May 2026 17:53:12 +0000 |
| Retrieval time | 2026-05-21T18:01:35.547Z |
| Last seen | 2026-05-21T18:01:35.547Z |
| Headline source | Publisher (no WeSearch rewrite) |
| Excerpt source | publisher body |
| Excerpt method | First ~120 words (~800 chars) of extracted publisher body, fair-use limited. |
| Summary | WeSearch · cerebras-chat (WeSearch summarizer) |
| Summary source text | contentText |
| Citation coverage | Summary is a WeSearch-generated derivative; primary citation is the original publisher URL. |
| Cluster | None |
| Cluster logic | Not yet clustered, or no peer story found in the clustering window. |
| Ranking reason | Story pages are not engagement-ranked. Hub feeds use recency, with optional source-diversified chronological ordering (cap consecutive stories per source). No personalized ranking. |
| Publisher visit | Yes — open original |
| Substitutes article? | No — link-out required for full text |
Rights status (four layers)
WeSearch handling by dimension
| Indexing | May the item be indexed (stored, ranked, made findable)? | Allowed |
| Snippet | May a short excerpt of the publisher's text be shown? | Allowed |
| AI summary | May WeSearch generate its own short summary of the article? | Limited |
| Retrieval / RAG | May the content be exposed for third-party retrieval-augmented generation? | Not asserted |
| Model training | May the content be used to train AI models? | Not asserted |
| Commercial reuse | May the content be reused commercially? | Not permitted |
Basis: Derived from the published RSS/Atom feed. Contact: [email protected]. Reviewed: 2026-07-24.
Opening excerpt (first ~120 words) tap to expand
Yagni 26 May 2015 Martin Fowler process theory project planning evolutionary design programming style Yagni originally is an acronym that stands for “You Aren't Gonna Need It”. It is a mantra from ExtremeProgramming that's often used generally in agile software teams. It's a statement that some capability we presume our software needs in the future should not be built now because “you aren't gonna need it”. Yagni is a way to refer to the XP practice of Simple Design (from the first edition of The White Book, the second edition refers to the related notion of “incremental design”). 1 Like many elements of XP, it's a sharp contrast to elements of the widely held principles of software engineering in the late 90s.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at martinfowler.com.