Иван Дембицкий (iv)
Автор valyard
Привет, расскажи немного о себе.
Мне в жизни везет. Везет на события, на людей. В юности танцевал брейк, в рижской команде "120/80". Даже стал чемпионом СССР и не где-нибудь, а в Паланге, а это был самый престижный фестиваль. Как раз в то время вправились мозги, научился работать. Научился добиваться результатов. Научился ставить высокую планку и прыгать до тех пор, пока не перепрыгнешь. Это очень важные в жизни умения.
Потом ушел в армию, когда вернулся, попал совсем в другую страну. Какое то время приходил в себя от шока, но потом организовал с друзьями бизнес. Это была юридическая фирма. Мы боролись с пиратством, обслуживали видеорынок.
Лет через шесть, мы стали крупнейшей юридической фирмой в стране. У нас работало около 150 человек, более 30 филиалов по стране. Выигрывали примерно по одному делу в день. Мне кажется такие юридические фирмы в мире то по пальцам можно пересчитать.
Однако случился дефолт и наши размеры нас же и раздавили: 150 человек должны получать зарплату каждый месяц. А все клиенты были на грани банкротства и им было явно не до защиты от пиратов.
Собственно тогда я разочаровался в этой стране и решил податься в штаты. Ну и чтобы не работать там на стройке, решил получить конвертируемую профессию - программист.
Купил книжку Грибова. Почитал. Ничего не понял. Пошел устраиваться на работу: ну, думаю, по ходу разберусь, если жизнь заставит. Пытаюсь разобраться до сих пор.
Книжку Грибова? Насколько я помню она была про Flash 4. Т.е. твое знакомство с Флэшем началось с четвертой версии?
Именно с нее.
Я бы сказал, что в "разобраться" ты преуспел. В этом тебе помогли книги, друзья или просто любопытство?
Я попал в рассылку ruflash и собственно если и случился какой-то прогресс в моем познании флэш, то его можно отследить по архивам писем. Сейчас я стараюсь отдать долги, отвечаю в рассылке на вопросы, запретил себе отсылать людей на мануалы. И, кстати, считаю это просто неприличным.
Ясно, что отвечая на вопросы, сам лучше понимаешь предмет. Но неужели не хочется сказать "RTFM!!", когда один и тот же вопрос задают уже сотый раз?
Именно это - нет. Для человека, задающего вопрос он встает в первый раз.
Меня скорее раздражает, когда отвечаешь человеку на вопрос, делаешь ему пример, а он, не пытаясь вникать в сказанное, подсовывает свой неправильный код и просит его исправить. А такой код можно исправить только с помощью кнопки delete.
Но ему влом переделывать. А я очень люблю переделывать свои старые проекты с нуля. Даже если они работают без проблем. Просто потому, что они станут лучше.
ОК, т.е. ты больше програмер, чем дизайнер, так? Просто я сейчас вижу некоторое раздвоение "флэшеров" - одни целиком уходят в AS, другие сидят рисуют флэшевые мультики и тому подобное. И все называют себя "флэшерами". Сейчас настоящий "флэшер" - это больше программист или иллюстратор/дизайнер/аниматор?
Я только программер. Попытки навязать мне делать дизайн не проходят. Ни за какие коврижки. Не мое это и все.
А разделение на программмистов дизайнеров и аниматоров это воплне закономерный процесс. Прошло то время, когда клиент восторгался уже от того, если у него на сайте начинала скакать и сверкать какая-нибудь фигня. Все тсановится на свои места. Каждый делает свое дело. И только так можно достигнуть хорошего результата.
Флэш сильно изменился с четвертой версии, как програмеру, что тебе больше всего по душе в MX2004 и чего ты ждешь от следующей версии?
2004 меня несколько разочаровал. Я не использую AS2. По моему мнению это сухой язык, не позволяющий применять трюки.
Это было бы понятно, если бы существенно увеличилась производительность. Но этого нет. Зачем мне идти стандартным путем, нагружать процессор так, чтобы ноги гнулись у компа, когда одним трюком в AS1 я могу добиться производительности на порядки большей? Вот и не вижу смысла в переходе на AS2.
Жду от Макромедии появления объекта Library. Чтобы можно было подргузить внешний мувик-библиотеку и использовать ее.
Т.е. ты не используешь классы AS2 в своих проектах?
Нет. Совсем.
Есть еще одна проблема с этим связанная: далеко не все владеют AS2 и следует думать и о тех людях, которые после тебя этот скрипт будут обслуживать.
С точки зрения программиста, мне кажется, что AS2 более прост в понимании. Ясная структура классов, нет проблем с наследованием.
Попробуй сделать иерархию классов для узлов XML, затем поговорим о наследовании и ясности структуры классов.
Чтобы это сделать придется встроенный парсер XML переписывать.
За что я брался уже не раз, но свободного времени катастрофически не хватает.
Я сейчас слишком хочу спать, уже час ночи, чтобы думать о парсинге XML. AS2 же по сути надстройка над AS1. Хочешь сказать, что на последнем это делается намного проще? Или это было замечание именно про _иерархию_ классов?
Да, про иерархию. Но свобода, предоставляемая в AS1 дает больше возможностей для обхода этой проблемы, чем в AS2.
AS2 вероятно создан для идеального продукта и идеально к нему подошел бы. Но, к сожалению флэш имеет массу проблем, которые приходится обходить.
Например? На первом месте скорее всего производительность, как я полагаю.
Зависит от проекта. В процессе обнаруживаются проблемы, в процессе их приходится решать. Производительность не на последнем месте в списке проблем.
Я уже давно слежу за темой в конференции ru_flash про защиту AS кода. Ведь никому не сикрет, что любой может вытащить из swf файла все что угодно, а последние версии ASV способны воспроизвести изначальный fla. Расскажи про проект as-protect.com. Что это? Кто над ним работает?
Этот проект фактически получил путевку в жизнь, когда Бранден Халл опубликовал функцию __bytecode__(). Cразу стало ясно, что нас ждут открытия в этой области. Собственно AS-protect это на 100% проект Ильи Шляхового. Я стараюсь ему помогать чем могу, но в байткоде не силен.
А проблема в открытостью формата SWF стояла давно. Делаешь игрушку - уже в день публиации рейтинги нереальные. И всяк кто считает себя хакером берет скрипт вьювер, смотрит код и посылает на сервер правильно сформированную строку.
Но посерьезней вопрос встал, когда появились компоненты и возможность их продавать.
В этом случае вопрос закрытия компонента от взлома - прямая защита инвестиций.
Компоненты могут быть довольно сложными и требовать длительной разработки, т.е. денег.
Эти деньги нужно как-то возвращать. Но при нынешней открытости кода это практически невозможно.
Итог: рынок компонентов практически отсутствует. Практически нет компонентов, которые бы были сделаны на 100%, т.е. имели файлы справки, подсветки кода, поддержку пользователей. Причина - никто не хочет вкладывать свой труд (деньги) в заведомо коммерчески провальный проект.
Те компоненты, что сейчас есть в сети, даже платные, как правило, не имеют коммерческой цели, скорей сделаны в рекламных целях.
Если вставить в текст скрипта выполнение этой функции с нормальным байткодом, то ASV прекрасно его понимает. Что же этот "проект" делает с кодом, что он при этом и работает и валит ASV?
Шифрует. И не думаю что стоит далее детализировать ответ на этот вопрос.
В принципе есть возможность выпуска продукта как отдельного приложения. Но мы отказались от этой мысли. Причина кроется даже не в том, что кто-то может сделать генератор ключа и этот продукт станет бесплатным. Причина в другом: могут быть вскрыты алгоритмы шифровки, а это поставит под удар пользователей продукта.
Поэтому as-protect будет всегда он-лайн услугой.
А не будут ли разработчики бояться отдавать свой код какому-то скрипту на каком-то сайте, ведь наряду с шифрованием, этот скрипт вполне может сохранять этот код?
Думаю, что деваться некуда, придется либо доверять нам, либо оставлять код открытым. С другой стороны, к нам за первый день пришло столько людей и защитили столько кода, что простой просмотр этого кода займет не один день. Полагаю, что в дальнейшем, когда о нашем ресурсе узнает гораздо больше людей, объемы будут просто таковы, что на простой просмотр кода, поступившего за день могут уйти месяцы.
С другой стороны мы понимаем, что наша репутация дороже денег. И никогда не пойдем на то, чтобы использовать и уж тем более, распространять чужой код.
И еще: код без контекста часто просто не имеет смысла.
Настолько ли ваш метод надёжен? Не появится ли в новой версии того же ASV контрметода?
Безусловно мы думали об этом. По этому поводу у меня с Burak KALAYCI (автор ASV) состоялась довольно продуктивная дискуссия. Мы с ним определились в том, что производство скрипт вьювера, который может вскрыть заведомо защищенный код - незаконно. Т.е. ни один легальный производитель вьюверов не станет делать дешифрацию такого кода. В противном случае, дни такого продукта будут сочтены. Никто не будет рисковать своим продуктом ради сомнительного преимущества перед конкурентами.
Работа над созданием вьювера - довольно серьезный и большой труд. И не думаю, что найдутся желающие сделать такой бесплатный вьювер.
С другой стороны, наш продукт - это только начало. Методов защиты будет много, они будут совершенствоваться. Их можно будет наслаивать один на другой и использовать в различных комбинациях.
Т.е. в скором времени можно будет не бояться за свой код? Кстати, не знаешь, почему MM до сих пор не снабдила свой продукт хорошей защитой?
Хотя проект в состоянии апробации, но, могу сказать, что уже сейчас можно не особо беспокоиться за защищенный код. Его никто не может просмотреть. Во всяком случае не доморощеные "хакеры". Но, с другой сстороны, вопрос защиты всегда должен решаться в комплексе, нужно четко понимать что, зачем и как защищать.
ММ конечно могла бы шифровать код. Но есть много причин, по которым они этого делать не будут.
Прежде всего потому, что им это не нужно.
Во-вторых алгоритм защиты, встроенный в среду разработки, оказавшсь на компьютере пользователя, относительно несложно декомпилировать и посмотреть. Соответственно очень быстро появился бы продукт, который бы эту защиту снимал.
К тому же SWF - открытый формат, поэтому ММ должна была бы опубликовать и алгоритмы защиты %).
Понятно. Ещё пара вопросов. Планы на будущее?
Идти. Дорогу осилит идущий.
Сайты, которые часто посещаешь.
http://proto.layer51.com/ - использую как собственную библиотеку прототипов.
http://www.flash-ripper.com/ - читаю новости
http://www.flasher.ru/ - захожу на форум, отвечаю на вопросы.
Пара любимых флэш сайтов.
http://cmart.design.ru/, http://cmart.design.ru/