S tímto jsem nikdy problém neměl, protože jsem vždy programoval na zakázku. Uživatel přesně řekl kde chce jaké tlačítko, kde chce jaké pole, jak mají vypadat exporty a podobně. Nikdy si žádný můj zákazník nestěžoval. No a když si to sám navrhne blbě, tak sám přijde s tím, že by rád nějaký prvek dal jinam,... Můj zákazník, můj pán. Samozřejmě pokud si zákazník přeje něco výrazně divného ve stylu "rovnák na ohejbák", tak jej na to upozorním a proberu s ním alternativy, ale opět, vždy má poslední slovo zákazník a když trvá na tom, že chce "rovnák na ohjebák" tak mu přání vyplním.
Pokud je ovšem zákazníkovo přání typu "nějak to navrhněte, já vám věřím", tak jej vždy upozorním na to, že se to s největší pravděpodobností bude upravovat případně předělávat, protože je jasné, že já, coby programátor vidím věci jinak než uživatel.
Například já, coby programátor vytvořím formulář pro zadávání údajů do nějaké databáze. Předpokládám, že uživatel jej bude vyplňovat shora dolů, ale uživatelé jsou divná cháska. Nejprve vyplní první řádek, pak z nějakého neznámého důvodu druhý zespoda, pak něco uprostřed a vrátí se na začátek, ke druhému řádku... Je-li formulář aktivní, kdy aplikace reaguje na to co a jak uživatel vyplňuje, pak je horor takovou věc testovat, protože vždy se najde nějaký "specialista", který daný formulář bude vyplňovat postupem, který by vás ani ve snu nenapadl...
Ještě zmíním uživatele, kteří nečtou a diví se, proč jim to nefunguje. I přesto, že uvedete přesný postup ve stylu krok 1 .... krok 2 ... krok 3. Uživatel volá, že to nefunguje. Tak se jej ptám: "Udělal jste Krok 1?", uživatel: "Myslím, že ne.". Já na to: "Prosím, udělejte Kroky 1 až 3, přesně tak jak jsem vám to napsal do e-mailu.". Uživatel: "To jak teď?", Já:"Ano prosím, zůstanu na telefonu." ... chvilka ticha ... Uživatel: "Jo, už je OK, tak se nezlobte, že jsem otravoval." no a mě nezbývá než odpovědět "Já se nezlobím, vždyť je to má práce." a v duchu si doplním "Za kterou mě samozřejmě zaplatíte.". ;-)
Opravdu si myslím, že jsou ti uživatelé divná cháska, ale nemyslím si, že by bylo potřeba, aby nad nimi někdo stál a otloukal jim o hlavu, že by měli taky alespoň trochu používat mozek ... Vždyť bych se tím připravil o zábavu ;-)
Co se týče druhé části příspěvku - nesouhlasím s označením programátorů jako líné a hloupé chásky. Ale v zásadě ta myšlenka je správně. Je opravdu potřeba, aby nad většinou programátorů (znám i vzácné výjimky) stál někdo, kdo se na vyvíjenou věc dívá očima uživatelů a nutí programátory, aby věc změnili ze stavu "vevnitř to funguje a co funguje vevnitř se zvenku dá ovládat" do stavu "ovládání zvenku je intuitivní a má to funkce, které uživatel potřebuje, nikoli ty, které programátor vevnitř snadno naprogramoval".
Také se kolikrát podívám na software a mám dojem, že tohle dělal programátor, aniž by nad ním stál někdo s myšlením blízkým uživateli a říkal mu, jak se to má chovat a kde co má být...
Ono je těžké odtrhnout se od vnímání vyvíjené věci z pohledu toho, co a jak to dělá uvnitř a dívat se na to zcela jinýma očima uživatele, jeho možností a potřeb.
Pokud vím, tak CTRL+ALT+DEL je původní kombinace, která restartovala počítač. Její zvolení pro odemčení počítače byla z počátku čistě bezpečnostní.
1) WIndows plně kontroloval tuto kombinaci, takže nebylo možné napsat program, který by emuloval přihlašovací obrazovku a vytáhl z uživatele heslo. Stiskem Ctrl+Alt+Del dodnes odchytit nejde a její funkce je plně v režii windows (dodatek, odchytit jde, ale k aplikaci se dostane až po zpracování systémem)
2) volba Ctrl+Alt+Del také eliminoval případný jednoduchý DOS program, který mohl dělat totéž z cílem ukrást heslo, ale tam tato klávesa taky nešla snadno odchytit, takže místo zobrazení přihlašovacího okna to prostě restartovalo počítač.
- časem to samozřejmě ztratilo smysl.
.... to samozřejmě platí jen tehdy, když někdo takový existuje :-), není výjimkou, že pověření zástupci platícího zákazníka (mám zkušenosti z prostředí vývoje bankovních aplikaci) ani neví co vlastně chtějí a nebo to neumí zformulovat. Tak aby se projekt pohnul se to udělá prostě "nějak".
Ano KB jsem tím myslel taky, ale ne jen. Dělali jsme i nějaký integrace u bank v zahraničí (konkrétně Švýcarsko) a nebylo to o moc lepší :-) . Banky mají IT systémy dost zpatlane a najít tam někoho, kdo rozumí business procesum v návaznosti na IT end-to-end alespoň v nějaké konkrétní oblasti je prakticky nemožné. Projekty to byly, ale zajímavé a komplexní ne že ne, já svým prvním příspěvkem reagoval na to, že by nad programátorem měl stát nějaký uvědomělý "bachař", který ho bude správně směrovat, aby se náhodou nezabehnul.
Slovo "kát se" v nadpisu se v textu smrskne na "jestli by udělal malou změnu". Počítám, že Lupa za rok, za dva bude mít nadpisy jak z Blesku.
No a co se týká vlastní kombinace kláves. Ono je to tak často, když programy dělá programátor, to se pozná. Nad programátory to chce totiž nějaké poháněče s bičem, kterří tu línou a hloupou chásku rovnající do reálného života uživatelů. Tj lidí, kteří je živí.