Я трудоголик.
Я не говорю это легкомысленно. Мне невероятно тяжело и тяжело сделать перерыв в разработке моего приложения, особенно когда так много дел.
Поэтому, когда я узнал о 10-дневной поездке в Европу с моими родителями и девушкой, я очень нервничал из-за того, что жертвовал своим драгоценным рабочим временем.
Это должно было быть моей первой реакцией на каникулы в Европе? Наверное, нет.
Но я решил для себя, что я все еще могу выполнить некоторую работу всякий раз, когда будет свободный момент или после того, как все засыпают, так что я все равно смогу добиться некоторого прогресса. Это был беспроигрышный вариант! Я все еще мог присутствовать и наслаждаться нашими прогулками по Италии и Франции, и я все еще мог кое-что сделать.
Но возникла новая сложность.
Утром перед вылетом я обнаружил, что не смогу взять с собой ноутбук. Теперь у нас проблема.
Я знал, что мне нужно адаптироваться.
И вы, наверное, догадались, что я решил попробовать, исходя из названия.
Правильно, единственный способ, которым я мог бы работать над любым кодом, - это найти относительно эффективный способ кодирования на моем iPhone.
Вот как я это сделал.
Выполнение настройки
Несколько поисковых запросов в Google и App Store смешались с небольшим количеством проб и ошибок позже, и мне удалось собрать все свои настройки буквально за несколько часов до полета!
Первым и самым важным приложением, которое мне было нужно, был клиент Github, который позволял мне делать следующие вещи:
- Доступ к частному репозиторию Github моего приложения.
- Добавляйте и редактируйте любые текстовые файлы на нем.
- Вытягивайте, толкайте и фиксируйте любые изменения, которые я в него вношу.
Я нашел множество приложений, которые позволяли вам просматривать ваши проекты, но лишь некоторые из них поддерживали редактирование. Поэкспериментировав с несколькими вариантами, я решил использовать рабочую копию.
Он отвечал всем моим требованиям, имел привлекательный интерфейс, имел 157 оценок со средней оценкой 4,8 звезды, и я даже мог попробовать его бесплатно! Мне так понравилось, что я почувствовал, что стоит заплатить за профессиональные функции.
И чтобы все стало лучше, разработчик по-прежнему очень активен и регулярно выпускает обновления!
Спасибо за фантастический мобильный клиент Github, Андерс Борум. Вы заслужили золотую медаль!
Ссылка на магазин приложений: https://itunes.apple.com/us/app/working-copy/id896694807?mt=8
Единственной отсутствующей частью моей мобильной настройки была настраиваемая клавиатура, чтобы набирать код как можно быстрее.
Физические клавиатуры для смартфонов отсутствовали, потому что у нас не было времени остановиться и купить ее, поэтому единственным вариантом было загрузить пользовательскую клавиатуру iOS.
Хотя я часто скачиваю и пробую новые интересные приложения, я не изучал много настраиваемых клавиатур. Я никогда не чувствовал необходимости выходить за рамки GBoard от Google (который является лучшим).
Я опробовал несколько клавиатур для разработчиков и решил, что CodeKey Pro подходит для этой работы.
Для меня это было самое приятное ощущение с минимальным количеством случайных нажатий на клавиатуру. Он также предоставляет настраиваемые ярлыки в зависимости от выбранного вами языка. В моем случае я использовал Javascript, поскольку мое приложение построено на React Native.
Спасибо за вишенку на моей настройке мобильной разработки, Абхинав Димри!
Ссылка в App Store: https://itunes.apple.com/us/app/codekey-pro-custom-keyboard-designed-for-programmers/id1054647516?mt=8
И бум, я был готов писать код на ходу!
Бонусный совет: хотя и не обязателен, но во время поездки вам часто приходилось приносить с собой внешний аккумулятор.
Но Армин! Как вы тестировали свой код? »
Я этого не сделал. Это далеко не лучшая практика, но я был в ситуации, когда все, что я мог сделать, это написать свой код, тщательно проверить опечатки и позаботиться об отладке, когда я вернусь.
Возможно, есть способ запустить приложение с помощью мобильного приложения Expo (я не использую Expo, поэтому не знаю), но моя среда React Native настроена с помощью Xcode и Android Studio. Так что у меня не было времени на переход на Expo.
ОБНОВЛЕНИЕ (22.03.18): Андрес Борум недавно добавил функцию SSH в рабочую копию, что позволяет запускать приложение на вашем компьютере удаленно. Так что теперь можно тестировать на ходу!
К счастью (и удивительно), когда я вернулся, было всего несколько ошибок компиляции, которые было относительно легко исправить!
Так как же вы использовали эту установку исключительно в течение 10 дней?
Плюсы
- Легкий. С моей средой разработки гораздо легче ходить, чем носить сумку для ноутбука на плече. Также было намного легче бежать, когда мы чуть не опоздали на поезд.
- Coding Anywhere. Мне было легко выполнять некоторую работу в тех местах, где я никогда не смог бы вытащить свой ноутбук. Особенно во время наших долгих поездок на Uber и ожидания в очередях.
- Отдых для пальцев. Я думаю, что растяжение пальцев - это то, к чему могут относиться многие разработчики. Во время длительных сеансов программирования у меня часто болят пальцы, и я делал много упражнений для рук, чтобы избежать ужасного запястного канала. Что было хорошо в программировании исключительно на моем телефоне, так это то, что мне нужно было печатать только большими пальцами, что дало остальным моим пальцам очень приятный отдых.
- Жесты. Идея использования цифровой клавиатуры поначалу не привлекала, но CodeKey Pro предоставил множество полезных жестов для сенсорного экрана, которые после небольшого обучения сделали кодирование почти таким же быстрым, как с клавиатурой моего MacBook. .
Минусы
- Крошечный текст. Просмотр файла javascript с строками кода на крошечном дисплее смартфона - это не то, что я бы назвал приятным для глаз. Со временем я к этому привык, но не скучаю.
- Опечатки. Да, легко нажать не ту клавишу, если вы физически не чувствуете клавиатуру. Если вы набираете много кода на смартфоне, вы неизбежно оставите несколько опечаток, сколько бы вы ни перепроверили.
- Другие ограничения. Были времена, когда мне приходилось откладывать работу над некоторыми частями моего приложения, потому что они включали установку нового пакета npm или тестирование определенной библиотеки. Вместо этого у меня было много других дел, но я не мог просто работать над всем, что хотел.
Заключительные мысли
Хотя это определенно не замена полноценной экосистемы разработки на компьютере, я думаю, что использование смартфона - это исправный план действий в чрезвычайных ситуациях, если у вас нет доступа к своим обычным инструментам разработки или вы находитесь в ситуации, когда вы не можете вытащить свой ноутбук. .
Благодаря этой системе я смог выполнить большую часть работы, а не совсем ничего, и я благодарен за это. И мне еще нужен настоящий отпуск! Мне не нужно было выделять дополнительное время на работу или жертвовать своим сном, потому что я мог заполнить существующее время простоя продуктивностью.
Я могу представить, как вернусь к этой настройке смартфона, если меня поразит вдохновение или я захочу что-то быстро реализовать во время прогулки между классами в кампусе, езды в метро или даже сидя в туалете.
Я считаю, что следует ценить тот факт, что мы живем в то время, когда разработчик может выполнять большую часть своей работы со своего смартфона. Приятно думать о том, как в ближайшем будущем разработчики будут создавать еще более удобные возможности разработки на ходу, которые будут более интуитивно понятными и, возможно, даже способны компилировать, запускать и отлаживать!
Я собираюсь регулярно писать на Medium сообщения о подобном опыте и обсуждениях приложений, дизайна и программирования. Так что не стесняйтесь подписываться, если хотите узнать больше от меня!