Přejít k navigační liště

Zdroják » Různé » Když je kreativita překážkou

Když je kreativita překážkou

Články Různé

Obecně se věří, že úspěch v kreativní profesi, mezi které patří i velká část softwarové vývojařiny, je přímo úměrný kreativitě. Tedy že čím víc nápadů, tím líp. Bohužel to neplatí tak doslova; mnohem důležitější bývá schopnost své nápady ukočírovat a kreativitu omezit. Nebo alespoň najít někoho, kdo nám ji omezí.

Když se ptali George Malloryho, proč, u všech všudy, lézt na Mount Everest, odpověděl legendárním výrokem: Protože tu je! Tato věta se pak stala symbolem všech výzev, dobrodružství a dobývání neprobádaného. Používají ji nejen horolezci, potápěči, polární badatelé, astronauti či vědci, ale její obdobu znají i mnozí vývojáři a používají ji jako odpověď na otázku „Proč má naše aplikace zrovna tuhle novou funkci?“ – Protože to dokážeme naprogramovat! 

Což je hezké, ale programování není výzva (tedy – pro programátory je; když jsem ještě programoval, říkal jsem, že jsem placen za to, že si v pracovní době hraju a zkouším, jestli dokážu udělat to či ono). Programování je činnost, která by měla směřovat k nějakému cíli, a tím je hotová aplikace, která plní nějaké funkce, co potřebuje její uživatel. Uživatel, to je ten člověk, kterému se tak rádi smějete, že nerozumí počítačům (tu diskusi snad ani nebudeme připomínat), ale faktem je, že on to celé platí a očekává, že když už to platí, tak taky dostane něco, co mu bude nějak k užitku.

Tady by se hodila jiná věta, kterou mi říkali rodiče, a vsadím se, že ji říkali v různých variantách snad všem: „Že umíš jezdit na kole bez držení, neznamená, že tak musíš jezdit furt!“ Tedy obecněji: Nemusíš něco dělat jen proto, že to dokážeš.

Proč by matky nelezly na Everest?

Ano, rodiče (a obzvlášť matky) mají speciální talent na to, aby všechny výzvy, dobrodružství a dobývání neznámých zemí uťali už v zárodku. Cesta na autobus přes les se s rodiči (zejména matkami!) jen těžko změní v dobrodružství poznání, protože po nás požadují chůzi pěšinkou. Nechtějí se kochat pohledem na mraveniště, prodírat se ostružiním, lézt na stromy a zkoušet přeskočit potok, ale chtějí dojít na druhý konec lesa, spořádaně se postavit na zastávku a počkat, až pojede autobus.

Představovat si v roli uživatelů své rodiče je velmi dobrá metoda, jak udržet svůj neklidný vývojářský duch na uzdě, a někteří vývojáři své produkty často právě na rodičích, matkách, přítelkyních a manželkách testují. Představa uživatele coby rodiče se ale nemusí hodit jen při přípravě uživatelského rozhraní, ale i obecněji. Představte si vývoj jako tu zmíněnou cestu lesem: Zákazník-rodič má nějakou potřebu (dojít včas na autobus) a je na vás, jak se mu půjde.

„Pojďte, vylezeme támhle na tu skálu!“
„Proč bychom na ni lezli?“
„No, můžeme se rozhlédnout…“
„Proč?“
„Uvidíme jistě spoustu zajímavého… Jo! Uvidíme, kde je zastávka!“
„Vím kde je, to nemusím lézt na skálu. Zastávka je na konci téhle pěšiny!“

Možná že vás napadlo něco, o čem zákazník ani nevěděl, že to chce, dokud jste mu to neukázali. Dejme tomu. Ale ruku na srdce – ze sta nápadů typu „to dokážeme udělat“ je jeden, z něhož je zákazník opravdu nadšen, devět takových, že je bude zákazník nakonec používat, a devadesát bude navždy jen „výplň nástrojové lišty“, pomníček, připomínající, že nějaký programátor dokázal naprogramovat tuhle funkci.


Dave Duarte

Všechno tohle dokážeme naprogramovat!

