В последнее время модно писать сложные продукты на JavaScript, благо современные браузеры позволяют. Чего только не делают программисты – даже среды виртуализации для запуска x86-совместимых систем. Некоторые проекты годятся только для демонстрации возможностей ПО, но есть и такие, практическая ценность которых несомненна. В Mozilla хотят разработать проигрыватель Adobe Flash, используя JavaScript и технологии HTML5.

По замыслу его создателей, Shumway обеспечит безопасное воспроизведение файлов формата SWF в современных браузерах без использования бинарного проигрывателя Adobe или альтернативных открытых продуктов. Пока программисты ориентируются лишь на возможности Firefox. Адаптация Shumway для других браузеров не ведётся.

Работа над программой только началась – участники проекта пытаются создать виртуальную машину и runtime-компоненты. Уже есть парсер роликов SWF и сервис для их инспектирования, а также демонстрационная страница с простейшей игрой (она, кстати, запустилась не только в Firefox). Как водится, все наработки доступны на условиях публичной лицензии Mozilla (MPL) через репозиторий на GitHub.

Mozilla не является пионером в данном направлении – похожий проект есть и у Google. Правда, исходные тексты Swiffy закрыты, но лидер поискового рынка не исключает их открытия в будущем.

Важность такого продукта переоценить сложно. Как бы мы ни ругали Flash, он остаётся популярной технологией, и полный отказ от неё в обозримом будущем маловероятен. Применяется Flash не только для игр, рекламных баннеров и воспроизведения видео. При этом приходится пользоваться потенциально небезопасным плагином Adobe, который толком невозможно изолировать от операционной системы – многие критические уязвимости браузеров эксплуатируют проигрыватель Flash. Даже в Google Chrome, куда включена специальная и более изолированная его редакция.

Второй несомненный плюс Shumway – кроссплатформенность. Полагаю, в пояснениях он не нуждается. Есть и минусы – сомневаюсь, что в ближайшее время разработчики Mozilla смогут реализовать весь функционал Adobe Flash Player (у создателей прочих аналогов, таких, как Gnash, это не получилось). Едва ли их продукт можно будет использовать для действительно серьёзных задач. Но даже если Shumway сможет заменить ПО Adobe для воспроизведения видеоконтента, flash-игр и рекламных баннеров, это будет уже хорошо, так как закроется важный канал распространения вредоносного ПО.