During the past 30 years, I’ve owned several computers and servers with different operating systems and hardware specs. As technology advances daily and newer and more capable hardware hits the market, a lot of folks tend to stay up-to-date and adopt new technologies faster than others. As a professional software engineer, or a hobbyist electronics hacker, and musician, for work or personal use, my main workhorse has been a late 2013 MacBook Pro up to this day. When this MacBook was released, I got the higher-end configuration for a price of $2700, which is a high price to pay for a laptop. This particular model has a 2.3 GHz Quad-Core Intel Intel-i7 with 16 GB of RAM and 500 GB flash storage, and it was possibly one of the fastest laptops on the market at that time.
The purpose of this post is not to deeply compare the old model to the new one or benchmark certain areas of performance. The general answer is evident, but I would like to compare them more from the perspective of usability from my perspective. My performance demanding usage of this laptop is for coding, music recording and mixing, and light photo and video editing. In all these seven years, I’ve never had any serious problems with this laptop and have used it almost every single day. The only maintenance/upgrade was replacing the battery, which was a hell of a task to do, which by itself is a separate topic of discussion.
There are several reasons why I still use this laptop, and for the type of work I do, it pretty much does the job. If I want to compare it with today’s top of the line MacBooks, and only considering CPU and memory, the CPU has been upgraded from i7 to i9 with twice as the number of cores as in the late 2013 model. The amount of memory has stayed the same at the minimum with the option of adding more, which simply means processing speed has been improved.
There are also some cosmetic differences between the two:
- Touch bar
- New keyboard
- New USB ports
I don’t find the new touch bar significantly useful for the things that I do. In addition to that, The new keyboard keys are pretty much designed to be sitting flush with the body, and being a big fan of mechanical keyboards, this feature does not impress me. Older MacBook has USB 3.0 ports vs. USB-C (Thunderbolt) on the new one. I like USB-C ports. They are faster and better, but many of my accessories and my docking station are based on the older tech.
These days I mainly write code in Scala, Java, occasional C/C++, and Python. And don’t use this laptop for gaming or 3D graphics rendering or Machine Learning. I also offload any intensive work to a server where they meant to be. I have a ton of apps, but I do not run multiple CPU/memory intensive applications all at once.
For my regular coding activities, my typical running applications: A few instances of IntelliJ IDEA with one instance of DataGrip, Docker daemon, Paw, multiple tabs of Terminal, Google Chrome with many tabs open, occasionally Charles and rarely, I might run a local instance of a database or some other apps if needed.
I mainly use Reason, EZDrummer, and Pro Tools for music, with additional hardware interfaces. I don’t record or mix tens of tracks of instruments, but for a hobby/bedroom musician, it does the job for me, and I haven’t experienced severe hardware issues.
From a software developer perspective, one of the most critical factors when developing software is compile-time and IDE performance, which a lot of that has to do with CPU and the amount of memory available in the system. I have compared doing similar things on both a newer MacBook Pro and my 2013 model, and I do not see a significant difference between the two with equal amounts of RAM. Also, it is worth mentioning, the difference between 1600 MHz DDR3 memory vs. 2666 MHz DD4 memory is generally significant in terms of hardware architecture.
I mentioned I do light photo and video editing and music production I think these type of applications are a lot more CPU and memory hungry, and the newer hardware would definitely make a significant difference. However, looking at it from an average application developer, I still can’t justify paying the high price of upgrading to the newer model yet.
At the time of writing this, Apple has announced its plan to move to its new ARM-based CPUs in the future Mac models. Like any other Apple hardware user, I am curious to see how much this decision can affect the performance of the future models and also if they decide to stop supporting older hardware and possibly force everyone to upgrade.