Из шести кубиков LEGO размером 2х4 можно собрать 915 миллионов различных комбинаций. Но в LEGO Education конструирование из кубиков — это лишь часть дела. Даже проекты для дошкольников здесь включают в себя программирование, пусть и в простейшей форме.


Мы стремимся к тому, чтобы гибкость программной платформы LEGO Education была сопоставима с ее гибкостью на аппаратном уровне. И в этом нам помогают наши партнеры — Microsoft, Массачусетский технологический университет, Институт интегральных схем общества Фраунгофера, а также разработчики из России. В этом посте мы расскажем о новых инструментах для программирования, с которыми возможности LEGO Mindstorms Education EV3 и WeDo 2.0 становятся шире.

Microsoft MakeCode


MakeCode — это бесплатная браузерная платформа, с помощью которой можно создать программы для множества устройств, от Arduino до роботов в Minecraft. С марта в этом списке и LEGO Mindstorms EV3.



В основном окне MakeCode можно составлять программу для EV3 из блоков. Форма блоков подсказывает, как их нужно выставлять, переменные выставляются списками в окошках внутри. Слева в режиме реального времени идет демонстрация программы. Из цветастого графического редактора одним кликом можно перейти в JavaScript — здесь также будет работать живая демонстрация и выбор функций.



Редактор MakeCode работает из браузера и не требует активного интернет-соединения — целиком загружается в кэш. Созданную программу можно скачать в формате UF2 и сразу загрузить в блок EV3. Или расшарить для просмотра. Экспортируя и импортируя UF2-файлы, можно делать совместные проекты.

Scratch


Scratch — это визуальная среда программирования, разработанная в Массачусетском технологическом университете для младшей и средней школы. Объектами Scratch являются спрайты, у которых можно изменять внешний вид и поведение с помощью скриптов. Программа в Scratch работает на поле размером 480х360 пикселей.


Бета-версия Scratch 3.0

Пока что актуальна вторая версия Scratch, где можно работать только с виртуальными объектами. Но на 2 января 2019 года запланирован релиз Scratch 3.0, которая станет гораздо интересней. В нем появятся расширения для работы с физическими объектами — с устройствами для рисования, записи звука и видео, а также с LEGO Mindstorms EV3 и WeDo 2.0. WeDo 2.0 — это «младший брат» EV3, который позволит использовать LEGO Education уже в начальной школе.

Бета-версия Scratch 3.0 уже доступна, но расширений в ней пока нет. Как и MakeCode, Scratch реализован в виде бесплатного браузерного приложения. Scratch, в принципе, более функционален по сравнению с MakeCode — здесь есть инструменты для работы с графикой и звуком. С другой стороны, сейчас MakeCode гораздо теснее интегрирована с LEGO Education. Но мы еще не видели, как работают расширения Scratch — возможно, эта функция появится только к релизу.

Open Roberta


Open Roberta — это проект института интегральных схем общества Фраунгофера, вдохновленный успехами среды Scratch. Программы, написанные с помощью Open Roberta, имеют собственную семантику и синтаксис и работают через свою прошивку. Ее можно установить на SD-карту и запускать вместо оригинальной прошивки EV3. С одной стороны, это создает дополнительные сложности. С другой — благодаря этому Open Roberta совместима с наборами NXT, которые выпускались до EV3. В этом году в список поддерживаемых систем также добавили WeDo.



«Кодвардс»


Образовательная платформа «Кодвардс» — это не среда программирования, как все описанное выше. Это учебно-методический комплекс, который помогает детям через обучение основам программирования развивать цифровые навыки. Программа «Кодвардс» + LEGO Education рассчитана на школьников 7-12 лет и состоит из 8 уроков, сочетает методические материалы для учителей, а также онлайн-платформу и рабочую тетрадь для учеников. Все полученные знания закрепляются с помощью наборов LEGO Education WeDo 2.0.


Фрагмент демонстрационного урока «Кодвардс»

Для курса был разработан вариант языка CoffeeScript с упрощенным синтаксисом. Он не используется за пределами платформы, поскольку рассчитан исключительно на усвоение общих концепций языков программирования. Сейчас в состав «Кодвардса» входит два модуля программирования и ИКТ по 32 урока, которые сопровождаются двумя практическими модулями по 8 уроков, где школьники работают с LEGO Education WeDo 2.0. Запланирован выход нового модуля с собственной средой разработки (компьютерные игры, дисциплины STEM), рассчитанный на закрепление навыков проектной работы.

Создать дополнительные программные и даже аппаратные компоненты для LEGO Education Mindstorms EV3 вы можете самостоятельно. Для этого мы предоставляем все необходимые ресурсы: пакеты разработки и исходный код фирменной прошивки. WeDo 2.0 также является открытой платформой — вы можете загрузить пакет разработчика для создания ПО, совместимого со смарт-хабом WeDo 2.0, и управления другими компонентами.

У LEGO Education Mindstorms EV3 есть и собственная среда программирования, построенная на нотации LabView — инженерного языка, наиболее распространенного в проектных бюро. А базовое ПО со встроенным языком программирования для WeDo 2.0 можно скачать отсюда.

