Chapter 25. Evolutionary Development

for RuBoard

The current state of the software industry is as if leading-edge doctors had tested penicillin, found it to be effective, and integrated it into their practices, only to have 75 percent of doctors continue to use leeches and mustard poultices.

Steve McConnell [1]

[1] McConnell, Steve. After the Gold Rush . Redmond, WA: Microsoft Press, 1999. Page 150.

In the cool of an early Spring evening, as the sun begins to dip behind the red oaks of northern Virginia, I take a stroll from my hotel in downtown Washington toward the Lincoln Memorial . The quiet of the evening is setting in, and I long to get out into it, away from the bustle and noise of the city.

Before me, the grassy Mall stretches out in a vast, verdant promenadea clearing in a medieval forest, evincing mystery and inviting discovery. As I walk, I'm flanked on either side by the Smithsonian, its columns and arches rising majestically into the evening sky. I amble past the tour buses and shutterbugs, topping the hill beneath the Washington Monument, and catch a distant glimpse of the Memorial glowing in the gray twilight.

I wander through the tall pines standing sentry beside the water and look out over the Reflecting Pool toward the Memorial, its image cast upon the iridescent stillness like a golden tapestry . As I walk, squirrels scamper to and fro, birds settle in for the evening, and the crickets , frogs, and other musically inclined wildlife launch once more into their sinfonia nocturnus, introducing the wondrous night for all the world.

I cross the greenbelt and make my way up the Memorial steps. There, atop his throne, sits Lincoln, forever gazing down upon the silver colonnade before him. The sky is clearshimmering evenas the orange-blue of early twilight fades to the gray-blue of dusk.

Strangely, the profound sadness with which Lincoln usually greets me is nowhere to be found tonight. Instead, he seems amused. And I marvel too at the exquisite beauty on display before usa gleaming radiance from the darkness , as life teems around us and nature's children frolic in the tranquility of nightfall.

Suddenly, from the corner of my eye, I spot a white heron, rousing itself in an awkward fluster. Startled, it flies swiftly left to right across my field of vision, dipping momentarily over the water, then flapping off in ageless, autonomic grace.

As I watch it top the trees, ascend the Monument, and become ever smaller in the distance, it occurs to me that the bird is an engineering marvela masterpiece of design. Its wings are light, yet powerful; its body large, yet airworthy. That its cumbersomeness can fly at all is a wonder in and of itself. And yet it doesmarvelously, elegantly, effortlessly. The heron, it seems, is a flying contradiction in terms.

As I stand there, it strikes me that this extraordinary creature did not come into existence overnight. It is the product of craftsmanship, of millions of years of evolution gradually honing the bird's design, little by little, until the nimbleness of predation and the miracle of flight found a way to coexist in the same creature. Those herons too heavy for flightthey didn't make it. Those too clumsy to hunt successfullythey were phased out too. The better flyers and the better huntersthe better heronsout-competed their peers, had offspring, and generally prospered. As with all living things, natural selection has gradually shaped and reshaped the heron, continually refining it for time immemorial.

It seems to me that developing software is much like this. It happens gradually. It is a process of steady craftsmanship that may take a very long time to come to fruition. It is an iterative, deliberate , sometimes tedious , process made up of small gains spread out over time in an ongoing cycle of continual improvement. It is a process in which extinction is common and the road is littered with discarded ideas and designs that seemed workable but weren't. It is an undertaking that can produce spectacular accomplishments and magnificent elegancetributes to the human spirit that tower over all those before, but it is one that requires patience and disciplinea workmanlike dedication. If software is to evolve into something better, the craftsman must make it so through diligence, skill, and sheer resolve. Unlike nature, software cannot craft itself.

The moral? Make changes iteratively, working on small sections of code at a time. When you change your code gradually, it begins to evolve on its own. Over time, the code becomes better and hopefully closer to what your users want. It becomes more fit to survive. The cycle becomes change-test, change-test, change-test. Your code is progressively honed throughout its lifetime, just as in nature species steadily evolve throughout their existence.

for RuBoard


The Guru[ap]s Guide to SQL Server[tm] Stored Procedures, XML, and HTML
The Guru[ap]s Guide to SQL Server[tm] Stored Procedures, XML, and HTML
ISBN: 201700468
EAN: N/A
Year: 2005
Pages: 223

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net