Ve velmi pěkné knize Designing the Obvious od Roberta Hoekmana (dostupné i pro Kindle, mimochodem…) je (sebe)obrana před podobným přístupem jedním z leitmotivů. Dokonce i názvy některých kapitol jsou velmi výmluvné: „More Features, More Frustration“ či „Drop Nice-to-Have Features“.

Stejné ponaučení naleznete i v knihách Getting Real od 37signals nebo v Krugově bestselleru Nenuťte uživatele přemýšlet: Vezměte to, co chcete udělat, a vyházejte vše, co není nezbytně nutné, aby vám zůstalo jen to podstatné. A pak to udělejte ještě jednou.

Leckdy pomůže přesně opačný přístup

Omezte svou kreativitu!

Práce vývojáře je ve své podstatě dobrodružstvím ducha, objevováním, hrou… Je tedy pochopitelné, že vývojáři mívají často tendenci tomuto přístupu podlehnout. V žertu se o vývojářích říká, že jsou schopni se celou dobu, kterou na práci mají, věnovat jednomu zajímavému, ale naprosto podružnému detailu, a zbytek aplikace napsat v noci před předáním zákazníkovi. U některých však nejde o žert ani nadsázku…

Ze stejného soudku je i výše popsané chování, tedy snaha nacpat do aplikace vše, co do ní nacpat dokážeme. Někdy se vývojáři ani nemusí snažit, někdy to jde samo a stačí se jen nebránit. Výsledkem je cosi, co „umí udělat všechno“ – výtvor, na který jsou jeho autoři nesmírně hrdí a velice těžce nesou, když po nich někdo chce, aby většinu funkcí vyházeli. Obvyklým protihmatem zhrzených tvůrců pak bývá prohlášení o tom, že se jedná o „nástroj pro profesionály, kteří jej dokáží plně ovládat, a kteří přece vyžadují plnohodnotný software“. Což je pravda, ale pravda je i to, že profesionál potřebuje pracovat, ne se učit obskurní uživatelské rozhraní a ovládání miliardy parametrů (zde upozorním, že slovo miliarda je použito v nadsázce).

Pro tvůrčí lidi, kterými vývojáři často jsou, bývá obtížné udržet kreativitu na uzdě a nepodlehnout svodům své vlastní fantazie. Programátory jejich vlastní tvořivost a schopnosti leckdy svádí k tomu, že dělají věci proto, že je dokáží udělat. Co na tom, že to zákazník nepotřebuje a nechce (a nezaplatí) – bude tam mít přece ikonku navíc, která mu nabídne něco, co mu konkurenční software nenabídne. Kreativní – ale technický – mozek programátorů očekává, že zákazník se rozhoduje podle počtu funkcí jednotlivých aplikací, a když ta naše umí víc než ty ostatní, tak koupí tu naši, to je přeci jasné. Ve skutečnosti tomu tak není, a programátoři většinou důvod nechápou („přece nikdo nekoupí za stejný peníze software s míň funkcema?!“)

V už zmíněné knize o návrhu samozřejmého přirovnává autor podobné uvažování k běhu v první bojové linii: Můžete běžet, ale musíte pořád střílet; jak přestanete střílet, musíte se skrýt. Podobně se můžete s konkurencí neustále trumfovat, vymýšlet další a další nové funkce a sepisovat sáhodlouhé seznamy schopností, co bude oddělení PR psát do tiskových zpráv k novým verzím. Když oni šedesát nových ikon, tak my sedmdesát, a větších! Jakmile na tenhle styl přistoupíte, musíte v něm pokračovat, dokud buď vy nebo konkurence nepadne. Navíc nelze nikdy vyhrát – ať uděláte sebenadupanější verzi („The most complete release ever!“), vždy se může objevit konkurent, který k tomu ještě něco přidá – a běží se dál.

Je to vyčerpávající závod – nejen pro vývojáře, ale i pro uživatele a zákazníky. Platí totiž jednoduchá pravidla: Čím víc funkcí to má, tím víc se musí uživatel naučit. Čím víc nastavení, tím víc nastavování. Čím komplexnější aplikace je, tím míň s ní lidé pracují a tím víc času věnují nastavování.

