As a developer, I spend most of my time front of my computer. It's my tool for my work and my side projects. If the computer is not fast enough, I might be losing a lot of time during my days, just waiting for things to open or compile.
As a Flutter developer, a whole new range of things are becoming important:
- Time to open a new simulator
- Time to compile an iOS app
- Responsiveness of code suggestions in VSCode
- Having a good battery to last during the whole demo
And it's only a tiny part of it.
My previous computer
When I began my studies, my mother bought me my first computer: a MacbookPro 15' mid-2014. The specs were those:
- 2.8GHz quad-core Intel Core i7 4980HQ (Turbo Boost up to 4.0GHz)
- 16GB of 1600MHz DDR3L
- 512Go of hard drive
- NVIDIA GeForce GT 750M with 2GB of GDDR5
I used it for seven years. During all my studies and my three first years as a professional developer. It handled five dockers images running in parallels, downloading so much
node_modules and building Flutter apps.
One of the things that aged the most was the graphic card. When I bought it, the GT 750M was already one and a half years old, and Apple would replace all the NVidia cards with AMD later this year.
When connecting one external display or, even worse, two external displays, the computer would become less responsive, and the fans would spin so fast everyone in the open space would know that I was building something!
But after all those years, it still works, and I only had to pay to replace the battery once.
My new beast
I have been waiting for the MacbookPro M1 for a very long time. The rumors were relentless, but the release was continually postponed. I bought the M1Max Macbook Pro 16' the day it was released and still had to wait several weeks to ship. I took the most powerful model, with the lowest storage since I never run out of storage on my old computer:
- M1 Max
- 64Go of unified memory
- 512Go of hard drive
Of course, the first thing I ran on it was a Flutter build of my side project Vakey. And it was fast!
To see how fast it is and compare it with your computer, I've compiled some benchmarks from the Flutter Gallery that you can do by yourself.
But before talking about benchmarks, let's first talk about the experience.
I never had any complaints about my old computer screen. I could see that it was 60Hz since my phone was 90Hz, but I wouldn't mind this much.
The new screen is good; even though the notch could have been a little smaller, you don't see it anymore after a couple of days of use. The 120Hz is excellent, and everything seems faster on it. As I'm not into photography, I cannot tell about the color accuracy, but it seems pretty consistent with what I see on my phone.
The battery life on my old computer was harrowing. Even tho I had changed the battery less than a year ago, the chip's efficiency wasn't good enough. I could go from fully charged to empty in less than 2 hours.
The new MacbookPro is so efficient that I can go to work, code for 7 hours straight, and still have around 20 percent of battery left.
This battery life is so good that I don't have to bring my charging brick to work anymore.
Even if the performance were similar to my old Macbook, the battery life only would have been enough to sell me on this computer. Talking about performance...
Did you come only for the benchmarks? Here we go!
All the benchmarks have been done with the computer fully charged with
Flutter 2.10 and plugged in. For the Macbook, all the toolsets have been installed using native Apple Silicon libraries, and nothing is running under Rosetta.
Each computer has some time to cool down before each test is run and
flutter clean is run before each test. Everything is timed using
time. For instance, to time
flutter build apk I run
$ time flutter build apk flutter build apk 3.80s user 0.91s system 1% cpu 5:57.50 total
The result used will be the one from the time output. The commands are run without codesign.
You also have the output of the Macbook M1 Max in high-performance mode.
As you can see, there is close to no difference between automatic and high-performance modes. The time difference with my old computer ranges from 40 to 60%, which don't make a lot of differences, but when you are doing consecutive builds, it can save you a lot of time by the end of the day ?
You should be able to run the same benchmarks with the Flutter Gallery and see how long your computer takes! If you want to send me a message on Twitter to add other references, please do!
For me, this new computer has been fabulous, and I would recommend it. I'm not sure if the 64Go are useful right now, but since I'm planning to keep it for a long time, it makes it extra future-proof ⚡️
If you like this kind of post, don't forget to subscribe to my website to get all my new articles ?