Комментарии (15)


  1. Shkaff
    19.09.2018 16:47
    +1

    Ох, как же дождаться, когда ребенок дорастет…


    1. EOShipnyagov
      19.09.2018 17:25

      А сколько ребенку лет?


      1. Shkaff
        19.09.2018 17:52

        Два


        1. nikolayv81
          20.09.2018 08:53

          Boost ему понравится :)


    1. tuxx
      19.09.2018 18:05

      усынови


    1. Nikki2035
      19.09.2018 18:27

      Ну так надо вначале самому освоить, разобраться, программу составить! Не торопясь.


  1. EOShipnyagov
    19.09.2018 17:25

    MakeCode взял на вооружение, как переходной синтаксис, наверное, будет интересен.


  1. Anshi85
    19.09.2018 21:17

    Думая для ребенка нужно что то визуально красочное и чтобы можно было показать сразу же результат, например собрать машинку или робота и показать как с помощью команд описанных в коде управлять. Тоже хочу показать дочке как подрастет scratch и другие визуальные языки программирования, но если ребенок не заинтересуется то не буду настаивать, значит это не его.


    1. GeMir
      19.09.2018 21:29

      визуально красочное и чтобы можно было показать сразу же результат
      Scratch, если устраивает программирование блоками, Greenfoot — если хочется Java.
      не буду настаивать, значит это не его
      Программирование — не худший способ повышения переносимости разочарований, которых на учебном пути будет не мало.


    1. artyums
      19.09.2018 23:13
      +1

      По личному педагогическому опыту, повысить успешность детского «вхождения» в программирование можно объяснив и показав алгоритмы «на пальцах». То есть не сразу ребенка сажать за монитор и конструктор, а для начала предложить составить алгоритмы обычных бытовых процедур.

      У меня для этого использовался большой набор карточек с кучей простейших предметов и связанных с ними действий, из которых дети составляли, например, «уборку дома», «приготовление супа» (для девочек) или «постройку стула» (для мальчиков). Например последнее можно было составить из дерева, пилы, завода (пилорамы), магазина, линейки, молотка и счастливой мамы :) А кто-то еще добавил в этот ряд параллельный процесс (!!! Вот где будущий программист в свои то 7 лет) с коровой и с пистолетом, чтобы сделать кожаную обивку для стула :)

      Контрольная группа, которая проходила такой же по числу занятий курс, но начинала его сразу с изучения визуального компилятора и конструктора, показала в итоге на 20% худшую совокупную успеваемость и на 35% меньшую вовлеченность.

      Я это все к чему — советую попробовать дочку как-нибудь также посвящать в это таинство :)


      1. GeMir
        19.09.2018 23:24

        «уборку дома», «приготовление супа» (для девочек)
        Любопытный выбор. А что если детям предоставить возможность выбрать, хочется ли им алгоритмически кашеварить или превращать Бурёнку в стул?
        20% худшую совокупную успеваемость и на 35% меньшую вовлеченность
        Успеваемость вы, наверное, измеряли стандартизированным тестом и заранее убедились в том, что в одной из групп не собрались дети с папами-мамами из IT. Как измеряли «вовлечённость» хотелось бы узнать.


        1. artyums
          20.09.2018 00:33

          Ага, дети сами выбирали, что делать из довольно обширного списка (тут все ограничивает набор карточек, который таки конечен). Я лишь пример привел. Вообще весь учебный процесс в том учебном заведении строился на развитии самостоятельности.
          Успеваемость измерялась не тестами, а во-первых по тому, как далеко успели команды продвинуться внутри учебного курса к концу смены, а во-вторых какое число поставленных задач в итоге успешно выполнял робот/другой девайс в каждом из заданий курса (дети сами выбирали, что им больше всего интересно было сделать из списка задач за ограниченное время).
          Вовлеченность определялась в процессе смены (три месяца) с помощью нескольких опросников с вопросами а-ля «Хотелось бы тебе дома ходить на такой же кружок?» (дело происходило в лагере) и «Что для тебя самое интересное в этих занятиях?» (кто-то отвечал просто «Играть за компьютером», а кто-то релевантное «Самому делать робота»). Подобные вопросы позволяют понять, нравится ли детям то, что им предлагают делать. Таким образом, например, отказались от игры в зарницу — несколько лет подряд были низкие отзывы детей, хотя педагоги недоумевали, помня как нравились им аналогичные игры из собственной молодости.

          По убежденности в папах и мамах — около половины детей были из детских домов/школ-интернатов. Все дети были заранее отсортированы по группам равномерно по школьной успеваемости, чтобы в командах более сильные работали вместе с более слабыми (в смене участвовали учащиеся 1-4 и отдельно 5 класса).


  1. GeMir
    19.09.2018 21:47

    Для NXT в своё время существовала альтернативная прошивка LeJOS (Java), похоже, есть версия и для EV3. Год назад искали Python для EV3 и наткнулись на ev3python. Сделано, увы, скорее «фанатами для фанатов» нежели для обучения ООП с Mindstorms.


  1. dude_sam
    20.09.2018 10:29

    Надеюсь, в третьей версии Scratch, наконец-то откажутся от Flash!


  1. Bork1507
    20.09.2018 12:31

    Мне кажется, Scratch здесь более интересен. Уже во второй версии на нем можно делать проекты под ардуино. Тем самым переход от Mindstorms (все-таки не дешевая платформа) на другие платформы будет легче.