Stage. Stage. Stage. Always Stage.
It doesn't matter what software we're talking about.
- MySQL
- Hudson
- Java releases
- thirdparty libraries
- Subversion client
- you name it - if it can be upgraded or replaced, it can and needs to be staged.
Always stage. ALWAYS.
If you don't stage, you're just punishing yourself (and potentially your coworkers and/or users). So be smart - always stage your upgrades. You'll get burned if you don't. It's just Murphy's Law applied to technology, really.
This isn't in response to recently getting burned myself, it's been a post that's been brewing for a while.
Many years ago, a friend of mine once wondered why an admin wouldn't upgrade PINE (a popular terminal email client at the time) as soon as it came out. Now I know why - because that admin was wise. They wanted to be sure it worked and didn't cause any regressions before subjecting their users to it.
I am continually surprised not just by how many things can go wrong, but also how frequently they do, despite the best efforts and intentions of developers. Just the other week, the tinest name change by Oracle in JDK 1.6.0 Update 21 caused Eclipse to fail to launch. Who'd have thought? And yet it happened. There are numerous other examples. I am sure you can think of plenty in whatever software you use. I can certainly think of several, just in the past couple of months.
Before your whole office upgrades to the latest version of Visual Studio, or the latest Subversion client, or any other software. Make sure someone tests it out first.
Stage, because anything that can go wrong will go wrong.