Выступление о Fuzzle CMS

25 Май 2009

Завтра буду на Flex Camp рассказывать про то, как мы создавали Fuzzle CMS - систему управления Flash-сайтами.

В частности, будет про следующее:

  1. Как автоматически создавать классы для удаленного вызова процедур и кому это может помочь;
  2. О том, как мы неправильно запланировали модульность системы, но потом исправились;
  3. О том, что фотошоперы не хотят знать Flex: как мы планировали встраивание дизайна.

Жду всех!

PS: Презентация будет выложена в обязательном порядке :)

Субтитры для флеш видео плейера (AS3)

11 Июль 2008

Есть такой узкий класс видеоматериалов, которые не переводятся на русский язык или переводятся не слишком хорошо (синхронная озвучка одним голосом). Увы, к нему относится и аниме (японская анимация), которая является одним из моих хобби.

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

Другой вариант - поискать серию на видеохостингах типа Видео@Mail.ru. Кстати, есть даже анимешные сайты, которые коллекционируют соответствующие ссылки. Однако тут тоже есть проблема - мало кому интересно делать специальную версию аниме с русскоязычными субтитрами, поэтому часто либо заливают готовую с русской синхронной озвучкой (что убивает, на мой взгляд, большую часть атмосферы, ради которой все и затевается), либо оставляют английские сабы, что излишне нагружает мозг при просмотре.

Поглядев на все это, мне подумалось: “Эге! А почему никто, интересно, не написал подключение субтитров к флеш видео плейерам? Это так сложно? В AS3 же вроде появился Loader…” В общем, несколько часов пыхтения и сопения привели к написанию небольшого класса - CuePointsFromSRT, который умеет подгружать в видео субтитры из SRT-файла. (SRT один из наиболее простых форматов, в который обычно можно сконвертировать все остальные).

Соответствующий класс выложен под MIT-лицензией (делайте с ним, что хотите, короче), только киньте мне ссылку, если будете использовать :) По адресу дан пример AIR-приложения с открытыми исходниками и ссылка на полноценный видеоплейер с поддержкой сабов.

В продолжение истории: сделал плейер с поддержкой субтитров, обратился к аниме-комьюнити: используйте, мол. Пошло как-то вяло, так что решил создать свой собственный проект специально под аниме с оригинальной озвучкой и подгружаемыми сабами: http://liveanime.ru/

SwitchBoard - новые возможности AIR-приложений

17 Июнь 2008

SwitchBoard - новая технология от Adobe, которая позволяет AIR-приложениям получать доступ к приложениям из пакета CS3. Технология, если я не ошибаюсь, очень похожа на COM - например, в Delphi-программе можно создать объект - приложение Word и проделать некие трюки с Word-документами. Видимо, что-то похожее нас ожидает и от Adobe, что довольно приятно и позволит найти AIR-приложениям гораздо более широкую область применения.

Приколы анекдоты

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

Все это богатство доступно на сайте Adobe Labs + там же есть пара примеров (для InDesign и Photoshop). Пример для Фотошопа конвертирует изображение в PNG. Там же доступна ссылка на документацию к написанию скриптов для Фотошопа и некоторых других приложений CS3. Для Flash CS3, к сожалению, скриптов вроде не предусмотрено, во всяком случае, мне найти не удалось.

Чуть не забыл: сама технология в бете, так что пользуйтесь осторожно :)

4 вопроса, которые интересуют инвесторов

14 Март 2008

Недавно отвечал на такие вот вопросы:

“Насколько реально найти инвестора который поверит в светлую и интересную, но идею? Что надо иметь при себе чтоб заинтересовать инвесторов?”

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

Мои соображения хоть и не особо оригинальны, но может, кому и пригодятся:

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

  1. Кто будет пользоваться проектом? (целевая аудитория). Только, пожалуйста, не говорите, что всем - при этом ваши шансы на успех минимальны. Вы не глава Microsoft, и вашему инвестору это прекрасно известно. Опишите так называемого актера, который будет взаимодействовать с вашей системой.
  2. Почему и в каких случаях целевая аудитория будет пользоваться вашим проектом? (класс выполняемых задач) Опять же, не говорите, что нужно “всегда” или “очень часто”. На это могут претендовать разве что интернет-поисковики. Так вот, опишите Use-Case для целевой группы. (Хотя бы так)
  3. Какие в вашем проекте есть уникальные возможности для выполнения пользователями своих задач? Не говорите, что вы введете в систему более 300 смайликов, и любой пользователь сможет выразить свое отношение к происходящему одним кликом. Это, скорее всего, ненужно, а если у вас нет такого рода уникальных возможностей, то предпочтения будут отданы уже готовой системе. Этот пункт очень важен, и я советую почитать о нем здесь.
  4. Как ваш проект монетизируется? Собираетесь ли вы продавать продукт, или окупать его за счет рекламы? Тут можно немного пофантазировать, но хотя бы приблизительные планы на этот счет очень советую вам продумать.

