Participants: Rick, Dan Shields, RegBraithwaiteLee, Charlie Trainor, George Latkiewicz
What does this mean?
All software exists in an ecosystem - software, hardware, business rules and processes.
Software always changes/mutates - change requests, bug fixes, unexpected exploitation of features.
Can it be any of these:
Some analogies from organic gardening: companion planting, crop rotation. Are there analogies to these in software development: pair programming, lifecycles, buyébuild decisions.
Self organization and success. Book reference: Paul Hawken, Growing a Business.
Pesticides: HR, factory mentality, traditional methodologies
Organic thinking is part of long-term, sustainable thinking. Should we be thinking about sustainable development in the software world.
Do the 7 ages of man apply: gestation, birth, growth, maturity, death. (I`ve missed a few.)
What are the limitations. What are the alternatives. (Directed design)
Note: evolution is discontinuous.
Evolution leaves baggage: we don`t lose things that aren`t harmful. Sometimes these suddenly become critical. Evolution helps things survive or thrive in a niche.
Does this mean we canéshould build in capacity for evolution.
Analogy from biology: redundancy can help evolution.
Product development versus custom development.
A survivable product relies on successfully predicting a future ecology - is this pesticide.
Does organic software have requirements. XP doesn`t
Where`s the creativity come from. e.g. The Laserwriter was`t needed to make the DTP market.
Costraints drive creativity. Ecological constraints affect the solution space.
Good versus even better. Requirements are usually narrowly focused and overlook a wider context.
We need mutations to evolve. Too much mutation is unsustainable. Edge of chaos, or alternation between stability and chaos. Stability versus sustainability.
Example: unit testing is a practive that helps define and enforce contraitns. Does this speed evolution. It can inhibit it as well. Code mass can inhibit evolution
Processes versus products.
Most important insight to me: Is Organic Development a meta-process to help identify practices that `work`in a given environment. NB: definition work depends on objectives. Stability versus disruption.
Suggestion: if you decide to take this discussion offline to a newsgroup, please indicate the location of the group here so others can join you.