Хабрахабр

«Server-side Swift недооценён»: интервью с Полом Хадсоном

Но стоит поговорить с таким человеком, как обнаруживаешь, что при своих огромных знаниях он вполне себе живой. Глядя на признанных IT-экспертов — с их подробными книгами, уверенными докладами и стройными блог-постами — можно ощутить их какими-то особенными существами, которые знают в своей области вообще всё, никогда не волнуются перед выходом на сцену и родились с клавиатурой в руках.

Сайт Hacking with Swift, целый ряд книг, доклады на конференциях вроде dotSwift и SwiftConf, твиттер-аккаунт с 17 000 фолловеров, YouTube-канал — это всё он. Пол Хадсон известен как эксперт в Swift и iOS. И мы с ним поговорили: от того, с чего он начинал, до советов, которые он может дать начинающим спикерам/блогерам.

Работаете ли вы на себя или в какой-либо компании? — Вы широко известны в iOS-сообществе, но со стороны может быть неочевидно, чем именно занимаетесь.

Таких людей, как мне кажется, становится всё меньше и меньше. — Моя основная работа — написание книг. И я в восторге от этого, мне очень нравится учиться новым вещам, экспериментировать, чинить последствия своих экспериментов, а потом писать о том, чему я научился. Всё моё рабочее время занимает Swift: я либо пишу на нём, либо пишу о нём.

— Как вы начали заниматься разработкой под iOS?

У меня было приложение Flashzilla, соответствующее моим тогдашним личным интересам: оно показывало карточки на разны языках, и вы видели слово на английском, а потом запоминали перевод на другие (французский, испанский, японский и латынь). — В то время iOS ещё называлась iPhone OS. Apple тогда не приняли это приложение в App Store из-за того, что в его названии было слово «Flash», а они тогда ещё нервничали из-за Adobe Flash — ощущаете, как давно это было!

Остались ли ещё темы, в которые вы хотели бы углубиться? — Если взглянуть на ваши книги или темы ваших докладов, возникнет ощущение, что вы знаете о разработке под iOS вообще всё.

Сомневаюсь, что есть кто-либо, кто знает хотя бы 25% — я точно столького не знаю. — Я не думаю, что есть хоть один человек, который знал бы всё о разработке под iOS. Например, когда появились Siri Shortcuts, я настолько был ими захвачен, что быстро стал большим активистом этой технологии. Благодаря тому, что написание книг — моё основное занятие, я могу исследовать любые технологии, которые мне интересны. Есть много тем, которые я хотел бы глубже изучить, и я надеюсь, что через месяц-другой я смогу об этом рассказать. Это воодушевление неизбежно проникает в мои книги, потому что мне хочется делиться им с другими.

Это впечатляющее число — а можете рассказать о каком-то конкретном проекте, ставшем для вас особо интересным и ценным? — На сайте Hacking with Swift написано, что вы участвовали в разработке более 100 мобильных приложений.

А вообще самой интересной была моя работа с UBS в Швейцарии. — На самом деле число выше: в том подсчёте учитываются только мои личные проекты, над которыми я работал в свободное время. Соответствовать их ожиданиям зачастую было очень непросто, но мне это только нравилось: такое требовательное отношение помогает расти. Мне нравилось, насколько внимательно они относились к деталям: они хотели, чтобы всё функционировало гладко, и исходили в первую очередь из качества, а не бюджетных соображений.

А о чём вы тогда писали и где можно найти ваши статьи? — Также на сайте сказано, что в течение восьми лет вы занимались компьютерной журналистикой.

Вначале я редактировал обзоры, затем меня сделали заместителем редактора и, наконец, редактором. — Я писал о многих темах и публиковался во многих журналах, но в основном мои статьи выходили в одном очень специализированном и гиковом журнале под названием Linux Format. Кстати говоря, у этого журнала есть русскоязычная версия, и она по-прежнему выходит. Мне очень нравилась моя работа: я знакомился с самыми передовыми компьютерными технологиями, отбирал самое яркое и рассказывал читателям во всём мире.

Однако есть и противоположное мнение, что это никак не помогает профессиональному росту. — Сегодня многие считают, что разработчику может быть полезно для карьеры писать статьи или вести блог. Когда разработчику становится важно стать автором? А вы как считаете?

— Я думаю, что писать и говорить о своей работе может быть очень полезно.

Если вы решили написать в блоге (или рассказать со сцены) о GCD, Core ML, Siri Shortcuts или чём-либо ещё, вы должны быть уверены, что действительно изучили проблему во всей её полноте. Во-первых, это помогает многое для себя прояснить. Это мотивирует вас провести дополнительные исследования, поэкспериментировать, чтобы разобраться как можно лучше.

Мы способны поддерживать свою специализацию лишь непродолжительное время, а когда мы перестаём посвящать чему-либо всё своё время, у нас быстро возникает ощущение, что мы уже не квалифицированы в этом вопросе. Во-вторых, те статьи, которые вы напишете, послужат прекрасной документацией для вас самих в будущем, когда вы перейдёте к другой проблеме и забудете всё о том, чем столь усердно занимаетесь сейчас. В этом нет ничего страшного, это вполне естественно, и здесь вам как раз может помочь ваш блог — прочитав свою статью, вы быстро вспомните то, над чем уже работали.

