March 14, 2006

Programmers are not all Alike

I know soem developers are way more productive than others, but Scott Ambler has a nive way of telling this.

In a recent issue of Software Development magazin, Scott Ambler while speaking of the size of Agile teams writes (bold is mine):

"By paying [the developers] 20 percent more, you often find that you've hired someone twice as productive. It's been estimated that the best developers are almost 25 times as productive as the worst developers."

From my experience, I fully agree. A very good developer with a powerful toolset can do wonders. That's why I'm skeptical on putting too much value on the infrastructure (ALM and so on, which is relevant but not an absolute) and than looking for the cheapest programmers around.

Also (and I know I'm biased because I do this for a living) a well-trained programmers (books and training classes come to mind) can be much more productive and pay off the training investment in a very short time.



Programmers are not all Alike 

Alas, spending 20% more is a condition necessary but
not sufficent to have good programmers. ;)
Comment by Uberto on March 14, 13:32

Programmers are not all Alike 

I definetely know many contractors and *senior* 
developers 20 times slower than my self
Comment by Eber Irigoyen [] on March 14, 19:20

Programmers are not all Alike 

The current trend is "lower workers' pays thus we can 
raise executives' ones".
Ambler discovered hot water :) Programming is 
a "creative" work, and needs experienced people, 
which in turn are used to ask more for their work. 
And being "productive" does not mean writing more 
lines of code, it means writing better code and with 
an overall better design. Code that can stand time 
and changes.
But the "management myth" born in the '80s dictates 
that "nothing is created, everything is managed", and 
that a company value is not its products - and the 
people able to create them, but its "management" 
(that in turns needs to be paid a lot, and have huge 
bonuses when the sometimes perform what they are paid 
for, make the company earn).
In the "old times" managers were usually people 
growing in the company, or coming from similar 
company with a good knowledge of what they were 
building. Often they a technical background.
Later the "management myths" dictates that from 
making orange juice to carriers someone following 
the "management golden rules" can perform well, 
management become a discipline on itself, requiring 
no knowledge of anything else.
I agree that software development needs "processes". 
But it is still a creative process, where people 
skills are very important.
Writing software is not like building a car, where 
the worker have only to assemble pieces in a 
predeterminated order.
Writing software is like designing and prototyping a 
car, and any good "manager" knows it can't be done by 
cheap engineers and designers. Not everybody designs 
Ferrari and Porche, that's true, but even cheaper 
cars require skilled people to be created.
This simple truth can't be understood by 
most "software managers" - they dream about cheap 
workers assemblying software - and they don't want to 
pay the price to really create it. And they dream 
technology will create good software with cheap 
Comment by Luigi D. Sandon on March 17, 14:37

Post Your Comment

Click here for posting your feedback to this blog.

There are currently 0 pending (unapproved) messages.