The M1 MacBook Air Review: A Flutter Developer’s Perspective

Note: This article is written at the end of December 2020. The content may be outdated by the time you read this article.

Image for post
Image for post

The M1 MacBook Air I ordered, with 16GBs of RAM, is delivered today. After a few hours of testing, here are some thoughts.

Hardware

Comparing with my old MacBook(MacBook Pro 2015 with Retina display), it’s thinner and much lighter. The display is much brighter; I would switch off True Tone when connected to an external monitor, since the white balance keeps changing with True Tone on. The keycaps travel a shorter distance, but they are crisp and clicky, it feels really good to type on this keyboard.

But the most impressive part of this MacBook is that, it is really really fast, it starts up almost instantly and the applications are very responsive.

One thing I feel a little annoyed is that, now I have to use an adaptor to connect to an external monitor and wireless mouse. But that’s the way it is, the world is changing and we have to move on. 🤷‍♂️

Image for post
Image for post

Rosetta 2

You may have heard that the apps written for Intel Macs will be able to run on M1 Macs through Rosetta 2, but the installation is surprisingly easy, no command lines and no bullshits.

When the first time you’re trying to open a legacy app, the following dialog shows up, and the installation completes within seconds. After that, you can use that app seamlessly, just like you did on Intel MacBooks. Actually except for the first Intel based app you opened, you won’t even notice whether an app is Intel based version or M1 based.

Image for post
Image for post

But you might want to check out this website since not all Intel apps are supported on M1 MacBooks.

Visual Studio Code

My primary text editor is Visual Studio Code. I know they released a M1 optimized insider build, but I prefer stable builds and it works very well.

Image for post
Image for post

iTerm2

There are articles said running iTerm2 on Rosetta is a way to avoid issues, here is how to do it: Go to applications and find iTerm2, right click and choose “Get Info”, check the option “Open with Rosetta”.

Image for post
Image for post

After that I can install zsh and brew, and flutter command runs fine, except this annoying error, I think this is a flutter SDK issue as it happens on Intel machines as well.

Image for post
Image for post

Xcode and iOS Simulator

Just like the old Macs, Xcode takes forever to install. You go to App Store, find Xcode and click install, then you go to sleep or do something else, we’re all get used to it.

The iOS simulator is smooth, the apps running on it is very responsive, the scrolling/gestures are recognized without any lags. Although the animation is not as smooth as native, the performance is satisfactory.

Image for post
Image for post

Android Studio

I personally don’t use Android Studio. I installed it only to test my app on Android Emulator.

But it’s not working at the moment, it shows the following error in the setup wizard:

Image for post
Image for post

And the following reminder in AVD manager:

Image for post
Image for post

But the Android Studio itself seems to be working fine:

Image for post
Image for post

Node.js

Sometimes I write Node.js apps too. The Node.js installed through nvm runs fine and tools like yarn works too.

Image for post
Image for post

Conclusion

Overall I’m happy with my new MacBook, and I think the experience will be even better since more and more apps will be supported. What would you like me to test on this M1 MacBook? Leave a comment below!

Do you know you can clap up to 50 times for an article? Go smash that button!

A JavaScript/Node/Flutter developer who love technical stuffs.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store