Dev / Team estimation
Udi has a post with a provocative title about estimation. I agree completely. Except:
Focusing on the individual developer, getting them the latest and greatest tools may be great for their morale, but it probably won’t make a bit of difference to their actual productivity.
That is not something that I would agree to. Latest & greatest tools are not something that I am particularly interested in, but having effective tools means a world of difference in my productivity. I could mention ReSharper, but that is practically cheating, since I refuse to do any amount of real work without it.
Effective tools are ones that cut down the time that I need to do something, they may be as old as GREP, or as new as the feature that I just put into NHibernate, or a methodology that depends on foot driven mouse to streamline the development experience.
I don't care what they are, they just have to be effective in making it easier to build software. Not to churn out code faster, that is meaningless, but to build software in more effective ways.
Comments
You have the knack of always picking up on my intentionally inflamatory comments :)
My biggest peev is that im sick of people being cheap. You don't have to give me aeron chair but can you give me a real developer machine with more than 80 gigs of hardrive space on it and more than 2 gig. Can we stop using excel to keep track of task and use a real project management software. Can we buy some more servers so that i can have a dedicated build box which doesn't have the thirty other thing running on it.
BTW way Ayende you have one the best blogs out there. Keep up the good work.
Udi,
That is a gift :-D
Effective tools are invaluable, when I need something in particular, i take a little time from a project to develop it myself (obviusly I'm talking about little tools like SQL to StringBuilder or RegularExpressionReplacer ...), a thing to take into consideration is how well tools integrates in the enviroment,
for example if I have a bunch of XML(or JPEG) and i need to do lots of operation on these files run one tool against each file or run the tool against all the files at the same time make the difference.
Ain't nothing wrong with tools that help you churn out code faster. In fact, ReSharper - the quintessential example, just to point out a flaw in the argument :-) - is very straightforward a tool to help you churn out code faster. That does not make it any less invaluable.
Having the right tools for the job is extremely important. Code generators, refactoring tools (<cough>Resharper</cough>), etc., all help us complete features much more efficiently since we can stop spending all our time writing code and concentrate more on getting the feature right.
Probably should reply on Udi's blog, but, I'm here (and lazy).
I wouldn't underestimate the effect of morale. A happy and motivated developer is the best way to getting things done. To quote Sun Tzu: "Regard your soldiers as your children, and they will follow you into the deepest valleys; look on them as your own beloved sons, and they will stand by you even unto death."
@DontNetDude: Well said on a lot of points. It amazes me the places companies pick to be cheap. The lack of hardware for a project is one place where I always see "penny-wise, pound-foolish".
However, to disagree with you on one point: I have used Excel/Open Office Calc to track tasks. If the team is small enough, it's sometimes easier to use a spreadsheet for tasks.
Comment preview