⚡ Suddenly, Problems!
Putting the “Disaster” in “Disaster Recovery Strategy - Live Drill”
⚡ Suddenly, disaster
It’s Tuesday 1st-feb.
The Tuesday of the first week.
The day before the first “go live” day, where we will be asked to present all the progress we’ve made this week…
And then your laptop dies without warning.
😱 The Situation
The PC is not turning on, whether plugged in or not.
It just shut down without any warning, while being plugged in, and it’s not responding to any type of presses on the power button.
The PC is completely toast 🍞 and will likely have to be sent for repairs to check the internal power supply or the battery (according to customer support).
This could take ~20 business days (~4 FabAcademy weeks).
Is it time to panic already?
🩹 Mitigations
No need to panic…
- All your work was tracked in git ✅
- You had regular and small commits ✅
- And it was synced to gitlab at least once a day ✅
- You had full disk images of the laptop (both windows and linux partitions), the latest of which was done on Monday morning (and it was validated to be complete and non-corrupt).
- The only actual losses are ❌:
- 2h of work on a document where I was documenting an automated way to compress images.
- Some screenshots of the work in progress that did not get incorporated into docs.
So, overall, not bad. I’m fairly happy of the approach I’ve taken to keep my data somewhat safe.
💡 Lessons learned
- Do not rely on hardware:
- It fails…
- …at the works possible time
- If it doesn’t fail today, it will fail next week
- It fails…
- Workflow improvements could further mitigate similar issues in the future:
- Commit/push more frequently.
- Maybe commit to a dev branch that stores the content, but does not necessarily publish the changes to the website.
- Instead of splitting the work across several tools (gitlab, joplin for note-taking, markdown files for documentation), it might help to have a single place for everything.
- Maybe set up a second git repo just for raw content (unprocessed screenshots, uncompressed images) and push that
to a server outside FabAcademy so that the content is safe outside the laptop, but without filling the FabAcademy
gitlab server.
- Using repos for content like this is a general smell. git is optimized for text files, not for binaries.
- If you are a student thinking about doing this as well, make sure to read up on how git handles binary files , and how this affects basic operations (diff, merge, etc…) as it will be very slow, heavy and painful.
- If this repo is hosted on someone else’s server and the file grows large, they will have reasons to be concerned and to take mitigations.
💀 RIP, the laptop
You will certainly appreciate the high-quality packaging material, a thing of beauty, carefully crafted to maximise its integrity and resistance during shipping.