Ano, jsou uživatelé a zákazníci, kteří tohle všechno vyžadují a potřebují a jsou ochotni se to naučit. Jsou uživatelé, kteří si to koupí, protože chtějí věřit, že jsou profesionálové a odborníci, a k tomuto dojmu jim nesedí jednoduchý nástroj. Ale většina uživatelů (dokonce i většina profesionálů) dá přednost dobře použitelnému programu, který dělá míň věcí, zato perfektně, před něčím „vše-v-jednom“. Profesionál se nebude ptát, jestli máte víc funkcí než konkurence, ale co s tím dokáže udělat a jak.

A jaká že je ta myšlenka dne otce Fourata (správně francouzsky Fouras)? Až někdy budete váhat nad tím, jestli přidat novou funkci, vzpomeňte si: Nemusíte dělat něco jen proto, že to dokážete udělat!

Komentáře

Subscribe
Upozornit na
guest
44 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
View all comments
Radek

Jednoduchost nadchne každého. Už když srovnáte ty dva ilustrační obrázky, každý vzdychne – jo, vždyť to přeci jde tak jednoduše! Ale ve skutečnosti stejně nakonec zjistíme, že tříkolka auto nenahradí, ač taky jezdí. Takže mi to připadá taková populistická leč triviální, ničím nepodepřená a v praxi obtížně aplikovatelná myšlenka. Schválně, vezměme ten Word (či Open Office :-) a řekněme, která funkce je tam jen proto, že ji někdo uměl naprogramovat? Vždy se najde někdo, kdo ji nadšeně používá.

Joey

Ad Office – u MS (mozna i na youtube) je k dispozici pekne video, kde popisuji redesign Office a prechod „ribbon“ s tim, co to vse ve vyvoji obnaselo. Je to hodne poucne – nazorne tam prave ukazuji, jak features bobtnaly a bobtnaly a nakonec i anonymni pruzkumy pouzivani jednotlivych akci ukazaly, ze dokonce maji v hlavnim menu polozku, kterou za jeden rok (nebo podobne casove udobi) pouzili snad jen dva uzivatele.

keff

… zaroven je na blogu office pekna anketa, kde vyzvali uzivatele, aby odhadli 5 nejpouzivanejsich funkci wordu. Kazdy si by jisty tim, ze to tipnul spravne, a prakticky kazda petice byla jina. A to je problem se kterym se musi vyporadat vetsina autoru velkych aplikaci – kazdy user pouziva jen 5-10 % funkci, akorat ze kazdy jine.

Obdivovany Basecamp se s tim vyporada tak, ze vybere jednech 10 %, a o zbytku rekne ‚ty nejsi nas zakaznik‘, ale u masove nasazeneho softwaru to tak casto nejde

Aneb, dobry designer ma vzdycky premyslet za sebe, protoze jsou situace, ve kterych se sebelepsi rada k dane situaci nehodi :).

keff

Jinymi slovy, basecamp je tady mainstreamovym hracem, zatimco word cili na longtail a ziskava tim i uzivatele s okrajovymi potrebami (MS si to dovolit muze, 37signals ne – a v ramci toho maji oba optimalni strategii, jen kazdy jinou).

keff

Ještě přidám linky (jde o 2 díly seriálu o Office UI blogu – doporučuji přečíst celý, a k tomu i další články tom, jak microsoft používá telemetrii):
http://blogs.msdn.com/b/jensenh/archive/2006/04/05/568947.aspx
http://blogs.msdn.com/b/jensenh/archive/2006/04/07/570798.aspx

Tuhraklen

Jednou za rok? To mi připomnělo jeden bigbeatový koncert, kdy měl bubeník v soupravě i kravský zvonec a dával jsem pozor – za celý koncert ho opravdu jednou použil.

-

Víte, vývojem SW se živím už poměrně dlouho a mám pocit, že Vaše zkušenosti jsou z nějaké hurá firmičky o pár lidech, kteří něco nějak dělají, ale dlouhodobě to nemá žádný koncepci. Nechci se Vás v žádném případě dotknout, ale aby si programátor do produktu přidával svévolně funkce „jen tak“, aby sobě něco dokazoval nebo proto, že mu přijdou fajn, to si dle mé zkušenosti ve větších firmách nemohou dovolit. Nápad na nové funkce přichází ze tří zdrojů – marketing, zákazníci, vývojáři+testeři. Tento nápad se vyhodnocuje a to jak z hlediska proveditelnosti (je-li to technicky možné), tak z hlediska použitelnosti (zda funkce bude pro zákazníka snadno využitelná a praktická). Následně to dostane GUI tým, který ve spolupráci s vývojářem udělá návrhy dialogů, grafiky a textů potřebných pro danou funkci (aby to bylo sladěno se zbytkem balíku, od grafiky po terminologii). Pak na tom začne vývojář pracovat. Takže ne, že mu rupne v kouli a začne dělat nesmyslnou funkci.

