tldr: Мысли о новом MacBook с последующим руководством по выживанию.

В понедельник прибыла невероятно быстрая машина.

Может ли он удовлетворить все потребности веб-разработчика? А как насчет аналитика данных? Сильно зависит от того, чем вы занимаетесь. Я собираюсь поделиться с вами путешествием по максимально эффективному использованию этого MacBook. Далее следует список инструментов, которые я использую, чтобы облегчить себе жизнь.

Четыре года назад, когда я был в Монреале, я получил действительно заданные 15 2016 мбп. Год назад я заметил, что он отстает в некоторых задачах, он не такой резкий, а время автономной работы было ужасным. За несколько дней до истечения срока действия расширенного плана AppleCare я записался на прием в магазин Apple на Риджент-стрит в Лондоне и сумел заменить его. Несмотря на это, я искал устройство меньшего размера с тех пор, как начал работать над сверхшироким монитором. Естественно, что 13 мбп казались идеальными. Я был близок к заказу mbp 13-го поколения 10-го поколения, но с выходом 11-го поколения (даже при 14-нм, ew), что показалось мне плохой инвестицией.

Следуя слухам, появившимся в начале года, я был взволнован MacBook, работающим на чипе Apple. При этом Apple - король инкрементальных обновлений. Достаточно, чтобы вы захотели обновить: либо существующее предложение по более низкой цене (новые iPad), либо более выгодное предложение по более высокой / аналогичной цене.

Когда iPad Pro получил USB-C, я загорелся iPhone 11 Pro, в конце концов, это модель Pro и с упором на возможности видео, она могла и действительно может заменить компактные камеры стоимостью менее 800 долларов для видеоблогов. «Он должен иметь USB-C». Неа. После еще большего ажиотажа, для 12 Pro, снова большой отказ. И скоро, видимо, не будет портов.

Я ожидал, что безвентиляторный Macbook 12 с процессором M1 мощностью 7 Вт и одним портом USB-C вернется. Устройство, которое превзойдет мой 2016 mbp в тестах, портативности и времени автономной работы, но будет хуже во всех остальных отношениях. Втайне я надеялся на 13 MacBook с процессорами 11-го поколения. Я все еще не хотел покупать устройство ARM, но процессор Intel отвечал всем моим требованиям к рабочему процессу.

Затем был выпущен 13-дюймовый MacBook Pro с 8-ядерным процессором Apple Silicon M1, который предлагал огромную производительность по очень разумной цене, с точки зрения цен ЕС, прямо с веб-сайта компании. edit: завершение этой статьи во время Черной пятницы, краткий обзор Adorama и B&H показывает выгодные цены.

Совершенно очевидно, что никакая поддержка Docker не помешала. Я мог бы жить без использования виртуальных машин на моем MacBook, поскольку это не ежедневная потребность в моем рабочем процессе, а базовая технология виртуализации, которая позволяет это сделать, - вот что делает Docker. После небольшого чтения и просмотра заявления Parallels я понял, что виртуализация будет эмулирована.

Что касается виртуализации, насколько я понимаю, если само оборудование не поддерживает ее, программное обеспечение не сможет это волшебным образом преодолеть. Это может означать, что гостевой контейнер не сможет напрямую использовать ресурсы ОС. Это означает потерю производительности, что в моем случае не было бы проблемой. Поскольку у меня был mbp 2016 года, а также два сервера, которые я мог использовать через SSH / VNC для этой части рабочего процесса, и поскольку докер объявил о переходе Docker Desktop для Mac в Apple Silicon, я решил сесть в поезд.

m1 - что это значит?

Новая архитектура означает, что нам нужен способ компиляции кода x86 в собственный код. В macOS это Rosetta 2, уровень перевода для эмуляции процессора Intel, позволяющий запускать инструкции x86_64 на arm64. Это означает, что вы должны иметь возможность запускать все, что не является исходным. Пока у меня не было проблем с установкой какого-либо приложения.

Не сильно ли теряется производительность при такой эмуляции? Какой смысл использовать Rosetta 2, если вам нужен процессор Intel?

Вы можете ожидать чего угодно к северу от 60% для различных эмулируемых рабочих нагрузок. Звучит немного, но эти чипы - чудовища. Мой четырехлетний MacBook набрал всего лишь 790 баллов по одноядерному процессору. Новый более чем вдвое выше, чем при исходной работе, и 1309 баллов при эмуляции. Для справки, macbook pro 10-го поколения получил 1292 балла.

Наличие ОС, демонов и процессов, таких как nsurlsessiond, cloudd и т. Д., Запущенных изначально, означает, что вы впервые можете рассчитывать на время автономной работы, подобное iPad, на вашем MacBook.

Для справки: я села на этот поезд до Брюсселя из Роттердама в 16:25. Включил сразу на 100%. Я писал на носителе, vscode, WhatsApp, Spark и Activity Monitor открыты в фоновом режиме, и я подключен к своей личной точке доступа.

