Disasters are rarely caused by a single failure. Instead, the fates conspire to align a series of small misfortunes which combine together to create a catastrophe. Such an event befell the Raffe recently.
The tale begins almost exactly one year ago. In May 2014 I made my way, laptop in hand, to San Diego in order put the finishing touches on the Raffe’s software ready for the Bay Area Maker Faire. At home I do all the development work on my PC, but for travel I switched to my laptop. This was the first misfortune – the PIC microchip programming software MPLAB refused to run on my laptop. I spent a few hours trying fruitlessly to persuade it to run before deciding to cut my losses and switch to Lindz’s laptop. Even though our laptops are identical makes and models running the same operating system, MPLAB runs on his laptop but not mine.
I spent my two weeks of vacation working hard to polish up the new software – all new LEDs necessitated some hardware modifications to the custom electronics and lots of firmware modifications, plus updates to the PC software. All of this was done on Lindz’s laptop. Usually I commit my software modifications to SVN, a change management system that keeps track of the changes that have been made as well as making sure there is another copy of the files, but because I was in San Diego I could not connect to the network, so the changes were not committed. This was misfortune number two.
With the changes complete we went to the Maker Faire and everything worked splendidly. The new spots and LEDs were much brighter and looked great. When the faire finished there was no time to relax, I left immediately for the long flight home. This was the third misfortune: I did not have time to take a copy of the software. We both have an extremely busy schedule, and after the faire ended we quickly forget that I did not have the latest copy of the software.
Fast forward almost a year, when misfortune number four struck: Lindz’s cat pushed his laptop off a table, destroying its hard drive. I sent him a copy of the software to load onto a spare machine and it was only then that we realised that what I’ve sent him is out of date. Misfortune five, the laptop had no backup schedule. Two weeks of full-time work were now stuck on a broken hard drive. Recovery was estimated at $1,250 which was far too much to afford.
The only option that remained was to redo the work. It was not a nice prospect, because I already knew just how difficult it was. There was little choice however, so I spent almost the next two weeks programming 16 hours a day to recreate the work that had been lost. That work is now complete, so not only has the lost work been redone, but new features have been added that will make it better than ever this year.