Показаны сообщения с ярлыком От автора. Показать все сообщения
Показаны сообщения с ярлыком От автора. Показать все сообщения

понедельник, января 09, 2012

Переезд на Tumblr

Переезжаю на Tumblr из Blogger-а: http://racer242.blogspot.com/.


Вроде бы нет причин для переезда. Да и блог мой стал совсем неактуальным. Уже год я в него толком ничего и не писал. Висит несколько черновиков, которые и публиковать то не хочется. Причина банальна. В моей практике flash-разработчика кончилось время исследований и достижений. Сегодня моя работа базируется на отработанных годами механизмах, о которых уже давно всё сказано.
Однако, ряд событий и последние известия относительно развития самой Flash Platform, навели меня на определенные мысли. Видимо, пора обновлять свой арсенал и поднимать якоря в поисках новых и более привлекательных гаваней. Меня сильно привлекла активность моего “кормильца” Adobe в направлении переноса своих технологий и опыта на HTML5. Я верю в успех этого дела и, пока не поздно, подключаюсь. И расширяю область своих интересов от “Flash-разработки” до “Front-end-разработки”, что включает в себя и Flash, и HTML5, и всё что им сопутствует.

Переход на новый блоговый движок обусловлен не только новой направленностью моих изысканий. Пользуя tumblr как веб-, так и iPhone-приложение, я испытываю гораздо больший комфорт чем от Blogger-а. Да и эта гугловая “замкнутость на себе” немного раздражает.

Всё. Прощаюсь с милым старым Блоггером без особых сожалений. Увидимся на Тумблере http://racer242.tumblr.com/.

среда, октября 14, 2009

Новый подблог "Flash-разработка. Сотрудничество"

Дублирую предисловие:

"Каждый из нас рано или поздно сталкивается с ситуацией, когда работы завал, а нам ее всё подкидывают и подкидывают. Вроде бы и заманчиво, а с другой стороны - ну некуда уже - график забит. Поэтому, приглашаю к сотрудничеству всех желающих.
Итак, с этого момента, я буду выкладывать в этот блог всё, что уже не в силах взять на себя.
Надеюсь на понимание и, думаю, многим будет интересно найти здесь для себя занятие."

четверг, октября 01, 2009

Мой дорогой блог...

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

понедельник, июля 27, 2009

MPS, MIoC и утро испорчено

Вот так бывает, что приезжаешь в понедельник утром на работу, погружаешь измученное летними выходными тело в кресло, включаешь позёвывая комп, лениво начинаешь кликать последние посты. За окном лето. Чего еще может быть такого нового... Все загорают и купаются.

Но тут мозг натыкается на незнакомые сочетания букв. Таак. Мифы MPS. Явно не про мазду. MPS... MPS, что-то википедия ерунду выдает. Ладно, читаем дальше. Ну пипец, ни одной ссылки, будто и правда все всё знают, а я в мазде. Ага, это редактор. Попался, голубчик. От оно чо - Meta Programming System. Вот и википедия сразу разродилась. Ну в общем всё ясно. Шагай в будущее с MPS первой версии. Для чего оно нужно? Для создания и работы с DSL (опять неоднозначные аббривиатуры - это не про модем, это Domain-specific language - или лучше Предметно-ориентированный язык программирования). Теперь и пост про мифы можно почитать.

Что еще у нас интересного на сегодня? Ага, injun до Swiz добрался. Забавный принцип. Про паззлы понравилось, хоть никогда их и не любил - скучное занятие.
Все похвалили MIoC. Вот, спасибо, для тех кто в мазде - разшифровка (Metadata-driven autowire IoC framework для ActionScript 3). Про IoC знают многие, а вот MIoC - не думаю.

