Process of creating software is a unique human endeavor and is unlike any other engineering. It requires its own value system. Without the proper enlightenment and clarification of our values, as Confucius once said, it is really hard finding a black cat in a dark room, especially if there is no cat. Thus far we were behaving like those proverbial blind philosophers trying to describe the beast called “Creating Software”.
Software is unique:
Software is unique because it is often a force multiplier and catalyst in the context of organizational dynamics and its financial goals. Often the processes, protocols, jobs are redefined around the software systems. It is not just yet another cog in the machine- It actually changes the machine itself –often radically!
Software is unique because by definition it requires rigorously accurate coding for a machine that is unforgivingly obedient in reproducing your misconceptions and defects in the implementation that you failed to catch and correct.
It is unique because software is more about negotiating the shared meaning and understanding of the problem.
Software Creation is a future oriented creative activity full of possibility and potential. It unlocks creative force within people by automating all that dull work, turning hard things easy and making impossible possible.
You say – “Okay may be software is unique. So what?
Why do we need a Manifesto?”
Sometimes if the only tool you have is a hammer then every problem looks like a nail! We have been applying wrong models to Software engineering all along. Software is not construction or mechanical engineering. Software is not like manufacturing either. Our model was as wrong as that of a flat earth at the center of the universe.
It is an old saying- Give man a fish and you’ll feed him for a day. Teach him how to fish and you’ll feed him for lifetime. We can blindly follow detailed prescription that is unsuitable or simply wrong OR teach ourselves to understand our unique environment and adopt best practices to our unique situation and goals.
Agile Manifesto gives that deeper insight and teaches us the profound knolwdge. Its simplicity is similar to the profound insights of Sir Issac Newton in formulating simple laws of motion and gravitation. Its embrace of ultimate truth is similar to the Einstein’s theories based on accepting the truth that light is simply unique- unlike any other.
We have been planning the work and working the plans and getting things done right way.
It’s time we start doing the right things instead. We fully support Agile Manifesto.
posted by Sachin Joshi
posted by Sachin Joshi