«Планирую во время работы продолжать учиться»
Как сделать приложение для поиска людей в лесу, зачем создавать проекты на стыке областей, как Minecraft может разбудить интерес к программированию и почему школьные олимпиады скучные, рассказал в интервью Indicator.Ru Ярослав Капустин, 17-летний программист, разработчик приложений и победитель хакатонов.
— Ярослав, как давно ты участвуешь в проектных конкурсах и хакатонах?
— Я начал заниматься этим в прошлом году, на проектном конкурсе «Балтийский», в котором, надо сказать, у меня ничего не получилось, наверно, потому, что это был мой первый опыт. Перед тем где-то более трех лет я занимался дома, сам, результаты никому не показывал. Зато сейчас я готовлю полноценное портфолио, где будут собраны все плоды моего творчества. В этом учебном году первое, что я решил делать, — участвовать в Олимпиаде НТИ. Сначала я съездил на поисково-спасательный хакатон, там завоевал первое место, в одиночку разработав приложение, которое позволяет поисковикам отслеживать группу людей на карте в условиях плохого Интернета, если говорить простым языком.
— Каково будущее твоего приложения после хакатона? Продолжил ли ты работать в этом направлении?
— Уже тогда ребята из «Лизы Алерт» и Mail.ru поставили задачу «со звездочкой»: они хотели, чтобы мы решили проблему полностью, чтобы создали способ, который позволил бы различным мобильным устройствам соединиться друг с другом, тем самым сформировав сеть и позволив передавать информацию при полном отсутствии Интернета или мобильной связи. В Новый год я анонсировал свое новое приложение — отдельный продукт, который можно назвать продолжением этой хакатонной истории.
— Расскажи про него подробнее, пожалуйста. В чем идея, для кого предназначается продукт, на какой стадии разработка?
— Это может быть полезно не только спасателям, но и путешественникам или даже военным. Довольно часто происходят ситуации, когда оставаться на связи нужно группе людей, причем связь должна быть быстрой, а передаваемая информация — доступной всем (или же наоборот, чтобы несколько людей на одном канале получали разную информацию друг от друга). И все это — в отсутствие Интернета и мобильной связи. Проблема заключалась в том, что та же рация не может этого сделать, ведь она работает в двух режимах: либо «слушает», либо передает. Я нашел выход в автоматизации процесса передачи сообщений. Вся схема выглядит так: на мобильное устройство пользователя устанавливается приложение, и с его помощью можно передавать сообщения на другие устройства с этим приложением в его поле действия.
А чтобы все это работало, к нашему смартфону, планшету или ноутбуку через аудио-разъем подключается рация. Для этого я сделал некий аналог наушников, к которому добавилось специальное устройство, способное активировать и деактивировать рацию в момент передачи и получения сообщения. Эта технология как бы создает «комнаты»: рация работает на одной частоте, а мы, благодаря алгоритму, делаем так, чтобы на одной частоте оказалось несколько независимых «комнат», в которых могут общаться люди независимо от остальных, не слыша, что происходит в других «комнатах». Помимо этого, я добавил в свое приложение поддержку сторонних скриптов, дополнений, это теоретически может очень расширить его функционал. Например, настроить отправку текущих геолокаций, что очень важно для спасателей.
В принципе, это сильно пересекается с тем, что я сделал на хакатоне. Приложение работает на доступность, дешевизну, скорость развертывания и широкий функционал. Пока есть и минусы, например качество связи – иногда сообщение может дойти до адресата побитым, поэтому передавать зашифрованные сообщения практически невозможно.
— Ты продолжаешь работать без команды или наставника?
— Да, над этим приложением я тоже работаю один, продолжаю все делать сам.
— После завершения хакатона «Лиза Алерт» предлагала победителям пройти стажировку у них. Как ты отреагировал на это предложение? Хотел бы ты продолжать свою работу под чьим-то руководством, сотрудничать с компаниями, привлекать финансирование?
— Мне предлагали стажировку, но с условием, что я буду совершенствовать их готовое приложение. Если честно, мне это не так интересно, да и просто нет времени. Сейчас мне в первую очередь нужно закончить свои проекты, которые помогут мне с поступлением. А вообще, я бы с радостью поработал под руководством какой-то компании, лишь бы они были согласны предоставить мне ресурсы и хотя бы какую-нибудь свободу творчества, в разумных рамках, конечно. Но пока я не уверен, как воспримут меня компании с такими идеями, да еще и в таком возрасте. Думаю, всему нужно время. А в будущем, конечно, хотелось бы привлекать финансирование под свои разработки. Они у меня касаются далеко не только связи, кстати говоря. Этот проект, про который я вам рассказал, — скорее побочный. Меня интересуют проекты на пересечении биологии, химии и программирования, искусственный интеллект, создание настоящей виртуальной реальности. Текущих проектов сейчас у меня примерно пять или шесть. Громко звучит, но я бы сказал, за ними стоит будущее. Наверное.
— Закономерный вопрос: с чего все началось? Как давно и каким путем ты пришел в программирование, начал разрабатывать собственные проекты, кто тебе помогал?
— Сложный вопрос. Думаю, все началось с Minecraft (компьютерная игра — прим. Indicator.Ru). Просто играть мне никогда не было интересно, я стал создавать серверы, площадки. Меня тогда интересовала мобильная платформа, которая только-только зарождалась, и для нее еще не было создано ничего масштабного. Я довольно быстро разобрался в этой теме, в какой-то момент мои серверы даже стали популярны. Потом мне снова стало скучно, и настало время идти дальше. Тогда, в седьмом классе, я пошел в кружок заниматься программированием. Первым моим языком был Паскаль, и, надо быть честным, его я так и не понял (то ли я еще тогда не дорос до этого, то ли так преподавали, ну или вообще Паскаль не лучший язык для начала обучения). Тогда с преподавателями мы делали что-то на уровне «посмотри и повтори». Но я понял «фишку», и это стало главным. Через какое-то время я попытался поступить в андроид-клуб, но туда меня не захотели брать, подумали, что я не справлюсь. Я обсудил эту ситуацию с мамой, она всегда принимала большое участие в том, чем я занимаюсь. Она сказала — ничего страшного, возьмем тогда репетитора. Мы так и сделали. После этого где-то два месяца я занимался с преподавателем языка С++. Я получил основы, понял, что у меня получается. И дальше пошло уже чистое самообразование в сфере программирования. Делал сам какие-то небольшие программы, они были довольно сложными, но я это воспринимал как просто наращивание опыта.
— Что тебе дает твое увлечение, что тебя мотивирует? Какие эмоции ты испытываешь, работая над проектами?
— Для меня всегда было важным решать какие-то реальные, жизненные проблемы. Это отдельное удовольствие, которое трудно объяснить, когда мечты становятся частью реальности. Меня всегда привлекали грандиозные идеи, способные изменить мир, но я понимаю, что для того, чтобы их реализовать, нужно начать с чего-то проще. Все, чем я занимаюсь сейчас, это лишь детали на пути к тем суперкрутым проектам, которые уже есть в моей голове и реализация которых принесет мне настоящую радость. Вот такая многоходовочка.
— А как обстоят дела со школой, трудно ли совмещать работу над проектами мечты с домашними заданиями?
— Я всегда понимал, что школа нужна, она позволяет получить минимальный объем информации, который необходим для того, чем ты хочешь заниматься. Впрочем, школа всегда давалась очень тяжело, причем не только мне, но и моим родителям. Сейчас я уже не особо зацикливаюсь на оценках: что нужно сделать, я делаю, но если понимаю, что это займет слишком много времени, то предпочитаю не заморачиваться.
— Ты сейчас в 11 классе, наверняка полным ходом идет подготовка к поступлению. Какие планы на ближайший год, где хочешь продолжить учиться и что для этого нужно?
— Я думаю, что это будет все-таки ИТМО. Потому что, насколько я знаю, там возможен упор на прикладную проектную деятельность. Сейчас самая большая проблема для меня — это ЕГЭ. Я правда не знаю, что будет. Я буду сдавать информатику, профильную математику и русский. Я очень невнимательный. Почему мне еще нравится заниматься программированием, так это потому, что там есть возможность несколько раз что-то протестировать и найти ошибку. Я очень быстро нахожу ошибки, но я практически всегда их делаю. То же самое и с ЕГЭ — еще не было исключений из этого досадного правила с ошибками, хотя я и знаю, как решаются все эти задания. Мне нужно набрать как минимум 60 баллов, чтобы попасть в ИТМО через их конкурс ИТМО Stars. Еще вариант поступления — через олимпиаду НТИ. И там, и там нужны готовые проекты и, конечно же, планы на будущее. Простые олимпиады, Всероссийская олимпиада школьников мне совсем не нравятся, да я их просто и не могу написать, я устал от этих школьных задачек, скучных и оторванных от реальности.
— А как ты считаешь, нужно ли в школе уделять больше внимания проектной работе, нацеленной на реальные проблемы?
— Я считаю, что работа над проектами будет успешной, только если она идет от души и по собственной инициативе. Каждый должен делать то, что он хочет делать. Заставлять кого-то делать что-то просто бессмысленно.
— Планируешь ли ты продолжать во время учебы в вузе заниматься разработками?
— Я бы даже сказал, я планирую во время работы продолжать заниматься учебой.
— Если немного помечтать и представить, что будет через десять лет, какие перспективы перед собой ты видишь? Как будет продолжаться твоя работа?
— Сейчас я думаю, что реализация всех моих идей займет не так уж много времени, это как раз и будет, наверное, через десять лет. Если все сложится. Что будет дальше – загадывать трудно. На самом деле, сейчас поток моих идей для разработок немного утих, поскольку у меня нет такого важного фактора успеха, как команда. Иногда даже желания работать нет. Чтобы начать что-то делать более активно, нужны сообщники. Это позволяет прочувствовать атмосферу работы, и, например, какую-то работу, которую один я мог бы растянуть на несколько месяцев, сделать за 24 часа. Вот почему мне так нравятся хакатоны: они дают заряд работоспособности в ограниченном времени. Возможно, в университете я найду людей, которым будут интересны мои идеи, с которыми мы станем командой и будем заниматься креативом.
Автор — Злата Гиренко
Понравился материал? Добавьте Indicator.Ru в «Мои источники» Яндекс.Новостей и читайте нас чаще.
Подписывайтесь на Indicator.Ru в соцсетях: Facebook, ВКонтакте, Twitter, Telegram, Одноклассники.