Celé je to poměrně dost komplikované na to, aby se někdo sám rozhodl, že si přidá něco vlastního. Tolik má zkušenost s vývojem.

A ohledně toho, že lidi jezdí autem, protože jim nikdo nenabídnul tříkolku. Problém, aspoň opět z mé zkušenosti, totiž tkví v tom, že ten, kdo tvrdí, že by mu stačila tříkolka, si to sice myslí, ale skutečnosti potřebuje auto. Pamatuju si, jak před lety jsme měli poměrně dost zpětné vazby od zákazníků, že v programech máme příliš mnoho funkcí, že pro řadu věcí je třeba číst manuál atp. Ve Vašem příměru – nechceme auto, chceme tříkolku. Bylo rozhodnuto, že se tedy udělá nová, odlehčená verze, kde bude minimum základní funkčnosti (tzn. aby tam bylo těch 20% funkcí, co používá 80% uživatelů, jak se s oblibou tvrdí). Tak se stalo a testovací verze dostali nejvýznamnější zákazníci (firmy s mnoha tisíci instalací). Výsledek byl ten, že tomuhle chybělo tohle, tamtomu něco jiného a po zhruba roce jsme se víceméně dopracovali tam, kde jsme byli na začátku, tzn. hodně funkcí a na některé nutnost konzultace s manuálem a problém se vyřešil přepínáním mezi základním a pokročilým režimem.

Někdo to tady v diskuzi napsal velmi dobře – každý uživatel má svých 5 nejpoužívanějších funkcí, ale pro každého je ta pětice jiná. Proto je takové množství funkcí v programech a proto jsou i takové, které Vám přijdou, že je nikdo nemůže používat.

Jan

Ten anonym píše, že má zkušenosti z velkých firem, ale nesrovnává své zkušenosti s vašimi. Jen píše, že váš článek vypadá, jako že je inspirován pouze malou firmičkou o dvou lidech. A on tak skutečně vypadá. Že se článek dá nějak aplikovat i na velkou firmu, to je sice hezké, ale není to v něm zmíněno. To je chyba autora, ne chyba čtenáře.

Každý právo použít anonymizér. Je to naprosto regulérní rozhodnutí, které dělá každý před vstupem do téhle diskuze. Pokud vám to vadí, tak na takové příspěvky nereagujte, nebo aspoň nekomentujte, že se pro to někdo rozhodl. To je pak argument ad persona. Jsou weby, kde je anonymní diskuze zakázána a potlačována, tento k ním, pokud vím, nepatří.

-

Ale ano, psal jsem o mých zkušenostech s jevem popsaným v článku a také jsem psal, proč si myslím, že jeho platnost je velmi omezená na typ firem, které jsem popsal a které se Vás a pana Hulána tak dotkly. Ale uznávám, že anonymita je pro různé jedince asi dráždivá, protože se často v diskuzích setkávám s tím, že vystupuje-li tam někdo anonymně, namísto rozporování jeho tvrzení se zpochybňuje autor jen proto, že namísto „Jan Novák“ do kolonky „jméno“ nenapsal nějaké aspoň na první pohled existující jméno.

anon

tedy autorova tvrzeni jsou neprukazna a zaroven jej nikdo nezpochybnuje ;)

-

Anonymizér používám proto, že přistupuji k netu z práce a nejsem si zcela jist, zda je vhodné, aby můj zaměstnavatel byl v diskuzi zmíněna, byť jako součást IP adresy. Auto, plat i zkušenosti máte třeba i větší, nebuďte ješitný, já jsem psal, že zkušenosti máte z nějakého prostředí, zatímco jinde to tak nefunguje.