Дополнительная информация, которая может привлечь к вам внимание (читай: сильно повысить шансы на успех):

  • Опыт создания похожих продуктов. Приводите примеры, считайте точку безубыточности. Новичков - тысячи, опытных людей - единицы, угадайте, кого предпочтут?
  • Наличие команды. Вы уже знаете, кто будет реализовывать вашу идею? Обязательно об этом расскажите. Слаженная команда снижает риски в два раза.
  • Есть работающий прототип. Обязательно покажите. Во-первых, можно оценить привлекательность идеи, пощупать её, так сказать. Становится понятно, над чем работаем. Во-вторых, это означает, что вы лично сильно заинтересованы в проекте, раз потратили на это свое свободное время. Только это не заменяет всех остальных пунктов, и, как минимум, 4-х основных вопросов.

О последних двух пунктах можно почитать здесь.

По моим интуитивным ощущениям, для успеха (т.е. получения инвестиций) необходимо знать ответы на первые 4 вопроса (инвестор поймет, что вы знаете, что хотите сделать) и хорошо осветить один из дополнительных (у вас есть опыт и/или связи). Если вдруг в инвестициях вам отказали:

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

А теперь идите и сделайте это :)

Об одном стартапе…

29 Февраль 2008

Интересно, кому я не обещал, что обязательно покажу, чем занимаюсь “на следующей недельке”? Причем обычно через неделю ситуация повторяется :)

Наконец выхожу из тени. Занимаюсь я стартапом Делаю.РУ -сервисом микроблогов для друзей, которые постоянно вами интересуются. Да и мы ими - тоже :)

Основная функциональность стандартна - можно вести блог, читать блоги друзей, а также приглашать новых по e-mail. Что есть из интересного?

  • Смайлики. Мы решили, что очень приятно, когда ты пишешь “не в пустоту”, а явно видишь реакцию своих знакомых. Стандартный способ для этого в сервисах такого типа - возможность комментирования записей. Но этот способ нам не нравился - одной из идей было, что пользователь должен видеть все обновления на одной странице (как почту - зашел, проверил), и, по возможности, в логическом порядке. Кроме того, в комментариях можно написать что-то обидное, что всегда неприятно. Так что от комментариев осталась одна идея - кнопка , по которой можно поставить смайл.
  • Счетчик перехода по ссылкам. Ну, тут идея простая - когда публикуешь ссылку, всегда интересно, сколько людей ею воспользовалось.
  • Мобильная версия. Мобильные версии, конечно, стары, как мир, однако мне она несколько раз очень хорошо пригодилась - когда мы ездили на конкурсы, я мог “в реальном времени” писать, успешно ли мы выступаем. Интересная технологическая тонкость - сделано так, что не нужно вводить логин/пароль, что с мобильного всегда затруднительно, а нужно лишь добавить в закладки мобильника ссылку с API Key - ключом, благодаря которому производится распознавание пользователя. Т.е. вполне можно читать закрытые ленты, скажем. Аналогичное решение сделано для RSS-лент.
  • Флеш-беджики, десктопная версия на AIR и API для сторонних приложений. Конечно, все это - способы популяризации сервиса. Флеш-беджики уже почти сделаны, пример можно посмотреть на главной странице моего блога. Они отображают последние записи на любой странице, куда вы их повесите, не требуют еды, воды и кешируют записи на целый час, благодаря чему (в перспективе их широкого использования) будет сильно снижена нагрузка на сервер. Интерфейс для подключения флеш и флекс-приложений уже готов, так что у меня буквально чешутся руки (как только разберусь с остальным) сесть и создать мультиплатформенного десктопного клиента (на AIR) к нашему сервису. Чтобы сидел в трее, да проверял сообщения иногда. Ну, и зарелизить API, открыв, таким образом, доступ для расширения функциональности всем желающим (видимо, коллегам по RAFPUG :)

Вот так и работаю - понемногу. Читать мой микроблог можно здесь - http://delayu.ru/user/1. В микроблоге я пишу про себя, про какие-то маленькие находки, на которые неудобно делать содержательную запись в блоге. Регистрируемся, не стесняемся, всех найду и добавлю в друзья :) Кто очень стеснительный - читать меня на Делаю можно через RSS-ленту.

Apollo Desktop Photos 1.2

27 Февраль 2008

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

Картинки на телефон

Приятно, что хотя финальная версия вышла только в понедельник, Claus Wahlers уже обновил свою библиотеку AIR Remote Updater для удаленного автообновления программ. Кстати, если будете писать AIR-приложения, очень советую - пользовать довольно удобно.

В свою очередь, я обновил свой небольшой фотобраузер, который пишу аж с тех далеких времен, когда AIR называлась словом Apollo и была в альфа-версии. Автообновление поддерживается :)

Скачать Apollo Desktop Photos 1.2

Скачать Adobe Integrated Runtime (AIR) 1.0 