Напоследок. Случился бум Flash+Drupal. Мне так показалось, что пост Flash на Drupal произвел неизгладимое впечатление на Flex Constructor, и в течение последующих 3,5 часов он выдал Flex+Drupal=... C интеграцией flash и CMS сталкивается почти каждый flash-разработчик. На моей практике, сводится она к тому, что либо сервер диктует формат обмена данными, либо это делаю я сам. Второе чаще. Здесь же этот процесс систематизируется и ставится на рельсы, по которым очень скоро покатятся составы, полные готовых drupal-модулей для flash-сайтов, flash-приложений, flash-виджетов и flash-т.п. Идея популяризации Drupal очевидна.

Всё. Утро еще не кончилось, и мозги уже дымятся. А ведь еще завал работы...

вторник, января 20, 2009

Последние флэшеры покидают РБК СОФТ. Прощальные заметки, итоги

Всем уже известно, как кризис обошелся с РБК. Последние несколько месяцев, мы с любопытством наблюдали, как тонет этот гигант. Наверное, было не так уж плохо, когда, около 2х лет назад, РБК СОФТ и несколько других IT-компаний были отделены и собраны в холдинг Армада. Поэтому, кризис до нас добрался не так быстро. Но он добрался до нас.

Об этом конечно все знали. Осенью начались сильные перемены на верхах, ушли многие из руководства. Еще не кончился 2008-й год, а РБК СОФТ провел жесткие сокращения во всех своих подразделениях. В частности, не особо церемонясь, попрощался со своим отделом дизайна департамента интернет проектов. От прекрасной команды топовых дизайнеров осталось два-три человека. Я плохо понимаю, да и не очень хочется, что явилось причиной такого шага. Простые оправдания - кризис, убыточность, нерентабельность и т.п. Про сокращение зарплат вообще молчу, хотя, как говорят, 15% - не так уж и много.

Сокращения так же коснулись и отдела мультимедиа-презентаций, который я, собственно, представлял до конца прошлого года. После сокращения части флэшеров и специалистов по 3D- и видео-анимации, нас осталось только двое.

Начало 2009 года принесло новые сокращения. И вот, вчера было объявлено решение о сокращении флэшеров. Мой напарник уходит уже через одну-две недели. Мне дали больше времени - около месяца.

Конечно, жаль расставаться с устоявшимся образом жизни, после 3-х лет стабильной работы. Не могу сказать, что в РБК СОФТ было плохо. За время, которое я здесь работал, я приобрел огромный опыт и знания, хороших друзей, наработал приличный портфель. Работа, которой я занимался, во многом требовала творческого подхода. Несмотря на большие объемы и часто жесткие сроки, было достаточно времени на обучение и развитие. Хотя, не скажу конечно, что компания выделяла большие средства на повышение квалификации - это делалось со скрипом.

