This won't be my usual post, but as this is a development blog, it felt relevant to touch on this.
Finding myself in a particularly agreeable mood one evening this week, I surrendered myself to the update Windows had been proffering for weeks. Pleased with my munificence, I skipped off to bed eager to see what treats would await me, nestled under my keyboard.
Imagine my surprise when my poor laptop's screen flickered furiously between full black and the Windows load screen upon first boot, never to reach the login prompt. Surely, safe mode would reveal the culprit? Nope! Stuck in the same, interminable loop.
After some technical voodoo, I was able to wrangle important files onto a separate drive and reinstall Windows. Balance is restored and peace reigns across the land once again.
The importance of this story isn't that Windows' desperately urgent security patches must never be trusted (though my recent moratorium on patches now feels powerfully justified). The takeaway should instead be that if you are working on anything important, you should ALWAYS be backing up your changes to an external repository!
In my experience, similarly unexpected events occur at least once per project, but they're usually harmless with a little daily diligence. This time, file extraction was still possible for me, but had that not been the case, I would have only lost a couple days of work (and my carefully curated gallery of hilarious ungulate gifs).
There are a number of free solutions available to you.
If you're working on any creative work and the incremental changes are important to track, I highly recommend using bitbucket. They provide free, private repositories and support git and mercurial (my personal choice). There are numerous tutorials available for using these technologies.
If you need to store documents or final assets, I've found Google Drive to be a convenient tool. Sharing controls are robust, and if you use gmail, the integration trivializes a number of tasks.
So take control of your destiny friends. Back-up your data regularly!