Интервью Дениса Быструева (далее «ДБ»), руководителя
образовательных программ Apple в 2011 – 2017 годах, члена жюри
и ментора образовательного трека Хакатона «Проектирование
Школьного Онлайн Коворкинга (ШкОльКо)»
MXS: Денис, здравствуйте. Сегодня мы говорим с Вами о
школьном коворкинге, о хакатоне «ШкОльКо» и о том, какие
удивительные вещи, в связи с этим могут быть сделаны в рамках
хакатона. Вы выступаете одним из инициаторов заданий для
участников хакатона. И, как я уже слышал ранее, это связано с
дополненной реальностью.
ДБ: Здравствуйте, Максим. Да, ровно так.
MXS: Расскажите, пожалуйста, подробнее о вашей концепции
Share.AR и о том, что можно сделать в рамках хакатона и каких
результатов достичь.
ДБ: Дополненной реальностью я занимаюсь достаточно давно, с
тех пор как Apple (это было, наверное, в 2017 году) объявил о
поддержке AR в своих устройствах. Конечно, дополненная реальность
существовала и до этого. Достаточно вспомнить игру Pokémon Go,
выстрелившую во всём мире в 2016 году, да и до этого были примеры.
Но Apple сделал дополненную реальность массовой. Благодаря тому,
что Apple представил фреймворк
ARKit,
iOS вдруг стала самой распространённой платформой с поддержкой AR,
так как ARKit работал на телефонах, начиная с iPhone 6s, по-моему,
2015 года.
С тех пор, естественно, технологии продвинулись вперёд, и сейчас
можно создавать дополненную реальность для разных платформ. Причём
это не только мобильные операционные системы, то есть не только
традиционные iOS и Android. Это также мобильные приложения,
например, Facebook или Instagram, или ещё какие-то приложения. То
есть, когда вы берёте в качестве основы своей дополненной
реальности не операционную систему, а, по сути, приложение внутри
любой операционной системы.
Я вёл
курс по
разработке мобильных приложений на Swift, созданный Apple, и там
мой любимый модуль был как раз про дополненную реальность.
Каждый год наши устройства становятся «умнее». Например, если
раньше мы просто накладывали 3D-модели на изображение с камеры, то
теперь уже можно распознавать людей и «вырезать» часть 3D-модели,
чтобы она не загораживала человека, стоящего перед ней. То есть
люди, находящиеся ближе к камере, будут загораживать модели,
находящиеся дальше, и наоборот, как и должно быть в реальной
жизни. Это создает гораздо более хорошее впечатление о дополненной
реальности. Если кто-то пробовал приложение IKEA, где можно
размещать мебель в комнате и смотреть, как она будет выглядеть,
то, соответственно, если вы вставали позади стола, то всё было
нормально, то есть этот стол вас загораживал. Но когда кто-то
перемещался перед столом, стол продолжал человека загораживать, и
сразу пропадало ощущение того, что это реально. Эту и другие
проблемы новые версии ARKit решают.
У меня несколько проектов по дополненной реальности выложены в
публичный доступ. В принципе, весь мой курс по разработке под iOS,
который был создан на основе учебника Apple App Development with
Swift, с ноября прошлого года лежит в свободном доступе на сайте
learnSwift.ru, и вот там,
собственно, есть модуль дополненной реальности, и есть несколько
проектов типа
развешивания
картин по стенам или
рисования
в дополненной реальности. Еще один проект – это
размещение дома на участке. Можно на реальном участке примерить дом,
посмотреть, как он будет выглядеть, какой будет вид из окон,
покрутить его, и так далее. Все эти проекты лежат свободно, есть
видео,
есть код на
GitHub, то
есть если вы хотите повторить их на движке ARKit под iOS, можно
это сделать.
Прошло какое-то время, хайп дополненной реальности немножко
отошёл, и казалось, что это будет вот такая ещё одна «фишка»,
которая, может быть, поможет, а может быть, не поможет, но, по
крайней мере, продолжит существовать. И тут у нас случился
карантин, и во время карантина мы все наблюдали, у меня дети
учатся в школе, в институтах, мы видели, как проходят эти занятия.
Какие-то лекции можно проводить удалённо, они сильно не
отличаются. Но на любых практических занятиях, когда надо изучить,
например, модель молекулы или какое-нибудь физическое явление,
одного видео недостаточно. Было бы здорово манипулировать,
передавать друг другу какие-то объекты — от учителя ученику и
обратно, между учениками — причём не в виртуальной реальности,
которая не привязана к реальным размерам, а в дополненной.
В виртуальной реальности вы не представляете реальные размеры
3D-объектов, так как их не с чем сравнить. В дополненной
реальности вы можете, находясь в разных местах, оперировать одним
и тем же объектом у вас на столе. И для тех применений, где это
важно, вы понимаете его истинный размер.
Я стал смотреть, какие существуют готовые решения. Для
онлайн-обучения много чего понаделали. Но вот именно удалённого AR
мне так и не удалось найти. Может быть, наши участники будут более
успешны в этом. Я нашёл либо удалённые решения для взаимодействия
в виртуальной реальности, либо взаимодействие в дополненной
реальности, но находясь в одной комнате.
Это когда вы, находясь в одной комнате, с разных устройств
перекидываете мячик или играете в Angry Birds, но при этом вам
нужно физически быть рядом, чтобы взаимодействовать. А такого,
когда вы находитесь в совершенно разных местах за тысячи
километров друг от друга, и при этом манипулируете AR-объектами –
такого пока мне не удалось найти. И даже если оно существует, но
тот факт, что я за день поисков этого не нашёл, говорит о том,
что, наверное, пока это решение не настолько распространено и не
настолько известно, чтобы все его начали применять. И именно
поэтому у новых решений есть шанс.
Во время чемпионата мира по футболу 2018 года я встретился с
коллегой, с которым когда-то работал в Intel (до Apple я успел
потрудиться 12 лет в Intel и 3 в IBM). Он из Мексики, живёт в
Калифорнии, приезжал к нам на футбол. Мы обсуждали стартапы, и он
рассказал, что, оказывается, ещё за 9 лет до YouTube он сделал, по
сути, аналогичный проект. Его команда даже получила финансирование
в 1,5 миллиона долларов и целый год проект пилила. Более того,
допилила, запустила – и никому тот ранний YouTube оказался не
нужен. По разным причинам. Не было ещё массовых мобильных
телефонов с 3G и LTE, умеющих транслировать видео. Для того, чтобы
закачать ролик, надо было подключать аналоговую видеокамеру через
специальную видеоплату захвата к компьютеру, записать в файл,
потом по модему всё это качать на скорости 33 килобита в секунду.
Короче, у них не взлетело. Но я помню, что, когда YouTube
запустился, основатели в качестве причины упоминали, что просто не
нашли подобного сервиса для себя. Хотя, как оказалось, такие
решения уже существовали, и про одно из них я узнал лично, хотя
раньше тоже никогда не слышал. Ровно так и происходит в любых
новых продуктах. Возможно, вы сделаете «новый YouTube», только для
AR, чтобы люди смогли удалённо общаться, взаимодействовать и
обмениваться объектами. И тот факт, что даже что-то похожее
существует, но мы с вами о нём пока не слышали, говорит о том, что
шансы есть и у прочих решений.
Я, наверное, сейчас остановлюсь. У меня ещё много что есть
рассказать, но давайте придерживаться темы...
MXS: Давайте немножко сделаем шаг вперёд. Скажите,
пожалуйста, а Вы можете назвать задачи на Хакатон? Я читал анонс,
и Вы в нём заявили три проектных направления. Можете их назвать и
буквально пару слов сказать про каждое направление?
ДБ: Да. Это даже, я бы сказал, не направления, это этапы
большого пути. То есть, в принципе, одно вытекает из другого. Но
можно сделать отдельно каждый этап, не привязываясь к другим, а
можно, сделав один этап, базируясь на нём, делать следующий. И эти
три этапа, про которые я говорю, – это:
Концепция, Дизайн и Реализация
И вот, как ни странно, самый тяжёлый этап, который кажется, что не
требует никаких технических знаний или знаний в дизайне – это первый
этап, этап
Концепции. Что такое этап Концепции? В концепции
мы хотим, чтобы вы подумали и сделали документ, не очень большую
презентацию, чтобы её можно было рассказать за 3 минуты, которая
концептуально ответит, как можно будет использовать вот такой опыт
Share.AR, где он может применяться, где он не может применяться,
какие проблемы он может решать, какие проблемы не может; если эти
проблемы реально есть, как они решаются сейчас, какие преимущества,
какие недостатки. И, кажется, что презентацию сделать легко. Но на
самом деле, почему я так говорю, что это самое сложное? Потому что
легко сделать, условно говоря, отписку — просто что-то набросать и
сдать. Но продумать реальную концепцию, которую можно отнести к
инвестору, и он скажет: «О! Вот это классно, под это я
подписываюсь», – то есть заставить людей заплатить деньги за
концепцию, не имея ещё продукта, – это сделать очень тяжело,
практически невозможно. То есть любой инвестор вам скажет: «Я не
вкладываюсь в идеи, я вкладываюсь только в реализованные продукты»,
– и, в принципе, будет прав. Но в то же время нам известны случаи,
когда, в общем-то, команды получали финансирование под концепции и
дальше работали за деньги инвесторов. И, соответственно, придумать
что-то такое, что других людей убедит, что это стоящая вещь, – это
действительно очень сложно, поэтому этот этап является очень важным.
Дальше вторая вещь – это
Дизайн, он может быть как привязан,
так и не привязан к первому этапу. Каким образом организовать,
расположить элементы на экране, а может быть, не только на экране;
может быть, вы будете делать проект, когда всё это происходит в
очках. Тут надо подумать о том, если у нас есть очки, и они не
виртуальной реальности, а дополненной, то есть вот такие, как делал
Google, или которые, по слухам, представит Apple, или те, что делает
Facebook, то, соответственно, в любом случае у нас меняется сама
концепция того, как можно управлять элементами в пространстве,
которые мы видим на экране, и теми взаимодействиями, которые мы
делаем. То есть каким образом ими управлять? Возможно, это будут
какие-то кнопки, как традиционно, а возможно, это будут какие-то
жесты в пространстве, и вам нужно для того, чтобы что-то произошло,
трясти руками в разные стороны. А может быть, использовать две
камеры смартфона, заднюю и селфи, и какими-то движениями лица – как
сейчас управляют, например, парализованные люди своими
искусственными руками, – вы будете давать команды. А может быть, всё
это вместе. А может быть, ничего из этого. Вот второй этап, Дизайн –
это, собственно, продумать то, как будет выглядеть интерфейс
приложения для удалённого взаимодействия в дополненной реальности.
Опять же, я говорил про курс Apple и про проект рисования в
дополненной реальности, где можно было прямо в AR рисовать,
размещать объекты и так далее, и там интерфейс был достаточно
простой. Где вы «тапали», там и появлялся объект. Но у разработчика
появляется сразу же куча вопросов. Вот мы «тапаем», и на каком
расстоянии размещать этот объект – в 30 сантиметрах от нас, в метре
от нас? Какими жестами его дальше двигать влево-вправо, вверх-вниз,
вперед-назад, вращать, изменять? То есть количество степеней свободы
становится больше, чем стандартных движений, свайпов и так далее.
MXS: Денис, выглядит пока это все, звучит как какая-то даже
«не научная фантастика», то есть это какая-то, даже сложно себе
представить какая, фантазия.
ДБ: Есть существующие решения. Можно брать готовые проекты,
но, скорее всего, со стандартным интерфейсом выиграть не удастся,
потому что мы уже посмотрели много разных подходов – и пока нет ни
одного, который был бы идеален, и возможно, что до этого идеала
пройдёт ещё много-много лет. Но попытаться, мне кажется, стоит.
Нарисовать этот интерфейс и описать его концепт можно в чём угодно,
можно даже сделать от руки. Более того, сейчас достаточно много
шаблонов,
когда вы просто распечатывайте PDF с реальным размером телефона, там
нарисован телефон и размечен, как на миллиметровке, экран, и вы
можете рисовать прямо на бумаге, на одном листе А4 помещаются
три–четыре телефона в зависимости от размеров. Можно делать в
каких-то программах, причём есть приложения, совершенно не требующие
каких-то серьезных знаний. Например,
MarvelApp – одна из самых
известных простых программ для быстрого прототипирования
интерфейсов. Можно делать в сервисах уже серьёзных – к примеру
Sketch, или Figma, Adobe XD или InDesign, и так далее. Выбор
инструмента зависит от того, какой из них для вас более удобен. И
если в первом случае у нас результатом была презентация, то во
втором результат – это записанный ролик на YouTube, тоже не больше,
чем три минуты, который демонстрирует концепцию интерфейса. Хорошо
бы ещё прокомментировать его голосом, для того чтобы было понятно,
что именно мы здесь видим. То есть это первые два этапа, Концепция и
Дизайн.
И третий этап –
Реализация. И хотя почему-то всем кажется,
что Реализация – это что-то такое тяжёлое, на самом деле сейчас
появилось огромное число инструментов, которые позволяют реализовать
прототип проекта дополненной реальности вообще без программирования.
Естественно, финальный продукт сделать, скорее всего, не получится,
потому что финальному продукту нужно ещё взаимодействие с людьми и с
другими частями приложения, но демонстрацию того, как это может
выглядеть, можно делать на простых инструментах, и тут вспоминаются
как минимум два; их, наверное, больше. Один – это то, что сделал
Facebook, Spark AR. Вы ставите редактор
Spark AR Studio,
и в нём можете накидать разные элементы, и потом вы можете
экспортировать получившийся проект либо в такое же приложение Spark
AR для телефона, либо прямо сразу внутрь Facebook и Instagram.
Правда, для Facebook и Instagram ограничение, по-моему, 10–20–30
мегабайт, что очень сильно мешает, когда вы используете тяжёлые
3D-модели. Но в результате у вас получается реальный AR без программирования.
Хотя программировать там тоже можно, но на первом этапе всё это
работает даже без него. Второе — взять решение Apple, если у вас
есть iPhone или iPad возрастом не более 4 лет. У Apple есть классный
продукт
Reality Composer, как для iOS, так и для macOS через Xcode, с помощью
которого можно создавать и исполнять
AR-сцены. То есть если у вас есть Mac конца 2012 года или новее, или
iPhone или iPad конца 2015 года или новее, вы можете поставить
Reality Composer, и это очень похожая концепция на Spark AR.
Единственное, что результат у вас будет работать только на
платформах Apple, либо внутри Reality Composer, либо как
самостоятельный продукт. Spark AR, как и Facebook, работает на
большем числе платформ, так как у Facebook реклама составляет 91%
дохода, и чем больше платформ поддержать, тем больше денег они
заработают. Решение Apple работает, естественно, только на
платформах Apple, но его мы тоже сможем проверить. В принципе,
существует много других решений, и вы можете писать нативный код и
использовать библиотеки ARKit для iOS и ARCore для Android, либо,
например Vuforia или ещё что-нибудь под Unity и так далее, то есть
решений миллион. В общем, даже запрограммировать будет не так
сложно, есть очень много обучающих материалов начального уровня про
то, как сделать простейшие вещи в AR, к примеру, подвесить в воздухе
объект на экране перед зрителем.
Но помните, что наша цель – не просто поиграться в AR. Наша цель –
придумать, каким образом люди могут в AR взаимодействовать
коллективно и удалённо, как это должно выглядеть.
Презентация, Видео, Проект
И, собственно, если на первом этапе у нас была
Презентация, а на
втором –
Видео, то на третьем мы хотим получить
Проект, который
будет публично выложен на GitHub, который можно скачать и собрать
под одну из платформ, то есть под Linux, под macOS, под Windows, под
iOS-устройства, под Android-устройства, под Facebook, Instagram и
так далее. Важно, чтобы мы могли проверить ваш проект хотя бы на
одной из платформ. Перенести на другую платформу концепцию не так
сложно. Главное, чтобы она изначально была работающая. И на этом же
этапе в качестве второй вещи запишите видео – это уже не
обязательно, но очень рекомендуется. Я сам, когда принимал проекты у
студентов, которых обучал, убедился, что наличие сопровождающего
видео сильно облегчает задачу, потому что ты понимаешь, как
работает, ты понимаешь, что автор подразумевал, когда проект делал,
нежели чем просто ты проект запустил и не знаешь, куда нажимать. И
поэтому, если вы добавите видео, то, во-первых, вы увеличите число
людей, которые смогут сделать review вашему проекту — не каждый
может собрать проект в Xcode или Android Studio, а посмотреть видео
смогут все. Плюс даже те, кто могут собрать, как я буду это делать,
гораздо лучше будут понимать, что вы имели в виду. Если видео не
будет, а у вас в интерфейсе, возможно, некоторые функции спрятаны
так, что мы о них не догадаемся, то мы их не сможем оценить (на этом
этапе мы не оцениваем удобство пользования, UI/UX — это для
направления Дизайна). Идеальный результат Реализации – проект на
GitHub и видео в YouTube длительностью не более трёх минут с
демонстрацией работы.
Вот такие три этапа или три направления. Все три сделать, конечно, в
рамках одного хакатона невозможно. Это Концепция, Дизайн и
Реализация.
MXS: Спасибо, Денис. Очень интересно. Я думаю, нашим
участникам будет над чем подумать и поломать голову. И в заключение
нашего интервью, я хотел бы, чтобы Вы сказали несколько
напутственных слов для наших участников, так сказать, вдохновили бы
и обнадёжили их, так сказать, даже в условиях существующих
ограничений, предлагаю Вам нарисовать им путь к свободному,
чудесному, новому Цифровому Миру.
ДБ: Да, пожалуй. Если говорить об этом, вот я сейчас сразу
после карантина выгляжу с бородой немножко как Гендальф или
Дамблдор, и, если говорить о самом Мудром совете, который я мог бы
дать самому себе, вернувшись на 20-25 лет назад, то это, наверное,
совет заниматься тем, что реально интересно. Нам достаточно часто в
жизни приходится заниматься вещами, которые нужно делать, но они нам
неинтересны. Но бывают моменты, когда вы занимаетесь тем, что вам
действительно интересно, и тогда вам не надо себя подгонять, не надо
заставлять что-то делать. Я помню, когда начинал работать в Intel, у
меня случился такой хайп (такого слова ещё тогда не было), когда я в
7 утра приезжал на работу, в 11 вечера уезжал, и меня там чуть ли не
выгоняли домой спать. То есть мне было классно. Я занимался помощью
разработчикам, изучал будущие процессоры Intel, выпускаемые через 2
года, оптимизацией под них, и, в общем-то, это меня окрыляло, я
чувствовал себя на острие технологий, зная то, о чём нельзя ещё было
рассказывать публично.
В течение моей жизни у меня было несколько моментов, когда я
действительно занимался тем, что мне нравилось — как например,
сейчас, когда я в качестве CTO стартапа
Get Outfit разрабатываю
решение для уберизации подбора одежды (AR там тоже должен сыграть
свою роль) — но были и моменты, когда приходилось заниматься
рутиной. И я вас призываю, конечно, прежде всего понять для себя,
заводит ли вас эта тема. Может быть, её для начала попробовать
посмотреть, покрутить какие-то готовые проекты. Потому что я вижу,
что тема дополненной реальности себя ещё не проявила в полной мере,
и, возможно, то, чем вы будете заниматься сейчас, сможет выстрелить
через некоторое время. Если Apple или кто-то другой наконец-то
выпустят удобные очки дополненной реальности, которые станут такими
же массовыми, как в своё время стали touch-смартфоны, то любая
работа в этой области станет очень популярной.
Поэтому я вам желаю заниматься тем, что вам нравится, и, конечно,
желаю успеха в этом вашем начинании.
MXS: Спасибо большое, Денис. Очень интересное, познавательное
интервью. С нами был Денис Быструев, руководитель образовательной
программы Apple в России в 2011–2017 годах и замечательный человек,
большой специалист в том, о чём многие только мечтают узнать.
Спасибо большое, Денис. Всего доброго.
ДБ: Спасибо, Максим. Счастливо.