Подводя итоги своей работы в РБК СОФТ, хочется сказать, что пересмотреть результаты своей деятельности приятно:

  • Мультимедиа-презентации.
    Свою первую презентацию (не считая пары мультимедийных каталогов), я сделал еще в 2002-м для OTIS, будучи аутсорсером команды разработчиков eTeam. Позже, уже в стенах РБК СОФТ, презентация дорабатывалась и переделывалась без меня.

    Большая часть презентаций была разработана на основе движка, который я разработал еще в начале 2006-го. Одна из первых работ на этом движке - Мультимедийная презентация Fiat (самая первая - для компании "Начало" - говорящее название).

    Если говорить о работах, которыми я горжусь - это презентации Мультимедиа-презентация Лукойл, Мультимедийная презентация для «CeBIT 2007», Росстат. Предварительные итоги ВСХП по полной программе, ALM-Development, Комитет Рекламы Правительства Москвы. Еще был очень интересный проект - презентация самого департамента презентаций, с каталогом работ.

    Хочу отметить, что моей работой в этих проектах являлись программирование и анимация. Заслуги дизайна, безусловно принадлежат нашим дизайнерам - я участвовал лишь как критик, а разрабатывал дизайн лишь некоторых слайдов. Конечно, все идеи и работы - это результат тесного сотрудничества нашей команды.

  • Моя первая презентация на Flex. По сути, это интерактивная карта. Здесь, это on-line версия карты (к сожалению, клиент выложил не все материалы, поэтому много фотографий отсутствует). Изначально, это была мультимедиа-презентация на CD, которую, по просьбе клиента выложили в Интернет.
    Это был не первый опыт Flex-разработки, но мой первый коммерческий проект на Flex.

  • Игры и открытки. Я провел много приятных часов над их разработкой. Вот некоторые из них: Игра для ПНП «Здоровье», "Ледовое шоу маленьких поросят", ХЦ мышератор (первые две игры были созданы на базе физического движка моей разработки под flash 7-8, Мышератор - на Fisix под flash 9). Были и с раздеванием (жаль хостинг прикрыли), и просто заставки.

    Почти все игры на Детском Портале Москвы - наша работа. Есть хорошие, есть не очень. Не так давно, я разработал движок для кроссвордов, на базе которого работают Кроссворды. Они есть так же и на Молодежном портале Москвы.
    Для этого же портала, я разработал мультиплеерные игры Шашки и Го с использованием Flex и SmartFox. Опыт разработки мультиплеерных игр был получен при разработке игрового проекта (не буду называть, из коммерческих соображений) который, увы, так же был погублен кризисом и не был окончательно доделан и опубликован.

  • Банеры - до сих пор висит на сайте банер с шахматами, который я сделал в 2006 году. Тогда были золотые времена, когда хватало времени заморочиться на банер с 3D-эффектами.
    Могу с гордостью сказать, что вращающуюся монетку в логотипе сайта Сбербанка cделал я (не смотря на то, что смотрится она там, конечно, несколько абсурдно).

  • Работы по различному интерактиву, такие как ротатор рекламы на ТВ3, интерактивные карты с редактором в CMS (к сожалению, модуль карты для Raiffeisen еще не опубликован).

  • Flash-сайтами мы занимались крайне редко, ввиду специфики департамента мультимедиа-презентаций.
    Самая первая моя работа в РБК СОФТ, был сайт компании Steelar. Мне любезно предложили доделать flash-анимацию главной страницы и сделать форму заявки (нудная работа, от которой тогда все флэшеры открещивались), чем я и занялся с энтузиазмом, и в итоге, прикрутил даже печать формы из flash.

    Полностью флэшовый сайт для компании Базовый Элемент. Сейчас здесь уже совсем другой сайт. Но еще не так давно, это был сайт, полностью сделаный на flash 6, посаженный на CMS, с возможностью редактирования контента и deep-linking.

    Еще один сайт - VI, создававшийся в эпоху flash 8. Здесь я по полной оторвался, используя фильтры, включая DisplacementMap. Сейчас этот сайт на поддержке других разработчиков, но кардинальных изменений нет. С сожалением отмечаю, что это сайт выглядит несколько недоделанным. Виной тому были политические и материальные причины.

    Один из последних проектов - главная страница Детский портал Москвы. Гордиться этой работой пока не могу. Великолепный дизайн и громадная работа по разработке убиты кризисом и сроками. Несмотря на обширные работы по оптимизации, заставка забивает процессор по полной, а всё по одной причине - она не должна масштабироваться. Но она это делает, а следовательно включается сглаживание.
    Но доработка была отложена до лучших времен. Надеюсь, что эти времена настанут.

Забавно... Пост плавно преобразовался в нечто похожее на резюме или портфолио. Конечно это далеко не все работы, которые были сделаны в стенах РБК СОФТ. Кроме того, еще столько же было сделано на фрилансе, но об этом сейчас речь не идет.

Жизнь продолжается, ухожу в свободное плавание. Что будет дальше - время покажет...

Было и хорошее и плохое, и интересные проекты и не интересные, и удачи и провалы. Главное - прекрасные люди, с которыми я работал в команде. Кто-то сейчас еще в стенах РБК-СОФТ, кто-то давно ушел или попал под сокращение. Нам еще предстоит много работать вместе, но сейчас хочу сказать им всем огромное спасибо. Несмотря на развал, все кризисы и прочий негатив, в памяти остались только самые хорошие воспоминания.

Я на воротах

суббота, марта 29, 2008

