Apple Silicon: The Dev Tools That Work and Don’t Work (Yet)
The new Apple Silicon Macs have been out for a while now. The machines have shown drastic processing power and battery improvements while being at the same price point. As a result, most tech reviewers have no issue recommending them to people for everyday use.
However, the story is different for software developers.
There are currently two main concerns with the new lineup. First, there’s limited external monitor support. The new M1 MacBook Air and MacBook Pro only support one external monitor via Thunderbolt 3. The Mac mini, which does not have a built-in monitor, supports two external monitors via a Thunderbolt 3 port and an HDMI 2.0 port. For people who require more external monitors for development, this could be a dealbreaker.
Secondly, and more importantly, people are concerned about the availability and performance of development tools on the new ARM-based machines. Personally, I am not worried about their performance. Apple tools, such as Xcode, run amazingly, but even x86-based applications running on Rosetta 2 have been shown to outperform the current Intel-based MacBooks. My real concern is that many popular development tools simply do not work on the new MacBooks.
To help you to decide whether or not you should make the switch, I have compiled a list of tools and their status below:
Disclaimer: I do not currently own an M1 MacBook. This is just information I have gathered online.
Virtualization Software
- Docker: Not working. Native support won’t be ready before February 2021 due to Golang dependency. See the official blog post.
- VMWare: Not working. Native support on the way, but no timeline yet.
- Parallels Desktop: Not working. Native support on the way, but no timeline yet.
- VirtualBox: Not working with no news of whether or it ever will be available.
Tools
- Homebrew: There will be no native support for months to come. It can be installed via Rosetta 2, but expect a “very broken experience.”
IDEs
- Eclipse: Works on Rosetta 2.
- Visual Studio Code: Works on Rosetta 2. An experimental build for Apple Silicon is available. Issues can be tracked on GitHub.
- JetBrains IDEs: Should all work on Rosetta 2 (e.g. IntelliJ, PyCharm, WebStorm), but not natively. See status on JetBrains.
- Android Studio: The IDE works, but Android emulators do not (source, source).
Languages
- Java: Works natively.
- Node.js: Works on Rosetta 2, but not natively. Status tracked on GitHub.
- Python: Should work natively by the looks of this issue.
- R: Works on Rosetta 2, but not natively. See the official blog.
- Golang: Seems buggy on Rosetta 2, but native support coming in February 2021.
- Rust: Works on Rosetta 2, but no timeline for native support.
Frameworks
- .NET / .NET Core: .NET 5 works on Rosetta 2, whereas .NET 6 will work natively.
- Flutter: Works on Rosetta 2, but you’ll need to develop on a physical device. See the official Wiki and the issue on GitHub.
- Electron: Supported natively in 11.0.0. See release note.
SERVER LINK : https://m.vlive.tv/post/1-20527553
https://m.vlive.tv/post/1-20527563
https://m.vlive.tv/post/0-20520631
https://m.vlive.tv/post/1-20527579
https://m.vlive.tv/post/0-20520644
https://m.vlive.tv/post/1-20527590
https://m.vlive.tv/post/0-20520656