Хочу всё знать: язык Alice
Если вы регулярно проверяете рейтинг TIOBE, то могли обратить внимание на невероятный взлёт языка Alice: два года назад он не влезал в Топ-100, в январе занимал 49 место, а сегодня стучится в первую двадцатку. Прекрасный повод познакомиться, пока это не стало мейнстримом.
Обратимся к Википедии. Alice – язык для функционального программирования, 17 лет назад разработанный в Саарском университете, Германия. Является диалектом Standart ML, но здесь добавлен ряд новых возможностей для работы с многопоточностью и программированием в ограничениях. Последняя стабильная версия была выпущена в 2007 году.
Как получилось так, что язык, который не обновлялся 10 лет, неожиданно обрёл такую популярность? Ответ лежит на поверхности: неправильные пчелы пишут про неправильный мёд.
Описанный язык Alice носит приставку ML (факт игнорируется авторами статей в Википедии как в русской, так и английской версии), а героя, вернее, героиню сегодняшнего текста можно найти только с приставкой «ПО». Итак, знакомьтесь – представительница рода образовательных языков Alice из Университета Карнеги-Меллон, США. Официально ей уже 19 лет и, как подобает настоящей девушке, она лишь недавно стала привлекать внимание огромного числа гиков.
Детство
В 1994 году профессор Рэнди Пауш задумался о создании принципиально нового языка программирования для обучения детей и студентов первых курсов. С одной стороны, он должен быть графическим, с другой – поддерживать ООП и обладать возможностями «взрослых» языков. Напомним, что в те времена ещё не было Scratch – в MIT всё ещё прокачивали Logo – ограниченный и специфический язык.
Разработка началась в Университете Виргинии, перекочевала с Паушем в Карнеги-Меллон, пока наконец в 1998 году не увидела свет. Как и многие дети, Alice (имя взято из книг Льюиса Кэролла) родилась не очень красивым ребёнком. Хоть язык и базировался на Python, но итоговый объём кода возвращал во времена Си. Удобство работы с интерфейсом IDE оставляло желать лучшего: дизайн, расположение управляющих элементов были неудачными. Зато теперь даже ребёнок мог работать с 3D-моделями, управлять камерой, объектами и событиями.
В образовании результаты были блестящие:
- средняя оценка по программированию у целевой группы студентов повысилась с С на B (с 3 на 4);
- количество усвоенной информации повысилось с 47 до 88%.
Главной проблемой стало то, что далеко не все компьютеры в те времена могли поддерживать 3D-моделирование, да ещё и с высокоуровневым программированием событий. В итоге, юная Alice заинтересовала несколько крупных вузов, студий разработки игр, аниматоров, но так и не ушла в народ.
Alice 2.0 получила ряд важных улучшений:
- улучшилась производительность. Возможность экспортировать результат в QuickTime сократило время на разработку, ядро языка была оптимизировано.
- новый формат обучения. Теперь вы не просто могли управлять объектами и камерой, обучение происходило через создание сюжета мультфильма.
- библиотеки. Первая версия была ограничена в персонажах и местах действия, во второй программистам подарили простор для фантазии.
Юность
В 2006 году компания Electronic Arts взялась за разработку Alice 3.0 для интеграции в легендарную серию игр The Sims. Бета-версия вышла в 2009 году (как и Sims 3), лицензия так и осталась открытой, поэтому любой желающий теперь получил возможность создавать знакомую анимацию, даже не приобретая игру.
В 16 лет Alice предприняла попытку выйти на широкую аудиторию – она была интегрирована в Netbeans IDE, получила поддержку Java, кардинально сменила имидж на более современный и элегантный. Также разработчики локализовали продукт, переведя его в том числе и на русский язык.
Сегодня Alice официально сотрудничает с Disney, Google, Oracle, Pixar, Microsoft, EA и несколькими очень известными компаниями.
Где познакомиться
Все исходники можно скачать на официальном сайте. Выбирайте версию, устанавливайте надстройку на Netbeans IDE и приступайте к созданию своего первого мультфильма.
- Alice.ru – здесь вы найдёте 17 уроков, где вас научат создавать анимационные истории и даже 3D-шутеры.
- Udemy – не бесплатный вводный курс, где вас познакомят с языком, средой и покажут базовые действия
- Support – как всегда, самая исчерпывающая информация расположена на официальном сайте. Здесь FAQ, перечень полезных ресурсов и даже возможность напрямую задать вопрос лицензированному преподавателю.
Перспективы отношений
Мир сейчас переживает бум программирования, а образовательные языки, совмещённые с визуальной средой – локомотивы этой тенденции. Alice здесь не исключение – в период за январь по декабрь популярность запросов в поисковых системах выросла в 6 раз. Скорее всего это тенденция продолжится и, возможно, наши дети будут проходить его в школах.
Однако на бирже труда его знание не станет плюсом: для большинства работодателей это такой же бесполезный навык, как Borland Pascal. Но в отличие от последнего, от работы вы получите массу удовольствия.