Первый законченый проект на Flex. Грабли и впечатления.

Вот закончен еще один проект. И отличие его от предыдущих - это чистый Flex-проект построенный на MXML-верстке.

О проекте

Вкратце - результат проедставляет собой презентацию-каталог (оффлайн, версия для CD/DVD и версия для TouchScreen), в котором основной элемент - интерактивная карта России, разделенная на регионы. По клику на регионы осуществляется его увеличение и вывод городов. По клику на город, выводится панель со списком типов объектов (презентуемых заказчиком). По клику на тип объекта, открывается список самих объектов с фото-превьюшками и описаниями. По клику на описание объекта выводится более подробное описание с теми же фото-превьюшками, по клику на которые показывается крупное фото. Кроме того - два доп-раздела "О компании" и "Контакты".

На flash-разработку проекта я выделил две недели, т.е. в реальных условиях менее 10 рабочих дней.

На распутье

Сначала возникло желание делать проект на моем старом (правильнее сказать - устаревшем) но отработанном презентационном движке AS2. Но структура проекта совсем не похожа на послайдовку, поэтому возник соблазн сделать презентацию другим способом, и полностью задействовать Flex.

Дизайн-макет, на первый взгляд, показался довольно сложным, но глаз уже уловил, насколько выигрышно было бы использовать Flex-верстку. Верстать и программировать динамические списки, поставляемые выборками из XML-базы, "ручками" на AS2 - тоска.

Опыт работы с Flex за плечами уже есть, AS3 освоен. Но имеют место сомнения: "А вдруг упрусь в какую-нибудь проблему или глюк, и сроки полетят?" "Сроки жесткие, может быть лучше по-старинке, AS2?" "Зато уверенность, стабильность и предсказуемость". После часа раздумий, решился рискнуть - Flex.

За работу

Моя рабочая платформа - Flex Builder 3 Plug-in for Eclipse.

Настало время применить теорию на практике. Для начала, "порезал" макет, подготовил все "ассеты" и начал верстать экраны.

Взаимодействие пользователя представляет собой сложную систему состояний экрана. Решил использовать систему состояний Flex (states). И сделать это так - сначала сверстать все элементы приложения в базовом состоянии, а потом создать ряд состояний для каждого этапа работы приложения, в которых скрывать/открывать и трансформировать элементы.

При верстке проблем не возникло. Очень напоминает верстку сайтов. При помощи стилей можно творить чудеса - использовать скины даже не потребовалось. Всё необходимое было сверстано совсем без затыков за один-два дня. Впечатления самые положительные.

Параллельно, моим коллегой готовилась флэшка с картой. Клип с картой подгружается компонентом mx:SWFLoader. Сначала мы решили сделать ее в виде большого таймлайна, и навигация по карте осуществлялась бы командами gotoAndPlay(""). Выбор такого решения (конечно не очень удачного) был обусловлен желанием сделать карту в виде видео-ролика с 3D-эффектами. В итоге сроки свели задачу к простой флэш-анимации :). Позже стало ясно, что способ тайм-лайновой анимации совсем не интересен и карту анимировали программно Tween-ом.

Затем, после отладки навигации по состояниям (которые пока сменялись резкими переходами без анимации), настало время наложить эффекты появления и трансформации элементов. При анимировании появления/скрытия, я столкнулся с ситуацией, изложенной ниже. До конца контролировать ситуацию на получилось, но компромиссное решение было найдено.

Зашивание проекта в Zinc особых трудностей не составило. Zinc спокойно интегрируется во Flex-проект. Использовались основные объекты глобального класса mdm:
mdm.Application - для получения директории, из которой запускается приложение,
mdm.Application.Library - для работы с библиотекой приложения.
mdm.FileSystem - для тестирования наличия файлов.

В итоге, хочется сказать, что проект завершился успешно. Скорость разработки на Flex превзошла мои ожидания, и сэкономленное время позволило дополнительно отладить и отточить приложение (переделать анимацию интерактивной карты коренным образом). Впечатления от работы с Flex остались самые положительные, и я рад, что рискнул.

