<$BlogRSDURL$>

Thursday, March 06, 2008

I was in the elevator with very high level technology manager at the company. He was proudly telling his lackey about how another lackey completely re-wrote a Java library because the original one had "poor" performance. The original one, while not incredible, is being used by almost everyone else in the world.

This is what pisses me off about this place. Some idiot developer is probably here until 10pm every night making at least THREE of the worst mistakes in software development, and his boss (who is my boss's boss) thinks he's the greatest thing since sliced and quick-sorted bread.

What are the three mistakes this superstar is making?

1) The part of the code he's optimizing is probably not the bottleneck in the system. And it's almost certainly not the bottleneck in the entire business process (which includes all the human inputs and outputs and connections to other systems). Obviously, if it's not the bottleneck then improving it will not have any effect on the overall throughput.

2) He is spending relatively expensive developer time in order to save relatively cheap processor time. Having a programmer write and maintain this code costs a TON more than buying a bigger server.

3) The code he is re-writing has already been redone by many others and exists all over the internet for free. He is re-inventing the wheel, and probably for the worse.

This is exactly why there is 100x productivity gap between great developers and good developers. This guy probably spent weeks taking a late night car service home doing this. I would've downloaded the free version created by the Jet Propulsion Laboratory, and been done with everything by 11am Monday.

This page is powered by Blogger. Isn't yours?