1. Boot Issues
Now, there have been booting configuration changes by Linux, Windows, and Mac OS X that ruined this.
On Mac, Lion's addition of a hidden "recovery" partition has complicated synchronization of the two different methods of keeping track of partitioning: the MBR (Master Boot Record) and GPT (GUID Partition Table). And Apple's EFI (Extensible Firmware Interface) isn't the same as Windows UEFI (Unified Extensible Firmware Interface)
On Windows, if you back-up via its "System Image" feature, you'll have a major problem upon restoration: it will make major incorrect assumptions and overwrite the MBR, destroying a multi-boot setup. (This is true on non-Mac PCs, too.)
On Linux, Fedora 18 now uses a "brand new installer" that ALSO hosed over my boot records. And, it wants to create its own special boot partition, further complicating the disk.
This makes it impossible to run a robust multi-boot system. I'm now "punting" and going to just one base operating system, and all other OSs run as VMs.
Linux's robustness for technical computing
Let's say you have an "essential" technical tool, created by people who's first priority is to create a tool for their own needs. You'll soon find that this tool only works with the exact version of linux - distribution and version number - that the developer was using at the time of release.
Want to install a different tool, so that you have a "suite" of tools to make up a workflow? Guess what! While you may have the source code, the build process soon informs you that some of your libraries are out of date. Go to update those libs, and you'll find you need to update all the libs THOSE libs depend on.
Usually you reach a point where one of those low-level libraries just can't be updated for the version of linux you're on. And even if all libs can be updated, you'll often find out that now your original "essential tool" won't work with all these updates.
All this happens because Linux is just too freewheeling. There is no consistency between distributions, no consistency between underlying library requirements, no consistency in how those underlying libraries are updated. There needs to be a major consolidation and control of Linux for things at the API and library level to settle down.
New Linux User Interfaces
And for those that say "well, just install (name your own favorite old-time UI shell)", guess what happens when I ran a system update on Ubuntu: The system returned to the newfangled GUI. And even better, not 100% the original GUI, but 75%. An unstable FrankenGUI - what fun!
Summary
Now? It's a bloody mess.
Mint is the way to go.