В родных Калинковичах пальцем на Андрея Загальского на улице не указывают — хотя в местной газете писали, что он и есть «земляк, который недавно получил премию в $1200 от «Яндекса». Разработчик создал навык для «Алисы», который позволяет любому желающему учиться игре в шахматы.
Андрей не собирался становиться программистом: после школы вообще поступил в транспортный вуз, но через год бросил и несколько лет работал на стройке. Dev.by он рассказал о том, как занялся разработкой, почему заинтересовался «Алисой», и сколько ещё идей для голосового помощника зреет у него в голове.
«Если по баллам не пройду, может, „физрук“ меня протолкнёт»
— У меня нет профильного образования, я — самоучка: разработкой сайтов начал увлекаться ещё в школе, когда весь интернет был через dial-up.
Всё свободное время в старших классах проводил на разработчицких форумах: читал, что пишут пользователи, переспрашивал, если что-то было непонятно; и много экспериментировал с конструкторами, например, на narod.ru (он, насколько я помню, принадлежал «Яндексу») — там же были и мои первые сайты.
Потом уже, года через три, после возвращения из армии познакомился с системой управления Joomla, а затем перешёл на Bitrix — и последние лет 7-8 делаю сайты только на этой платформе.
Вам интересно, почему я не получил техническое образование. Если честно, веб-разработка была просто хобби: никто, да и я сам не воспринимал это увлечение всерьёз. Я не был уверен, что в наших вузах этому учат — а слово «программист» почему-то всегда всплывало в привязке с 1С.
Когда пришло время поступать в университет, я решил подать документы в БелГУТ — просто Гомель был ближе всего к Калинковичам. Выбор, как мне тогда казалось, у меня был небольшой: «тех-» и «пед-» отпали как-то сами собой, остался транспортный университет. Все вокруг говорили, поступить туда нереально, отговаривали, а меня это только подзадоривало — я был уверен: нет, ребята, вот меня точно возьмут.
Вступительные экзамены в вузы к тому времени как раз отменили: абитуриенты поступали по результатам ЦТ — и у меня был хороший балл. А для верности я приложил все свои дипломы: я и олимпиады городские по математике выигрывал, и соревнования по шахматам. Думал, если по баллам не пройду, может, «физрук» меня протолкнёт.
«30 долларов за сайт — на стройке за ту же сумму я несколько дней вкалывал»
Я проучился в БелГУТ один год — и бросил. Молод был, неразумен, наверное. Вернувшись из армии, устроился на стройку разнорабочим.
Параллельно продолжал заниматься сайтами для себя, и много учился самостоятельно — навёрстывал. В какой-то момент нашёл на фриланс-бирже заказ — и решил: ну, почему не попробовать?! Деньги сулили небольшие — насколько помню, всего 30 долларов, — но ведь на стройке ровно за ту же сумму я несколько дней вкалывал. А тут собрал сайт на каком-то шаблоне за 4 часа.
Наверное, мне повезло: после того фриланс-проекта я начал сотрудничать со студией из Владивостока. А там была такая текучка проектов — работы было выше крыши. За разработку сайта платили по 100 долларов. В Калинковичах многие столько за месяц получали.
Признаюсь, со стройки я не сразу ушёл, ещё какое-то время продолжал там работать, а разработкой сайтов лишь подрабатывал — мне казалось, что ещё не готов был, не накопил критической массы знаний и опыта.
Сейчас на моем счёту несколько десятков проектов. В основном я занимаюсь веб-программированием, делаю сайты с различными бизнес-системами — бронирования, например, — а также мобильные приложения. Последние 4-5 лет работаю в студии MLife Media, она находится в Мозыре.
И постоянно учусь до сих пор: технологии так стремительно развиваются — нужно изучать. Да и как лекарство от скуки эта хорошая привычка помогает.
Моих работодателей не интересует, есть ли у меня диплом о высшем образовании: я работаю в частной компании, им важен лишь мой опыт. А свою работу я делаю хорошо.
«Навыки нужны были мне, чтобы автоматизировать рабочие процессы»
Когда поднялся хайп вокруг чат-ботов — о них везде писали, все вокруг «баловались» — я тоже начал ради самообучения делать свои для Viber, Telegram и Vkontakte: например, с расписаниями автобусов.
А потом увидел на «Хабре», что «Яндекс» открыл для разработчиков «Алису». Это была ещё бета-версия, она даже не была вшита в браузер — но её можно было брать и тестировать. И я переделал некоторые чат-боты для «Яндекса»: всё-таки особого ума это не требовало, потому что голосовые помощники — в принципе те же чат-боты, только ввод осуществляется не текстом. С этого всё и началось…
— Сколько всего навыков для «Алисы» создали?
— Я не подсчитывал, штук 6-8. Какие-то навыки нужны были мне самому, чтобы автоматизировать рутинные рабочие процессы: например, постановку задач. Я разработал навык, который интегрируется с системой Bitrix 24, — и соответственно, я могу ставить ей задачи голосом. Этот навык открыт для всех желающих.
Есть причины, по которым я оставляю свои разработки Open Source: нанимать персонал, чтобы протестировать что-то, — дорого, а тестировать всё самому — долго. Но ты выкидываешь навык Open Source — и пользователи сами быстро сделают эту работу за тебя. Это мой лайфхак!
«Когда ставлю задачи голосом, коллеги переглядываются и улыбаются»
— Какие ещё есть полезные навыки для «Алисы» создали?
— Я уже говорил, что делал чат-боты с расписанием движения транспорта в Калинковичах: я адаптировал их под навык «Алисы».
Но он не пользуется популярностью. Моё мнение таково: чтобы голосовые помощники окончательно вошли в нашу жизнь, должно пройти время, а возможно — даже понадобится, чтобы сменилось целое поколение. Посмотрите вокруг: если дети активно пользуются такими инструментами, то взрослые на них смотрят настороженно. И даже когда я на работе ставлю задачи голосом, коллеги иногда переглядываются и улыбаются.
Сейчас активное развитие технологий только началось: я думаю, свой вклад в развитие голосовых помощников ещё внесут «умные дома». А пока голосовые помощники — это больше игрушка. Но всё в руках бизнесменов и разработчиков: если будет появляться всё больше и больше каких-то интересных возможностей, которые можно было бы внедрить, думаю, они будут пользоваться популярностью. И голосовым помощникам это пойдёт только на пользу.
— Навык «Шахматные задачи» был создан, потому что вам нужен был достойный соперник?
— Нет, совсем не поэтому. «Алиса» не всегда показывала изображения, а когда такой функционал выкатили, — у меня сразу появилась идея для нового чат-бота. Я импортировал приложение с шахматными задачами в «Алису», чтобы этот функционал испытать.
Передо мной стояла технически сложная задача: дело в том, что шахматные ходы люди могут называть по-разному, один скажет: «Алиса, походи конём с клетки А1 на С2», а другой походит так: «Конь С2» или просто «А1 — С2». И всё это должно хорошо определяться голосовым помощником. Плюс сама «Алиса» не всегда корректно распознавала некоторые ходы: например, ход «А5» голосовой помощник воспринимает как слово «опять».
Таких нюансов оказалось немало: я и нейросети пробовал использовать и много чего ещё — но результат меня не устраивал. Сейчас в «Шахматных задачах» используется довольно удачное решение, построенное на справочниках: так что точность достигает 95%.
Потом уже ребята из «Яндекс» написали мне в письме, что рассматривают меня в качестве претендента на «Премию «Алисы» — и это был сюрприз! Ну, я посидел пару-тройку ночей — привёл «Шахматные задачи» в удобный вид, исправил все «костыли». Так навык ушёл на конкурс.
— Сколько человек пользуется навыком «Шахматные задачи» для «Алисы»?
— Статистика появилась, наверное, месяца 3 назад, с тех пор навык попробовало около 13 тысяч человек. Сейчас, судя по рейтингам, «Шахматные задачи» используют 3 тысячи человек — это те люди, которые решили хотя бы одну задачу.
— Как часто сами используете этот навык?
— Если честно, мне не интересно решать эти задачи: это навык для новичков, а я хорошо играю в шахматы. Мой восьмилетний сын пользовался им одно время, но сейчас он забросил шахматы. «Нет желания», — говорит, а заставлять же не будешь.
«Чем раньше сюда зайдёшь, как разработчик, тем лучше»
— Можете сравнить «Алису» с Siri в русскоязычном сегменте?
— Я не сталкивался с разработкой под другие голосовые помощники. Насколько я знаю, у Siri есть какой-то SDK, который можно интегрировать в свои приложения, но порог вхождения очень высок, начиная с того, что для работы требуется Macbook, которого у меня нет. Эта тема для меня закрыта!
Я скачивал голосовое приложение «Дуся» и пробовал работать с ним, но понял, что распознавание голоса в «Алисе» сделано намного лучше. Думаю, что даже лучше, чем у всех существующих на данный момент платформ.
— Пытались ли вы комбинировать в одном запросе несколько разных навыков для «Алисы»?
— В принципе моя библиотека позволяет объединить несколько навыков в один, но я не уверен, что он «выстрелит». Сейчас я работаю над городским порталом Мозыря: зайдя на него, человек может узнать новости, посмотреть курсы валют, прогноз погоды и расписание автобусов, а также найти организацию в справочнике, — технически всё это возможно подключить для «Алисы». Но я вижу, что аудитория больше пользуется «точечными» навыками: то же расписание автобусов будут юзать лучше, чем общий навык, который вмещал бы в себя всё и сразу.
— Навык, который позволял бы свериться с расписанием транспорта в любом городе мира, был бы куда популярнее, чем такой же для Калинкович…
— Да, и сделать его было бы можно. Но есть нюансы с получением расписаний от тех же автопарков.
Расписания движения автобусов в Калинковичах у меня никогда не было: я звоню им примерно 2-3 раза в месяц и прошу выслать, мне всё обещают-обещают, кормят завтраками, но воз и ныне там. Время, что забито у меня в приложении, взято с табличек на остановках.
— Вы обошли все остановки и сфотографировали таблички?
— Нет, мне как человеку техническому нужно было только снять табличку на первой и конечной остановках, затем я узнал расстояние, взял среднюю скорость движения и вычислил примерное время. Для точности я просил потом пользователей «выслать фотки» — в принципе, мои расчёты совпали с данными, указанными на табличках.
— Один из наших героев отмечал, что «в американском магазине скиллов для Alexa уже есть приложения с сотнями тысяч пользователей», а у «Алисы» стор пока что хиленький»…
— Я думаю, это временное явление. Мне кажется, такие технологии будут очень хорошо развиваться в будущем. Поэтому чем раньше сюда зайдёшь, как разработчик, тем лучше.
— Вы видите своим будущим работу с навыками «Алисы»?
— Я верю, что это очень перспективное направление: со временем многие вещи трансформируется в голосовые интерфейсы. Я не удивлюсь, если через лет 5 на сайтах для ввода комментариев будут повсеместно использоваться исключительно голосовые помощники.
Я также думаю, что многие разработчики со временем будут зарабатывать с помощью «Алисы»: создание навыков как бизнес-продуктов станет для них основной темой. А владельцы крупных сервисов, маркетплейсов будут использовать голосовые помощники для привлечения своей аудитории. Эту фишку, мне кажется, можно сделать хотя бы «ради понта» — у нас есть, а ни у кого больше нет.
«После работы не спешу в бар на Дайкири, захожу в шахматный клуб»
В Мозыре есть студии веб-разработки, но в основном тут работают ипэшники, которые делают сайты на шаблонах. В Минске — понятно, рынок разработки более развит: столица всё-таки. У меня были мысли переехать туда, но давно; да и предложения не то чтобы прельщали — всё та же разработка сайтов, то есть рутина, которая порядком поднадоела.
Возможно, я достиг какого-то предела, двигаться дальше которого в веб-разработке мне не интересно. Но я стараюсь уже отходить от неё в сторону создания сервисов. И если честно, не вижу смысла срываться с «теплого» места и тащить семью в съёмную квартиру в Минск — чтобы делать те же сайты в столице.
У меня есть идеи для мобильных игр, для приложений — буду их воплощать. А из какой точки мира — разве это так важно?.. У меня есть знакомые, которые во Вьетнаме и Таиланде под пальмами работают. А мне здесь хорошо: тут у меня семья, дом свой — всё, что нужно. И ради денег я в Минск не поеду — не такие там космические зарплаты, чтобы бросать всё, что я люблю. Потом, там же я буду работать на «дядю», и на личные проекты времени совсем не останется. А здесь совсем другая ситуация.
В Калинковичах всё не так, как в столице: здесь нет «тусовки», нет неспящей Зыбицкой — на весь город, может, 5 кафешек и наберётся. Но мне это и не нужно: мне всё-таки тридцать лет, и у меня семья, два сына. После работы я не спешу в бар на бокал Дайкири, захожу иногда в шахматный клуб, чтобы отвлечься от посторонних мыслей. А друзей принимаю у себя дома.
Где можно здесь спустить за ночь айтишную зарплату, я даже представить себе не могу: я в основном средства в ремонт вкладываю, технику в дом покупаю.
Знаете, мне нравится моя работа: если меня не отвлекать, я, наверное, могу неделями не вылезать из-за компьютера — и мне по кайфу. Было бы что делать только.
Первоисточник: https://devby.io/news/programmist-iz-kalinkovichei