My latest tour through a museum
I just went to korea’s national museum and for the first time in my life, as a grown up, I actually spent time amazed by how the human race was capable to achieve such amazing tasks done. I spent some hours looking at old objects produced by people who lived long before I started using a computer.
How come those men would build such amazing tools?
And why would a man create an axe after he has created a sword? Is there a need for so many types of weapon, when any of those was enough to kill another man?
Well, I am not a big “Age of Empires” fan, but I believe it’s easy to find out that as soon as some new weapon is invented, a counter-weapon is also created, therefore generating the need for even new weapons, which will achieve slighly different objectives than the previous used ones.
Needless to say, the creation of a new tool did not make the old one useless, but each one can achieve different objectives in a easier/harder way.
What I am going to say is more than obvious but sometimes we forget about it in our daily developer-life. Those who achieved big changes in our world were followed by many who were able to use it.
This does not mean that those who invented are better or those who were able to put it in practice are just technical hands. Both are required in order to achieve tasks and improve the way we deal with our jobs – improve our tools.
But those tools need to be easy enough to use so that all of us can use them.
The average developer is… average. Therefore it is correct to expect that most developers will have average knowledge.
If a methodology requires developers to have more knowledge than the average developer, we can assume that most developers will not be able to use it.
Right now, it is a hard task to implement agile methodologies (in this case scrum and xp) with the average developer in Brazil out of nothing. We have to go through a lot of pain to change one’s mindset.
As a training company whose aim is to improve student’s skills, it is our job to make the average developer have enough knowledge to start adopting such methodologies with less pain, so that all can use those tools within a short period after he has started practicing it, not just a few.
And it is not enough to just let them know what those practices are, but we have to teach them how to use it wisely. Even worse, teaching is not showing.
It involves knowing your student’s mind and knowing how his learning abilities work in order to provide them with the correct information and exercices. And only through exercise and practice one is able to learn.
I strongly believe that education is a viable way of acquiring knowledge, although as any other source, it should not be the only one.
So far, both of our courses (practical test workshop and scrum training) helped us to bring further knowledge to our students and we still have a lot to improve by creating new workshops on other xp practices.
The feedback that we receive from those students show us that they have been adopting it in the right way in a faster peace other developers, which makes me happy believing that we can continue making the code-world a better place.