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

понедельник, января 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/.

воскресенье, февраля 17, 2008

3-я встреча RAFPUG. Рабочие будни

Сегодня забежал на пару часиков на третью встречу Российских Пользователей Адоби-Флэш-платформы.

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

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

Начал встречу, как всегда, Артемий, и анонсировал проект Adobe и иже с ним - портал Flashawards - несколько кривовато работающий (позже понял почему такое ощущение - объект флэш криво вставлен в HTML и в IE появляется злочастная рамочка), но вполне симпатичный, посвященный Первому профессиональному flash-конкурсу в России. Для начала, нашему вниманию был представлен призванный вдохновить всех флэшеров, забавный видео-ролик с зомбирующим образом быстро сменяющимися кадрами под чудесную музыку Save the Robots (Members Of Mayday), представляющий работы победителей предыдущего конкурса. Затем были вручены подарочки (обещаные на второй встрече) и Артемий обмолвился о скором выходе 3го FlexBuilder!

Цель моего сегодняшнего визита - послушать доклад Александра Козловского "Простой путь создания трёхмерного AIR приложения". Анонс был настолько завлекателен, что, казалось, только ради одного этого доклада стоило сорваться - анонсировалось и Papervision3D и создание AIR-приложения.

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

Основные (лично для меня) моменты по созданию AIR приложения:
  1. Конфигурирование AIR-приложения. Все настройки хранятся в файле PROJECTNAME-app.xml. Важные для нас теги:
    filename - имя генерируемого файла.
    name - имя приложения (ВНИМАНИЕ - оно где-то в конце файла дублируется, что может вызвать недопонимание в процессе отладки).
    visible - будет ли видимым главное окно после старта.
    И другие - аналогично - пояснения есть для каждого в комментариях.
  2. Если нам нужно приложение в виде окна с тулбаром и тому подобными примочками, мы наследуем главный класс нашего приложения от mx.WindowedApplication. Если же нам всё это не нужно и мы хотим отсутствия всякого фона между нашей графикой и десктопом - просто от mx.Application.
  3. Создание tray-иконок для Windows и Apple платформ отличается. Если в Windows это место называется tray, то в Apple - это Dock. Соответственно, Александр предлагает нам проверять такие параметры как NativeApplication.supportsDockIcon и NativeApplication.supportsSystemTrayIcon. Затем, используя класс NativeMenu и иже с ним, мы создаем меню. ВАЖНО: Иконку лучше убирать принудительно, т.к. операционная система не всегда это делает самостоятельно. Для этого достаточно сделать NativeApplication.icon.bitmaps=[];.
  4. Для доступа к главному окну, используем SystemManager.Stage.NativeWindow.
  5. Для отлова Drag'n'Drop нам понадобятся события для ViewPort3D:
    NATIVE_DRAG_ENTER - вход мыши с драг'н'дроп-содержимым.
    NATIVE_DRAG_DROP - отпускание мыши с драг'н'дроп-содержимым.
    Кроме того, пользуется событие ADDED_TO_STAGE для инициализации.
  6. Важное замечание по Drag'n'Drop: используя объект события NativeDragEvent.Clipboard.getData(); можно получить переданное драг'н'дроп-содержимое. Дело в том, что при Drag'n'Drop-перетаскивании, данные складируются в буфере Clipboard, хотя, при этом данные, запомненные, к примеру, по Contrl+C не теряют своей актуальности.
  7. Сохранение файла:
    Stream=new FileStream();
    f=new File(File.applicationDirectory.nativePath+'...'); Где File.applicationDirectory.nativePath - текущая директория исполняемого приложения.
    Stream.open(f, FileMode.WRITE);
    Stream.WriteMultiByte("...data...");
    Stream.close();

По Papervision3D следующие заметки:

  1. Основные компоненты, которые необходимо создать и инициализировать: BasicRendererEngine - движок.
    Viewport3D - наследник Sprite для рендера изображения.
    Другие объекты - Scene3D, Camera (Camera.target - устанавливает объект, за которым будет наблюдать камера)

