I've owned a 2012 Macbook pro since the age of 18, and its essentially been my only peronal computer. Recently its performance had really dropped, to the point where I was ready to try some drastic measures to try and improve it. The first attempt at an improvement was an upgrade of the harddrive to an SSD. Unfortunately, the poor performance was mostly due to a faulty SATA cable, but that was easy enough to replace as well. While I was in there, I upgraded my RAM to a healthy 16GB.
I had been getting the feeling that my laptops performance was dropping over time, and each one of apple's upgrades to their operating system seemed to bog my system down slightly more each time. On the back of these problems, I thought I would try using an alternative operating system, Linux! I use linux systems a lot at work, and I doubt without that introduction I would have had the confidence to try it out. But the experience has been generally a good one.
The operating system is stable, the software updates are seamless, and I like the familiarity I now have with the linux terminal. It is a useful tool for a lot of every day tasks, and the computer feels like a very satifactory coding environment, where X-Code used to run ridiculously slowly while I was running MacOS.
One thing to mention is that there is a bit of a learning curve to using the system. After intalling Ubuntu on my mac, I noticed that my laptop was getting really hot... very quickly! It turns out that the vanilla install of Ubuntu doesn't have a fan config included in it, so the laptop's fan speed was fixed at it slowest speed. There are a number of other little quirks that don't seem to work right 'out of the box', fortunately there are good fixes out there, but they can take a little bit of time to get together. I thought I'd add an adendum to this article, of how to configure your Macbook after doing a fresh install of Ubuntu 18.04.4.
1. Try installing additional drivers. It seems the vanilla install doesn't always give you all the drivers, and you sometimes need them to enable wifi! NB You don't need the internet for this command.
2. Add macfanctl, we need to use our fans! We'll add the mac repos!
sudo add-apt-repository ppa:mactel-support/ppa
sudo add-apt-repository ppa:poliva/pof
sudo add-apt-repository ppa:poliva/lightum-mba
3. Install the packages that we need.
sudo apt-get install macfanctl lm-sensors broadcom-sta-dkms
We need to write our own fan config, the man pages for macfanctl are not too cryptic, and it is not hard to get them configured to a reasonable state.
4. Another quirk we need to fix is that a red light shines out of our headphone jack hole. We can fix this by going into settings > sound > balance, and we change the sound setting to Analogue Surround 2.1 Output. This will remove that annoying red light.
5. We also need to sort out the keyboard backlighting. This is a satisfying one to fix!
sudo add-apt-repository ppa:mactel-support
sudo apt-get install pommed
Big thanks to anyone that worked on these packages, they have really made Ubuntu on Mac a pleasure to use. I leave these instructions here so that I have a good place to find them if i do need to re-configure my Mac. I do not take any credit for them.