53 минуты питания по цене 2%. 14:27 осталось. После калибровки эти проценты должны быть более точными. При яркости 70–75% и клавиатуре с подсветкой вы можете рассчитывать на как минимум 15 часов регулярного использования. У меня было 8–9 часов на компиляцию webpack, запуск ячеек nlp в Jupyter с кучей открытых вкладок.

Руководство по выживанию в macOS

Начиная

Мой старый Mac казался раздутым, поэтому я не стал использовать помощник по миграции. Есть сообщения о том, что помощник по миграции безупречно работает с Intel на M1.

Перед форматированием моего старого macbook я зашел в Finder в своем домашнем каталоге ~/ и нажал Shift+Command+., чтобы показать скрытые файлы.

Я бросил в новый MacBook следующее.

~ / .gitconfig - В противном случае git config --global user.email ...
~ / .zshrc - В противном случае, следующий раздел
~ / .ssh / * - 🔑🔑🔑

На своей новой машине я установил Homebrew, менеджер пакетов, который разработчики часто забывают, не входит в состав macOS из-за того, насколько он интегрирован. Менеджер пакетов позволяет устанавливать и версии программного обеспечения (пакетов). Если вы пришли с Python, подумайте об этом как о pip.

Если вы пользуетесь популярным приложением на macOS, оно, вероятно, присутствует в этом списке формул домашнего пивоварения.

Эмулятор терминала - В Розетту или не в Розетту

Это основная машина, над которой я работаю, поэтому стабильность необходима. Судя по домашнему трекеру формул / дорожной карте, многие программы отлично работают на Apple Silicon. Возможно, через несколько месяцев настало время полностью отказаться от использования Rosetta. А пока я чувствовал себя в большей безопасности, продолжая с Розеттой.

Независимо от того, используете ли вы Terminal, iTerm2 или Hyper, или что-то, чего я не знаю, найдите приложение, щелкните его правой кнопкой мыши, Получить информацию, ( или Command+I)) и установите флажок Открыть с помощью Rosetta.

iTerm2 - отличный эмулятор терминала. Установив homebrew, вы можете:

brew install --cask iterm2

Пришло время сделать его потрясающим. Посмотрите Oh my zsh. С тех пор, как macOS Catalina zsh, также известная как Z Shell, является оболочкой по умолчанию, а не bash. Это была отличная новость, потому что zsh является расширением bash.

Запустите приведенный ниже сценарий установки, чтобы выполнить мастер oh-my-zsh:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

Другой ввод в подсказки приведет к другому виду. После получения только что созданного файла zshrc я загрузил моноширинный шрифт для терминала.

git clone https://github.com/abertsch/Menlo-for-Powerline.git

Я перешел в настройки Term, профили, вкладку «Цвета», предустановку цвета: Solarized Dark. Я также изменил шрифт на один из указанных выше.

Если вы обнаружите, что набираете одну и ту же команду снова и снова, например, git commit -m "..." или cd ../../../ псевдонимы oh-my-zsh ускорят ваш рабочий процесс. Посмотрите их шпаргалку

Интегрированная среда разработки

Мне нравится использовать Visual Studio Code. Загрузив с code.visualstudio.com, вы получите архитектуру Intel. На данный момент это стабильная версия. Если вы пользуетесь Apple Silicon, вы можете выбрать инсайдерскую версию.

Чтобы иметь тот же внешний вид, что и при настройке терминала ранее, нажмите Command+Shift+P, найдите settings.json в VSCode и введите "terminal.integrated.fontFamily": "Menlo for Powerline".

Есть очень интересные расширения, которые могут охватывать целую новую статью. Чтобы назвать несколько, Remote-SSH, Docker, Material Icon Theme, Jupyter, TabNine (может съесть вашу оперативную память), Markdown All in One (и отдельное приложение Typora), vscode-spotify.

Производительность на macOS.

Просматривая файлы в Finder, я вызываю быстрый просмотр (пробел) для предварительного просмотра изображений, документов и т. Д. Это не всегда работает с кодом.

# preview .json files
brew cask install quicklook-json
# preview image resolution and size
brew cask install qlimagesize
# preview markdown files
brew cask install qlmarkdown
# this one is a bit more work on Catalina/Big Sur
brew cask install jupyter-notebook-viewer

Это личный фаворит. Без этого Command+Tab необходимо использовать для переключения между приложениями, а затем Command+` необходимо использовать для переключения между открытыми окнами этого приложения.

# bringing Windows' 'alt+tab' functionality to the Mac
brew cask install alt-tab

Захват экрана с функциями совместного использования. Skitch от Evernote позволяет пользователям хранить скриншоты объемом 60 МБ каждый месяц. Создайте бесплатную учетную запись и установите Skitch.

brew install --cask skitch

На этом пока все. Вскоре я поделюсь рабочим процессом для резервного копирования «по беспроводной сети» в удаленное место по протоколу SMB с использованием встроенной Time Machine. В 2021 году я планирую расширить эту статью для резервного копирования этой удаленной станции на другую станцию ​​с помощью rsync.