Рубрики: Просто флэйм, Полезные программы и утилиты
Microsoft MVP Award
В общем, наверное, это называется “похвастаться", но факт остается фактом. Буквально два дня назад Microsoft удостоили меня звания MVP. Сам я, конечно, не считаю, что так уж заслужил это звание в контексте Microsoft, но это так или иначе подстегнет меня уделять еще больше времени Silverlight в рамках моей самопровозглашенной евангелистcкой деятельности в области насыщенных интернет-приложений (Rich Internet Applications, RIA). Собственно его (времени) и не хватает.
Хочу поблагодарить Михаила Черномордикова, который выдвинул меня на MVP Award ну и фирму Microsoft, проявляющую столько внимания к людям, которые популяризируют их технологии лишь косвенно. Надеюсь, что этот год будет плодотворным, я смогу узнать много нового и поделиться этим с другими разработчиками.
Полный список российских профессионалов, получивших в этот раз титул MVP, можно посмотреть в блоге Юлии Беляниной, которая является теперь моим MVP Lead.
Ну и принимаю поздравления ![]()
Перемен требуют наши сердца!
Сегодня обновил блоговый движок до релиза новой версии 2.4.1. До этого была 1.9.x, так что тут много что поменялось (возможно читателям это не будет видно).
По этому поводу решил поменять свой аскетичный скин на что-то более разнообразное. Привыкайте ![]()
Для блоггеров Riapriority.com это тоже будет сюрпризом, ибо с их блогами тоже произошли изменения, требующие их настройки (хотя некоторые критические вещи я поменял сам).
Ну и прошу сообщать о всех багах, которые встретите. Мне новая версия пока нравится ![]()
8 марта!
Поздравляю наших милых дам с праздником весны и труда тепла
Желаю вам радости и счастья! Что бы мы без вас делали?! ![]()
Проприетарность это зло?
В мире программного обеспечения всегда ведутся дискуссии (или даже священные войны) между сторонниками проприетарных решений и решений, которыми владеют все (или никто), то есть владельца не имеющими. На самом деле тут все довольно сложно с точки зрения того, что является проприетарным, а что нет. И что влечёт за собой проприетарность.
Начнём с того, что любой программный проект или продукт или спецификация или стандарт имеют своих владельцев. И несмотря на то, что пользователи могут тем или иным способом принимать участие в создании продукта, в большинстве случаев они не имеют возможности принимать решения. Либо они вносят модификацию, становясь тем самым владельцем нового продукта.
Так или иначе, но чаще всего проприетарными продуктами (в общераспространённом смысле) можно считать те продукты, которыми владеют отдельные корпорации (компании, фирмы, частные лица). Которые, в общем случае, при создании программного продукта руководствуются желанием на нем заработать. Если речь идёт о спецификации или стандарте от такой корпорации, то её (спецификации) публикация так или иначе преследует какие-то коммерческие цели.
Проприетарный продукт вполне может быть бесплатным (примеры: Adobe Flash Player, Acrobat Reader). Проприетарный продукт может иметь открытые исходники (пример: Adobe Flex).
Так чего же боятся противники проприетарных решений и почему выступают за непроприетарные решения?
Ну, во-первых, владелец решения может в зависимости от своих текущих коммерческих интересов, политики и прочего изменить лицензию пусть даже бесплатного или опенсорсного продукта. И не все готовы делать ставки на такие решения (пусть даже из соображений эстетских, а не с точки зрения здравого смысла).
Во-вторых, обладатель проприетарного продукта может манипулировать пользователями в угоду своим интересам, ущемляя их права. Например, производитель какого-нибудь проприетарного браузера может решить запретить использование в нем всех других плагинов, кроме его родного. Производитель RIA-рантайма (или виртуальной машины) может решить ограничить используемые интернет-протоколы так, чтобы можно было взаимодействовать только с их проприетарным сервером. И пользователь никак напрямую не сможет повлиять на такое решение.
Также проприетарность приводит к появлению различных несовместимых продуктов, делающих одно и то же. Например, Adobe Flash и Microsoft Silverlight. И мы не сможем использовать в нашем Silverlight-приложении готовый модуль, уже написанный на базе Flash-платформы. Нам нужно будет писать этот же модуль под Silverlight. Если бы создание RIA-рантайма не преследовало целью коммерческие интересы корпорации, то при создании единого рантайма можно было бы удовлетворить интересы всех. И получить один мощный и хороший во всех отношениях рантайм. Реально?
Большим злом является также приоритет одной группы пользователей перед другой. Например, технология может предоставлять больше возможностей дизайнерам, а не разработчикам. Или вендора могут интересовать лишь корпоративные клиенты, а не независимые разработчики или маленькие студии. И регулятором этой ситуации могут быть лишь продажи (бабло). Именно в этой области зачастую расставляются приоритеты, все решают (порой ошибочно) маркетологи. Противникам проприетарных решений кажется, что лично они могут повлиять на направление развития интересующего их открытого продукта. Но на практике это чаще всего тоже иллюзия, просто более приятная для восприятия.
Итак, противники проприетарных решений считают, что идеальным средством создания насыщенных интернет-приложений (RIA) является AJAX, заслуживший тем самым свою популярность. Действительно, подавляющее большинство популярных AJAX-фрэймворков открыты. Да и довольно глупо делать их закрытми: JavaScript не компилируется, и мы всегда можем посмотреть исходный код любого фрэймворка. Так что даже проприетарность AJAX-фрэймворка от Adobe (Spry) не такое уж большое зло.
Основой RIA-приложений на базе AJAX является HTML и CSS - открытые стандарты, которые, ввиду их открытости, реализованы довольно большим числом браузеров. Стандарт открытый (будем иногда использовать слово “открытый” как антоним слова “проприетарный” хотя это не совсем точно), единый для, тем не менее, ряда продуктов, выполняющих одну и ту же роль: браузеров. Которые представляют собой рантайм для HTML/CSS/JavaScript. И вот тут мы получаем ужасающую картину: идеалистическая идея, заключающаяся в том, что открытость влечёт удовлетворение интересов всех и, тем самым, к отсутствию аналогичных продуктов от разных вендоров, имеющих несовместимости, эта идея проваливается. Потому что каждый начинает мнить себя лучше других по части воплощения стандартов. А некоторые даже пытаются за это брать иногда деньги.
И, как следствие, свое понимание стандартов, введение новых стандартов, которые становятся стандартами де факто и вынуждают конкурентов воплощать их тоже. Но поскольку эти стандарты доморощенные, то и воплощение еще более несовместимо.
В итоге разработчикам приходится совмещать несовместимое, а пользователям иногда страдать от того, что они получают не совсем то, что сосед. И ему совсем непонятно, почему он должен менять браузер, к которому привык, на другой, который, вроде, лучше соответствует каким-то мифическим стандартам, до которых пользователю, по большому счету, дела нет никакого.
Теперь сравним RIA-платформу (условно) AJAX с Adobe Flex. В качестве рантайма мы имеем Flash Player, который гарантированно только один (от Adobe; Gnash мы во внимание принимать не будем: у него другие цели, да и никто ничего не обещал там). Он гарантированно совместим. Разработчик гарантированно получает возможность адекватного запуска своего приложения на других машинах других пользователей (почти всегда). Но плеер совсем не открыт (вернее открыт, но не совсем: вспомним Adobe Tamarin). А дальше имеем Flex-фрэймворк и Flex SDK. Которые с версии 3 будут полностью открыты.
То есть мы, как и в AJAX, сможем создавать свои фрэймворки (а оно нам надо?). Другое дело, что ожидаемое появление альтернативных фрэймворков и SDK - та же палка о двух концах. Но если вы желаете ветра свободы, то корпорация делает такой подарок (зачем? Забота о пользователе, конкурентное преимущество, конкуренция).
Теперь вернёмся к открытым стандартам. Все мы знаем, что нас будет ждать JavaScript 2, который базируется на стандарте ECMA-262, и для реализации которого в браузерах Mozilla Adobe передали в опенсорс виртуальную машину ActionScript, тоже базирующегося на этом стандарте (проект Tamarin). Представим тот сладкий миг выхода нового браузера Firefox с поддержкой JavaScript 2. Вместо прототипов - нормальные классы. Рай для написания приложений. Но сколько времени придётся ждать того момента, когда мы сможем от экспериментов перейти к коммерческим приложениям? Долго. Нужно дождаться как минимум реализации JavaScript 2 у других браузеров. С их несовместимостями.
Выход же новой версии Flash-плеера значительно ускоряет процесс перехода. Тем более, что вендор (Adobe) добился от своего проприетарного рантайма механизма безболезненного обновления.
Есть еще другой момент почему открытые решения замедляют прогресс. Это момент согласования. Ввиду того, что коммерческого интереса часто не преследуются, то пытаются учесть интересы всех заинтересованных лиц. Часто эти заинтересованные лица представляют собой конкурентов, имеющих противоположные интересы. Из-за этого долгий процесс обсуждения и реализации и, в большинстве случаев, монструозный результат.
Именно этого я боюсь ожидать от JavaFX. Что это будет долго, медленно (все с точки зрения разработки финальной версии самого JavaFX) и не вполне нацелено на решение конкретной задачи.
Но это, естественно, не правило, но нередко встречаемая закономерность.
Вдобавок, с точки зрения инноваций, корпорации зачастую могут позволить вложить больше средств и получить более интересный результат. Да и конкуренция - прекрасный стимул для инноваций. В настоящее время существует достаточное количество стандартов, которые изначально были сугубо проприетарными и стали стандартами де факто благодаря конкурентной борьбе.
В общем, это, конечно, интересная тема для дискуссии. Которая, думаю, продолжится (в комментах и других блогах). Но, как вывод, хочу сказать, что считать проприетарные решения абсолютным злом, мне кажется, безосновательно. Также безосновательно считать открытые решения абсолютным добром. Идеалы нечасто совпадают с реальностью, деление которой на черное и белое может однажды привести к разочарованиям. Мир сложнее. И нельзя придумать один ответ на все вопросы (даже если это указательный палец в небо).
Нам придётся в каждой конкретной ситуации решать, что же нам надо, чего мы ждём. И выбирать то решение, что лучше подходит в конкретном случае. А оно будет либо проприетарным, либо открытым. А, может, оно будет комбинированным.
Не надо программировать себя. Будем мудрыми.
С Новым Годом!
Поздравляю всех с Новым Годом!
Искренне желаю чтобы в новом году исполнились все ваши задумки, чтобы все получалось, чтобы горизонты раскрывались! Пусть энергия бьет через край, креатив не иссякает, и было настолько интересно жить, что жалко было бы тратить время на сон!
Ура!
Итоги 2007
Уже завтра мы все вплотную начнем встречать Новый Год. Самое время подвести итоги уходящего года. Тем более, что я обещал завтра не подсаживаться за компьютер.
Итак, чего я ожидал от этого года? На самом деле, будучи пессимистом, ничего качественно нового, а лишь устойчивого количественного роста. Будучи мечтателем, ожидал, что на меня свалятся золотые горы или такое предложение, от которого не отказался бы никто. И все это, естественно, следовало из оптимистичного ожидания того, что технология Flex станет очень востребованной, а идеология RIA - просто необходимой.
В реальности год был не настолько интересным, и мои ожидания мало в чем оправдались. Понятно, что тут все зависело только от меня, и, видимо, я не поработал должным образом.
Мне в этом году не приходилось делать столь интересных проектов, что это увлекало бы меня. Или не было такого интересного процесса работы над проектом, чтобы это того стоило. То же самое было и с финансовыми ожиданиями: рублю зачем-то понадобилось укреплялся, а желание работать по ночам, как раньше, куда-то улетучилось.
Надеюсь, что в следующем году я возьму себя в руки, и что-то у меня получится. По крайней мере у меня есть некоторые очень хорошие идеи ![]()
Зато в этом году мне удавалась деятельность общественная. Я выступал с докладами по RIA (и RIA-технологиям от Adobe) на конференциях РИТ-2007 и ClientSide-2007. Не думаю, что это помогло кому-то узнать что-то новое (ибо доклады, связанные с AJAX, вызывали стабильно больший наплыв публики), но зато позволило мне познакомиться с рядом интересных людей и окунуться в атмосферу конференций уже в качестве докладчика.
Ну и, вдобавок, как результат конференции ClientSide-2007, у нас образовалась Российская Группа Пользователей Flash-платформы (RAFPUG) и даже была проведена первая встреча. Конечно, Flash-публика решила, что это группа для них, что несколько смутило организаторов: группа ставит своей целью формирование сообщества разработчиков на базе Flex и Adobe AIR, но, надеюсь, со временем посетители группы осознают преимущества Flex и будут ходить не только для того, чтобы потусоваться.
Так что на почве общественной деятельности сделано не так мало (хоть при наличии времени можно было бы сделать и больше). И это уже радует.
В общем, в новый год я гляжу с оптимизмом. Надеюсь, он будет гораздо более насыщенным, динамическим и результативным. И принесет мне кучу бабла и мировое господство! ![]()
Удачи и вам в новом году! ![]()
2008: RIA-прогнозы по России
В качестве завершения 2007-го года решил попробовать себя в модном жанре предсказания будущего. Дело будет касаться RIA-технологий. И только в России. Так что никаких мировых тенденций, только местечковые.
Ну и, опять же, каких-то четких прогнозов дать не могу: только тенденции. Зато через год можно будет проверить.
Итак, поехали:
Основной технологией создания RIA будет оставаться AJAX. Отстающая на несколько лет Россия только сейчас вплотную подбирается к этой технологии, которая по сравнению со статическими веб-страничками, в подавляющем большинстве представленными в Рунете, будоражат умы веб-разработчиков. Эта игрушка не требует коренным образом переквалифицироваться в управдомы. Вдобавок, создает много фана для тех, кто любит потрахаться по-настоящему.
Однако, технология имеет существенный минус в глазах российских разработчиков: она опирается на уже готовые фреймворки. Нет более сильного удара по самолюбию наших соотечественников, чем использовать готовую поделку, тем более если она написана “тупыми пиндосами".
Ждем появления местечковых AJAX-фреймворков.
После выпуска в 2008-м году некоторых громких российских проектов на базе Flash-платформы, интерес у ней несколько возрастет, и, возможно, скепсис некоторых колеблющихся будет погашен. Так или иначе, приходится наблюдать постепенный (не взрывной) рост числа Flash-разработчиков. Тут он тоже не будет взрывным, но станет чуть более быстрым.
Проблема этих проектов будет в том, что сделаны они будут на Flash, а не на Flex. Ввиду очевидного факта нехватки Flex-разработчиков и отсутствия соответствующей их критической массы. О преимуществах Flash в создании подобных RIA-проектов все заинтересованные (или интересующиеся) лица естественно будут информированы. Что повысит спрос и уровень зарплат Flash-разработчиков.
Выход в 2008-м году технологии Adobe AIR не произведет никакого особенного фурора в России. Данная технология не будет рассматриваться как ключевая и широко использоваться. Традиционные Flash-разработчики после кратковременного интереса быстро изменят этой технологии с традиционными прожекторами, как более функциональным решением.
Идеология RIA, часть которой является Adobe AIR, в России не сформировалась и некому ее формировать. Речь идет о широком распространении этой идеологии. Так, чтобы термин RIA был на слуху. Так, чтобы RIA - это модно.
Microsoft выпустит Silverlight 2.0 и тем самым быстро завоюет свою нишу. Вся армия .NET-разработчиков теперь получит дополнительную возможность писать полноценные RIA для веб и портировать старые. Наличие бесплатных инструментов разработки (VS Express + соответствующее расширение), мощная библиотека компонент, скинизация, DLR, медиа-возможности, производительность - все это будет мощным стимулом к созданию приложений на базе Silverlight.
Новизна технологии (и соответствующее отсутствие негатива: вспомните отношение большинства к Flash как к технологии производства назойливых баннеров), которая вполне резонно может позиционироваться как кроссплатформенный .NET в вебе, обеспечит благосклонность потенциальных заказчиков, которая будет подкреплена финансовой мощью Microsoft. И, опять же, налаженная поддержка сообщества разработчиков.
Основным препятствием будет малая доля установленных Silverlight-плагинов на машинах пользователей. Что, возможно, побудит MS включить его в апдейты Windows. Так или иначе, но для решения ряда бизнес-задач (CMS сайтов, написанных на базе ASP .NET, интранет-приложения итд.) это решение будет идеальным, а доля установленных плагинов к концу 2008-го достигнет 90% для 1.0 и 70% для 2.0.
Но ясно одно: нас будет ждать довольно большое число вакансий по Silverlight. И, скорее всего, если термин RIA приживется, то чаще всего будет расшифровываться как Rich Interactive Applications.
Что касается Flex, то я прогнозирую столь же неторопливый, практически незаметный рост. Число вакансий по-прежнему не будет превышать 1-2 в месяц, зарплаты по-прежнему будут варьироваться в весьма широких пределах из-за несформированности рынка, по-прежнему большинство разработчиков и проектов будут так или иначе ориентироваться на Запад, по-прежнему отечественные заказчики будут относиться к Flex весьма настороженно. Скепсис традиционных веб-разработчиков вряд ли пройдет. С учетом того, что все .NET-овское крыло бесповоротно отвалится с выпуском Silverlight 2.0.
Что касается RIA для массового использования, то тут все флексовые задачи будут продолжать делаться на Flash, и эта тенденция будет только усугубляться (см. второй пункт). Вряд ли нас ждут какие-то всенародно известные российские проекты на Flex.
Критическая масса Flex-разработчиков, которая позволит констатировать факт того, что технология прочно вошла в список охотно рассматриваемых для реализации, в 2008-м не сформируется. Даже несмотря на появление соответствующих групп пользователей и осторожной поддержки от Adobe.
Не берусь предсказывать, будет ли сделан перелом в этом направлении. Думаю, что будет, но не раньше первой половины 2009-го.
По части JavaFX. Ну тут ничего особо нового в 2008-м нам ждать не придется. Скорее всего на следующих JavaOne будет очередной анонс. Нам сообщат о том, что первая версия вот-вот выйдет. После ее выхода технологию будут использовать лишь некоторые Java-энтузиасты, которым недостаточно их стабильной высокой зарплаты, а хочется чего-то большего. В общем, думаю, что на 2008-й я бы не прогнозировал больше пяти вакансий по России, где бы фигурировал JavaFX.
Таковы мои прогнозы. Вернее, не прогнозы даже, а больные фантазии, базирующиеся на том узком фрагменте окружающей (не)реальности, который мне доводится наблюдать.
А каковы ваши версии?
23.23xFFFFFF
Поздравляем Таню Белую с Днем Рождения! Желаем юной белой и пушистой представительнице Flash-сообщества всех видов счастья и помногу! Ну и профессиональных успехов до кучи. В комплекте, так сказать ![]()
Ну и желаем сегодня как следует оттянуться ![]()
Aptana Studio 1.0
Я уже как-то писал о том, что для создания HTML-ных AIR-приложений есть специальный плагин для Aptana IDE, Так вот. Теперь все изменилось.
Во-первых, Aptana IDE теперь не Aptana IDE. Она достигла совего первого релиза (версия 1.0) и стала называться Aptana Studio.
Во-вторых, теперь Aptana Studio не бесплатна. Не пугайтесь. Смысл в том, что теперь есть две версии Aptana Studio: Community Edition (бесплатная) и Professional Edition ($99). Теперь главное понять, можно ли разрабатывать AIR-приложения на Community Edition. А понять это можно тут. Как мы видим, тут все в порядке. AIR-разработка доступна в бесплатном варианте.
В-третьих, поддержка Eclipse Monkey (про который я уже писал) в Aptana Studio расширилась. Теперь скрипты для исполнения в IDE можно писать не только на JavaScript, но и на Ruby. Называется EclipseMonkey Ruby Extension. Это, кстати, интересно, так как при недостатках обоих языков Ruby немного мощнее. Теперь бы и в оригинальный плагин добавили эту поддержку. Больше информации тут.
Дальше предлагаю ссылку на сам анонс.


