Полезный список для программистов
Новые MacBook-и (и Mac Mini) на процессорах Apple M1 появились в продаже. Устройства показывают потрясующую скорость и время работы от батареи, будучи относительно дешевыми. Многие обзорщики советуют эти компьютеры к покупки для повседневных задач. Но ситуация немного меняется, если говорить о разработчиках программ.
Проблемы как минимум две. Макбуки поддерживают лишь один внешний монитор, а Мак Мини два. Этого может быть мало для многих программистов.
А также, что более важно, есть сомнения в доступности и производительности инструментов для разработчиков на построенных на ARM-архитектуре компьютерах. Нет сомнений в производительности Xcode. Он имеет нативную поддержку и работает очень быстро. Мне интересно, какие из инструментов попросту не работают на M1.
Чтобы помочь вам понять, стоит ли переходить на новую архитектуру, я составил список инструментов и текущий статус поддержки.
Внимание: Я не проверял каждую отдельную программу, лишь некоторые. Остальное найдено на профильных форумах.
Virtualization Software
- Docker: Не работает. Поддержки не будет до февраля 2021. Связано с зависимостью от golang.
- VMWare: Не работает. Вроде начали работать над исправлением, но когда - не понятно.
- Parallels Desktop: Не работает. Вроде начали работать над исправлением, но когда - не понятно.
- VirtualBox: Не работает. Никаких новостей.
Tools
- Homebrew: Нативную поддержку ждать еще долго. Можно запустить на Rosetta 2, но работает так себе.
IDEs
- Eclipse: Работает на Rosetta 2.
- Visual Studio Code: Работает на Rosetta 2. Есть эксперементальная сборка для Apple Silicon.
- JetBrains IDE: Должно работать на Rosetta 2 (IntelliJ, PyCharm, WebStorm).
- Android Studio: редактор работает, эмуляторы не работают.
Languages
- Java: Работает нативно.
- Node.js: Работает на Rosetta 2.
- Python: Должен работать нативно, но обнаружился баг.
- R: Работает на Rosetta 2.
- Golang: Работает на Rosetta 2, но очень багованый. Нативная поддержка в ферале 2021.
- Rust: Работает на Rosetta 2.
Frameworks
- .NET / .NET Core: .NET 5 работает Rosetta 2, .NET 6 работает нативно.
- Flutter: Работает на Rosetta 2, но необходимо работать на физическом устройсте.
- Electron: Нативная поддержка с версии 11.0.0.
Libraries
- Tensorflow: Работает нативно. Приватный форк Apple.
За основу взял вот эту статью, однако у меня есть Макбук на М1 и я пробовал многое из этого списка (но не все!).