Sunday, August 10, 2008
Open Source as an Agile Method for Software Development
Have you ever asked yourself, why do enterprises require so many meetings just to get something done? Have you ever wondered how open source gets developed without a single meeting or even a conversation? In order for software to be successful, does it really require having a project charter, timelines and other PMP type artifacts or is it more important to make sure that the architecture is cohesive and has conceptual integrity?
Imagine what would occur if it was a requirement for some CIO to stand in front of an audience doing lots of hand waving while presenting thinly veiled chock-a-block eye candy powerpoint to the open source community? Imagine just the logistics behind getting all the developers who have contributed to Linux or FreeBSD in one place? Does the behaviors of enterprises regarding human interaction still make sense in modern society?
The new generation can collaborate without having a meeting yet corporations haven't yet figured this out. Don't you find it fascinating that productivity within your enterprise is in the shitter yet those same resources are wildly productive when they are at home contributing to open source?
Maybe, enterprisey architects are the problem in that we are only business focused and not thinking about how to leverage the human aspects of technology for competitive advantage. If you have the right attitude, interesting problems will find you. I wonder what would happen if we started to treat our users as co-developers instead of simply labeling them as customers who articulate requirements?
To solve an interesting problem, start by finding a problem that is interesting to you. Yes, this is diametrically opposed to worst practices such as your boss determining what you will work on and all that capacity planning, forecasting, bean counter stuff but imagine if each and every enterprise removed the mental handcuffs and considered the possibilities...
Links to this post: