Новости

Эпитафия Flash. Часть 2

Автор Дата 22.08.2017

«Роем!» продолжает издавать эпитафию Flash за авторством CEO Game Insight Анатолия Ропотова. В второй части Ропотов пишет о любви и ненависти.

Надпись Flash. Часть 1

Продукты

Несмотря на ксенофобия к интерфейсу Adobe Flash, он влюбился в технологию в 2001-ом году, делая получи и распишись неё неимоверную ставку следующие 15 планирование. От мини-игр до аж платформ, казино и, конечно же, социальных игр, достигающих сотен миллионов игроков, — спирт был всем обязан Flash. Она была праздник технологией, которая позволяла выпустить большой полноценный изделие за 1−2 месяца и достичь 95% пользователей в интернете. Методика определяла продукт и в первый раз с середины девяностых была по-новому чистым холстом нового формата для всех создателей.

Уже сколько раз за эти годы завистливые враги пытались искоренить Flash из веба, пытаясь ввести сплошной «открытый стандарт для мультимедии». Векторную графику и анимацию на браузеров хоть и стандартизировали в 2001-ом году, приблизительно 10 лет она работала по-разному изумительный всех браузерах и безбожно тормозила, все же, в отличие от Flash, она рендерилась софтварно в неакселерированном окне самого браузера. «Же зато по стандарту и минус плагинов», как говорили «стандартизаторы» веба в тетюха дни, желающие поставить «галочку опенсорсности» все равно какой ценой, не понимая приоритетов восприятия конечного пользователя. Исключительно в наши дни, буквально в последние плохо года, развитие браузеров, операционных систем и чекан изоляции ошибок драйверов дошло до того, что-то страницы на вебе даже с самым сложным многослойным композитингом стойком с WebGL-контентом, прозрачностями, видео и SVG-анимациями неважный (=маловажный) просто шикарно начало акселерироваться и рендериться бери компе, но даже и возьми мобилках.

Вряд ли кто помнит Macromedia Director-контент, использующий Direct3D (или — или OpenGL?) в Internet Explorer и сразу выбивающий драйвера в системе поперед BSOD. Вряд ли кто помнит попытки внедрения SVG+JavaScript про замены Flash и все корявые тулзы того времени, приставки не- покрывающие и на 5% нужд воркфлоу настоящих дизайнеров. Аюшки? только безумное не делалось в в таком случае время для форсированного создания опенсорс экосистемы и противостояния Macromedia!

Однако Flash выживала все эти годы в так время, как браузеры кидались друг в друга какахами, устраивая войны стандартизации. И тот и другой так и норовил расширить спецификации HTML получай свой лад, одновременно отвергая общую умысел стандартизации. Первой одумалась и переродилась Mozilla с Gecko, а впоследствии времени пришёл Google Chrome, взявший по иронии WebKit (уместная прикол — Apple пропатчил KDEшный KHTML по-под свой BSD!). До того, как сии два layout engine не стали царствовать, масштабы катастрофы были огромны: холивар браузерных идеологий спускался бери уровень рендера отступов абзацев и стилей фонтов. Произвольный норовил создать свой собственный HTML-тэг «почти соусом инноваций» и побесить как W3C, неизвестно зачем и конкурентов. Но, как ни лопнешь со смеху, мир обязан современному интернету благодаря самой революционной технологии через Microsoft — Dynamic HTML, появившейся а именно в Internet Explorer.

Flash за тетунька годы стремительно развивалась независимо от распрей браузеров. Симпатия переизобретала себя много раз, став более снисходительной к разработчикам, которым нужен был «шлепалка программирования», а не просто «скрипты угоду кому) художников». Со второй попытки в Flash 6, ActionScript 2 позволил разработчикам мочиться осмысленный ООП-код средней паршивости даже умереть и не встать внешнем в IDE. (Flash до версии 6 безвыгодный позволял делать 20% действий кодом изо внешних файлов.) Все онлайн-казино ранних 2000-ых, всё-таки социальные игры конца 2000-ых были обязаны ей своему существованию. Пусть даже энтерпрайз ненадолго склонился перед её братом Adobe Flex, принёсшим, наравне с годным MXML для создания веб-приложений, такие инновации, вроде бесплатный компилятор для командной строки (и серверов!).

И по крайности мы уже давно не смотрим векторные мультики и перешли в эру стриминг-видео, автор этих строк должны благодарить её и за сие. До Flash просмотр видео представлял изо себя процесс. Долгое скачивание монструозного RealMedia-плеера заканчивалось просмотром испарения минут размытой квадратной мути с булькающим звуком — в такой мере плохие веб-кодеки использовались в конце 90-ых. Для того дистрибуторов контента её развивающаяся технология прогрессивного стриминга видео, на равных условиях с годным DRM, была настолько крута, что в конце концов любое-таки убила каждый монструозный видео-плеер и плагин, включительно WMV/Windows Media Player, QuickTime и многих-многих других. YouTube обязан Adobe Flash жизнью. «Секретным соусом» Macromedia / Adobe всякий раз были качественные кодеки, качественные authoring тулзы (в томик числе — сторонние), и стриминговые серверы, как видно Flash Media Server, и открытых реализаций, эвентуально Red5.

С появлением социальных игр в 2008-ом году, Flash был глорифицирован столь, что ассоциировался одновременно с тремя самыми позитивными эмоциями десятилетия: музыкой, видео и отныне. Ant. потом играми.

Заря заката

Но в начале 2010-ых весь поменялось. Темпы разработки браузеров раскочегарились так быстротечно за счёт многоядерных процессоров, что сейчас тянули десяток табов с быстрыми, высокопроизводительными виртуальными машинами JavaScript, изолированными в своих процессах. Браузеры перестали спориться про принцип подсчёта отступов в тэгах и под конец-то начали соревноваться друг с другом в инновационных фичах: кто такой быстрее отпарсит и запустит JS-код, кто быстрее отрендерит эту огромную картинку, кто именно хитрее произолирует процессы и защитится от краха плагинов. И держи фоне этой гонки вдруг оказалось, как будто её, Flash, было слишком много. Теперь какой бы то ни был глюк рекламного блока с SWF-файлом выбивал браузер крепко-накрепко, в то время, как JavaScript с лишком не мог нанести такого урона и предел ронял один таб.

Как только её отнюдь не потрепали годы. Она теперь растолстела, инсталлируя антивирусник McAffee и другой треш. Она была на каждом сайте в таком количестве, а её начали за это терпеть не может все, ведь теперь она сосала ресурсы в каждом табе. Конфигурация ActiveX плагина Flash, использующегося в Internet Explorer, была построена приближенно, что она, в первую очередь, резервировала весь век системные ресурсы, чтобы быть готовой отрисовать нулевый фрейм контента в любой момент с задержкой чуть в пару миллисекунд. Она знала, как рендерить контент возьми 60 кадрах в секунду, и интересах плавного видео и аудио жрала все запас процесса про запас, нехотя отдавая их самой системе. Открывая администратор задач, можно было только дивиться, как от балды она съедала «99% ресурсов». И на случай если это было неважно на настольных компьютерах, в таком случае такой подход был неприемлем ни для ноутбуках (а тогда наступала эра нетбуков!), ни получи и распишись мобилках, которые активно появлялись, — возлюбленная высасывала их батареи на как-то раз! В то же время некоторые изменения в деприоритизации работы Flash в контейнерах NPAPI (самая древняя плагинная структура от Netscape) заставили YouTube начать непомерно лагать в многотабовых браузерах, и у конечных пользователей стержневой раз за годы начали накапливаться негативные чувства к Flash, которые, к счастью, были оно бы решаемы «переходом на альтернативный браузер».

Несмотря на все попытки учредить «Flash Lite» и покорить мобильные платформы J2ME (и BREW в штатах) в середине 2000-ых, сия стезя была недостижимой для Adobe. Никому никак не было понятно, что же вкладывалось в название «Lite». Заход Flash был попыткой угостить галочку «я сделяль» малой ценой, во всяком случае микроскопические Flash-файлы для мобилок, по идее, невзыскательно должны были работать. Однако вместо шикарных killer apps, к которым я так привыкли во времена FWA, начали выходить лишь корявые пошаговые мини-игры (а-ля Sokoban) и едва-едва рендерящийся тормозящий, плохо растеризованный, уже неплавный и невекторный контент. Создатели Flash-контента понимали, (как) будто он склеится на больших мониторах, все переход на малюсенькие экраны застал их неожиданно. Невозможность навести на что-то мышкой до упора заставляла их перепридумывать подход к навигации кнопками, а сотни разных разрешений и соотношений сторон экрана с плохим разрешением подкосили повально начинание. Разработчики начали пытаться распространять десятки вариаций своего контента, а сие было именно то, от чего Flash Lite грозился освободить всю J2ME индустрию, погрязшую в сотнях JAR-билдов в (видах каждого устройства от Nokia, Siemens и прочих.

До этого (времени многие думали, что мобильный веб органически эволюционирует с WAP XHTML-страниц во что-ведь большее сродни iMode в Японии (про как будто я написал отдельный материал), тихо подкрался iOS. Ни один человек не предполагал, что кто-то не на шутку вставит полноценный desktop-браузер в мобилы, и многоходовочка Apple с многолетним развитием KHTML в WebKit однозначно начала восприниматься как gamechanger! Никто не думал, по какой причине мобильная операционная система сможет полноценно показывать десктопный контент в мобильных экранах без изменений. Все логические доводы — «сайты толстые и тяжёлые», «тама же вообще нужно мобильное видео», «у Nokia сие плохо получается», «а точь в точь же Flash» — безвыгодный волновали Apple, ведь она уже играла 10 полет «в долгую» и была готова шалить «в долгую» ещё следующие 10 полет.

iOS стал тем проклятием Adobe, где все скопившиеся проигранные битвы Flash стали неразрешимы. Методика попала в такое положение, где её микрочастица, её основные заветы и постулаты были коренным образом нерелевантны, неуместны и чужды. И вместо того, с тем чтоб адаптироваться, она объявила войну самой платформе. Потрясающие технологи Android использовали её делать за скольких разменную карту в маркетинге против самой заметный и амбициозной войны операционок, развернувшейся со времён «PC vs Mac». Огулом мир начал настраиваться против неё, пока возлюбленная проигрывала настоящую информационную войну, к которой Adobe оказалась безвыгодный готова.

Flash умирает. Почему это плохо?

Мобилы

Steve Jobs знал, не хуже кого бы (не) работала Flash на iOS. Его деловой. Ant. частный месседж гласил: Flash не «open», далеко не про «full web», в нём не имеется «reliability, security & performance», ничего хорошего с «battery life» безграмотный будет, он не ради «touch». И в конце добавил: «отсутствует Adobe».

И если тогда эти воинствующие месседжи звучали в сердцах Flash разработчиков точно оправдания, как какая-то ненависть по отношению к Flash, ведь теперь, сквозь годы, можно оглянуться и возговорить: все были просто упёртыми и не ощутили пирушка самой смены поколений, которую Flash смогла если-то принести в Web. У Adobe было 3 возраст для того, чтобы адаптироваться к современным реалиям, хотя они не просто не справились с сим вызовом, они дисконтировали всё своё сообщество талантливейших multimedia-разработчиков, подменяя принципы, обманывая их в ожиданиях, уверяя, что-то всё «ок», и кормя негодными завтраками. Им сие долго сходило с рук, и, начиная с 2014 возраст, несколько других технологических компаний пошли по этой а скользкой тропинке (о них я напишу в ближайшие годы, рано или поздно заря от заката будет полыхать чтобы всех более явно). Самым ярким состоявшимся примером на всех стал Intel, долго придерживающийся идентичной позиции условно мобильных технологий и в пух и труп проигравший такую же битву.

Тем безлюдный (=малолюдный) менее, давайте объективно оценивать происходящее в так время с Flash и конкретно Adobe AIR — технологией, которая обещала запаковать «вековой Flash» на новый лад. Принимая решения о портировании первых наших социальных игр в Game Insight по-под мобильные платформы, мы потратили тысячи часов возьми многогранное изучение проблем и ограничений потугов Adobe в их мобильном направлении, в одно время вкладываясь в версии игр на других, больше стабильных технологиях. И мы, имея опыт разработки «в прошлых жизнях» по образу под телефоны, STB, так и под консоли, видели, что такое? Adobe тупо не «отдупляет», по какой причине делает и происходит.

Помимо технических ограничений (полное бельмесость модели менеджмента памяти и компрессии текстур), которые (до важны для игр, были и более пространные идеологические проблемы. В первую ряд, требования к точности дизайна интеракций с контентом закачаешься Флэше создают неразрешимые проблемы на уровне взаимодействия с объектами держи сцене (основная сущность Flash). В ДНК Flash заложены эффекты во (избежание наведения на кнопки, вся красота идеологического взаимодействия с объектами невозможна минус мышки с суперточными кликами. По тем но причинам, почему не взлетел Flash Lite, в бОльшей части контента, пересобранного с Adobe AIR, было нельзя наслаждаться качественным контентом на весь защита: растровые картинки при downscale выглядели ужасно (и дефалтные фильтры были подобраны извращенно), а смена парадигмы aspect ratio и навигации усложняла оценка конечным пользователем ещё сильнее. Дефалтные семплы и упражнения, на базе которых Adobe предлагал во всех отношениях строить приложения для iOS, были настолько далеки через interaction guidelines, созданных Apple, что было далеко не смешно, а грустно. И если enterprise разработчики пожали бы плечами и увеличили размеры контролсов Flex, совершенно не похожих на компоненты iOS, в таком случае дизайнеры Flash — это характер и отвага, бойцы несуществующего сопротивления, которое отвергли всегда парадигмы интеракций и попытались придумать свой свет (белый), который совсем не был похож нате то, чего ждали пользователи Apple (ей-ей и если честно, то и Android).

Как бы Microsoft завоевала СССР, а Apple не смогла

Steve был пьяный получить порцию негатива за «неподдержку» Flash, однако не в его стиле было обнаруживать создателей контента, которые должны были прийти нате его платформу главной проблемой. Mixed message — Flash барахольный, а для «мобил» контент вынужден быть адаптирован качественно с нуля — был «ухабисто» воспринят фанатами. Часть из них поверила Steve и бросилась в водяная яма Obj-C и вернулась в середину девяностых, когда с начала можно было выжимать максимум интерактивности на новой платформе с нуля. Разработчики получали незапятнанный кайф от «обнуления»: возьми платформе не было никаких приложений, идеология ещё написаны не были и они в решающий раз почувствовали дух дикого запада за многие десятилетия. Все же вторая часть приверженцев Flash ушла, что называется, в защиту и многие годы отрицала происходившее.

Steve не спешил говорить плохие пустословие в адрес Google, чьи активно продвигаемые рекламные блоки нате Flash были самой большой проблемой веба интересах всей экосистемы, включая для самого Google, какой-никакой надеялся, что плагин Flash на Android пора и совесть знать, в первую очередь, рендерить рекламу. Ну, а далее — уже история, плагин пропал с мобил, а через несколько лет Google запер плагин Flash в тормозящей темнице PPAPI (об этом — в следующем материале).

Энциклика Steve про Flash было услышано лагерем Adobe отнюдь не просто неправильно, а action plan был неадекватен. В толк на Adobe has been painfully slow to adopt enhancements to Apple’s platforms награду каких-то внятных действий был выпущен десятильник-экспортер SWF файлов сразу в IPA (aka iPhone app/iOS Package), притом в т. ч. — для «Винды». Кушать причины, почему такое решение просто-напросто отнюдь не могло работать нужно (и это склифосовский в следующей части материала), ведь многие потерянные разработчики перед сих пор верят, что это Apple грешен в том, что он «отключил» земля Flash на своей платформе.

Cпустя 5 планирование после прихода Adobe AIR, можно по-прежнему различить: «я жалею лишь об одном — почему связался с их неадекватными обещаниями». Adobe неважный (=маловажный) понял правила игры и подвёл и своё комьюнити, и платформу.

Источник: roem.ru