Накратко – Adobe опитват да стъпят на по-твърда почва сред свободните проекти, затова започват да се договарят с фондацията Mozilla. От друга страна стои голямото ускорение в развитието на SVG-формата и на свободните програми, работещи с него. Следващата голяма битка ще бъде за SVG. Или за flash – зависи от коя страна на “барикадата” сте.
На OpenFest’06 се видях за кратко с доста хора, с Виктор Дачев имахме възможност да откраднем малко минути от една почивка и от началото на една безмислена и ужасно тъпа лекция (“Информационно обслужване” за пореден път омазаха всичко, опитвайки се да се “набутат в кюпа” – но за това ще пиша друг път). Който не се сеща кой е Виктор, може да види дали са му полезни българските преводи на програмите The GIMP, Inkscape, Blender. Виктор е човекът зад тези преводи. Като професионален дизайнер, запознат освен с всички разпространени сред гилдията инструменти и със свободните им алтернативи той може да каже какви са истинските предимства и недостатъци на GIMP например.
Но голямата новина в случая не е GIMP, а Inkscape, най-бързо развиващата се свободна програма за работа с векторна графика. Лично аз не знаех, че форматът SVG (Scalable Vector Graphics) е достигнал дотам, че наистина всичко, което можете да направите с прехваления Flash можете да направите и със SVG. Без да е ограничен и несвободен като “флаш”-а, това е формат, който може не само да се използва свободно, но и да се развива и подобрява – на практика и отвътре SVG е подмножество на XML. Няма нищо скрито-покрито, както всички знаем, че е при собственическия flash. И се разработва и стандартизира от W3C.
Като имате предвид развитието на SVG и практически неограничените възможности за иновации при комбинирането му с модерни уеб-технологии като AJAX, лесно можете да видите тихата паника в лагера на Adobe. Flash-форматът най-накрая е застрашен не само идеологически, а и технологично.
Когато пък се вземе предвид възможността за комбиниране на SVG с XMPP/Jabber, обхватът на бъдещите SVG-базирани технологии нараства още повече. SVG се използва в джабер за общи чертежи – например свързвате се с някого и не можете да му обясните нещо както искате. Създавате обща дъска за рисуване и в реално време му обяснявате схемата с чертеж. Или в стая за разговори няколко човека едновременно общувате с рисуване. Понякога простата визия дава много повече от най-подробното текстово обяснение. Вече има от доста време разширения към джабер-протокола за такива споделени SVG-табла, има и джабер-клиенти, които ги поддържат. Е, не са досаттъчно разпространени. Засега. Но само като видя категорията в основното меню на най-последната версия на Inkscape, посветена точно на връзка към джабер-сървъри и общи графики…
Да, технологично бъдещето пред SVG е прекрасно. Остава само да се надяваме или flash да стане свободен формат, или Adobe да не успеят да попречат на SVG.
Встрани от темата:
Понеже намеквам за някакво по-особено ми отношение към “Информационно обслужване”, ще побързам да напиша тези дни какво имам предвид в следваща статия.
Като захвана за флаш, искам да питам дали си пробвал новата версия9 за Линукс? Срещнах такава инфо в едно списание и ми стана интересно. Беше указано че е бета. Или има ли нещо дето да може да замести флаш9?
Не съм любител на тези изгъзици, но някой фотографски сайтове го искат.
Flash9 не съм пробвал, но колегата ми в работата си го беше инсталирал и доколкото знам в девятката са оправили разминаването на звук и картина, което пречеше много на нормалното ползване на Flash под GNU/Linux. Доколкото такова ползване е нормално :) Това е и връзката с въпроса ти дали има алтернатива – има, но тя не е все още в клиентската част.
Тоест има проекти за написване на свободна имплементация на flash – проектът се спонсорираше от FSF, имаше развитие наскоро, но не зная дали е използваем вече. Проектът е Gnash.
Другата възможност е Adobe и Mozilla да се споразумеят за Tamarin, че ползването на бъдещите версии на Flash да е по-лесно и флаш-скриптирането да е по-стандартизирано.
Но основното е, че флаш-форматът се наложи благодарение на функционалния му монопол, а вече такъв монопол няма – SVG може изцяло да го замества. А в комбинация с AJAX може да прави много повече неща от Flash-а.
Лошите новини са две – едната е, че не всички браузъри поддържат SVG – доколкото знам Microsoft я избягват. Та те дори и добра поддръжка на PNG нямат – IExplorer зарежда PNG-изображения, но с грешни цветове в преливките и прозрачностите. Другата лоша новина е, че у нас май почти няма хора, които да могат да пишат кадърно AJAX и да работят със SVG за уеб. Много хора могат да спретнат един мигащ Flash, но това е друго.
А за фотографските сайтове наистина се ползва доста флаш. Но пък аз съм срещал и друго – има тенденция да се ползва за такива сайтове точно AJAX, особено за работа с бази от данни. Ако помня добре, поне доскоро Flash нямаше възможност за sql-заявки, а само за ползване на плоски файлове. Сега може вече да има, но си е стара технология тъй или иначе…
Първо форматът е .swf, а не Flash и е отворен. Има алтернативни компилатори и декомпилатори. Какво ти лиспва в него? Просто думата open? Всичко по-отворено в web страда от липсата на стандарт. Един интерпретира JS и CSS така, другият пък му кефнало иначе и се пишат по 6 версии. Мерси от такава отвореност, мерси.
Мисля, че Adobe купи не само Flash, но заедно с него и доста от принципите на Macromedia, а те бяха отворена компания.
Пречи ми несвободността; по-точно хич не ми пречи, защото не използвам Flash. Да, добре — файловите формати се наричат SWF и FLV.
Имало компилатори и декомпилатори — браво на тях, къде са? Преносими? Adobe предоставят за GNU/Linux единствено двоични файлове, при това само за плеъра. За нищо друго. Ти ползваш Уиндоус и говориш за Уиндоус — честито, но аз говоря за друго. EULA на Adobe/Macromedia е ограничаващ по отношение производни среди за разработка. Това изобщо, ама изобщо не е “отворено”. Да, думата “open” липсва по отношение на технологията в случая, липсва и “free/libre” по отношение на имплементацията.
Затова казвам, че възможен вариант за решаване на проблема с Flash е внедряване на решения със SVG. Които имат вече същата функционалност като флаш и екшънскрипт, но нямат протекцията на мастодонти като Adobe/Macromedia и Microsoft. Другият възможен вариант е спецификациите на SWF да бъдат публикувани под свободен лиценз, но това е по-малко вероятно май.
Всичко по-отворено в web страда от липсата на стандарт — е това как можа да го кажеш, не мога да разбера. Уеб, какъвто го познаваме и какъвто го ползваме масово се крепи изцяло на отворените стандарти и публикуваните спецификации. Това, че IExplorer (явно за него е плачът по-горе) има особено мнение за някои неща, като CSS, SVG, PNG и т.н. не значи, че практически всичко в уеб не се основава на отворени стандарти.
Започваме с протокола HTTP, нали? И организации за стандартизация като IETF, W3C и ISO/IEC. Продължаваме — XML, (X)HTML, CSS, JavaScript, JPEG, PNG, GIF, HTTPS… Кое е нестандартното, кое е “мерси”-то? Може би езиците, използвани най-често за уеб-програмиране, може би PHP, Perl, Python, Java (jsp) и всякакви други, през Lisp до C? CGI също е отворен стандарт. Базите от данни може би, стандартите на ISO за SQL и на W3C за XQuery?
От всички само JavaScript в уеб-частта си (DOM, Document Object Model) е не съвсем стандартизиран. Има постоянни опити от страна на W3C за налагане на стандарт и постоянни пречки от някои производители на браузъри.
Но това са по-високи слоеве, само HTTP и HTML стигат като примери, за да е ясно, че хипертекстовата мрежа, уеб-ът е в основата си нещо, което работи според публикувани и отворени стандарти.
Тим Бърнърс-Лий не спира да казва точно това и днес, вече толкова години след като измисля уеб и хипертекста през 1980г.
Малко крайно ми идва тая свободност. Да, про всичко свободно съм, разбирам плюсовете, респектирам ги. Респектирам труда и философията зад free software-a.
Чувал ли си за MTASC? Това е compiler, open source е. Flex 3 също е open source (като си писал поста е нямало как да знаеш).
Все пак не разбирам какъв точно е проблемът с Flash, та да може SVG да е решение?
Хубавото на това, че има само един vendor за flash player e, че няма проблеми с интерпретацията на съдържанието. Съдържанието върви по един и същи начин където и да го пуснеш и в който и да е browser. Лошото е, че ако решат да не пуснат player за linux, няма какво да им направиш — съгласен съм. За щастие Adobe/Macromedia са доста по-отговорни, отколкото черногледството предполага и се стараят.
Стандартите, за които говориш (и които как съм бил можал да кажа, че ги няма) са стандарти само на теория. Колкото и да ми изброяваш W3C, IETF, WTF — ефектът е същият. Пишейки html, css, js, пиша 3 версии минимум — за Firefox, IE, Safari. Та стандартите не ме топлят.
Същото имаше опасност да се случи и с Java. MS бяха пуснали “своя” JVM, което Sun нападнаха в съда и спечелиха за радост на света. Така Jаva приложенията трябваше да останат cross-platform, което обаче в крайна сметка пак не се получи.
Съответно единственото нещо, което към днешна дата върви идентично навсякъде остава флаш. И не само върви идентично, ами го има на почти всички машини.
Иронизираш употребата на windows. Аз уважавам твоя избор. Бъди сигурен, че и моят заслужава уважение по някакви причини. Пуснал съм един коментар под windows, следващият може да е под linux, искаш ли? Работя с това, което върши работа. Платил съм си за “качествен windows” към качествения хардуер, който съм си купил и го ползвам, защото върши работа и я върши добре.
IE има особено мнение за някои неща и това е проблем. Ти пишеш за web и се съобразяваш с него нали? Има доста умни хора, които ползват IE, просто защото работата им не е да разбират от войната на браузърите, за да предпочетат по-добрия браузър. Имат IE и той им върши работа, иначе нямаше да го ползват. Аз лично бих искал да достигна до тях с минимум усилия. Времето, което спестя от cross-browser хакове (работейки с флаш), бих използвал за нов feature да кажем. Просто защото не съм фанатик.
Да обобщя: Adobe пишат player-a напълно безплатно. Съдържание за него може да се създава също без да си купуваш каквито и да е техни продукти. Единствената причина player-ът да не е изцяло open source е опасността от разводняване на runtime-овете. Тъй че бих могъл да кажа Thanks Adobe!
Прощавай, Владо, ама какво точно искаше да кажеш с всичко изписано? Коментираш тема отпреди година, говориш врели-некипели. Искаш ли да поясня какво имам предвид?
“Та стандартите не ме топлят” — ако нямаше стандарти на този свят, всеки щеше да прави каквото желае. Например — контактите за електрическата мрежа щяха да са с толкова дупки, с колкото реши производителя. Съответно — като си купуваш уред, ще търсиш такъв, че да пасва на твоите контакти. Пък може и да не са с дупки, а направо — с жило :-) Освен това всяка водопроводна мрежа щеше да бъде изградена по вкуса на производителя. Колкото и гениални решения да би имало (не се съмнявам, че всеки гледа на себе си като на гениален творец ;-), те просто не биха пасвали едно с друго. Вземи руските железници — коловозите не отговарят на европейските норми, затова на границата се полагат специални усилия, за да влезе машината с всички вагони в тази толкова интересна държава.
Софтуерът не прави никакво изключение. Той е по-особен продукт, вярно е. Но си остава продукт в крайна сметка :-) А какво те кефи теб — твоя си работа, нека те кефи. Какво ме кефи мен, това също си е моя работа. Важното е и ти, и аз да можем да разглеждаме съдържанието без ограничения. И който иска да налага ограничения, ще се превърне в обект на елементарен природен закон и ще отпадне от всички класации :-)
Темата беше линкната в един от последните ти постове, затова коментирах. Стори ми се несправедливо и реших да покажа, че има и друго мнение. Все пак се радвам, че допускаш коментарите, тъй като наскоро беше писал, че нямаш намерение да хостваш глупостите на разни хора, обикалящи мрежата и оставящи безценния си акъл тук и там. Та иска ми се да вярвам, че коментарите ми не са съвсем от тоя сорт, след като ги пропускаш през ситото. Но след като са врели-некипели — извинявам се — това е последният.
Стандартите, с които никой не се съобразява не ме топлят — това исках да кажа. Защото в стандартите, които ти изброи (с изключение може би само на XML), мнозинството от приложения (като пазарен дял) не се съобразява.
Със стандартите, които се налагат от едно централно място, както е в случая с Flash, контакти с по 2-3-4-5-6 дупки няма.
SVG се описва и стандартизира от едно място, интерпретатори за него се пишат на много местa. Мога да гарантирам, че Microsoft биха били първите, които да направят всичко възможно да направят свой собствен mega-cool SVG, със собствени елементи, разпознавани само от IE. Добре, че са заети с мега-прекрасния си Silverlight, който работи на сходен принцип.
SWF се описва и стандартизира също от едно място, отворен е и интерпертаторът се пише на същото това място, така че проблеми с него няма как да възнинкнат.
Спирам с врели-некипелите.
Владо, коментарите ти далеч не са от тези, които би спряло “ситото”, недей да се засягаш сега ;) Предишният коментар, на който отговаряш не е мой, а на Роси. А за хостването на глупости — имах предвид нещо съвсем различно, твоите коментари са съвсем по темата и далеч не са глупости. Вярно, с теб имаме различия в разбирането и приемането на стандартите. Ти казваш, че един стандарт за да е ефективен, първо трябва да е наложен с твърда ръка и силово от една компания, за да няма “мърдане”. А аз казвам, че стандартите трябва да се пишат в среда на споделяне на общите технологии и на конкуренция с ясни правила.
И двамата сме прави в някакъв смисъл — от една страна силовото налагане си е жив монопол и дори и да води до стандартизиране, макар и малко насила, винаги носи със себе си всичките негативи на монополизма. От друга страна, при писането на стандарти с “отдръпване” от лобирането на големите риби винаги остава проблемът никоя то тези въпросни “големи риби” след това да не приеме стандарта, да си “измисли” свой и да стане кашата, от която ти пък се възмущаваш. Така че явно за мен проблемът е в монопола, а за теб — бавното и несигурно навлизане на стандарти, когато не са подкрепени от големите на деня.
Темата е интересна и в такива разговори си изясняваме позициите. Вярно, както каза в предния коментар, аз имам пристрастие към свободния софтуер, но когато в темата се намесват стандарти, не става дума само за него. Масово в света е възприета практиката техническите стандарти да се създават, за да описват достъпната технология. Тоест стандартите не създават правилото, а само описват вече работещото и изпробвано правило. Новите технологии се внедряват от рисковите продукти на компаниите, а стандартите са нещо като “снимка на добрата, правилната практика”.
А за това почти винаги е нужно технологията да е достъпна и да е общоприета. Да може да се променя, да се експериментира с нея при изпитанията и т.н. Да може всеки стандартизационен институт в дадена държава например да я имплементира сам, да я промени съгласно местните стандарти за качество и т.н.
При ИТ-стандартите нещата са малко по-различни заради общата ни свързаност през Интернет. Но не зная дали това е чак определящо точно в ИТ да има такова масово и силно лобиране от “големите”. Ето, както наскоро стана с OOXML и опита да бъде прокаран с бърза процедура като стандарт на ИСО/МЕК.
Роси, готини метафори ;) И ти си права, още повече че защитаваш теза, близка до моята :P. И все пак, за да можем да кажем и аз и ти така категорично нещата, първо трябва да си отговорим на въпроса дали ИТ-продуктът е продукт като всички други. Като щепселите и железопътните линии например. Както казвам преди малко на Владо, има явно разлика в процеса на стандартизиране на една електрическа лампа и на една уеб-технология, например.
Макар че отказът за стандартизиране на OOXML пък ни казва, че системата работи без оглед дали нещото е софтуер или не. Извън тази система на стандартизацията в ИТ са възможни безброй “стандарти”. Както ги наричат “индустриални стандарти”, тоест нещо, което е толкова разпространено, че не може да не го наречеш “стандарт”. Например една фирма прави нещо и го налага без да публикува всичките му спецификации.
И все пак си мисля, че през последните няколко години се върви към излизане на тази схема на наложени “стандарти” и все повече и повече масовите технологии в Интернет са описании и публикувани от организациите, занимаващи се със стандартизация.