Другие заметки:

  1. Для прелоадера/сплэш-скрина используем объект-потомок ProgressBar. По окончании загрузки, диспатчим событие COMPLETE, после чего приложение Application получит событие PRELOADER_DONE.
  2. Для обновления приложения используем класс Updater. Класс выполняет лишь следующую функцию - сообщает AIR, что необходимо после закрытия приложения обновить его. Александр предложил самостоятельно скачивать и обновлять приложения с использованием библиотек ZIP-архивации.

Конечно, хотелось бы увидеть более подробное изложение, и, я думаю, если бы у Александра всё получилось так, как он планировал, так бы оно и было, но - обстоятельства выше нас. Несмотря на все трудности, доклад получился очень ценным и интересным.

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

В итоге, впечатление от встречи однозначно - Коллеги, хватит веселиться - настало время потрудиться. Наступили рабочие будни.

* * *

Исходники того, что демонстрировал Александр на RAFPUG-3 здесь. Про обновление AIR-приложения статья здесь (уже в "Чужой тетради").

вторник, января 15, 2008

Вторая встреча RAFPUG. Дети - наше будущее.

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

Вторая встреча состоялась 14 января 2008. Несколько ключевых моментов: комьюнити, доклады, место проведения, дети.

Место проведения

Место нашли быстро, благодаря фотографиям, размещенным в анонсе. Иначе, можно было бы долго плутать между длинных заборов. Итак, к 17 часам мы оказались в заведении, именуемом "Московская физико-математическая школа №2". Кстати, впечатление вполне положительное - всё чисто, ухожено и культурно. Рядом со входом уже курили участники встречи в том числе Рост, Иван, Константинер, Таня и другие сотоварищи. Поздоровались - уухх руку не буду неделю мыть!

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

Доклады

После вступительного слова о пользе и благодарности компании Adobe, микрофон взял Andrew Shorten. Несколько раз оглушенный высокочастотными писками и скрипами из динамиков, он произнес хвалебную речь новым достижениям Adobe в области RIA. Доклад сопровождался переводом, что было хорошо для понимания, но убийственно для времени проведения мероприятия. Зато дети не скучали и внимательно слушали. После доклада много времени убилось на вопросы слушателей, в принципе не сильно важные и интересные.
Лично для меня, доклад внес ясность в некоторые вопросы касательно AIR. В остальном - просто обновил и подкорректировал общую картину продукции Adobe.

После буфета, последовал доклад про Flex 3. На этот раз обошлись без перевода и мне пришлось включить свой английский. Дети начали потихоньку линять.
Andrew на примерах рассказал о том, как сделать компонент, создать скин для компонента, показал новые фичи. Сильно подпортил картину тормозной компьютер, за который Andrew постоянно извинялся и краснел. Кроме того, примеры были уже "заготовлены", что смотрелось менее познавательно и убедительно чем в докладе Артемия Малкова на первой встрече. Но в итоге лично я остался доволен. Нас собрали, бесплатно рассказали о важных и познавательных вещах, да еще и покормили.

После нескольких вопросов-ответов, слово взял Enrique Duvos. Доклад читался на английском с испанским акцентом. Этот чертов испанец, в свойственной им манере, так зашустрил, что пришлось включить свой быстрый английский. А он у меня еще не доделан. Поэтому, информация усваивалась частично и большей частью читалась с экрана. Но на экране тоже было всё мелко и с нашего ряда неразборчиво.
И всё же, урывками, я получил общее представление о том, какие продукты являются open-source, какие нет, чем это всем грозит и как всё это замечательно. Дата-сервисы дались труднее. Впечатлила демонстрация синхронной работы двух флекс-приложений, причем, синхронизация осуществлялась мгновенно посредством сокетов через веб-сервис.
Почти все дети ушли. Остались самые стойкие. Точнее стойким был один. Он сидел в ряду перед нами и внимательно слушал. Его вид настолько меня впечатлил, что мне даже за себя стало стыдно что я половину читаемого не понимаю... Рядом дальше сидели два его товарища. Нет - они полулежали, полукрутились, полуспали и упирались лбами в спинки впереди стоящих стульев. Короче, создавали контраст, что вселяло еще больше уважения к первому стойкому. Не... если б мне обломился приз на розыгрыше, я б наверное отдал приз ему.

