Názory k článku
Graceful degradation vs. progressive enhancement
dik
celé vláknoRE: Graceful degradation vs. progressive enhancement
celé vláknograceful
celé vláknoRe: graceful
celé vláknoJinak ti staří webdesigneři patrně dají v životě přednost graceful degradation, už jen podle následujícího stripu: http://www.socialsignal.com/news/2007/08/14/thats-how-i-want-to-go
Re: graceful
celé vláknoRe: graceful
celé vláknoJinak věcná poznámka: o graceful degradation se často mluví ve spojení s formuláři odesílanými přes AJAX, kde se za ono řešení s omezeným uživatelským komfortem považuje odeslání formuláře přes běžný submit button. Zde je zajímavé, že podle terminologie použité v článku se vlastně jedná o progressive enhancement - začnu s HTML formulářem a AJAX přidávám až zpětně, i když je využití JavaScriptu od začátku mým plánem. Kdyby si autor vybral tento příklad, rozdíly mezi graceful degradation a progressive enhancement zdaleka nevyniknou tak ostře.
Re: graceful
celé vláknoRe: graceful
celé vláknoRe: graceful
celé vláknoRe: graceful
celé vláknoRe: graceful
celé vláknoRe: graceful
celé vláknoJá si myslím, že někdo kdysi potřeboval do svého článku nebo práce nějaký vznosný pojem a tak si vybral vědecky znějící "graceful degradation", ač má angličtina pro danou situaci řadu jednodušších pojmů, např. fallback. Ale to by asi znělo příliš prostě :)
RE: Graceful degradation vs. progressive enhancement
celé vláknoJde o to, že většina "prožitků" z webu 2.0 pouze obtěžuje. Podle mého názoru mají uživatelé raději, když se web chová předvídatelně, a tudíž vždy stejně. Například upload souborů: 1. vyberou soubor, 2. stisknou submit, 3. stránka se načte znovu změněná -> pokud ale hned po vybrání souboru se tento sám uploaduje a stránka se okamžitě změní, začnou zmatkovat, protože si třeba uvědomili, že chtěli jiný soubor, stisknou Zpět a ono je to dostane úplně někam jinam...
Chci říct, že je to pořád jenom "starý stejný blbý web", ať se mu módně říká "web X.Y", "zážitkový web", nebo se o něm mluví v jiných moderních pojmech. Přeji příjemný prožitek z webu!
RE: Graceful degradation vs. progressive enhancement
celé vláknoRE: Graceful degradation vs. progressive enhancement
celé vláknoGD vs. PE
celé vláknoProgressive enhancement, zdá se mi, nemačká z nemoderních browserů maximum. Vždyť i v IE6 jde zpracovat jakýkoli grafikův nápad. Vždyť je jedno, jestli použiji moderní CSS3 features, které nejsou rozšířené a tudíž je nikdo neuvidí, všechno jde udělat i pomocí starších a méně praktických selektorů. Důležitá je funkčnost (i designu, i webu jako struktury) a ta musí být všude stejná. Lidé s Javascriptem uvidí obrázek v Lightboxu, lidé bez něj klasicky v panelu prohlížeče. Klienta nezajímá, jestli rohy udělám v CSS3 nebo pomocí obrázků, on je chce vidět v každém prohlížeči.
IMHO - Pokud bych bral progressive enhancement důkladně, musím se v závěru dostat do pozice, kam bych se dostal s graceful degradation. Neumím si představit featuru, kterou bych v nemoderním prohlížeči (čti: IE6) neuměl zpracovat...
To je jen můj názor. Jsem oproti ostatním diskutujícím a hlavně autorovi článku relativně laik (Honza aka Zahon je můj velký CSS guru ;)), ale s webdesignem pracuji a schopný web vytvořit dokážu. Progressive enhancement je zajímavá myšlenka, nicméně v praxi a komerčním sektoru nepříliš použitelná a náročnější.
Re: GD vs. PE
celé vláknoTechnická poznámka
celé vláknoRe: Technická poznámka
celé vláknoA je to možná jen specifikum Zdrojáku, že se v komentářích leze hlavně autorům do zadku, zatímco na sousedním Rootu se normálně diskutuje a nikdo tam autorům do zadku neleze. A možná jen proto, že zatímco do webdesignu dnes "dělá" každý nevycválaný čtrnáctiletý puboš, tak na provoz serveru s XY je přece jen kus té inteligence a mentální vyspělosti potřeba.
Re: Technická poznámka
celé vláknoPokud mám co říci k problematice, vyjádřím se. Pokud mne článek oslovil a obohatil - poděkuji. Pokud s ním nesouhlasím, napíšu proč a v čem. Ne každý, kdo poděkuje, se chce vyhřívat v autorově rektu.
K článku: Já osobně preferuji postupné přidávání život zpříjemňujících prvků. Na stejnou horu se dá dostat více cestami a tato mi vyhovuje.
Re: Technická poznámka
celé vláknoVy uvádíte za příklad server root.cz. Já vám oproti tomu dám příklad 99% zahraničních serverů, kde čtenáři pokud se jim článek líbí vyjádří dík.
Ono jakkoli se na to díváte, poděkování je slušnost, ne slabost.
A co si myslím já? Že je proklatě jednoduché si dát jako avatara kreslenou postavičku a jako jméno prapodivnou přezdívku. Dejte si tam vlastní fotku a svoje skutečné jméno, alespoň ukážete že si skutečně za svými komentáři stojíte.
Takhle mi nezbývá myslet si nic jiného než že jste srab.
Re: Technická poznámka
celé vláknoMimo jiné, jak vím, že je to vaše fotka a vaše jméno? Za svými názory si stojím stejně, ať už se jmenuju jakkoli - a na internetu jsem pod touto přezdívkou a avatarem na více místech. Změní se něco tím, že se přejmenuju na Františka Kadlece? Nebo Brunhildu Volopichovou? Myslete co chcete, s takovým názorem pro mě nejste partner k diskuzi a jste mi ukradený.
Re: Technická poznámka
celé vlákno"Zcela upřímně - a bez jakýchkoliv vedlejších narážek na cokoliv - já Vám děkuji za Vaši práci v CZille. Setkával jsem se tam s Vámi v příspěvcích a mnohokrát mne navedly na správnou cestu, jak problém úspěšně vyřešit. Ať už jste František Kadlec nebo Brunhilda Volopichová, dík ;-)."
A k těm děkovacím komentářům - podle mne je lépší plná diskuze komentářů, než nic. Alespoň je vidět, že to někdo četl a že mu to pomohlo 87).
Re: GD vs. PE
celé vláknoPřemýšlel jsem nad tím a potřebuji upřesnit pojmy, na příkladech:
Je GD o tom, že poskytnu např. odkaz na vytisknutí stránky, který povede na novou stránku se stylopisem pro tisk a díky window.print() v body->onload se lidem se zapnutým JS rovnou zobrazí i dialog tisku? Lidé bez JS dostanou výsledek stejný, ale čeká je klik navíc, do nabídky prohlížeče.
PE - Dělám veliký formulář. Lidem s JS ho po načtení stránky skryju, nebude jim překážet, pokud si jen chtějí přečíst submity ostatních, které jsou pod formulářem. Navíc ještě udělám kontrolu validity formuláře pomocí AJAXu, která se volá při onchange každého formulářového pole. Lidé bez JS budou mít formulář otevřený stále, tudíž jim může překážet, kontrola validity bude čistě server-side, bude se muset reloadovat celá stránka.
Navíc nevím, jestli jsou oba pojmy aplikovatelné na všechny aspekty webdesignu. (Javascript, modernější featury v nových verzích CSS apod.)
Pokud jsem pojmy prohodil, nebo se v obou případech jedná o ten samý, opravte mě a uveďte mi prosím správné příklady. Díky :)
Re: GD vs. PE
celé vláknoJá oba pojmy ignoruju, holt si pár webdesignérů už připadá méněcenných, tak si vymysleli podobné cool pojmy a teď o nich píší podobně "zasvěcené" články. Přitom se to celé dá shrnout do jediného pojmu "funkční web". A pokud dodržím i zásady použitelnosti a přístupnosti, tak je přece úplně jedno, kterou z těch dvou technik jsem toho dosáhl.
Absence definice
celé vláknoTakže co vlastně články na toto téma řeší? Tisíc slov v podstatě o ho***, které se dají shrnout do jedné věty "Dělejte funkční web". Skvělé, o to se snaží webdesignéři od začátku, ale poslední dobou by to bez těch cool pojmů asi nebylo ono.
Re: Absence definice
celé vláknoRe: Absence definice
celé vláknoRedakčně smazáno
celé vláknoRe: Absence definice
celé vláknoV clanku byla popsana metodika, jak tohoto cile dosahnout, cili nejaky postup. Takovy postup muze byt dobry pro zacatecniky, aby vubec vedeli jak na to, muze byt dobry i pro stare harcovniky, aby si uvedomili, jak pracuji a co muzou na svem pristupu vylepsit. Take muze byt dobry pro nekoho, kdo planuje postup vyvoje projektu. V neposledni rade take pro rigidni vyvojare (kteri si mysli, ze vedi vsechno a nic noveho uz se nemohou dozvedet), jako trenink v rozsirovani obzoru.
Co je zakladem je v clanku jasne sdeleno: zaklad je to co dovedou zobrazit vsechny prohlizece - pokud chce nekdo psat pro lynx nebo roboty, tak je to pro nej treba jen to html. Asi nema smysl neco takoveho specifikovat primo v metodice, kdyz to bude pro kazdeho jine.
Mozna jste clanek dobre necetl, mozna mate problem porozumnet psanemu textu. Asi pro vas byl prilis narocny a bude lepsi zacit s nejakou jednodussi problematikou. Treba o tom co znamena postup a co stav. Az tohle zvladnete, tak muzete na slozitejsi kousky. Takovy progressive enhancement ;-)
Re: Absence definice
celé vláknoJá problém s psaným textem nemám. Mám problém s tím, proč někdo definoval takovou neskutečnou kravinu, o které se teď píšou články a vůbec se to považuje za děsně kchůl, postavit se na jednu, nebo druhou stranu. Přitom v konečném důsledku je každému úplně ukradené, jak se k výsledku došlo.
Re: Absence definice
celé vláknoVysledek praveze zavisi na tom, jak se k nemu dojde, nakonec se podoba muze hodne lisit (napr. podobne, jako kdyz se pro pristupova prava pouziva allow/deny nebo deny/allow) a to prinejmensim udrzbare toho kodu bude zajimat. Z hlediska spolehlivosti a citelnosti kodu to muze byt uplne odlisne.
Re: Absence definice
celé vláknoU pisoárů stojí strojař a matfyzák. Strojař zapne kalhoty a odchází. Matfyzák udiveně říká: nás ve škole naučili mýt si ruce. Strojař mu odvětí: nás naučili si je nepoch*at.
> Z hlediska spolehlivosti a citelnosti kodu to muze byt uplne odlisne.
EEhh? Výsledek obou "metod" má vést ke stejně spolehlivému kódu. Cílem je podat uživateli informace, které musí být přístupné ve své základní podobě za všech okolností. Že se do návrhu aplikací vrhá každé ucho, co sotva zvládlo stáhnout jQuery a nemá žádné povědomí o nějaké přístupnosti, nebo použitelnosti, je obrovský problém dnešní doby. A podobné pseudometody se to jen snaží omlouvat.
Co se týká čitelnosti kódu, to myslíte vážně jako nějakou seriózní myšlenku? Jak může něco takového ovlivnit čitelnost kódu? Kód se dá napsat buď dobře, nebo špatně, nezávisle na jazyku a použitých metodách vývoje.
Re: Absence definice
celé vláknoOtazka je, jak to bude vypadat v praxi a jak narocne bude toho dosahnout. Da se nahlednout, ze vyjmenovat situace, kdy musi byt nejaka featura nepouzita je narocnejsi, ne-li nemozne s ohledem na dalsi vyvoj technologii. Naopak vyjmenovat pripady, kdy se neco pouzit muze je radove jednodussi a snadno resitelne. Je zrejme, ze to bude mit vliv i na design (a jeho narocnost) aplikace. Stejne tak je zrejme, ze vylepsovani lze delat planovane a s rozvahou. Na druhou stranu v pripade degradace se nelze vyhnout pripadum, kdy se az dodatecne po spusteni aplikace zjistuje, kde vsude je jeste potreba degradovat - a to rychle a zbesile. To ma samozrejme neblahy vliv na kvalitu kodu.
Co se tyce citelnosti, tak jsem se asi nevyjadril uplne stastne, myslel jsem tim obecne kvalitu, ted uz je to snad jasnejsi.
> A podobné pseudometody se to jen snaží omlouvat.
kde?
Asi jsem naivni, ale myslel jsem, ze na tohle prijdete sam az pochopite o co v clanku jde.
Ja uz k tomu asi nemam co dodat. Beru, ze genium jako vy staci rict "Dělejte funkční web" a vsechno navic jsou jen kraviny, vy zas muzete prijmout, ze ostatni smrtelnici se radi zamysli nad tim, jake postupy jsou vhodnejsi a jake mene. Jen me zneklidnuje, ze podobne nazory slycham od lidi, kteri ustrnuli nekde pred 20 lety, kdy dosahli dokonalosti a vse co se stalo potom uz pro ne bylo zbytecne. To si ale musite vyrikat hlavne sam se sebou.
Re: Absence definice
celé vláknoZrovna dnes jsem tohle řešil s jedním kolegou, který byl šokován, že si někdo odváží otevřeně psát v češtině o "graceful degradation vs. progressive enhancement", aniž by pořádně řešil, že Češi k tomuhle většinou ještě nedospěli - on to tedy trochu zobecňoval, je jasné, že je to případ od případu.
Ale sám ze své zkušenosti musím potvrdit, že nejspíš tady někde je ten problém. Jak se říká, starého psa novým kouskům nenaučíš a ačkoliv tohle téma z jednoho úhlu pohledu jakoby neříká nic nového, z druhého úhlu se jedná o "novou školu", která (zřejmě po právu) bude pro řadu z těch starších (nemyšleno věkěm) hůř pochopitelná. Ale je to škoda, přeci nebudeme čekat, až přijdou ty mladší, že jo? Proto můžu slíbit, že o těchto metodách na Zdrojáku rozhodne neslyšíme naposled. Je vidět, že jsou potřeba jako sůl.
Re: Absence definice
celé vláknoProblém se opravdu týká nové a staré školy, ale úplně jinak, než tady prezentuješ. Aktuální stav je, že zespodu se derou mladí a agresivní rádobyguru s drsnými přezdívkami typu Chamurappi a Zahoň (nebo Záhon?), kterým chybí jakýkoli kontakt s praxí a realitou. A seshora se na ně dívají ostřílení profíci, kteří se smějí těm mladým a dravým, jak si nenechají poradit a neustále si rozbíjejí hubu na těch samých problémech. Čím větší projekt, tím větší míra konzervatismu je potřeba a jim to nedochází. Je krásné, jak jsou tady předkládány články o rádobymoderních metodách vývoje. Ale tyto metody jsou v řadě případů cucány prstu lidmi, kteří nemají kontakt s realitou a přebírány těmi samými, nezkušenými lidmi. Jsem si jistý, že až guru Zahoň přijde do firmy o víc jak dvou lidech a dostane se k projektu o rozsahu větším, než pitomý web o pár stránkách, tak mu to celé dojde. Tedy doufám.
Re: Absence definice
celé vláknoRe: Absence definice
celé vláknoTakze se pripojuju k podpore techto temat na zdrojaku.
Re: Absence definice
celé vláknoRe: Absence definice
celé vlákno„Aktuální stav je, že zespodu se derou mladí a agresivní rádobyguru s drsnými přezdívkami typu Chamurappi a Zahoň (nebo Záhon?), kterým chybí jakýkoli kontakt s praxí a realitou.“
Já se někam deru? Poslední rok usilovně stagnuji ve své bezkontaktní teoretické realitě, nemám čas na agresivní draní.
„A seshora se na ně dívají ostřílení profíci, kteří se smějí těm mladým a dravým, jak si nenechají poradit a neustále si rozbíjejí hubu na těch samých problémech.“
Když už zmiňuješ konkrétně mé jméno — kdo se mi směje? Na jakých problémech si rozbíjím hubu?
Asi jsem nepochopil pointu tvého proslovu.
Re: Absence definice
celé vláknoRe: Absence definice
celé vláknoNa druhou stranu v pripade degradace se nelze vyhnout pripadum, kdy se az dodatecne po spusteni aplikace zjistuje, kde vsude je jeste potreba degradovat - a to rychle a zbesile. To ma samozrejme neblahy vliv na kvalitu kodu.
Čímž se ale dostáváme někam úplně jinam, a sice k naprostému nedostatku zkušeností všech těch, kteří se tímhle ohánějí. Pokud se kodér dostane do situace, kdy musí bez hlubšího rozmyslu něco narychlo opravovat, pak je chyba hned na začátku vývoje, kdy s tím prostě někdo nepočítal. A je jedno, jestli s tím nepočítal analytik, nebo kodér.
Jen me zneklidnuje, ze podobne nazory slycham od lidi, kteri ustrnuli nekde pred 20 lety, kdy dosahli dokonalosti a vse co se stalo potom uz pro ne bylo zbytecne. To si ale musite vyrikat hlavne sam se sebou.
Upřímně řečeno, víte kulové o mé praxi a znalostech, tak si podobné ortely laskavě nechte mezi své kamarádíčky, kteří vám je budou tolerovat.
Re: Absence definice
celé vláknoA jsme u toho, takhle se premyslelo nekdy pred 10 lety. Predstava byla, ze analytik navrhne aplikaci tak dokonale, ze bude pocitat uplne se vsim co muze nastat a vsechno pujde elegantne opravit. Casem se samozrejme doslo k tomu, ze tohle je utopie a ze se proste na vsechno pamatovat neda (nebo je to neumerne drahe/pomale...). Navic i pri sebelepsim navrhu je jen otazka casu, kdy se narazi na problemy, protoze se s necim nepocitalo. Ovsem prvni nezbytny krok je ten, ze si jeden prizna, ze tohle se proste deje. Ze lidi nejsou neomylni a perfektni a uz vubec sebou nenosi orakulum. Ze chyby se proste deji - samozrejme i na zacatku vyvoje. Pak prijde dalsi krok a sice zamyslet se jak se s tim vyporadat - a myslim ze i o tom, je tento clanek.
Kdysi jsem cetl rozhovor s kymsi a padla tam zajimava myslenka, ze cesi jsou posedli jistym druhem perfekcionismu. Kdyz neco delaji, tak to musi byt hned napoprve dokonale a pokud neni, tak jsou z toho spatni. Docela mi to tenkrat otevrelo oci...
> víte kulové o mé praxi a znalostech
ano, nezbyva mi nez si delat obrazek z tehle a podobnych diskuzi :-|
Re: Absence definice
celé vláknoDodal bych, že jim také často obecně nevoní, když mají dnes dělat něco jinak, než jak se to dělalo několik let a brání se změně zuby nehty bez ohledu na to, že jim to může něco přinést.
Re: Absence definice
celé vláknoRe: Absence definice
celé vláknoRe: Absence definice
celé vláknoTo mi tady prave chybi. Zatim jste rekl, ze je to tema kravina a podeprel to tvrzenim, ktere ukazovalo, ze jste tu metodu nepochopil. Dale jste uvedl neco v tom smyslu, ze vyvoj musi byt od zacatku bez chyb a navrh musi pocitat snad uplne se vsim, coz je prani z rise fantazie.
Re: Absence definice
celé vláknonavrh musi pocitat snad uplne se vsim, coz je prani z rise fantazie
Ano, musí. Že si nejste schopný udělat kompletní analýzu sám, nebo máte k dispozici neschopné analytiky, to už je problém vás, a bohužel i vašich zákazníků.
Re: Absence definice
celé vlákno>U pisoárů stojí strojař a matfyzák. Strojař zapne kalhoty a odchází. Matfyzák udiveně >říká: nás ve škole naučili mýt si ruce. Strojař mu odvětí: nás naučili si je nepoch*at.
Za nimi odchází biolog, který si ruce omyje až venku. Ono totiž na kliku ke dveřím zevnitř, po použití WC, sahají krom strojařů i matfyzáci...
Re: Absence definice
celé vláknoUzivateli dodavam zejmena HTML, vse ostatni je jen vylepseni vzhledu a funkcnosti na strane klienta. Takhle to dalem jiz 10let. Neni ten vtip na obrazku trosku mimo, nebo jsem jenom ja jiz pred 10lety zacal delat weby timto zpusobem, ktery dnesni moderni developeri shledavaji rozumnym? Je pravda ze pred 10ti lety delat weby jako striktni HTML bez tabulek, vzhled pomoci CSS nebylo zrovna v mode :).
Redakčně smazáno
celé vláknoTisk přes odkaz
celé vláknoRedakčně smazáno
celé vláknoRE: Graceful degradation vs. progressive enhancement
celé vláknoProblém v příkladu
celé vláknojaka je souvislost?
celé vláknostale marne premyslim, jak vam pristup k internetu, placeny telekomunikacnimu operatorovi, dava nebo posiluje prava na pristup k obsahu libovolne stranky...
Kdy se toto rozdělení vyplatí
celé vláknoVěřím, že děláte programy s naprosto dokonalou a neprustřelnou analýzou. Jeden jediný uživatel Vaší kalkulačky to určitě ocení, ale pokud byste dělal programy na úrovní Office, nebo projekty, které během 7 let používají stovky tisic klientů, tak se Vám to nemůže podařit. Bude stačit 1 důvod: klienti vždy chtějí něco nového.
2/ A teď, kdy se toto rozdělení PE vs. GD vyplatí. Docela mi to chybí v článku, aby byli přistupy jasně rozdělené. Browser už dávno není jenom prohlížeč webových stránek (v původním zaměření), ale také aplikační GUI platforma. Pokud dělám aplikaci, budu vycházet z GD principu. Prostě se jedná o aplikaci, která vyžaduje určitou funkčnost a mohu poskytnout i nějakou osekanou, bude-li potřeba. Aplikace prostě mají nějaké požadavky na systém, na kterém jsou spouštěny. Příkladem mohou být různe mapy, emailoví klienti, apod. Naopak, pokud budu dělat klasické prezenční stránky (Ahoj, jmenuju se Broňa), měl bych vycházet z PE, kdy by mělo jít o maximální přístupnost ve všech browserech, netradiční funcionalita (z pohledu www) je tam spíše feature.
Broňa
terminologie
celé vláknoPotom lze graceful degradation a progressive enhancement považovat za dvě metody, kterými je tato přístupnost dodahována, jedna odshora-dolů (optimistická), druhá odspoda-nahoru (pesimistická).