Списание за дизайн, визуална култура и Новата медия.
Болестта на равните възможности поразява почти всички сайтове, които сега са в Мрежата - от най-скромните лични странички до сайтовете на корпоративните гиганти, струващи много милиони долари. Лукава и коварна, болестта остава често неоткриваема, защото корените и са в правилата на бранша. Макар техните собственици и мениджъри да не го знаят все още, 99,9% от сайтовете са остарели.
Може тези сайтове да изглеждат и работят нормално в широкоразпространените десктоп браузъри, чиито имена завършват с цифрите 4 или 5. Но извън тези толерантни към грешките среди, симптомите на болестта и упадъка започват вече да се проявяват.
В последните версии на Microsoft Internet Explorer, Netscape Navigator и Mozilla (браузърът с отворен код - базиран на Gecko, - който задвижва Netscape Navigator, CompuServe и някои други), внимателно конструираните оформления започнаха да се разпадат, а множество скриптове, чиято разработка е много скъпа, спряха да работят. И докато тези водещи браузъри се развиват, представянето на сайтовете продължава да се влошава.
В по-неизвестните браузъри, в екранните четци, използвани от хора с физически недостатъци и във все по-популярните нетрадиционни устройства вариращи от Palm-Pilot™ до клетъчни телефони с достъп до Мрежата, много от тези сайтове никога не са работели и продължават да не работят, докато други функционират далеч от най-добрия възможен начин. В зависимост от нуждите и бюджета, собствениците на сайтове и разработчиците или пренебрегват тези неизвестни браузъри и устройства, или ги поддържат като разпознават тяхното присъствие и им подават модифициран код - практика, която в бранша се нарича "versioning" (бел. прев. от англ. version)
Докато версиите за неизвестните браузъри обикновено предлагат на потребителите на по-комплицирани браузъри от сорта на Opera едно по-ограничено преживяване, в сравнение с това за използващите Explorer и Netscape, то версиите за безжичните устройства се справят още по-зле. Много сайтове разчитат на слабо поддържани markup езици за безжични устройства, които вече са остарели.
Тези практики прахосват време и пари. Никога някой ресурс не е в излишък; откакто Западната икономика започна своя упадък в началото на хилядолетието, тези два ресурса са особено ограничени. Дори още по-зле, тези скъпоструващи практики не решават проблема. Сайтовете все още са развалени. Потребителите все още нямат свобода.
Свалете опаковката на кой да е голям сайт - от Amazon до Microsoft.com, от Sony до ZDNet. Прегледайте техния усукан, нестандартен код, техните собствени разработки на ActiveX и JavaScript (често включващи и развалени скриптове за разпознаване) и неправилна употреба на Cascading Style Sheets - ако въобще използват CSS. Чудо е, че подобни сайтове изобщо работят в някой браузър.
Те работят в широкоразпространените до вчера браузъри, защото първите четири-пет поколения на Netscape Navigator и Microsoft Internet Explorer не само толерираха нестандартния и специфичен за всеки браузър код, но и подкрепяха немарливия код и собствените разработки на скриптове във вредоносната битка за пазара на браузъри.
Често, сайтовете непридържащи се към стандартите работят във вчерашните браузъри, защото техните собственици са инвестирали в скъпи средства за публикуване, които се пригаждат към разликите в браузърите, генерирайки множество, несъвместими със стандартите версии, настроени спрямо отклоненията при различните браузъри и платформи. Тази практика подлага на изпитание търпението на dial-up потребителите като разхищава трафик с "изчепване" на кода, дълбоко наслагвани една в друга таблици, прозрачни картинки, други подобни трикове с изображения и остарели или невалидни тагове и атрибути.
В същото време, тези многобройни версии прахосват трафика на собственика на сайта срещу цена, която дори и най-опитните счетоводители биха се затруднили да изчислят. Колкото е по-голям сайтът, толкова е по-голям неговият трафик, толкова повече се губи от заявки към сървъра, излишества, трикове с изображения и ненужно сложен код.
Ето как изглежда Yahoo — гладко като палто от визон.
Кое кара Yahoo да изглежда по този начин? — засуканият код.
Главната страница на Yahoo! се зарежда милиони пъти на ден. Всеки байт похабен за остарели HTML дизайн трикове се умножава по астрономичния брой пъти, в които страницата е разглеждана, и това прави гигабайти трафик, които натоварват сървърите на Yahoo! и добавят разходи подобни на тези на Пентагона.
Ако Yahoo просто замени своите остарели, поглъщащи трафик <font> тагове с CSS, разходите по зареждането на всяка една страница ще намалеят значително, а следователно и печалбите на компанията ще се увеличат. Но защо Yahoo! не направи прехода?
Можем само да направим извода, че компанията иска нейният сайт да изглежда точно по същия начин в браузърите от епохата на 1995 година, които не поддържат CSS по начина, по който го правят модерните браузъри. Иронията се крие в това, че никой освен мениджърите на Yahoo не се интересуват от това как изглежда Yahoo. Невероятният успех на сайта се дължи на услугите, които предлага, а не на красотата на визуалния дизайн (която просто не съществува).
Това, че иначе брилиантната компания хаби неизчислим трафик, за да достави онзи външен вид и усещане за сайта, за който на никой не му пука, казва всичко за закостенялата нагласа на разработчиците, които държат на съвместимостта със старите версии (backward compatibility) повече отколкото на разума, на ползваемостта и на собствените си печалби.
Какво имат предвид разработчиците под "съвместимост с предишните версии"? Те имат предвид използването на нестандартен, разработен от самите тях код и скриптове, с който са уверени, че всеки посетител получава едно и също, независимо дали използва Netscape Navigator 1.0 или IE6.0. Пазена като Светия граал на професионализма на разработчиците, "съвместимостта с предишните версии" звучи добре на теория. Но цената е прекалено висока, а практиката се базира на една лъжа.
Няма истинска "съвместимост с предишните версии". Винаги има компромисна точка. Например, нито Mosaic (първият визуален браузър), нито Netscape 1.0 поддържат оформленията използващи таблици. Тогава по дефиниция, онези, които използват тези древни браузъри, не могат да работят със сайта по същия начин, по който и приятелчетата с по-следващите браузъри от сорта на Netscape 1.1 или MSIE2.
Разработчиците и клиентите, които се борят за съвместимост с предишните версии, неизбежно избират един основен браузър (да речем, Netscape 3), отвъд който не полагат никакви усилия. За да осигурят поддръжка за този основен браузър и последващите версии, разработчиците подреждат своя код в серии от специфични за всеки браузър, нестандартни трикове и заобикалки, които натоварват допълнително всяка страница. В същото време, те пишат многобройни скриптове, за да угодят на браузърите, които са избрали да поддържат и използват различни начини за откриване на версията на браузъра, за да подадат кода, който съответният браузър най-много харесва. Постъпвайки по този начин, тези разработчици все повече натоварват своите страници, своите сървъри и се обричат на постоянна борба с непрекъснатото остаряване докато не им свършат парите или не изпаднат от бизнеса.
Докато някои компании орязват собствените си приходи, опитвайки се да накарат своите сайтове да изглеждат точно толкова добре в старите браузъри, колкото и в новите, други решиха, че само един браузър има значение. В погрешен опит да намалят разходите, все повече сайтове се разработват единствено, за да работят под Internet Explorer, а понякога дори само под Windows, като по този начин отблъскват от 15% до 25% от потенциалните посетители и клиенти.
Ние не претендираме, че разбираме бизнес модела на компания, която би казала “не” на повече от една четвърт от потенциалните си клиенти. А броят на изгубените клиенти поради този късоглед подход би вероятно замътва разума на всеки рационално мислещ предприемач. Спред статистиката на NUA Internet Surveys (www.nua.ie/surveys/), близо 540 милиона души са използвали Мрежата пре февруари 2002. Вие си направете сметката.
Да речем, че не искате да губите 25% от хората, които избират да посетят сайта ви. В такъв случай “само-за-IE” подходът също се оказва безсмислен, понеже не е сигурно, че IE (или дори desktop браузърите като цяло) ще продължи да доминира в Мрежата.
Няколко години преди тази книга да бъде написана, Netscape Navigator имаше по-голям пазарен дял, отколкото Intenet Explorer на Microsoft има днес. По онова време, здравият разум сочеше, че Netscape е единственият браузър, който има значение, а разработчиците пишеха своя код съобразно това правило. Неизразимо количество долари след това, пазарът се промени. Пригодените само за Netscape сайтове се озоваха в канавката на Информационната Супермагистрала.
Може ли същото да сполети и пригодените само за IE сайтове? Немислимо както изглежда, но въпреки това невъзможно за предсказване. В Мрежата единственото постоянно нещо е промяната. Вземайки предвид все по-широката употреба на нестандартни устройства, създаването на сайт пригоден зa употреба само с един конкретен desktop браузър изглежда като откровено безумно бизнес решение, каквото всъщност си е.
Освен това, както ще покаже тази книга, стандартите правят възможно създаването на сайтове за всички браузъри и устройства също толкова лесно, колкото и само за един. На фона на спираловидно нарастващите разходи за осигуряване на съвместимост предишните версии и изумителното късогледство, проявявано със създаването само за един-единствен браузър, уеб стандартите остават единствения разумен подход към разработката.
Нито разхищаването на средства за различни версии, нито безотговорното решение да се поддържа само един браузър ще помогне на днешните сайтове да работят в утрешните браузъри или да оцелеят в непрестанно променящият се свят отвъд настолните компютри. Ако прилагането на тези практики продължи, разходите и усложненията само ще се увеличават, докато се стигне дотам, че никой друг освен големите компании няма да може да си позволи да създава сайтове.
Майкрософт спечели Войната на браузърите, но всички ние временно загубихме нещо по-важно: възможността да създаваме ползваеми, достъпни сайтове, отговарящи на общите правила в бранша. Изгубихме я, когато дизайнерите и разработчиците — в опита си да отговорят на повишеното търсене по време на продължилия за кратко Интернет бум, — се научиха да използват нестандартни, специфични за всеки браузър трикове да създават сайтове, довеждайки ни до сегашната пропаст, наречена остаряване.
Но периодът на остаряването вече отминава, помъквайки със себе си и множество сайтове. Ако притежавате, управлявате или разработвате уеб сайтове - камбаната бие за вас.
В началото на обучението на всеки програмист, той или тя научава фразата: "Вкарваш боклук, получаваш боклук". Обяснено по-просто, в света на програмирането, ако пишеш кода правилно, той работи. Ако го пишеш неправилно, той не работи. Езици като C++ и Java не само насърчават писането на правилен код, те го изискват.
По подобен начин, едно от първите неща, които научава графичният дизайнер е, че качеството на изходните материали определя качеството на крайния продукт. Започнете с фотография с висока резолюция и високо качество и дори отпечатана графиката ще изглежда добре. Опитайте се да правите дизайн с нискокачествен snapshot или изображение с ниска резолюция и крайният резултат няма да си заслужава разглеждането. Можете да обърнете висококачествен EPS в оптимизирано лого подходящо за уеб страница, но не можете да конвертирате един GIF с ниска резолюция във висококачествено лого за уеб, печат или TV. "Вкарваш боклук, получаваш боклук".
Но традиционните и широкоразпространени браузъри не работят по същия начин. Немарливи до абсурдност, те поглъщат лошия код и разваления JavaScript без да им мигне окото, в повечето случаи показвайки сайта все едно е бил с правилен код. Тази немарливост спомогна front-end дизайнерите и разработчиците да придобият вредни навици, за които те самите не съзнават. В същото време, тя убеди middleware и backend разработчиците да гледат на технологии от сорта на XHTML, CSS и JavaScript като на презрително примитивни.
Тези, които не уважават един инструмент, вероятно няма да го използват правилно. Разгледайте следния пример - взет от скъпоструващ сайт за електронна търговия конкуриращ се на труден пазар - препечатан тук в цялото му пъпчиво великолепие:
<td width="100%"><ont face="verdana,helvetica,arial"
size="+1" color="#CCCC66"><span class="header"><b>Join now!
</b></span></ont></td>
Безсмисленият "ont" таг е правописна грешка в отхвърления в последните
стандарти font
таг — грешка, която се повтаря хиляди
пъти из сайта, благодарение на някое високоефективно средство за публикуване.
Като оставим грешката настрана - този код може да ви изглежда познат. Може
би дори прилича на кода на собствения ви сайт. В контекста на тази уеб страница,
всъщност единственото нужно е следното:
<h2>Join now!</h2>
Комбинирано с уместно правило в стиловете прикрепени към документа, по-простият, по-структурен код по-горе ще свърши точно същата работа каквато и тежкия, нестандартен, невалиден код, като в същото време на сървъра и на посетителя се пести трафик и се улеснява прехода към по-гъвкъв сайт базиран на XML. Същият сайт за е-търговия съдържа и следната неработеща JavaScript връзка:
<script language=JavaScript1.1src="http://foo.com/Params.
richmedia=yes&etc"></script>
Сред другите проблеми, language атрибутът, който не е в кавички, погрешно се слива със source тага. С други думи, на браузъра е казано да използва несъществуващ скриптинг език ("JavaScript1.1src"). По всички закони на логиката, този сайт би трябвало да не работи, предупреждавайки разработчиците за тяхната грешка и подтиквайки ги да я поправят бързо. Но доскоро, JavaScript-ът на тази страница работеше в широкоразпространените браузъри, като по този начин удължаваше цикъла на зле написаните сайтове, които пък се харесват на браузърите. Не е за учудване, че опитните кодери считат front-end разработката за глупава вуду магия, незаслужаваща уважение или грижа.
Но понеже по-новите браузъри поддържат уеб стандартите, те стават все по-взискателни в очакванията си към дизайнерите и разработчиците, а по този начин и все по-нетолерантни към лошия код. "Вкарваш боклук, получаваш боклук" започва да заема своето място и в света на браузърите, правейки знаенето на уеб стандартите необходимост за всеки, който прави уеб сайтове.
Вредата не е непоправима. Можем да създаваме сайтове по един по-добър начин, който работи при множество браузъри, платформи и устройства, решавайки проблемите на вродената тенденция към остаряване и отблъскването на потребители, като в същото време се павира пътя към далеч по-мощна, по-достъпна и по-рационално разработена Мрежа.
Лек за болестта на вродената тенденция към остаряване може да бъде открит в основния набор от сравнително добре поддържани технологии, колективно наричани "уеб стандарти". Знаейки как да се създават сайтове в съгласие с уеб стандартите, ние можем да гарантираме съвместимост на всеки наш сайт със следващите версии браузъри, устройства и платформи (forward compatibility).
“Напиши го веднъж, публикувай го навсякъде”, обещанието на уеб стандартите, е повече от обикновено пожелание: днес то е реалност и може да се постигне чрез използване на методите, които ще разкрием в тази книга. Но макар широкоразпространените днес браузъри най-накрая вече да поддържат тези стандарти и методи, съобщението все още не е достигнало до много работещи уеб дизайнери и разработчици и се продъжават да се правят нови сайтове върху несигурната основа на нестандартния код. Тази книга се надява да промени това.
След дългата битка на настървените дизайнери и разработчици срещу създателите на водещите браузъри, ние можем най-сетне да използваме техники, които гарантират постоянство във външния вид и поведението на нашите сайтове не само в браузър на един производител, а във всички браузъри.
Изковани от членовете на World Wide Web Consortium (W3C) и други сдружения, поддържани от днешните браузъри на Netscape, Microsoft и други компании, технологиите от сорта на Cascading Style Sheets (CSS), XHTML, ECMAScript (стандартната версия на JavaScript) и W3C DOM позволяват на дизайнерите:
Преди да можем да научим как стандартите постигат тези цели, ние трябва да изучим старомодните методи, които имат намерение да заместят и да открием как точно старите техники удължават действието на тенденцията към остаряване. Глава втора разкрива всичко.
Полезна ли ви беше тази статия? Кажете какво мислите за нея във форума на Groove Manifesto. »
Откъс от книгата на Джефри Зелдман Forward Compatibility: Designing & Building With Standards, която ще се появи през 2003 в издание на New Riders. Copyright © 2002-2003 New Riders и Jeffrey Zeldman. Използван без разрешение на New Riders. Ако искате да четете тази книга на български - пишете на издателите!
Статия в категория Мнения
Ключови думи: стандарти, трафик, съвместимост, браузъри, xhtml, css
Източник: 99.9% of Websites Are Obsolete
Digital Web Magazine, http://www.digital-web.com
Все още не можете да намерите онова, което търсите? Защо не пробвате с това малко поленце отдолу (подсказки: въвеждайте повече думи; пишете на кирилица; използвайте по-конкретни понятия.)