В-третьих, ваш блог или выступления с докладами могут помочь вам обрести большую известность в сообществе: или потому что вы создали нечто полезное, что стало широко известным, или потому что продемонстрировали наличие усердия, силы воли и новаторства, необходимые для создания чего-то подобного.

Некоторым людям хочется полной и интересной жизни помимо работы, и после 5 часов они не хотят думать о коде. При этом я прекрасно понимаю, что в нашем сообществе есть много людей, которые не могут или не хотят вести блог или выступать с докладами, потому что у них есть семьи и другие дела. Нам всем будет значительно лучше без этой дискриминации. Такие люди тоже важны для нашего сообщества, и, на мой взгляд, несправедливо говорить, что кто-то недостаточно увлечён программированием, просто потому что у них нет блога.

Откуда оно взялось? — У ваших аккаунтов в Twitter и GitHub юзернейм «twostraws» («двесоломинки»).

Когда я был ещё ребёнком, мои родители были очень бедными. — Это вопрос, который мне задают чаще всего! Такого рода привычки, которые мы вырабатываем в детстве, остаются у нас на всю жизнь — даже сегодня у меня есть странная непроизвольная потребность в двух соломинках. Поход в McDonalds был для нас небольшим праздником, и я всегда брал две соломинки для своего молочного коктейля, чтобы взять от этого события всё.

Что вы думаете о нынешних перспективах Swift как серверного языка? — Одна из ваших книг называется «Server-Side Swift».

Многие пробуют писать на нём из любопытства и обнаруживают, что навыки разработки на Swift применимы и к веб-разработке. — Я считаю, что Swift недооценён как серверный язык в нашем сообществе — он используется значительно чаще, чем это обычно считается. Это открывает очень много возможностей.

Что вы можете об этом рассказать? — Ключевой вопрос по поводу Swift как языка разработки бэкенда — это прошёл ли он проверку в продакшне.

— Некоторые крупные компании, такие как Mercedes Benz или ING, уже используют Swift в продакшне на серверах, а прошло всего только несколько лет.

Что бы вы рекомендовали разработчикам, которые готовятся к своему первому докладу? — Вы выступали на множестве различных конференций — как вы впервые попробовали себя в роли докладчика?

Это был очень непростой первый опыт, я бы не рекомендовал никому с этого начинать. — Первое время все мои доклады были внутри моей компании, первое публичное выступление было на Forward Swift 2016 — там я руководил шестидневными семинарами, следующими один за другим. Мне нравится делать публичные выступления, и с тех пор у меня их было множество.

Это поможет вам набраться уверенности в себе, после чего можно поучаствовать и в более крупном мероприятии. Если вы думаете, как сделать свой первый доклад, то я бы рекомендовал выбрать небольшую тему, которая вас увлекает, или, по крайней мере, в которой у вас есть опыт — с ней вы можете выступить на какой-нибудь местной встрече. Если начинать отстаивать позицию по поводу MVVM / MVC или TDD / BDD, то кто-то может с вами не согласиться, но когда вы рассказываете о своём опыте, о том, что у вас работало, а что не работало — с чем тут можно спорить? Вы можете рассказать, чему вы научились со Swift и какие сделали ошибки — доклады по этой теме всегда полезны.

Скажите, если программист хочет профессионально расти за пределами iOS, чему стоит учиться? — На вашем сайте написано, что вы работаете не только со Swift, но и с Java, C# и другими языками.

Я не думаю, что существует лучший язык, лучшая платформа или лучшая IDE. — На моём сайте об этом написано, потому что, на мой взгляд, для программиста слишком легко познакомиться с одним языком, одной платформой и одной IDE и считать, что они выбрали «самое лучшее». В своё время я занимался разработкой игр под Xbox 360, и меня поразило то, насколько красивые API сделала Microsoft. Если вы потратите время и на Python, и на C#, и на JavaScript — да-да, JavaScript — вас обязательно что-нибудь привлечёт в каждом из этих языков, — благодаря этому вы вырастете как программист. Некоторые из них я потом портировал под Linux при помощи Python и OpenGL — мне хотелось, чтобы другие тоже могли с ними поработать.

Но по меньшей мере познакомиться с ними стоит — поинтересуйтесь, что так будоражит людей, которые бурно обсуждают React, это даст вам новые силы для работы со Swift и поможет совершенствовать себя. Это не значит, что надо быть специалистом во всех областях, которые я сейчас упомянул — я не уверен, что это вообще возможно.

— Были ли вы когда-либо раньше в России?

Я был в Москве, Великом Новгороде и Санкт-Петербурге, и на меня произвела большое впечатление архитектура в этих городах. — Да, и мне очень понравилось. К тому же мой интерес подпитывал тот факт, что оттуда родом мой любимый автор — Владимир Набоков.

И, как ни удивительно, его доклад будет про Swift (а конкретнее — о том, как с помощью определённых ограничений начать писать код умнее и быстрее). Скоро Пол окажется в России снова: он выступит на нашей конференции Mobius (Москва, 8-9 декабря). А кроме этого, на Mobius будет и много другого для мобильных разработчиков — как iOS, так и Android.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть