Monthly Archive for January, 2008

What is Singularity?

Singularity?Товарищь Арал Балкан задумал что-то страшное и обещает рассказать всем желающим кто повесит у себя на сайте картинку. So, what is Singularity? Если бы это затеял кто другой, я бы посмеялся и закрыл. Но, этот человек способен на многое. Так что, подавшись искушению, я все же повесил бадж.

Кстати, а вот это называется Singularity. Не оно?

AS3 компилятор

Наткнулся тут недавно на AS3 Eval 0.2 — компилятор AS3 на AS3. Я понятия не имею что такое Tamarin Project, но автор ссылается на него. Ну, чтобы не выглядеть совсем уж нубом, я это название где-то слышал и даже пробежался по сайту раз уж такое дело.

Само собой, посмотрел исходники этой библиотечки. Нехилый такой размерчик. В институте я слушал курс по компиляторам и, в принципе, знаком с тем как их делают и какие они бывают. У меня даже где-то валяется поделка интерпретатора простого JavaScript-like языка на AS2, который я успешно использовал в паре проектов давно-давно.

Честно говоря, если этот интерпретатор создавался с определенной целью — добавить возможность выполнения скриптов к движку AI, то особого смысла компилятора AS3 на AS3 я не вижу. Хотя, будет весело компилировать компилятор на скомпилированном на компиляторе … компилятор в виртуальной машине. Сколько таких вложенностей повесят все нафиг?

«Коллекционная карточная онлайн игра»
Мне одному смешно?

Или я что-то не понял.

Коллекционная карточная и онлайн. Смысл коллекционных карточных в коллекции карт. Сидеть смотреть на них и трогать. Коллекционировать.

В онлайне пиксели. Из пикселей создается всё, что душе угодно. Когда можно сделать коллекционных драконов, коллекционных эпических доспехов, нафига нам коллекционные онлайн карты? Бред.

Поиск по Flash контенту

Кстати, раз уж обмолвился о поиске по флэш контенту. Напишу-ка подробнее свои тёмные мысли по этому поводу.

Во-первых, совсем недавно google заявил, что собирается индексировать флэш сайты используя Search Engine SDK от чуваков. Во-вторых, проблема поиска во флэш и AJAX сайтах существует уже давно. Кто-то дублировал текст в скрытых тэгах на странице с флэшем, кто-то подменял контент для роботов. Как я уже говорил, по моим данным, за такие штуки любят банить и навсегда, потому что это самая распространенная техника так называемой черной раскрутки — отдавать поисковику то, что он хочет, а показывать какой-нибудь очередной спам. Ведь кто знает, что ты всего лишь хочешь проиндексировать свой реальный флэш контент, а не обмануть систему.

Adobe Search Engine SDK, конечно, идея хорошая, но оно почему-то не ищет по файлам скомпилированным под Flash Player 9, что делает ее совершенно неактуальной в современных условиях.

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

А кто из вас не делал контент, который не существует в текстовом виде внутри swf файла, но в то же время отображает текстовую информацию? Вот что уж точно не будет никак индексироваться.

Что делать?

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

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

Как бы в идеале

Чувакам пора бы что-то придумать по этому поводу. Например при паблишинге экспортить какие-то дополнительные поля в swf файле с информацией для поисковиков «как меня индексировать». Например помещать туда в каком-то закодированном виде информацию о том, что где и откуда флэшка грузит, какие сервисы использует. В общем, что-то для поисковиков, чтобы без распарсивания флэшки они узнавали максимально много информации для более-менее правильного индексирования контента.

HTML Wrapper

Наверно, все уже видели вот это и пример работы и еще один. Рендерер HTML на Flash с использованием JavaScript. Выглядит довольно забавно. Как эксперимент.

Вопрос — как это использовать?

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

Чем отличается HTML сайт от Flash сайта? Да всем. Попытка хтмлизации флэша — это Flex, имо. А Flash — это необычность, цветастость, интерактивность, движение.

По-моему, будущее этого враппера весьма туманно.

Ах да, чуваки уже давно пытаются сделать поиск во Flash файлах.

Альтернатива FMS

Wowza Media Server — еще одна альтернатива Adobe Flash Media Server на Java. Говорят, что дешевле, быстрее и больше возможностей. Во всяком случае, Java может работать не только на Windows. Я, конечно, имел дело только с FMS. И больше ни с какими серверами, так что особо сравнить ничего не могу.

Но все же писать серверный код на AS как-то удобнее, чем на Java, т.к. последний язык я не знаю.

Spelling Plus Library

Check-as-you-type spell checking for Flex, Flash, and AIR
Библиотека для проверки-правописания-во-время-написания

Spelling Plus Library (SPL) — это клиентский движок для использования во Flash, Flex и AIR как програмерами, так и дизайнерами.

Size
Движок проверки правописания и выделения неправильных слов весит всего 12Кб, база из 150000 слов — всего 250Кб.

Simple
Во флэше просто перенесите компонент на сцену. Во флексе используйте простые MXML тэги. Никакого дополнительного кода не требуется.

Robust
У SPL хороший полностью документированный API, разработанный с идеей дальнейшего расширения.

Customizable
Возможность создавать свои словари, шаблоны подчеркивания. В принципе, почти все можно подстроить под себя.

Powerful
Проверяет и выделяет больше 25000 слов в секунду*. Распарсивает словарь из 150000 слов быстрее, чем за 3 секунды. Показывает варианты исправления через 250мс (или 25мс в быстром режиме).

Smart
Поддержка символов с акцентами. Фоновая загрузка. Вежливый парсинг словаря (не повесит приложение). Умное выделение видимого текста. Чувствительность к регистру. Работает с пользовательскими контекстными меню.

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

Немного об отладке Flash/Flex приложений

Товарищи PHPшники в моей конторе давно используют FireBug для отладки скриптов. Какое-то время назад я сам оценил возможности этого плагина когда дело доходит до отладки флэша и флекса.

Качаем ThunderBolt и наслаждаемся. Библиотечка позволяет пользоваться консолью FireBug из AS2 и AS3 проектов. Очень удобно, когда нужно что-то тестировать в браузере, особенно мультиплеерное, особенно вдалеке от Flex Builder’а.

Практически то же самое но без браузера позволяет делать Xray. Если покопаться, то можно где-то там в исходниках найти админский клиент на Flex — довольно удобно и работает шустро. Нужно всего лишь вставить компонент во флэшку.

И, вот Flex only решение — fxspy, консоль для просмотра и редактирования элементов на stage во время выполнения.

Еще sound fx

Еще ссылочка на подборку звуковых эффектов — http://dimz.ru/blog/?p=59. Пока не закачал дисков с http://torrents.ru.

Actionscript + WordPress

Друзья, посоветуйте как мне постить красивый Actionscript код в блоге? То, что у меня сейчас, sucks.

Нашел.