Tech Life Crap everywhere

Nuke and Pave

My first backup solution was a stack of 3.5 floppy disks. They contained every single Wordstar document I’d ever written, a copy of my bulletin board system, and small set of utilities that I’d knew I need if my feeble PC-AT decided to explode.

Those disk are still around here somewhere. Every embarrassing word of pre-adolescence captured safely by a program no one knows and in a file format that nothing can read. We call that security through obscurity.

When Windows finally showed up, I sifted through those 3.5″ floppies to find the documents I’d need and copied them into my document directory. Ami Pro or whatever the hell I was using didn’t import Wordstar documents, so I had to use a tool to convert Wordstar documents to plain text and then import. This was a hassle. It was a five minute tax on every document that I wanted to read in my fancy word processor WHOOOO PROPORTIONAL FONTS.

When Microsoft decided to slap WordPerfect squarely across the face, they realized that the only way they were going to WordPerfect users to switch was to make the migration process for WordPerfect absolutely painless. Word 6.0 emulated every single byzantine WordPerfect command sequence and had an entire help section devoted to WordPerfect users. Oh yeah, it also imported every type of WordPerfect document known to man.

It worked great. Sure, it didn’t help that the WordPerfectians out there in Utah decided take their dear time getting a Windows version out the door. When they finally did, we were all enamored with Word’s slick table drawing widget WHO CARES IF WE NEVER NEED TABLES IT’S DRAG AND DROP.

Migration is the key to keeping your users happy. Every software application and operating system with a decent shelf life should make it priority to make it trivial to move from Version A to Version B.

With that said, I will directly contradict myself and explain to why you should never ever ever choose to let your operating system migrate you from Version A to Version B.

System administrators call the process of installing an OS “nuke and pave”. You purge every last bit of the previous OS and you start clean. For administrators, this eliminates variables and guarantees that the OS on my machine is exactly the same. This is a big deal when you’ve got an entire school district to maintain.

I like nuke and pave and I employ it whenever possible. Two reasons: one is technical and the other is practical.

The technical reasons comes from fifteen years of developing software. Here’s the dirty laundry. When we’re sitting down to design the next version of the browser or the web application… whatever… the task to “provide a migration facility from the previous version” is usually the very last piece of work someone signs up to do.

This is not because we feel the work is not important, it’s just you can’t very well write a upgrade script until you’ve done a majority of the feature work for the new version. Translation: you can’t get to Point B until you’ve defined Point B. Aaaaaand… welllllll… you seeeeeee… writing upgrade and migration scripts is BOOOORIng..


Ok then.

The real reason to nuke and pave with major new versions of your OS is not that migration comes in late and is done reluctantly. The real reason is practical and it has a bit to do with your garage. You see, over time, both your garage and your OS do a phenonmenal job… of collecting crap.

It’s mid-to-late Winter now and that means we’ve made it through the holidays, but it’s generally too cold to go outside. This means that anything large and unwieldly (but important enough to keep) has been ungraciously thrown in the garage for further sorting. The cleansing process will start sometime in the next two months when I trip over that STUPID XMAS TREE ORNAMENT BOX for the THIRD TIME.

You do the same thing with whatever OS you’re currently using. Part of it is your problem because you appear to like to save stuff all over the place. Part of it’s the various applications you choose to use because they do the same damned thing. Crap everywhere.

When a major version of a OS shows up, lots of bright people spend a lot of time to make sure that your upgrade goes smoothly, but I always nuke and pave because the process forces me to seek out the important bits on my hard drives and put them somewhere safe.

Yes, I lose all my application preferences/options/control panels… and yeah, it’s a hassle to reinstall all of those applications, but, guess what, I’m only installing the stuff that I need. This means those fifty seven different apps that I’ve installed and used once will be consigned to oblivion.

Nuke and Pave is natural selection for your desktop.

Nuke and Pave also is self perpetuating. After doing it three times, you’re going to discover a nimble strategy to organizing your bits — a simple way of moving everything from Point A to Point B with ease. This is because you know that sometime in the new future, the new WhizBang OS is going show up and the more limber your bits, the quicker you can give the new hotness a test drive.

One Response

  1. I absolutely agree, and it’s the philosophy that I employ — frequently involving multiple hard drives and boots such that it’s a transition rather than a single moment in time.

    I got burned by it the last time though — nuked and lost some important source code. Turned out to be a good thing, since, like everything else, the source code was accumulating crap, and starting from an earlier backup forced me into a much more streamlined design.

    How could I have possibly overlooked that directory? I didn’t. It’s a delightful property of Visual Basic to save stuff ALL OVER THE PLACE, hence several key libraries were SOMEWHERE ELSE when I formatted.