Renaissance enlightenment-reawakening-reformation

On Agile

For me the gist of Agile is in Agile Manifesto1 and it’s 12 Principles2. More than frameworks and tools, people need to understand the philosophy behind Agile. Most of the time people confuse Scrum (or Kanban) with Agile. True, it is a nice framework, but they are not the same. It is a tool not the complete embodiment of Agile. First and foremost thing to remember about Agile is that it fosters democratic mindset - of the developers, by the developers, for the developers. The teams that do not understand this, have hard time managing software engineers.

To understand the philosophy behind Agile, there is no better book than the White Book, Extreme Programming Explained3. Just read the first three chapters of the book and you will be enlightened as I was. It talks about Values, Principles and Practices. People mostly concentrate on Practices (like in Scrum, Kanban, etc. or tools like Jira), forgetting about Values and Principles. Practices are important, but as Kent Beck says, they become rote without Values. Having Standup is a practice, but is it absolutely necessary? Of course not. As long as you are able to realize the importance of Communication (a Value) through some means. Over the years, I have come to realize (even though Kent Beck mentions in the book itself) that the Values are Universal, they are the of the same and hold equal importance in what I do as a developer and what I do in my personal life.

I would recommend anymore who is slightly interested in Agile should begin with these resources, which I like to call First Principles of Software Development/Engineering. And, then jump on to any other resource(s).

References

  1. Agile Manifesto, https://agilemanifesto.org/ 

  2. Twelve Principles of Agile Software, https://agilemanigesto.org/principles.html 

  3. Extreme Programming Explained, Kent Beck, 2nd Edition, ISBN-13: 978-0321278654, ISBN-10: 9780321278654