I'm often asked for advice regarding deploying or updating ubermix at scale, especially as summer break approaches for school districts. This makes a lot of sense, since summer is the perfect time to wipe down, clean up, and update netbook carts, computer labs, etc., especially for overworked and understaffed school IT departments. ubermix's rapid and scalable deployment mechanisms makes this process fairly quick and relatively painless, however the right strategy going into a new build and a new year can certainly relieve a ton of anxiety. Here's how I do it:

When it comes to prepping for the new year, I will usually wait until the last minute to create my final, master image and key. I typically do a lot of prototyping along the way, making sure that I write down all the things I do, then when I need to get going I download the absolute latest build and re-apply my changes to do my final tests against. I try everything to make sure that all works as expected, then create my master keys. The reason I don't build my master keys too early is ubermix updates track Ubuntu updates, and a new version of Ubuntu is always released at the end of April. ubermix releases follow shortly thereafter, with everyone downloading and testing the latest version, offering feedback, reporting problems, etc. Updates are typically fast and furious, as a result, so waiting until right before your ready to image is always a good idea. FYI, if you are currently gearing up for next school year, you can get
started testing your devices with the first alpha release of ubermix 1.0 now. Details are
at: http://goo.gl/zjPD4

When setting up my master machine, I always follow the instructions under "Rebuilding the Base Image" on the ubermix Customization page. Simple updates (as described on the Customization page) really aren't designed to be used for anything but adding printers, making minor settings changes, etc., and they take extra time to install. Not a lot of time, but extra seconds add up when you are working with thousands of machines.

Once I have what I believe to be my perfectly setup machine, I update my ubermix USB key, again following the instructions under "Rebuilding the Base Image" on the ubermix Customization page. If I plan to use that master to image several different device models, I'll test that image against those as well, just to make absolutely sure that they all work.

When I know that my image is ready to go, I then make a bunch of copies of that key by following the instructions in the Making copies of the USB key page on the ubermix wiki. USB keys are cheap and I can install on as many machines at one time as I have keys, so imaging using keys is always quicker than any sort of network-based imaging solution. While I'm waiting for the image to complete, I'll clean each device using computer wipes like these and dry cloths to dry up the excess cleaning fluid, making sure my machines are neat and tidy for the next batch of students. If the devices are in a cart, I'll be sure to clean up loose cabling and make sure that the timer still works. By the time I am done, all of the devices will be imaged and ready to return to the carts.

During the school year we rarely (if ever) update the devices directly. If we need to make changes, we take advantage of the Auto-update script to push them out to everyone without touching each device.

Obviously, there are a nearly-infinite number of ways to do it, this is just my approach. If you have other ideas, please share them in the comments, or better yet, on the ubermix wiki site.