Перекусив парой-тройкой булок в буфете, мы перешли к заключительной части. Заключительная часть была сильно скомкана. И не удивительно. Уже был 10й час. Constantiner, уложившись в 10 минут поведал о RIA. Что можно рассказать о RIA за 10 минут? Только общие фразы, которые в основном нам всем уже известны. Жаль, что мероприятие началось так поздно - я убежден, что Костя хотел нам рассказать гораздо больше и интереснее.
Иван Дембицкий еще раз доказал свою компетентность и заслуженное уважение во flash-сообществе. Как я краем уха слышал без подготовки, Ваня выразил наше общее настроение, по сути, подведя резюме первой встречи.
Артемий Малков завершил выступления. Мысль его была направлена на внедрение flash в систему образования. Презентация его была украшена забавной анимацией, наглядно показывающей, как здорово на флэш смотрятся физические опыты. Однако, большое черное пятно в левом нижнем углу выглядело на экране проектора как тень от чьей-то прострелянной головы, что было еще забавнее.

В конце мероприятия провели розыгрыш призов. Все участники заполнили анкеты, из которых и выбирались счастливчики. Призы были действительно ценные - коробки с Flash CS3 (или Master Collection?), Flex Professional, iPhone nano, ну и по мелочи - рюкзаки. Правда призы застряли где-то по дороге, но обещали что их доставят почтой.
Мы-то знаем для чего нужен розыгрыш в конце мероприятия - чтоб народ до конца досидел и анкеты заполнил. Лишняя мотивация - перестраховались что ли? Сомневаюсь, что кто-то сидел ради призов.

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

Впечатления

  • Жаль что поздно начали. Во второй половине дня уже мозг плохо воспринимает информацию и зовут домашние дела. И времени явно не хватило.
  • Доклады, несмотря на многие недостатки, оказались очень ценными и я нисколько не жалею о потраченном времени.
  • Идею преподавать программирование на Flash в школах лично я поддерживаю, т.к. у флэша есть одно главное преимущество - с ним интересно работать. Детям это будет увлекательнее чем бэйсик. Кроме того, в комплексе могут быть даны основы графики и анимации.
    Но есть одно НО. Преподавать надо соблюдая правила программирования, чтобы не запудрить детям мозг нетипизированными переменными, глобальными _root-ами и другими вредными особенностями ActionScript. А еще точнее - преподавать надо не ActionScript, а программирование согласно стандарта ECMAScript. Иначе можно "попортить" наших программистов.
  • Насчет вопроса о преподавании Flex в ВУЗах сомневаюсь. Точнее, преподавать нужно, но факультативно. Пусть учащиеся сами выбирают кем они хотят быть и на чем хотят программировать. Создавать факультет Flex-разработчиков или кафедру Flash, на мой взгляд, мало кто согласится. Это узкая специализация. Хотя, кто знает... RIA-специалист, возможно вполне реальная специальность. Но она много чего в себя должна включать. А Flash/Flex-разработка лишь как составляющая.
    Вызвало недоумение утверждение Артемия Малкова по поводу преподавания Flash/Flex - (по памяти) - "Если кто-то рисует хорошо - будет рисовать, кто-то похуже - будет программировать". Как-то однобоко. А если и программировать не умеет? В расход пускать?
  • Ждем следующей встречи!

* * *

Поправки.

По-видимому до нашего ряда иноязычная речь дошла с искажениями и вот, появились уточнения и коррекции. Призы - Flex Builder 3 Professional, Creative Suite 3 Web Premium, iPod Nano.

воскресенье, декабря 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