Upgrading Your Operating System
Apple’s tradition of releasing a new version of its Mac OS X operating system once a year means that each of us usually needs to upgrade our laptop’s operating system on an annual basis. Given that we have client projects running on different versions of Ruby, Rails, PostgreSQL, and MySQL, we need to be mindful about when we schedule these upgrades. The following processes helps us avoid the situation where a team member begins an OS upgrade and is unavailable to work on client projects for a few days while they get those projects up and running again.
-
Gathering Information
Before embarking on the upgrade process, it’s essential to gather as much information as possible about potential challenges and solutions.
Engage with your peers in Slack, particularly in the
#engineering-helpchannel, to see if anyone has already undertaken the upgrade. Those who have experienced the process will likely have valuable insights that can help you avoid pitfalls and streamline your upgrade.If you’re the pioneer for this upgrade, document your experiences extensively. Jot down any problems you encounter and how you resolved them. This will contribute to a shared knowledge base that could prove invaluable to your colleagues.
Conversely, if you’re not the first to upgrade, seek out the notes from your colleagues who have already completed the process. Their documented experience can help you navigate the upgrade process more efficiently.
-
Scheduling the Upgrade
Scheduling the upgrade is the next crucial step. Plan your upgrade with your project manager and teammates, and block out a dedicated time on your calendar.
Expect to be largely unavailable for about a day, as the upgrade and troubleshooting processes can be time-consuming.
Choose your timing wisely. Avoid busy periods, for example when:
- Many team members are on vacation.
- You are in the middle of launching a project.
- A new client project has just begun and the upgrade might cause momentum loss.
-
Communicating Your Plans
It’s essential to keep your team informed about your upgrade plans. Let them know ahead of time about the planned upgrade day, so they can adjust their expectations and plan accordingly.
-
Post-Upgrade Actions
Once the upgrade is complete and you have verified everything is working correctly:
- Notify your team that you have successfully upgraded and are back in action.
- Update the shared Confluence documentation with your experience, problems faced, and solutions you discovered during the upgrade process.