Yagni originally is an acronym that stands for "You Aren't Gonna Need It". It is a mantra from Extreme Programming 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".
On the surface, the world of agile software development is bright, since it is now mainstream. But the reality is troubling, because much of what is done is faux-agile, disregarding agile's values and principles. The three main challenges we should focus on are: fighting the Agile Industrial Complex and its habit of imposing process upon teams, raising the importance of technical excellence, and organizing our teams around products (rather than projects).
I worked for several years as a leader of birding tours, and I have met a few sad individuals who were so focused on adding to their life lists that they would refuse to look at a bird species that they had seen before, no matter how spectacular the view or how fascinating its behavior of the moment might be. “I don’t need that bird” was their standard reply.
For a person just getting started in some area of natural history, and unabashed focus on list-chasing is a good thing, at least for a while. The trick is knowing when to stop.
Keith Brown described how he got the idea “that the maximization of daily species lists of butterflies, a seemingly unscientific goal (though much employed in a sister area, ornithology), could give a large scientific fallout."
For example, he described how six weeks’ effort in the Brazilian central plateau had turned up twenty-five species previously unknown for the area—but then he had adopted the “maximization” method, and in another six weeks, he had found nearly three hundred more species.