An Artisan's Playground
a launch
As I sit at my desk at home, prepping for yet another project launch, I contemplate the rigors of the past several weeks. I anticipate the next few as well: bugs that come to light only after we flip the switch; requirements - perfectly implemented! - that we somehow misunderstood (or even completely missed) despite our best attempts to model the processes.
As usual, thoughts on project execution come to mind: how could we have done better? How did simplicity come to require extra-human (not quite superhuman) effort on the part of the team? But these thoughts are par for the course. I've spent more than ten years watching what happens when the clanking of an idealized computer infrastructure meets the demands of real world, real-time, business processes. As stressful as they can be, these are often exhilarating times for me.
something else
But today is different, other concerns raise their heads. In "The Mythical Man Month," Fred Brooks famously uses a woman's pregnancy as a counter-example to the software development process:
"If one woman can produce a baby in nine months, then nine women should be able to produce a baby in one month."
The statement proves its point by being patently untrue. But the analogy is accurate in a different way: software projects are like pregnancies. (With apologies to my mother and all the other wonderful women who have experienced the real thing.)
Launching a project is like birthing a child.
And unfortunately, launching projects for clients, as is all I have known, is like being a surrogate mother. Any sense of accomplishment one may have is fleeting and, ultimately, borrowed. Attachment to the end product is not only unwise, it is actively discouraged.
And in the case of enterprise software, the end products are often unwanted stepchildren anyway. These are products designed by committee, hodgepodges of conflicting requirements thrown together using tools selected more for political or budgetary reasons than efficacy. And although they ultimately meet their sponsors' goals, usability, grace and elegance take a back seat to maximized feature sets. There is no room for craftsman's pride.
inspiration
And so I look up from my corporate cocoon, up and out at the world wide web and discover the many wonderful things being done, ostensibly with the same skills I know and possess. Who are these people crafting such useful, beautiful and profitable works of programming and design? How are they able to accomplish what they have?
The landscape has changed quite a bit since I first dabbled in web programming over ten years ago. Today, many more tools are available that increase an individual's productivity exponentially. A far reaching culture of entrepreneuship and creativity has developed. An ecosystem has grown in which these attributes can flourish with minimal capital investment.
The web has become an artisan's playground.
So I'm striking out and building something of my own. The circumstances are right and the time nearly so. In a few months, this gig will be over, my time will be my own and I can dedicate it to creating a product of which I can be proud (and for which customers will pay). I'll use this blog to track my progress, share my thoughts and ask my questions.
I'm excited.