Myslím, že můj reálný příklad s „jednoduchou tříkolkou“ Vás mohl trochu trknout, což se bohužel nepovedlo. Snažil jsem se vysvětilt, že zákazníci sami přišli, že chtějí jednoduchou tříkolku. Tu dostali a jeden začal remcat, že do ní fouká, druhý, že nemá kufr, kam by si mohl odložit nákup, třetímu zase vadilo, že s sebou nemůže vzít děti, až se z tříkolky *pod tlakem zákazníků* opět stalo auto, protože jednoduchá tříkolka ve skutečnosti nikomu nevyhovovala, *i když byli dotyční schopni do krve se hádat, že opravdu chtějí tříkolku*. To byla pointa. Vzhledem k tomu, že funkční připomínky k příliš jednoduché tříkolce měli sami zákazníci, těžko si můžete vážně myslet, že bychom si my za hodně peněz potřebovali něco dokazovat. Už jen proto, že zákazníci platí produkt, nikoliv vývoj a nás to cimrmanovské hledání „tudy ne, přátelé“ stálo prostředků poměrně dost.

Co se týče té přenositelné zkušenosti, mám pocit, že jednotlivec mnohem snadněji ulítne než tým, byť stát se to někdy může. Ale opět se cítím nepochopen. Snažil jsem se vysvětlit, že to množství funkcí v programech, zvláště renomovaných firem (v článku jste to předvedl na MS Office), tam opravdu nebývá proto, že vývojáře Mirka Vopičku napadne, že se předvede a udělá funkci, ale že po takových funkcích prostě je poptávka. Ať už přímo od zákazníků a nebo – často v dost zmatené a naivní formě – od marketingu. A se zákazníky určitě zkušenost máte, takže víte, že ten samý zákazník může mít požadavky „tady se mi má otevřít dialog s těmi a těmi volbami“ a zároveň přijde s tím, že se žádný dialog otvírat nesmí, protože by to bylo příliš rušivé. Že jde o vzájemně neslučitelné požadavky už neřeší. Od toho jsou ty porady týmů, aby se podobné nesmysly odfiltrovaly.
Samozřejmě nechci mé relativně omezené zkušenosti nějak extra generalizovat, ale opravdu jsem ještě nezažil, aby nějaký tým někde přidával funkce jen proto, že je někdo opojen tím, že je umí udělat. V minifirmičkách ano.

Dan

Zdravím,

článek se mi líbí a i tuto diskuzi považuji za zajímavou, i když trochu zbytečně tvrdohlavou. Ale nesouhlasím s vaším názorem o anonymizéru a nic mi na tom směšné nepřijde. Člověk skrytý za anonymizérem je pořád ten samý člověk, který by byl, kdyby se podepsal, tak proč by proboha nemohl psát o svých zkušenostech a pocitech atd.?

Radek Hulán

Komentář pěkný, až na jedno .. zbytečné napadání autora článku. Kdyby se vypustila jedna věta, a místo ní se dalo „jiný pohled na věc“, bude to mnohem serióznější a bez zbytečného flame.

Ale to je pro lidi v IT těžké, neseřvat každého s trošku odlišným pohledem.

-

Pokud jsem svůj příspěvek uvedl větou „Mám pocit“ a hned v druhé uvedl „dle mé zkušenosti“, čekal bych, že průměrně inteligentnímu člověku z toho dojde, že prezentuji své vlastní dojmy, pocity a zkušenosti a že to není nějaké seřvávání někoho nebo flame. Nebo mě považujete za Boha a tudíž úsloví „mám pocit“ berete jako „je nade vší pochybnost jisté“? ;-)

Radek Hulán

Tak jinak – věta „Vaše zkušenosti jsou z nějaké hurá firmičky o pár lidech, kteří něco nějak dělají, ale dlouhodobě to nemá žádný koncepci. Nechci se Vás v žádném případě dotknout“ je tam opravdu zbytečná. Komentář by měl smysl i bez podobného osobního útoku. Třeba na svém blogu bych takový komentář smazal, protože přispět se dá i bez napadání ;) O autorovi nevíte vůbec nic, ani v jaké rovině se článek rozhodl napsat – jde tedy jen o ego-masáž.

-