Использование Web-сервисов под Flex 2

21 Февраль 2008

Бродя по сети, наткнулся на FleXtense -программу, которая создает по WSDL (определениям Web-сервиса) AS3 proxy-классы для соответствующих вызовов.

В ихних примерах есть программа, похожая на ту, что демонстрировали евангелисты на RAFPUG-2 - а именно, получение погоды с веб-сервиса. Поскольку Flex 3, в котором есть похожая функция, еще не вышел, а 3-я бета демонстрирует не очень стабильную работу, может, кому и пригодится.

О компьютерных играх

21 Февраль 2008

Читаю про разработку компьютерных игр (хотя, вероятно, будет интересно только людям, непосредственно с этим столкнувшимся, или интересующимся общими вопросами по управлению проектами)

http://dtf.ru/articles/read.php?id=3755 - Игры: как это делается (юмористическое)
http://www.dtf.ru/blog/read.php?id=49888 - Практическое руководство для молодых команд

Пара моих демо-игр: http://gm2flex.janvarev.ru/Examples (с использованием флекса, используется собственноручно разработанная библиотека)

О RAFPUG-3

18 Февраль 2008

Напишу-ка я впечатления о прошедшем мероприятии.

Как сказал Артемий Малков, “очень приятно, что народ собирается за полчаса до начала регистрации”. Действительно, я был в Торонто уже в 13-15, и уже в это время там было несколько людей, включая Александра Козловского, докладчика по AIR и Papervision 3D. Пообщавшись с ним, я узнал, что Design Mode в последней версии Flex Builder 3 beta 3 падает не у меня одного :) так что, увы, но до выхода финальной версии Flex 3 нормально, с визуальным редактором разрабатывать приложения под AIR большинству из нас не светит. Александр же, как настоящий мастер, использует для этого бубен, и у него все получается :)

Первым делом Артемий рассказал о конкурсе русских флеш-работ Russian Flash Awards - 2008, показав, насколько я понял, собственноручно подготовленный видеоролик с демонстрацией работ победителей прошлых конкурсов. В этом году появилась поддержка Adobe, а также несколько дополнительных номинаций - конкурс по Flex и AIR-приложениям. Прием работ - до 30 апреля 2007.

Далее производилась раздача призов, выигранных в предыдущую встречу RAFPUG, во время приезда евангелистов от Adobe. Выигравшим Flex Builder 3 было обещано, что он обязательно появится, когда его выпустят, и розданы майки с логотипом. К Александру таки добрался iPod nano.

Далее Александр провел доклад по использованию в AIR:

  • прозрачных окошек;
  • Papervision 3D;
  • Нативного Drag-and-Drop-а файлов;
  • Использования Tray-иконок;
  • Обновления приложения средствами AIR.

В общем, очень большой объем материала был представлен нам в очень сжатые сроки. Мне лично доклад был очень интересен, но я уже многократно щупал AIR, так что мог схватывать “на лету”. Для тех, кто хочет разобраться поподробнее, Александр обещал выложить исходники в своем блоге.

(Для тех, кто был на встрече - там обсуждались AS3-библиотеки FZip и AIRRemoteUpdater, их можно найти здесь)

После чего был чай и кофе. К сожалению, совершенно без плюшек.

Вторая часть встречи - Hands-on по Флексу. Идея, как её озвучил Артемий со ссылкой на Ростислава,”чтобы не щупавшие флекс флешеры наконец потеряли флекс-девственность” :)) В такой формулировке желающих сделать это публично почему-то не оказалось, и Артемий после чая начал рассказывать про Binding данных во флексе с надеждой, что кто-то все-таки осмелится выйти и написать хоть небольшой кусок кода.

В это время прогрессивная часть разработчиков устроила что-то подобное своего Hands-on в районе термосов с чаем и кофе, благо ноутбуки были. К сожалению, не смогу назвать всех участников этого импровизированного представления (не знаю имен, прошу извинить), но, например Александр Козловский и Таня Белая помогали в отладке SkyBox в Papervision 3D, я общался с молодым флекс-разработчиком Максимом Павловым, демонстрируя некоторые собственные разработки, при наличии наблюдающего за этим процессом Dl1t.

К сожалению, по некоторым независящим от меня причинам, на этом моменте мне пришлось покинуть встречу разработчиков, но могу сказать, что мне очень понравилось :)

Пощупать Флекс или Hands-on на RAFPUG-3

17 Февраль 2008

Буквально 5 минут назад прочитал последний вариант программы RAFPUG-3. В программе предусмотрен Hands-on для флешеров, которые хотят “пощупать” Flex.

Хочу внести свои пять копеек: я планирую приехать с ноутом, и буду в этот момент показывать всякие свои наработки в области флекса. О себе: юзаю AMFPHP и собственный небольшой фреймворк. Можно просто подсаживаться и смотреть.

Если никому не будет интересно, буду просто сидеть, работать или смотреть, как осваивают Flex другие :)

До встречи!