Joel Spolsky today’s post was about switching developers projects when priorities changes. This will happen a lot if you’re the only developer on a project (switching back to an older version when working on the newer one) or are working on several projects at the same time.
Context switching is bad for developer’s productivity, that’s a fact mentioned way back when I was a kid, but we sometimes need to get some food and clothes and take our girlfriend out to the movies. One important thing Joel and Dmitri Zimine forgot is how it is harmful to product quality too. When a developer has been working for months on a project, he can hold almost every details of the project in is head and fix anything with a clap of a hand (or two when he’s tired). When you throw him back to some old project… everything he once knew well is now far and forgotten.
This is why automation is so important. If you can’t test, build and deploy in one click or command line you’re busted! If you still do some copy-pasting galore, maybe you should give my code generator a try or write your own. If you can’t rollback the last version you deployed on the public web server in seconds you’re better off eating raw chicken.
You might have already automated your test and build process but need to modify just that one tiny line in a Word document before making the final installation package.
This would take too long to do from the script so I’ll just edit it by hand
is a project killer. Don’t count on your memory, documentation or co-workers to remind you of something : automate and forget it, you got so many other things to think about!