Problém je, že vy hledáte zákeřnosti, snahu o problémy a egomasáže tam, kde nejsou.
Přestože jsem explicitně uvedl, že tou větou se autora dotknout nemíním, protože jsem jen popisoval prostředí, o kterém se domnívám, že je pro popisovaný jev typické, Vám to nestačí a budete za tím hledat kde co jiného. S tím už bohužel nic nenadělám.

donnie

To jsou kecy pane. Je mi jasne ze Vy to tam nevidite, ja ovsem ano a take mi to vadi. Vicemene jste jen opsal ze autor radeji at nemluvi protoze nejspis nema zkusgenosti „nicmene, nechci se vas dotknout ze“, S tim se prosim jdete vycpat. Tohlem mi obecne vadi i u jinych postu. U vaseho mozna i vic protoze jinak mluvite dost k veci.

-

Víte, psaný text má oproti mluvenému slovu jednu úžasnou výhodu. Je jasně vidět, co je psáno. A jak se říká, co je psáno, to je dáno. Pokud v textu vidíte něco, co tam stoprocentně není (viz například Vaše citace „autor radeji at nemluvi protoze nejspis nema zkusgenosti“), je to pouze Váš problém a Vaše spekulace.

Já to tam nevidím, protože to tam není. Vy to tam taky nevidíte, ale myslíte si to, protože si to myslet chcete. Dělejte, jak uznáte za vhodné, ale podobné „argumentaci“ oponovat vcelku nemá smysl. Představte si, že bych Vám začal tvrdit, že jste tímto Vaším příspěvkem tvrdil, že jsem největší kokot na světě, manželka mě podvádí a můj křeček mi umře hlady. Budete mi stokrát tvrdit, že jste nic takového nepsal ani nemyslel a já vás „utřu“ tím, že já to tam prostě na rozdíl od vás vidím. Opravdu chcete takhle diskutovat?

Lokutus

Obávám se, že věc není o tom, zda auto nebo tříkolku. Spíš jestli obyčejné auto, které bude prostě jezdit, anebo auto s umělou inteligencí a zabudovaným kávovarem. Zda je potřeba dělat auto, které bude umět blikat pravými i levými blinkry na střídačku. Anebo jestli potřebuje a chce průměný středoevropan takové to auto s polohovacími tlumiči, které umí tancovat, což tak milují američtí niggas.
Tyhle všechny fíčury a funkce výrobci aut umí. A mnoho dalších. Ale nedělají je. V podstatě jsou při výrobě aut dost konzervativní. Víte proč? Protože každá taková blbost zvyšuje náklady a tedy i výslednou cenu. A o tom je článek.

VfB

ale na druhou stranu je nejméně 50% uživatelů, kteří z wordu používají jen copy & paste (například programátoři, grafici, projektoví manageři, plniči dat..)

co je navíc ?

Eastern Egg – letecký simulátor v excelu

FilipK

zasadni chyba v clanku je, ze uvedenou hlasku nerekl Hillary, ale uz davno pred nim Mallory ;)

jinak hezka uvaha..

rohlik

Nebudte kreativni a programujte tuctove eshopy kterych si kazdy muze stahnout mrte zadarmo. Nevydelate si ani na rohlik.

Bubak

Program muze mit zilion funkci, ale je treba umet je vsechny poskladat dohromady. Kreativita neni to naprogramovat, ale udelat to tak aby se v tom zakaznik vyznal.

Dan

Třeba takový Vim editor, ten má funkcí zilion na druhou, ale nijak mě s nima neotravuje. Používám jich tak dvacet až třicet a když se občas dozvím o nějaké nové co mi usnadní práci, tak jenom dobře :)

biq

presne tak … mam pocit, ze uplne zbytocne sa hadaju vyssie o trojkolke a aute, lebo to asi nieje dobre prirovnanie. ja by som povedal, ze uzivatel nevravi, ze chce trojkolku… ale ze chce fajn auto, ktore sa ovlada tak jednoducho ako trojkolka.

JosefK

Děkuji za pěkný článek.

Rád bych upozornil na přednášku Simplicity vs. Choice od Joel Spolsky
http://www.joelonsoftware.com/items/2010/08/19.html

I/O

