- Learn to install your full stack from scratch
- Don't use any 'out of the box' auto install all the things scripts
- Even if your workplace/school provides a machine all ready to go, you still want to do this for your own growth and understanding
-
Know each component so you can update it
-
Don't be afraid to start from scratch and do it all over again. Practice!
-
Document the process you take with exact commands, making note of any issues you ran into
- Make this a gist or put it somewhere you can access if you lose access to your machine
- Check for updates on a regular basis
- I strive for 2x a year but monthly is more ideal
- Try not to get too far behind on major releases of important elements in your stack
- It'll become easier if you do it more often
- Search for new guides or posts on how others are doing this
- Look them over to see if there are any new or better ways that are new to you
- Check the date of the material, OS version, any other significant factors like CPU architecture
- Try to understand each step and how they may differ from ways you already know
- Develop a dev sense of when someone's guiding you down the wrong path
- Be careful with major version upgrades
- Search for potential issues or incompatibilities especially around OS versions or major framework upgrades
- Consider if you should delay some part of the upgrade
- Give yourself more than enough time to complete upgrade in case things go wrong
- Back up your system so you can restore if you need to abort
- Don't do this just before you have something important you need your machine for such as speaking at an event, giving some high profile demo to a client, performing some technical process that needs to be done on your machine
http://www.startae.com/blog/keep-your-mac-development-environment-up-to-date
http://www.createdbypete.com/articles/ruby-on-rails-development-setup-for-mac-osx/
https://gorails.com/setup/osx/10.11-el-capitan
https://gist.github.com/mcls/3118518
https://github.com/nicolashery/mac-dev-setup https://github.com/nicolashery/mac-dev-setup/tree/2.0
As a challenging but potentiall rewarding exercise, automate parts of the upgrade process once you're comfortable with each piece