* * *

Ниже изложено несколько нехороших ситуаций:

Неверно спроектированная верстка

Дизайн-макет был разработан на разрешение 1600х1200 - для TouchScreen. Позже, когда приложение было уже на этапе отладки, выяснилось, что нужна еще одна версия - предназначенная для распространения на CD/DVD, а значит, под меньшее разрешение. Пришлось срочно переверстать новую версию под 1024х768. Если бы я изначально заложился под трансформируемую верстку (благо, во Flex эта возможность реализована превосходно), лишней работы делать бы не пришлось. И версии можо было бы не плодить. На будущее - нужно изначально закладываться на гибкую верстку - стоит того.

Внедрение шрифта формата .OTF

При внедрении шрифта возникла следующая проблема. Мне необходимо внедрить шрифт MyriadPro. Это TrueType-шрифт формата .OTF.
Код внедрения в стили:


@font-face
{
font-family: MyriadPro;
font-weight: normal;
src: url("Assets/Fonts/MyriadPro-Regular.otf");
unicode-range:
U+0020-U+0040, /* Punctuation, Numbers */
U+0041-U+005A, /* Upper-Case A-Z */
U+005B-U+0060, /* Punctuation and Symbols */
U+0061-U+007A, /* Lower-Case a-z */
U+007B-U+007E, /* Punctuation and Symbols */
U+00FC-U+00FD, /* UE */
U+0410-U+042F, /* Cyrillic Upper-Case */
U+0430-U+0451; /* Cyrillic Lower-Case */
}

В окне FB Design шрифт отображается некорректно, выдает ошибку транскодирования: "Exception during transcoding: Font for alias 'MyriadPro' with plain weight was not found at: ...MyriadPro-Regular.otf ..." И то же самое для версии "bold".
Однако, при компиляции проекта ошибки нет и в приложении шрифт отображается корректно на разных компьютерах. Отнес это к проблемам (читай - глюкам) средства визуальной разработки FB.

Эффект появления/скрытия и states

Пришлось повозиться с эффектом mx:Fade, используемого для появления/скрытия некоторых компонентов.

По началу я предположил, что если я создам эффекты Fade (один для появления и другой для скрытия) и укажу его для некоторых компонентов в стилях showEffect и hideEffect, то при смене состояния, при изменении свойства visible, компоненты будут плавно появляться/исчезать. Как бы не так. При формировании состояния, выполняются (тупо, без каких либо перепроверок и оптимизаций) все действия - начиная с базовых состояний. Если в базовом состоянии visible устанавливается в false, а в текущем, базирующемся на нем, в true, то будет выполнено два действия со всеми вытекающими последствиями. Если Fade-скрытие еще не успело завершится, а уже вызывается Fade-появление, то последнее будет просто проигнорировано. Короче - полный разлад и совсем не адекватный результат. То же самое относится и к другим видам эффектов.

Для анимации такого рода необходим другой прием. При использовании transitions всё сразу встало на свои места. Конечно, это принесло другие сложности, но зато эффект появления/скрытия работает как часы.

Маскирование контента SWFLoader

Проблема связана со следующей особенностью. Клип интерактивной карты в процессе работы приложения может трансформироваться (трансформируемый клип расположен в главном таймлайне загружаемой флэшки). Но он должен отображаться в строго отведенной прямоугольной области. Казалось бы, чего проще - поместить его в Box, у которого horizontalScrollPolicy="off" verticalScrollPolicy="off" clipContent="false". Не работает. Причем странно - пока клип карты перемещается, границы отсекаются. Как только клип останавливается, всё что вылезает за пределы области появляется.

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

Воспроизведение FLV

В самом конце столкнулись со следующей проблемой. Презентация начинается с видео-заставки. Заставка - файл FLV, который подгружается в mx:VideoDisplay. Проблема заключалась в том, что компонент отказался воспроизводить внешнее видео, если презентация находится на удаленном сервере (с этим то всё ясно - включена опция -use-network=false), или на сменном носителе - записанная на CD/DVD (а вот это - критично).