kdy mi jeden profesor říkal „uměním není napsat pětikilovou bichli, kde je skoro všechno, ale stostránkovou knížku, kde je vše podstatné a nic víc ani míň.“ I když se na první pohled může zdát, že jsou to dvě nesouvisející věci, přece si myslím, že člověk dokáže vymyslet tisíce různých blbůstek, ale vymyslet nějaký princip/funkci/přís­tup tak, aby to bylo jednoduché a přitom dostatečně silné a praktické – to už je sakra kumšt!
Ono je dost výmluvné i to, že s autorem zde polemizují zastánci současného směru v IT, o němž se všeobecně ví, že je v podstatě tlačen jen marketingovými odděleními, ale že jinak se kvůli tomu veškerý vývoj v IT před 15 lety prakticky zastavil a celé odvětví dnes pouze bobtná. Autoři těch historicky nejúspěšnějších HW/SW výtvorů totiž říkají prakticky totéž, co autor: z toho mračna všech možných vlastností, jež by daná věc mohla mít, umět vybrat co nejmenší sadu tak, aby umožňovala co nejvíce věcí.

František Kučera

Ad „stostránkovou knížku, kde je vše podstatné a nic víc ani míň“

A co je „vše podstatné“? Celé to je vlastně o vymezení dostatečně úzké cílové skupiny. Platí to u knížek i u softwaru. Jako ideální se pak na první pohled jeví vymezit si tu skupinu „hodně úzkou“, ale pak dost možná zjistíme, že software je moc drahý – náklady na vývoj se rozkládají mezi menší počet zákazníků, tudíž každý platí víc. Nebo uděláme program pro širší masy, ale pak se uživatelé musí smířit s tím, že v něm mají i řadu funkcí, které nepotřebují. Náklady jednoho zákazníka ale budou relativně nízké, protože se celkové náklady rozkládají mezi více zákazníků. Případně zvolit nějaké kompromisní řešení – např. přepínání režimů aplikace (ať už podle odbornosti nebo podle nějakých tématických podskupin), což taky není zadarmo (analýza skupin nebo aspoň toho, co dát do základní a co do expertní nabídky + samozřejmě vývoj toho přepínání).

Na stejný problém se dá narazit i když se software nevyvíjí, ale jen se vybírá nějaké hotové řešení – uživatelé si budou stěžovat, že je program moc složitý („má moc tlačítek“, „nevím, kde najít XYZ“ atd.), ale když se jim dá jednodušší software, stěžují si zase na chybějící funkce.

Dokonalé řešení neexistuje – resp. mohl by to být na zakázku vytvořený program pro každého jednotlivého zákazníka (nejužší cílová skupina – jeden člověk), ovšem to je příliš drahé (viz výše), takže se obvykle hledá nejvhodnější z těch nedokonalých řešení (byť za cenu toho, že uživatelé remcají). Někdy je optimální jednodušší řešení (uživatelé se musí smířit s chybějícími funkcemi) a jindy to složitější (program toho umí víc, což může některé uživatele mást).

Pavel

pluginy

Clock

„Obecně se věří, že úspěch v kreativní profesi, mezi které patří i velká část softwarové vývojařiny, je přímo úměrný kreativitě.“ – mohl by autor prosim uvest zdroj? Dekuji.

Death

Nezaskodilo by kreativitu obmedzit nie len pri pisani funkcii ktore su len preto ze to programator dokaze (prave si precital v tutoriale ako na to), ale aj pri pisani clankov ktore su napisane len pre to aby sa zdalo ze autorovi nechyba kreativita… :)

Oldis

to neni specialitamatek, ale vsech zen, ktera ovsem vychazi z podstaty jejich byti, zeny proste resi „proc neco delat“, kdezto muzi kdyz uz resi tak resi a „proc to neudelat?“

MCE

Přiznám se, že Martinovy články si vždy rád přečtu, protože se mi líbí i jeho styl psaní. Navíc se zdá, že máme na spoustu věcí i podobný názor.

Před časem jsem se otázkou kreativity též zabýval a dospěl jsem k závěru, že pokud máte funkční aplikaci a uživatelé jsou s ní spokojeni, tak všechny požadavky na nové vlastnosti zamítejte a nové vlastnosti nepřidávejte. Celý článek je zde: http://www.cleverandsmart.cz/proc-nepridavat-dalsi-vlastnosti/ ,ale je třeba ho brát s určitou nadsázkou.

