Я пишу код на ноутбуке Microsoft Surface. Мне очень нравится текстура его тканевого корпуса. Некоторое время назад я понял, что мне не нравится ощущение металлического корпуса современных ноутбуков. Что-то в них просто делает мои руки неудобными. Когда MS выпустила клавиатуру с тканевым корпусом, я был убежден.
Однако для разработки я предпочитаю Linux. Даже с Cygwin, которым я пользовался много лет и буду пользоваться, у Windows все равно есть проблемы. Во-первых, операции с файлами в Windows выполняются МЕДЛЕННО. Интеграционные тесты для моей программы grs, которая выполняет множество операций с файлами, выполняются быстрее внутри виртуальной машины Linux, чем непосредственно в Windows. Поскольку двойная загрузка на ноутбуке Surface в настоящее время невозможна, я выполняю свою разработку на виртуальной машине Linux.
Вчера коллега спросил, почему я не использую подсистему Windows для Linux (WSL). Это хороший вопрос. Я был застигнут врасплох. Я *пробовал* это раньше. Почему я им не пользовался? Типично для меня, я забыл причину, по которой отклонил его.
Вчера вечером я попытался снова настроить WSL для разработки. Через пару часов я вспомнил, почему: у WSL нет поддержки графического интерфейса. WSL наиболее эффективен как файловая система и оболочка. Если вы запускаете сценарии и обрабатываете файлы в WSL, скорее всего, все будет в порядке. Но Microsoft не поддерживает запуск X-сервера под Windows, поэтому графические приложения, такие как IDE или браузеры, не работают. Вы можете запустить X-сервер в Windows, запустить свое приложение в дистрибутиве Linux на WSL с DISPLAY=:0.0, а затем запустить диспетчер окон, такой как GNOME или KDE, но это болезненно. Глядя на дополнительные 1,6 ГБ загрузки для запуска KDE, я остановился и положил на этом ночь.
Запуск нужного дистрибутива Linux в VMware Player прост и работает хорошо. Я запускаю GoLand и Chrome на KDE Plasma, и все работает нормально. По большей части пользовательский опыт гладкий. Графическая задержка Chrome по-прежнему неудовлетворительна, но достаточна для просмотра stackoverflow. Его легко настроить, он достаточно хорош, и в виртуальной машине все просто работает.