Some years ago, I broke up with Apple. There was nothing that made me want to spend the Apple tax any longer. There was nothing in their lineup that made me want to buy a new Mac, and honestly there wasn’t for a while. Spending more time with Linux made me look at System76 for my next daily driver. The price versus performance made more sense going in the direction, and the “workarounds” to get certain things to work with Homebrew was an extra step I couldn’t commit to. Then some things changed.
Aging Hardware and iOS Development
My custom desktop build running Pop!_OS by System76 (daily driver), a Hackintosh, and my ThinkPad running Zorin OS were _kind of _getting the job done. I had been planning to replace my daily driver and laptop this year and had upgraded the graphics card on the desktop and threw some more memory into the laptop. Two simple upgrades that should have kept me going for another year. Then the problems arose.
I recently started working on a mobile app and in order to make a build for iOS you need a Mac and that is where my Hackintosh fit the bill. After upgrading to Mojave, I started experiencing multiple kernel panics. Then the fan on my desktop failed, and my laptop stopped waking from sleep mode even after disabling this functionality. After a few days and nights of watching me work through the repairs, my wife decided replacing them would make the world a better place. Insert angelic singing here.
My Setup and Implementation
I ordered the Mac Mini with 16GB of ram and 256GB of storage and later a MacBook Air with the same configuration. Since you cannot upgrade the memory maxing out the memory was the way to go and there are cheaper options to upgrading the storage. The overall experience is amazing and the speed of everything is faster and noticeable.
Eh, 256gb Is Not That Bad - I Haven’t Used A Of Lot Local Storage In Years
A rule of thumb with hardware for me is to buy as much memory as you can and remember adding storage space is cheap. With that I maxed out the memory because I am sure that I will get to a point (eventually) where I may stress out the system. My system for file storage is a little different, but I will share with you how I can make 256GB not even a second thought.
I purchased an external USB hub and a Samsung SSD 1TB drive to add additional ports and provide more storage for the Mini. When possible, I install applications on the SSD and everything else on the internal drive. Problem solved, but there is more.
Nextcloud, Google Docs, Google Drive, Microsoft, and OneDrive equal the storage secret sauce. Taking advantage of cloud storage when possible makes life simple and increases productivity.
My Nextcloud instance replaces Dropbox for things I am working on that I may need to access anywhere. Archived files, projects, notebooks, tiny scripts, etc. all live on this drive and are available on any device I may use at the moment. Attached to my server is an 80GB usb hard drive (salvaged from an old laptop and placed in an enclosure) that I share via Nextcloud, which I have yet to fill to 20%. If I ever need to expand the storage, I just add a drive.
Next in the setup is Google’s office suite and Office365, which are used the same way depending on what I am working on. For example, I write a majority of my documents in Google Docs out of habit and use Office365 when collaborating with my wife and a few other colleagues. Both solutions mean I don’t need to store the documents locally and have multiple places to access them. Recently, I discovered Office saves items to OneDrive and as far as I can tell uses no local storage, which is a bonus because I can’t imagine actually filling up 1TB of space with Office documents.
Getting Work Done - Not Much Has Changed
I spend a lot of time with IDEs (PyCharm and Android Studio) and Visual Studio Code running builds and simulators. If I used Docker (and until recently Go) and some Adobe products I would probably have issues, but they aren’t my bag, so I haven’t run into the issues that other devs/designers have had. The only thing I have to remember is when I set up Python virtual environments to remember that the cloud servers I use are x86 based, and I need to switch the architecture when creating the environment.
The longest part of setting up each device was getting my dev environments ready to go. So, after about an hour and a half per device, I could get up and running. The experience has been very pleasant and Apple nailed it.
I have read quite a few articles on Intel’s attempts to catch up and level the playing field, but here is the thing. Apple fixed on my biggest gripes that I was having with them. I could always buy a better performing computer cheaper than their lowest priced computer. With the M1, I could buy two computers for the price of one and not sacrifice performance.
This is not an Apple versus Windows post, nor is it a AMD/Intel versus M1 article. I don’t put a lot of value in benchmarks, because that is not my thing and of course YMWV. What I have found is that Apple has made some devices that IMO are the best on the market right now and they have set the bar pretty high.