К сожалению, FLV нельзя внедрить посредством @Embed. Но это может сделать Zinc, чем я немедленно воспользовался. Но такое решение не самое красивое. В дальнейшем придется выяснить, почему не воспроизводится FLV со сменных носителей, и как этого избежать. Возможно, необходимо установить параметры безопасности, а может быть проблема связана с задержками доступа к CD/DVD приводу в связи с чем, что-то рассинхронизировалось в приложении.

пятница, января 11, 2008

воскресенье, декабря 16, 2007

Первое собрание Russian Adobe Flash Platform User Group. Взгляд зрителя

Сегодня удалось поприсутствовать на первом собрании Russian Adobe Flash Platform User Group.
Честно говоря, это первое мероприятие, посвященное флэш-технологиям, на котором я присутствовал когда-либо.
Впечатления противоречивы, но, думаю, отрицательные эмоции - лишь результат депрессивного состояния от накопившихся неблагоприятных обстоятельств, преследующих меня последнее время.

Я чуть опоздал на первый доклад ("Flex + Flash = ") и пропустил имя докладчика - представителя Adobe (* Артемий Малков *). Давались основы Flex-разработки на Flex Builder 2. Очень ценный доклад лично для меня - я еще не имею практики работы с визуальным редактором Flex и MXML. Легкая и наглядная подача: на примерах, которые кодились прямо на глазах у слушателей. Доклад рассчитан на широкую аудиторию, в основном, для начинающих.

Второй доклад ("Работа с событиями в ActionScript 3 и Flex") для тех, кто уже попробовал себя в разработке Flex-приложений на AS3. Костя Constantiner снизошел к нам из Питера и довольно доходчиво, но всё же несколько сжато рассказал про события в AS3 и Flex и их особенности.

Обещали обнародовать все материалы докладов, и я с нетерпением жду, чтобы их покопать поподробнее.

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

Как-то получилось, что участники разделились на две категории:
  • те кто сидел ближе к центру и активно выражал свои мысли в микрофон - бесспорно компетентные и уважаемые товарищи,
  • и просто зрители, которые слушали, смеялись, но мнения свои выразили лишь в анкетах.
И это нормально. Предполагаю, что народ расшевелился на неофициальной части за кружкой пива. Я, увы, не смог в этом поучаствовать, но надеюсь эта встреча не последняя - уже запланирована следующая на 14 января.

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

* * *

Фото и видео со встречи:
Блог flashimp,
Результаты первой встречи User Group

воскресенье, августа 12, 2007

Начало

Сегодня тот день, когда я решился создать свой собственный блог!

Зачем мне это надо? Просто настал момент, когда моя деятельность будет интересна не только мне, но и другим flash-разработчикам. По крайней мере, я это планирую.

Я достаточно поработал на ActionScript 2, но теперь пришло время ActionScript 3. И я собираюсь пополнить свой профессиональный багаж. Начинаю осваивать 3-ю версию нашего великого и могучего...

Возможно, "гуру" флэша сейчас снисходительно улыбнутся, продвинутые флэшеры поморщат лоб, а рядовые бойцы немного заскучают... Для меня конечно очень важно, чтобы все мои коллеги в этот момент не щелкнули на крестик в правом верхнем углу или не нажали Back на тулбаре броузера. Я надеюсь на вашу помощь и поддержку. Возможно и у меня будет чему поучиться.

В любом случае, материалы, которые я буду здесь публиковать будут полезны в первую очередь мне. По крайней мере, больше не надо будет рыться в книгах, старых исходниках и каше "избранного".

Итак, этот блог посвящается в первую очередь: изучению ActionScript 3, далее, всему что связано с Flash-технологиями и наконец, интересным событиям и новостям по той же теме. Возможно, будут дублироваться новости с других сайтов - это ни в коем случае "не корысти ради" - обязательно поставлю ссылку откуда взял и оставлю свое мнение.

PS: Блоггер начал радовать с первых минут. Удивительно удобная система. Большой респект!