I decided to purchase the new Apple M1 MacBook Pro (2020) for development purposes. My current macs work great but I was sold on the long battery life and the power of the claimed M1 chip. Here is why I love it and I am hopeful.
What Kinda Developer Am I?
I am a Software & Web Developer and I work in an R&D department, so I am constantly researching and experimenting either for work or to create content. I use IntelliJ, WebStorm, PhpStorm, and Xcode depending on what I am coding.
I also have a Code YouTube channel which I use Adobe Premiere, Adobe Audition, Adobe After Effects, Adobe XD, Photoshop, and Illustrator to edit and prepare the content I post.
Why I bought It
I own a 2019 iMac which I mainly use for Audio, Video, and Text Editing for its power and convenience to always be in a nice desk. I also own a 2019 and 2015 MacBook Pros which I use for coding and research. My iMac fan goes out of control when I am exporting video or converting a lot of video files to mp4. My MacBooks fan screams when I am compiling a lot of code and sometimes I have to run many dev apps at once to test multiple services at once.
Sometimes I get “out of memory warning” when I have a lot of things going on at once. The issue is, they are almost always running hot, the battery doesn’t last long and I feel like I need better. They are terrible for traveling cause or to occasionally pull it out in a Cafe or Train station to code real quick and that why I bought an iPad to code simple ideas sometimes on the go.
After the first day, I got blown away. I literally coded 8 hours straight like I normally would and without plugging the Laptop in. The battery life is mind-blowing. This is probably the most attractive thing about these new M1 Laptops.
My coding time became unusually quiet. I purposely tried many things at once, and it continued to be quiet. It got a little warm but nothing like my other laptops. It remained quiet even when I was exporting or editing my YouTube videos without mentioning that it exported the videos much faster than my iMac.
The Camera & Ports
The camera sucks. The reason that it does not bother me is that whenever i need video calls I use my iMac or iPad. I also have a go-pro camera I can attach for better video quality just in case. Honestly, I don’t care about the camera anyway.
Two ports do not bother me either. I use adapters that give me more ports for when I need them and honestly, I rarely plug anything else besides the charger and my iPhone. I prefer not to plug anything besides my iPhone but I understand how this may not work for others.
Coding related Programs
When I first launched IntelliJ and WebStorm I felt a little lagging but after a couple of minutes in, it started to feel normal. I believe maybe because it was the first time and not optimized for this chip that it is normal? I somehow felt that IntelliJ and WebStorm file indexing was a little slow at times.
Chromium, Edge, and Firefox, all took about 3–8 seconds to launch for the first time. After the first launch, they took about 1–2 seconds. Overall, I felt they were slow sometimes.
Safari is super fast which gives me an idea of how browsers can be once adapted for the M1. All native Apple apps work great and so far none of my coding related software stopped me from doing anything I need.
I did not have luck with Docker or any VM though, that’s a huge one for me but I know the Docker team is excited for M1. Check this video for test details by DevChannel on Docker and Android Studio. Anything that relies on VM right now cannot run and for me, only Docker limits my workflow.
XCode like any apple Software, works even better. Apps build faster and the experience is just fantastic. Perhaps this is where I felt the biggest improvements when compiling and building code.
Overall, the coding experience is the same or slightly better. I felt a quicker code compilation and building time which helps a lot but it was not like, 10 times faster. It was maybe 1.5x — 2x faster for the big apps, I tested with.
For Adobe XD, some old projects it was not able to open or open correctly and gave me errors. For projects I started in the M1 MacBook everything worked smoothly with no changes at all. I was able to open and edit most of my old projects but for a couple of the biggest ones, it failed. Adobe is yet to update these programs to take advantage of this M1 chip so, no biggie.
Adobe Premiere took longer to run for me but when It did, everything worked fine. I got errors with Media Encoder on some files. After Effect failed to open correctly one of my projects but overall I am still hoping I can open those projects eventually.
The typing experience is great. I really like this keyboard which I find to be way better than all the MacBooks and the iMac keyboards I own. The keys are not flat that you feel like you are typing on a flat screen and the travel is just right, at least for me. I can feel the keys moving and the response is just fantastic. I also like the noise it makes when I type which is an important detail for me.
I am not a touch bar fan but I enjoy the options it gives me for IntelliJ to quickly run or create commits. It can be fun for designing programs and it is something you need to remember to incorporate in your interaction with the computer.
I experienced bugs, unfortunately. It is hard to tell whether it was because of the software or the hardware but because I never experienced them in my other computers running the same OS, I am to blame the MacBook.
The laptop went to sleep unexpectedly sometimes forcing me to open and close the lid repeatedly to get it back. Chrome and Edge exited unexpectedly on me a couple of times, once while I was writing this article. Everything else has been related to programs launching slowly, doing some stuff slower than usual, failing to open projects and documents sometimes.
MacBook Air or Pro?
I went for the Pro even though internally they seem to be the same. I would say, go for the Air as it is amazingly cheaper if the price is a concern. I love the size of both, the air is even lighter, and I can just pull it out anywhere and just start coding.
The transition is definitely one of the best. I simply set up this new laptop from my old one back-up and everything felt like my old laptop in a new system. This is down to configuration files, scripts, packages and languages installed, etc. It pretty much just worked!
I still keep my other laptop for professional stuff since the environment is set up to work the type of work I do, and I would hate if a new laptop system mess it up for me. If you trying to replace your current professional laptop, don’t do it. It is too early for that and the 16 option size is not yet available.
If you are in the market for a small, powerful laptop to start coding or you don’t mind the risk of some stuff not working 100% for a little while, please join me in this experience. The battery and power pretty much make up for it.
With time, the applications will be built for this new chip and things will improve but overall I haven’t been affected in a big way mostly because I have backup machines and I am in love with the battery, fan, and power.