Дизайнер LEGO Mindstorms о работе, детях и программировании
Новый конструктор LEGO Mindstorms «Робот-изобретатель» 5 в 1 появился в России в этом месяце. Обсудили с главным дизайнером линейки Дэном Миханом, почему взрослые играют в конструктор, как в компании LEGO работают с фокус-группами и почему робототехника сейчас — мейнстрим.
Мы сейчас будем говорить про LEGO Mindstorms, но прежде хочется поговорить немного про вас. Как главный дизайнер LEGO, наверное, вы всю жизнь только и делаете, что собираете конструкторы. Были ли у вас перерывы с LEGO? Есть ли вообще какие-нибудь другие хобби?
Как и многие люди, в наборы LEGO я играл в детстве. И в подростковом возрасте у меня был довольно длительный перерыв. Тогда меня больше интересовали компьютерные игры, радиоуправляемые автомобили и регби. Однако я вернулся к LEGO, когда стал взрослым. Думаю, что мне было чуть за двадцать. Линейки LEGO Star Wars и LEGO Technic возродили мою детскую любовь к конструктору, которая, наверное, никогда не уходила. Думаю, что это общая черта многих взрослых фанатов LEGO, они никогда не вырастают из этого.
Окей, давайте теперь про конструкторы. Согласно официальному сайту, новинка LEGO Mindstorms «Робот-изобретатель 5 в 1» ориентирована на детей от 10 лет. Но там так много сложных технических деталей! Вы уверены, что десятилетние способны собирать роботов без помощи родителей?
У нас было огромное количество тестов при проектировании набора. И главными тестировщиками были дети. Помимо тестов, у LEGO есть огромный опыт в том, как писать инструкции для конструкторов, с какими сложностями могут столкнуться дети при сборке. В новом наборе линейки LEGO Mindstorms перешел на язык программирования Scratch. Оказалось, что многие дети уже знают Scratch и даже пробовали что-то писать на этом языке. Конечно, среди роботов нового набора из LEGO Mindstorms есть и довольно сложные в построении модели, однако чувство достижения результата очень нравится детской аудитории.
Первый набор линейки LEGO Mindstorms выпустили 22 года назад, последний — семь лет назад. Почему было решено выпустить новый конструктор сейчас? Это как-то связано с возросшим интересом к робототехнике? Робот Gelo из нового конструктора, например, напоминает движениями собаку Spot из Boston Dynamics.
Перед выпуском мы задавались множеством вопросов: «Актуально ли это? Интересно ли это детям? Разовьет ли это какие-нибудь полезные навыки?» И здесь, как и всегда, наши решения были основаны на мнении детей. Мы почти сразу обнаружили, что детям очень интересна робототехника, причем как маленьким, так и большим. Gelo на самом деле не сильно понравился нашей детской аудитории, им больше нравятся другие роботы из конструктора, однако взрослых Gelo просто поражает. Роботы сейчас — это мейнстрим, согласитесь! Они косят людям траву, пылесосят. Такого не было ни 20 лет назад, ни даже 10.
Были ли у вас какие-то ограничения и самоограничения во время разработки?
Я думаю, что самое сложное в разработке конструкторов LEGO — это найти оптимальный баланс между тем, насколько классный конструктор, и тем, насколько он сложный. Мы можем создать очень красивый замок или сложную машину, но, если сборка будет слишком сложна для ребенка или в конструкторе будет слишком много деталей, модель не подойдет нам.
Та же проблема была, например, в разработке программного обеспечения роботов LEGO Mindstorms. Для нас важны две вещи: то, что ребенку нравится играть с конструктором, и то, что он понимает, как и почему работает конструктор. Поэтому в новом конструкторе из LEGO Mindstorms есть более 50 основных действий и множество дополнительных модулей, помимо основных моделей кода. Если детям интересна возможность изменить все самому, самостоятельно настроить своего робота, новый конструктор линейки LEGO Mindstorms это позволяет.
Необходим ли опыт программирования для игр с LEGO Mindstorms «Робот-изобретатель» 5 в 1? Если можно управлять роботом с помощью Scratch, есть ли в конструкторе что-то вроде руководства пользователя?
Итак, у нас есть приложение, в котором ребенок может комбинировать более 50 действий для всех пяти роботов, и весь необходимый код уже включен в эти действия. Более того, при построении роботов, мы поэтапно учим ребенка создавать этот код. Например, когда мы строим одну из вариаций роботов — Charlie, сначала создается только его голова, и уже на этом этапе мы учим детей подключать его к Bluetooth или USB, учим анимировать лицо и добавлять звуки.
Потом мы строим тело и добавляем двигатели. И мы показываем, как управлять моторикой робота. При этом программировать не нужно, весь код отображается на экране с нашими комментариями. С помощью комментариев ребенок получает возможность модифицировать код. Например, для первого двигателя он может настроить скорость работы и количество оборотов. Синхронизация управления двигателями осуществляется с помощью циклов, и мы объясняем детям, как это работает.
Да, вам не обязательно программировать, чтобы поиграть с конструктором из LEGO Mindstorms. Вы можете просто открыть приложение, подключиться к роботу и увидеть, как он играет на барабанах. Но если вы хотите сделать так, чтобы робот исполнил барабанное соло вашего собственного сочинения, его можно будет довольно легко перепрограммировать, применив то, что вы узнали в процессе сборки.
На детей такое обучение очень хорошо действует, при нажатии кнопки они видят, что кусок кода действительно запускается, а затем наступает уже привычное детское: «Подождите-ка, так значит, я могу изменить то, что делает кнопка!». А затем они учатся добавлять свои звуки. А после этого могут подключить свои контроллеры PS4 или Xbox, и это супер круто!
Программировать можно только с помощью заданных команд в Scratch?
В приложении есть возможность программировать и на Python. Мы активно разрабатываем нашу базу советов в формате «How to?». Мы не научим вас программированию на Python, в интернете есть множество блестящих ресурсов, которые сделают это лучше нас. Я сам пользуюсь некоторыми из них. Однако мы поможем вам научиться использовать Python для управления роботом LEGO Mindstorms «Робот-изобретатель» 5 в 1.
На роботах конструктора LEGO Mindstorms «Робот-изобретатель» есть много разных датчиков: инфракрасный, ультразвуковой, гироскопический, датчики света, касания. Как они взаимодействуют с программной частью?
Основная часть конструктора — это хаб, у которого есть шесть портов. К каждому из них вы можете подключать свои датчики и настраивать поведение робота с их помощью. Например, робот Blast использует четыре двигателя и два датчика, данные от которых поступают в хаб. У Blast есть очень прикольная программа «Защити мою комнату». Она использует ультразвуковой датчик для сканирования движения в комнате, и если кто-то войдет в комнату, Blast выстрелит в вошедшего.
Более того, в новом наборе линейки LEGO Mindstorms вы можете загрузить код непосредственно в хаб, не нужно постоянно быть подключенным к роботу с телефона или компьютера. Благодаря этому Gelo, например, может пойти с ребенком на прогулку.
Самым интересным среди роботов нового конструктора линейки LEGO Mindstorms нам показался M.V.P. — платформа, которую можно полностью перестраивать. Расскажите, как вы дошли до этой идеи?
Идея M.V.P. — платформы, которая способна перестраиваться в разные автомобили, была очень популярна среди детей с самого начала. Круто, когда ты можешь собрать грузовик или машину, а потом легко перестроить его, например, в движущийся кран. Наша дизайнерская команда постоянно генерирует множество сумасшедших идей, но мы очень пристально изучаем реакцию детей на них. Мне запомнился один мальчик, который сказал на тестировании MVP что-то вроде: «О, так значит, я могу взять свой грузовик и свой вертолет, снять лопасти с вертолета и превратить его в грузолет?». И я не знаю, как бы выглядел его грузолет, но идея звучала просто потрясающе!
В тот момент я испытал огромную гордость за проделанную работу, ведь если дети могут придумать идею лучше, чем была у нашей команды, значит, мы сделали нашу работу хорошо. Ведь все эти модели, все эти игры нужны для того, чтобы вдохновить детей и сделать их лучше нас.
Угадайте, из-за чего жидкость теряет стабильность
Несмотря на то что большинство явлений, в которых жидкость теряет устойчивость, известны еще с XIX века, их до сих пор продолжают внимательно изучать. Иногда неустойчивости в жидкостях и газах развиваются по неожиданным сценариям, а в классических системах возникают вариации, которые нельзя было предсказать заранее. Вместе со Сколтехом, который прямо сейчас набирает студентов в магистратуру «Прикладная вычислительная механика», предлагаем вам посмотреть на шесть недавних экспериментов и предположить, из-за чего жидкость потеряла устойчивость и в ней возникли какие-то непонятные структуры.