Это будет история из 2018 года, когда у Apple был большой офис в Москве, где иногда проводились закрытые мероприятия для разработчиков, на одно из которых меня компания пригласила лично. Приложулю я сделал, можно сказать, в одного (она была про путешествия), но если бы я пошел устраиваться разработчиком на хотя бы миддла в мобильную контору, то врядли бы меня наняли, ха ха.
Но все же оказался я там по делу и заслуженно (графики будут), поэтому давайте обо всем по порядку.
Обозначение проблемы
Краткая предыстория звучит так: у меня есть два самых больших увлечения в жизни — это программирование (не как спорт, а как инструмент) и путешествия. И с помощью первого мне хотелось порешать свою боль со вторым, а именно — если ваш формат отдыха это не олл инклюзив с трансфером в аэропорту (ничего не имею против него), а максимальное количество передвижений, то вам наверняка знакомо насколько вымораживает подготовка любой более-менее сложной поездки.
И если для поездок по Европе или Юго-Восточной Азии наверняка можно позвонить какому-нибудь своему другу, то для Йоханнесбурга или Каракаса таких друзей уже так просто не найти.
Я безумно люблю общественный транспорт, потому что когда ты залетаешь, например, в тарахтящий джипни Панамы с пухленькими метисами вокруг, то, без шуток, погружение в местный быт поднимается на другой уровень.
Это сильно не для всех, и я это прекрасно понимаю, но такая странная любовь еще сильнее усложняет конкретно мою подготовку к таким поездкам.
Создание сайта мечты
Мне всегда припекало если не решить задачу такой подготовки, то максимально ее облегчить, поэтому вооружившись желанием и закатав рукава, я взялся за дельце.
Цель этой статьи не полное описание того процесса (он тянет на отдельную статью), а все же описание вечеринки от Apple (спойлер: она была крутая), поэтому я сокращу историю до просто детального описанием важных вех, чтобы было понятно, почему и как я туда все же попал.
По итогу получился туристический сайт, на котором при помощи технических хитростей, капельки магии и парочки нанятых редакторов на фрилансе, удалось попасть в достаточно жирненький класс низкоуровневых поисковых запросов, которые в итоге смогли как дать трафик по этим запросам, так и подтянуть в целом сайт до посещаемости примерно в 2000-4000 человек в сутки.
Денег на сменяющихся редакторов было потрачено много (собственных денег, имеется ввиду; для бизнеса это были сущие копейки, а сейчас я бы потратил на них вообще бы баксов 20 — стоимость подписки на одну известную LLMку, лол), вложено любви и собственных разработческих усилий тоже много, но на именно продвижение потрачено примерно 0 рублей.
Настоящий self-made, ну.
И да, это все развивалось исключительно как хобби, на которое тратилось по несколько часов в день. Партнерки, конечно же, на сайте я повесил, но в сторону инвесторов и реального стартапа я не думал прям совсем, я и без того чувствовал себя неплохо.
Вообщем, сайтик начал работать и даже пусть неидеально, но начал помогать в решении поставленной изначально задачи. Следующим логическим шагом стало заворачивание всей инфы в приложение, чтобы все было доступно офлайн, потому что часто эта инфа нужна именно тогда, когда интернета нет.
Тогда я совершенно ничего (прям совсем) не знал про мобильную разработку, поэтому понимал, что тянуть в одного эту историю не выйдет и предложил другу вписаться в эту тему с разделением 50/50 (с меня все, с него разработка). Друг был ios-синьором.
Потратив вместе примерно полгода и не добившись примерно ничего (потому что разработка двигалась ооочень медленно, ибо для него это тоже было хобби), я вооружился в отношении результатов известным мемом с микки-маусом и решил, что сделаю все сам.
Создание приложения мечты
Всю взрослую жизнь я программировал и проектировал веб, ну и изредко касался тонкого десктопа и железок, а про мобильную разработку не знал вообще ничего. Но это меня совершенно не пугало, потому что начинать с нуля больновато, но я искренне считаю, что программирование — это такое «состояние души», и если ты умеешь делать это хорошо и глубоко понимаешь что именно стоит за буквами, то переехать на другой язык/фреймворк/архитектуру вопрос лишь некоторого времени и желания.
Hello world получилось написать быстро, но осознать специфику мобилок и принципы — на все это добро ушло месяца два. Где-то на половине пути я решил посмотреть, есть ли готовые наработки по офлайн картам и обнаружил, что один известный холдинг выложил аж целиком одно из самых популярных приложений такого рода в оперсорс.
Я им пользовался, внутри как пользователь хорошо знал, но представления о прекрасном для него были немного другие, поэтому решено было отфоркаться, все перекрасить и встроиться в него.
Здесь открылся портал в Нарнию, потому что пришлось разобрать монструозное количество сложнейшего кода, написанного на обычном и легаси Objective-C и с начинающимся переходом на Swift, было крайне много низкоуровневой специфики, стороннего софта и особенностей сборки конкретно этого проекта.
Скорее всего, мой написанный код был еще хуже любого написанного там, лол, но у него было две супер силы — он работал, решал задачу и делал оба действия быстро.
Приложение ушло в народ.
Заветное приглашение из ниоткуда
Я сильно переделал UI, перерисовал с фрилансовым иллюстратором все изображения внутри, добавил маскота на все важные действия — жутко милого котика, добавил офлайн инфу о городах, и для топовых городов подборки топовых мест с их описаниями (и сразу с геоточками на офлайн-карте). В вебе было api, на которое ходило приложение и получало такие подборки, а затем любую можно было скачать себе в телефон, чтобы пользоваться офлайн.
На сайте сделал уведомление, что всегда можно скачать приложение с офлайн картами и аналогичной сайту инфой внутри.
И приложение начали скачивать.
Им начали пользоваться, и даже ставить ему пятерки.
Кажется, это вполне неплохой результат для приложения, которым занимались два человека на полставочки, которое финансово не продвигалось и у которого есть явная «сезонность» (люди не путешествуют весь год). Но здесь так же учтена и андройд-версия, которую я так же потом сделал, ну потому что надо было, ну.
Чуть позже была опробована «монетизация»: некоторые подборки становились доступны для скачивания за 30-50 рублей. Задачи заработать не было, я умею в математику и прекрасно понимал, какие объемы продаж нужны, чтобы это хотя бы оплатило хостинг (у меня нафаршированный ds) и вышло за рамки «прилетела выплата за месяц, можно сходить в бар».
Задача была максимально экспериментировать и разобрать всю внутреннюю механику, и она была выполнена с блеском.
Все как-то шло своим чередом, редактор в админке составляла и обновляла подборки, иногда я что-то тюнил, но вот однажды свежим осенним утром я̶ ̶в̶ы̶г̶о̶р̶е̶л̶(̶л̶о̶о̶л̶)̶ мне позвонили с лондонского номера, и как истинный интроверт, я его не поднял.
Но они звонили еще и еще, я не поднимал, а чуть позже все-таки обнаружил заветное письмо.
Конечно же, идти было надо. И я пошел.
Само мероприятие
Вот обозначенный план мероприятия и давайте пройдемся с моими комментариями по нему.
10:00 a.m. • Check-in
10:30 a.m. • Welcome
10:35 a.m. • Creating Great App Experiences
11:55 a.m. • How Apple Can Help
12:05 p.m. • Succeeding On The App Store
12:30 p.m. • Lunch
1:30 p.m. • Consultations
5:30 p.m. • Workshop Close
10:00 a.m. • Check-in
10:30 a.m. • Welcome
Офис находился прямо напротив Кремля и (судя по интернету) занимал около 4 тыс. квадратных метров. Его весь не показывали, все мероприятие было зажато в небольшом пространстве: небольшой ресепшн, уголок с кофе/чаем и две комнаты, общей вместимостью человек на 25 каждая.
Примерно столько же разработчиков и было на мероприятии.
10:35 a.m. • Creating Great App Experiences
Почти полтора часа с яркими презами о том, что Apple считает по настоящему крутым в плане UX и на что ставит ставку на следующие годы. Самые большие блоки были следующие: AR/VR, мобильные ML-инструменты и 3D-эффекты в играх.
11:55 a.m. • How Apple Can Help
12:05 p.m. • Succeeding On The App Store
Получасовой урок о том, как работает команда модерации, как попасть в фичеринг (продвижение вас самим аппстором), как оформлять и упаковывать приложения, нюансы внутреннего алгоритма поиска и этапы формирования списков из разряда «Топ-10 приложений таких-то» или «Приложение дня».
Чтобы примерно передать уровень деталей, вот риторический вопрос: какое приложение AppStore покажет первым при одинаковом поисковом скоринге двух проектов, у одного из которых много пятерок и отзывов, а у другого их меньше, рейтинг хуже, но есть платные подписки? Ответ не так очевиден, как кажется.
Фактически, это была секция про ASO+ (ASO это как SEO, но для мобилок), которая была жутко интересна как сама по себе, так и тем, что после нее был обед. Я не шучу, это был огромный плюс, потому что следующий час можно было за обедом спокойно обдумать все сказанное и подготовиться к самой крутой части мероприятия.
12:30 p.m. • Lunch
Кормили абсолютно ок, но не звездно. Несколько горячих, закуски и канапе, кофе-чай и тортики. Для бесплатно — то, что надо.
1:30 p.m. - 5:30 p.m.• Consultations
Четыре часа свободного общения с экспертами!
Формат был идеален. Было несколько заморских экспертов из разных частей экосистемы Apple, а именно: технарь, продуктолог, эксперт по выходу на рынки других стран, эксперт в продвижении и ASO, дизайнер и команда русскоязычных редакторов. У каждого эксперта был отдельный стол, по мере освобождения очереди можно было садиться к любому и задавать любые вопросы и получать честный развернутый ответ.
Эксперты уже были поверхностно ознакомлены со всеми присутствующими проектами, что облегчало, прости господи, онбординг и можно было сразу переходить к делу. Можно было прям открыть приложение и совместно обсудить какие-то вещи.
Время с каждый экспертом было ограничено только общим таймингом мероприятия, поэтому завершив с одним можно было перейти к другому, после чего снова вернуться к прошлому с уже новым возникшим вопросом. В итоге все присутствующие лавировали между столами и экспертами, прокачиваясь во всех интересующих вопросах от первоисточника.
Если для чего-то точно и стоило делать свое приложение, то, блин, для вот этого. Это было очень полезно, потому что из первых рук все самое интересное и без купюр.
И это тот случай, когда зашел мобильным джуном, а вышел экспертом, ха ха.
Было круто.
Выводы
Я не знаю, насколько это массовое и уникальное мероприятие. Возможно, такое проводилось каждый день и регулярно отбирались разработчики и команды на прокачку, тогда ценность моего посещения такого мероприятия для общего социума немного снижается.
Фото там просили не делать, да как-то и не хотелось, атсмофера была про другое.
Я узнал очень много интересного, зайдя туда как инди-разработчик с проектом, к которому практически никогда не относился серьезно. Для меня весь этот движ с самого начала был интересен сам по себе, был хобби (у меня все ок с основной работкой) и никогда не был «идеей стартапа на миллиард», хотя, возможно, из него и можно было вытащить сильно больше, чем было проделано.
За все время, что я этим занимался — я, впринципе, поездил всюду, где хотел, вплоть до блицкриг-кругосветки, поэтому первоначальная задача была с блеском решена. И где-то через полгода после мероприятия мой фокус окончательно сместился с этого проекта, поэтому он был отпущен в вольное плавание: как-то работая, что-то там принося. Я перестал за ним следить. Потом случился ковид, который сильно подсушил всю туристическую отрасль и активность упала совсем драматически.
Продлевать ту лицензию разработчика и восстанавливать приложение после ковида в аппсторе я не стал, потому что следить за актуальностью всей инфы уже совершенно нет желания. Но, может быть, по ностальгии и восстановлю, все же там несколько тысяч пятерок и под несколько сотен позитивных отзывов. Сайт работает, но за его актуальностью и за статой я уже тоже не слежу, закрывать нет смысла, ибо многое там так и осталось актуальным, ну уж точно сравнимо с тем, с чем до сих пор конкурирует в поисковой выдаче.
В процессе всего этого действия от идеи и до окончания я получил феноменальное количество разностороннего опыта, самый плюс которого — он останется со мной навсегда на всех других начинаниях.
Я не хочу называть сам проект: во-первых, у меня не хватает кармы, чтобы упоминать внешние проекты, а во-вторых, суть статьи совершенно не про то.
Она про то, что если захотеть сделать крутую штуку, вложить в нее много сил и мыслить нестандартно, то все получится. Если гореть идеей, а не денежными знаками, то в процессе можно получить много наиглубочайшего удовольствия.
А если не гореть идеями, не хотеть делать крутые штуки или если не вкладывать в них душу, то тогда зачем мы вообще здесь собрались? ツ
P.S.: Если вам зашло, то предлагаю еще одну мою околопутешественную тему, но уже на стыке с AI и ML:
Приключение SAM в Японии или как компьютерное зрение видит гейшу
и совсем без путешествий:
Ключевой навык успешной карьеры в ИТ или 8 заблуждений на проектах
Спасибо!