Souhlasím i s Tomášem, někdo cílí na longtail a ziskává tím i uživatele s okrajovými potřebami a někdo se zaměřuje jen na určitou skupinu. Každý pak musí zvolit jinou strategii.

100% Lenin

Hmmm, jak bych vám to jen řekl. Trochu se zde mísí pojmy ve stylu:

Výzvy:
Je tu nejvyšší hora světa a proto ji (jako výzvu), musíme/chceme pokořit. Tedy dobýt.

Mateřské moudrosti:
To že nám maminky/drazí v našem dětství říkali, že nemáme jezdit na kole bez držení, to nebylo omezování kreativity.
To, drazí přátelé, to byla regulace naší nezkušenosti. Doplnění našich databází toho, co není radno dělat.
To, že občas rádi zkusíme něco, co se nevyplácí a statisticky je doloženo negativním výsledkem a 99.999 % lidí si při tom rozbije čuňu, to není kreativita.

Kreativita programátorů:
pokud programátor naprogramuje něco, co není v zadání, pak:
1 – to neznamená, že je špatný ani dobrý programátor
2 – svědčí to o nedisciplinovanosti programátora
3 – nesvědčí to o kreativitě programátora

Vývojář:
Ani nevím, jaká role je tím míjena. Analytik? Byznys či systémový?
Tak nějak to zde není jasné. Ale celkově tuto postavu chápu jako toho, kdo napíše programátorovi zadání. A u této role/postavy – kreativita musí být. Proč?
Protože v normálním světě zadavatel schvaluje to, co tato role navrhne k naprogramování.

Celkově to shrnu asi takto:
Mísení existence nepotřebných atributů/funkcí v aplikacích, které jsou určeny pro masové použití ve smyslu aplikace (word, excel, digikam a jiné), vypovídá o špatné analýze obecných potřeb běžného, tedy masového, uživatele takových aplikací.
To, že jsou mnohé atributy/funkce nepotřebné nevypovídá a kreativitě jejich autorů či programátorů. To vypovídá o nepochopení potřeb cílové skupiny.
Taktéž je potřeba vědět, že v takovýchto oblastech rozvoje není vždy k mání správná zpětná vazba a také není vždy jasné co cílová skupina potřebuje.
Pracuji v oblasti analýzy potřeb uživatelů SW pěknou řadu let a mohu říci, že kreativita je zapotřebí na každém kroku:
U zadavatele (většinou nějaký ten marketing či zákazník)
U analytiků (co popisují byznys model či systémový model a nakonec zadání,)
U programátorů (kteří realizují)
U testerů (kteří testují)

prostě u všech. A všichni mají kreativní možnost sdělit to slavné „tudy cesta nevede“.

Ale, ruku na srdce, počteníčko pěkné, k zamyšlení nad sebou samým a nad zbytečnostmi (mnohými), které nás obklopují.
Článeček by stálo rozšířit. Ale pak už by nemusel být takový, trochu, rejpavý do vlastních řad.

Martinovi děkuji.

Tuhraklen

Dodnes používám vynikající prohlížeč obrázků ACDSee 3.0, protože umí zobrazovat obrázky. Dělá to dobře a rychle. Nic víc od prohlížeče obrázků nežádám.
Na stranu druhou – pracuji s Adobe InDesignem CS5 – každá nová vereze (CS5 je vlastně 8. verze a program znám od verze 2) je lepší a lepší. Jak přidanými funkcemi, tak stále větší upravitelností uživatelského prostředí.
Zkrátka na něco potřebujete koloběžku a na něco airbus.

uf

Programátor taky chce delat neco zabavneho. Nebo zkusit novout technologii.

Na druhe strane je programator, ktery novou technologii muze vyzkouset maximalne doma vecer.

Enum a statická analýza kódu

Mám jednu univerzální radu pro začínající programátorty. V učení sice neexistují rychlé zkratky, ovšem tuhle radu můžete snadno začít používat a zrychlit tak tempo učení. Tou tajemnou ingrediencí je statická analýza kódu. Ukážeme si to na příkladu enum.