Poslední dobou se mi zdá, že se i vývojáři open source projektů dostávají do nekonečné smyčky vysvětlování zpoždění, které je tak charakteristické pro komerční firmy. Já to ale chci otočit. Opravdu jsme my uživatelé tak nedočkaví a vývojářům nevěříme?
Jste komerční firma a vyrábíte třeba hry. Rozhodnete se, že vyrobíte a na trhu budete distribuovat vaši SupeHru. Vydáte tiskovou zprávu, že byl zahájen vývoj a pro ukojení zvědavosti zveřejníte několik snímků obrazovek. O SuperHře se bude mluvit. Vývoj nějakou dobu trvá a samozřejmě, že se vyskytnou problémy. Tu nějaký zádrhel v kódu, tu nějaký problém s HW. Váš projekt začne nabírat zpoždění proti plánu. Každý řízený projekt má plán. U SW však někdy bývá problém v tom, že slavnostně oznámíte, že dne toho a toho, bude projekt k dispozici. Nechali jste si sice nějakou rezervu, ale máte zpoždění, které „sežere“ i tu rezervu.
Jaké možnosti řešení se nabízejí?
Rozeberme si body z pohledu komerční firmy. Bod číslo 4 je vražedný. Ale jen z pohledu, pokud se jedná o projekt nový či mezi vydáním verzí uplynula dlouhá doba. Bod 3 se může vymstít tehdy, pokud se nepodaří dodržet ani druhý termín. Postupné odkládání pak nemusí působit v očích zákazníků moc dobře. Bod 2 se vám může vymstít ve chvíli, kdy určití zákazníci čekají na vlastnost, kterou váš produkt měl mít a ve výsledku nemá. Bod 1 je sebevražedný ve chvíli, kdy se na váš produkt vrhnou recenzenti a začnou nedostatky vynášet na denní světlo. Reputaci si můžete napravit, když pokorně řeknete, že popsané chyby v aplikaci skutečně jsou, ale že na nápravě se pracuje. Čím kratší čas od vydání „finální“ verze uběhne do doby, kdy vyjde update, tím lépe a tím méně si pošramotíte pověst. Komerční programy mají obvykle delší cykly vydávání nových verzí než open source projekty.
Z pohledu open source projektů je zjevné, že nemusejí tolik podléhat tlaku zákazníků. Poslední dobou jsme však svědky situací, kdy tomu tak není. Uveďme si nějaké příklady. Typickou ukázkou problému z bodu jedna je KDE 4. Verze označená KDE 4 finální měla k „finálnosti“ daleko. Až teprve po půl roce můžeme tvrdit, že teď už je možno označit aktuální verzi jako finální.
Příkladem bodu 2 je (jak jsem se včera dozvěděl z Manganova blogu odsud, respektive v původním zdroji NP237 na livejournal.com) GNOME ve verzi 2.24. Tak dlouho zlobil správce sezení, až byl vypuštěn. Jak jsem pochopil, bylo to prezentováno jako vylepšená vlastnost.
Příklad bodu číslo 3 jsou v současnosti produkty Mozilla (Firefox a Thunderbird). Původně oznámené termíny nebudou dodrženy a spekuluje se o tom, zda se stihnou i ty další. Příkladem k bodu číslo 4 nechť je např. Joomla nové větve 1.5, jejíž ohlášení a vydání finální verze dělí více než 2,5 roku. Po celou dobu vývojáří říkali, že nová verze bude, až bude hotová. Záměrně se o termínech nemluvilo. To, že drtivá většina uživatelů tohoto CMS u něj i přes toto „katastrofální“ určování termínu, lze považovat za malý zázrak. Další ukázkou může být i projekt firmy Evrsoft, která vydala svůj HTML editor FirstPage 2000 s odkazem na to, že co chybí, bude v nové verzi, která bude brzo. Projekt měl nakonec několik let zpoždění a správci diskuzního fóra do pravidel diskuzí zamontovali bod o tom, že je striktně zakázáno ptát se na datum vydání nové verze pod hrozbou zablokování přístupu.
Celé toto shrnutí mne však přivádí na myšlenku – opravdu jsme my uživatelé tak netrpěliví, že nás musí vývojáři chlácholit nějakými termíny a že se svět zboří, když vyjde slibovaná verze např. o 14 dní později? Opravdu byste nedali radši přednost odzkoušenému produktu se zpožděním před nehotovým ale včas (dle slíbeného termínu)? Opravdu si myslíte, že program, který nevydá co půl roku novou verzi je mrtvý?
Jak jinak si vysvětlovat neustále se objevující zklamání uživatelů třeba v souvislosti s vydáváním Mozilla produktů? Mají zpoždění, ale copak se ty stávající verze nedají používat? Proč vycházely nedodělky typu OpenOffice.org Base v OOo 2? Opravdu chceme tlačit na vývojáře open source, podobně jako na komerční vývojáře? Musí vyjít nové OOo přesně tehdy a tehdy?
No nevim, ale treba u her se to dela spis tak, ze se ven pusti informace az kdyz je hotovo alespon neco prezentovatelneho novinarum a behem vyvoje se postupne uvolnuji dalsi nove informace (artworky, screenshoty, videa, rozhovory, dema atp.) tak, aby behem toho roku nebo dvou informace o te hre probublala ke vsem hracum. Vyvojari a distributori takhle operuji s nedockavosti, nekdy az nadrzenosti hracu (viz. HL2 - Episode Three), aby ti hned po releasu necekali a hru hned koupili. Tohle ovsem treba u OOo nebo jineho neherniho softu mozne neni.
Jsou vyvojari schopni,kteri jiz 12 let,25x v rade stihaji presne ve slibeny termin vydat kvalitni a stabilni produkt bez nesmyslnych chyb videnych u jinych projektu http://www.openbsd.org/papers/asiabsdcon2009-release_engineering/
No a pak jsou ti neschopni,kteri se jen vymlouvaji na cokoliv okolo misto toho,aby uznali,ze na to proste nemaji.
[5] - čakal som, kto príde prvý s touto geniálnou myšlienkou :-(
A potom ma v inej diskusii bude D.A. Tiger presviedčať, že Linux je samostatný OS úplne nezávislý od Windows. Veď keby Windows zanikol, tak Root zanikne do troch dní, pretože by nebolo o čom písať. A riešením väčšiny chýb v Linuxe je povedať niečo o Windows.
PS: Toto píšem z Visty, ktorá mi funguje svižne a nikdy mi nespadla.
Ja osobne nechapu, proc se vyvojari OSS aplikaci vubec obtezuji nejakymi terminy vydani. Vzdyt jim muze byt ukradene, co si o tom mysli Franta uzivatel. Mozna jde ale o motivacni metodu - tim, ze si reknou, ze to chteji mit tehdy a tehdy hotove, je to nuti neodkladat praci na prislusnem vydani.
(Tohle samozrejme neplati pro firmy ktere vydavaji OSS nebo distribuce, to je jina situace.)
Právě jste trefil hřebík na hlavičku v rozdílu mezi OSS a komerčním softem.
Vývojář pro OSS není motivován k práci placením hypotéky, zabezpečení jídla pro hladové děti atd a proto nená důvod dodat včas hotovou práci. Jeho manželka na obsahu ledničky nepozná, jestli soft předal včas nebo ne.
Zkuste jako dodavatel softu v bance slíbit, že nový produkt rozjede třeba v 05/2009, ta udělá reklamu v TV, novinách, atd a vy to dodáte v 07/2009? Kdopak uhradí bance náklady na zbytečnou reklamu, ztracené dobré renomé, atd?
Poto je OSS tak nějak dobrý i špatný.
Problem vidim v tom, ked sa davaju sluby, ktore su nesplnitelne. Davat sluby je sice vdacne, lebo to motivuje pouzivatelov, ale ked sa nesplnia, nastava sklamanie. OSS ma vyhodu prave v tom, ze ich nik nenahana a verejne terminy nie su potrebne.
Musi to byt hrdinsky OSS projekt s tonou penazi, aby sa dodrziavali striktne terminy (Eclipse). Ale i v pripade slavnych projektov sa totiz stava, ze sa termin oneskori (Spring Framework 3.0 meska uz dobreho pol roka, milestone 3 ma meskanie mesiac).
V pripade malych projektov su sluby podla mna cesta do pekla. Ohlasovanie dalsej verzie "uz o chvilu", kde chvila trva rok, si priamo zaraba na sklamanie.
10: Banka dela dluznikum reklamu??? A to jako kde?
Jinak me na terminech moc nezalezi, pokud mi chodi stara verze softu a neceka se na nejakou kritickou, bezpecnostni opravu, coz se vetsinou neceka.
Ale kdyz treba Debian stable zahrne x server s chybnym ovladacem na Silicon Motion grafiku (uplne dokopanym, me chodi s trojitym kurzorem, nekomu ukazuje trojity kurzor vedle a nekomu to nejede vubec), tak to nastve, protoze na opravu si clovek zase pocka 2 roky do pristi verze. A tak jsem Debian na notebooku, bohuzel, musel zrusit a narvat tam Arch, ktery ma novejsi a fungujici driver. Clovek aby se zase ucil delat s jinym distrem.
Ohledne firefoxu to je dost spatny priklad. Rozdil mezi oficialne vydanou a neoficialni (testovaci) verzi je jen v tom kolik ma znamych bugu. Pokud si vyvojari mysli ze aktualni verze je OK tak ji prohlasi za stable a prejmenuji.
Ale kazdy kdo se uz nemuze dockat muze v klidu tu neoficialni/testovaci verzi pouzivat, popr. se muze podivat na seznam aktualnich "blocker" bugu aby vedel na cem je.
phv: přesně tak, u OSS chybí ten bič na vývojáře jménem finance a management. Má to své výhody i nevýhody.
Co se týče MS, tak každý vývojář by měl znát něco jako "život software", to, že se po vydání jakéhokoliv SW dělají záplaty je celkem normální postup bez kterého by nebyl pořádně použitelný ani Linux ani Windows. Degradovat to na to, že MS je vlastně magor, který jenom vydává opravy je podle mě úplná hloupost.
Ohledně té nefunkčnosti je to otázka názoru, několik měsíců jedu na Ubuntu, ale na woknech se mi nikdy nestalo, že bych měl problémy se zvukem z Flashe, hibernací a dalšími funkcemi. Mám tedy hlásat, že Linux je zabugovaný a nic mi v něm nefunguje? Ne, protože je to prostě o prioritách, jsem s ním spokojený a vyvažují to jiné klady. Stejně tak můžu nadáva na Vistu, ale jel jsem na ni 2 roky bez problémů a až potom jsem zjistil, že jiný systém mi může vyhovovat více. Ale ještě dva roky zpátky jsem si o Linuxu na desktopu myslel, že je nepoužitelný. Prostě je to věc názoru a perspektivy, nadávat na něco umí každý hlupák.
16: To, ze se soft flastruje, je normalni. Nicmene zadny OS od MS nedosahuje pocatecni stability, jakou ma treba Debian, ale i jina, mene stabilni distra. MS obvykle vydava betu, obcas RC a nekdy take alfu. Pritom to ale prezentuji, jako novy, ultrastabilni rev vypocetni techniky. Stabilite Linuxovych dister se ale pouze priblizi az po rade SP. To ale zvolna podpora konci a zacina se znovu, s dalsi betou. Tohle se v Linuxu nedela. To, ze zaplatuji vsichni, na tom nic nemeni.
Ad komerční soft: možné je taky vydat nedodělek jako časově omezenou alfu/betu. Výhody: publicita (někdo dává něco zadarmo!:-) a zpětná vazba (chybí někomu naše nablejskaná nová vlastnost, která ne a ne fungovat?).
Ad open source: Mark Shuttelworth velmi tlačí projekty do modelu radši míň novinek, ale včas - predikovatelnost vývoje. Lze dohledat na jeho blogu. Osobně se myslím, že predikovatelnost a důraz na kompatibilitu stojí za výběrem Gnome ve většině komerčních prostředí.
[17] Oni se sice ty Linuxove distribuce stabilizuji pomerne rychle, ale pak to s novou verzi zase obcas destabilizuji. Kdezto u Windows, jakmile to stabilizuji, tak je to stabilni nekolik let.
Ale neberte me spatne, nestezuji si, je to proste dan za tempo vyvoje (OSS obetuje zpetnou kompatibilitu na oltar rychlosti vyvoje). Linux pouzivam uz temer 10 let jako primarni desktopovy system.
OSS vývojáři nejsou často placeni. Jejich motivací bývá to, že dělají, co je baví. To je nejlepší motivace. Ale v každém projektu musíte myslím dělat i věci, co jsou nepříjemné. Například málokdo chce pořádně testovat, psát dokumetaci,...
Takže doba je krutá a bude pro OSS vývojáře ještě horší.
Sehnat kvalitní lidi na všechny potřebné činnosti, na dlouhou dobu, co se něčemu věnují roky často ve svém volnu? Velmi těžké! Jste manager a tak to musíte vědět lépe než my.
Umění je dodělat projekty před termínem a za menší cenu, než byla v návrhu. Jsou manageři, co toto dosáhnou.
[22] To neni zadne umeni. To je jenom ukazka toho, ze jste blbe odhadnul jak objem, tak cenu prace. Zni to divne, ale na vyssich manazerskych pozicich vas za tohle vyhodi (protoze jste predimenzoval svoje pozadavky a tim sebral penze a praci nekomu dalsimu, kdo mohl vydelat vice penez => okradnul jste spolecnost => dostanete padaka pro neschopnost. Paradoxni, co?)
Zdravim,
urcite vsetkym ktory zazili hru Duke Nukem, od prvych verzii, az po posledne verzie, a teraz 3D Realms "vyvija" Duke Nukem Forever,a ak sa nemylim tak prvy termin bol bol rok 1997, potom 2001 a teraz je datum vydania "When it's done".
A uz je rok 2009, veri niekto este ze to dokoncia? :-D
Doba není k vývojářům krutá, jen už jsou projekty příliš komplexní, že je těžké je odřídit ve volném čase. A opravdový a dobrý projektový manažer je velmi drahá věc. Však se stačí zeptat všech poradenských a vývojářských firem, jak drahá hračka to pro firmu je. Natož pro projekt, kde obvykle není žádná vidina na slušný příjem.
Aj ked terminy asi nema nikto rad ale su velmi potrebne pre dalsie rozhodovanie.A bohuzial v OSS vela krat niesu ani priblizne terminy, potom sa neni comu divit ze je taky problem nahodit oss produkt do prevadzky.( nechcem tu rozoberat kvalitu alebo realne dodrzanie terminu, skor ak sa nedodrzi termin je sa na koho vyhovorit).
A druha vec ktora stale vyliza na povrch je ta schizofrennost OSS.Na jednej strane clovek cita ze vyvojari robia hlavne pre seba a uzivatelia/trh su im ukradnuty, na druhej strane by ale chceli dosiahnut co najvecsi podiel.
[29] A ma to smysl, aby v OSS existovaly terminy? Ne vazne, jaky mate realne jiny duvod pro urcovani terminu nez penize? Pokud je vyvoj software jako treba vyzkum, ze nikdo dopredu poradne nevi, jak to vlastne dopadne, neni efektivnejsi spis nez urcovat termin zkusit rovnou napsat prototyp?
[32] Lenže ono vôbec nejde, či podobný problém trápi aj komerčný softvér? Tu autor blogu napísal o probléme OSS a reči o tom, že "Windows je ešte horší" ten problém ani v najmenšom neriešia. Toho sa týkala moja pôvodná reakcia. Ani som nikde nepísal "MS je to lepší", takže takúto informáciu odnikiaľ neberiem. Pravda je tá, že komerčné produkty bývajú dokončenejšie, žiadne problémy, ktoré by sa mohli rovnať KDE 4 sa u softvéru veľkých firiem nevyskytli. Je to normálne, pretože ide o produkty platené, ale rôzne nedorobky Linuxu dobré meno nerobia. A týka sa to dokonca aj známejších sharewarov. Porovnaj si trebárs len, ako dlho a od koľkej verzie bezchybne funguje Total Commander, ak ako je na tom trebárs Gnome Commander, ktorý ešte nedávno padal na základných operáciách.
Ale toto všetko by som ja vôbec nepísal, keby sa nenašli "yntelygenty", ktorí problém hneď vyriešili zatiahnutím Windows do diskusie.
[34] K te (ne)dokoncenosti OSS - ono je to mozna tak, ze OSS redefinuje koncept dokoncenosti. Je Wikipedie dokoncena? Ne! Ale presto je radove vetsi nez nejvetsi "dokoncene" encyklopedie.
A podobne je to i u vetsiny OSS. Starsi casti chodi a jsou dokoncene, novejsi se testuji a nejsou zcela dokoncene. Je to takovy stav permanentni nedokoncenosti, ktery ovsem nema co delat s pouzitelnosti.
[35] Ale článok je práve o tom, že občas to má čo robiť s použiteľnosťou. Nemalo by, ale má. "Dokončená" má byť každá uvoľnená stabilná verzia. Kým nie je,nemala by sa uvoľňovať. Samozrejme nie dokončená z pohľadu ďalšieho vývoja, ale z pohľadu tých funkcií, ktoré implementovala. Toto musí platiť aj pre OSS. Viď ten Gnome Commander - uvoľniť softvér, ktorý padá pri bežnej operácii zo súbormi, to asi nie je špecifikum OSS.
Profesionální ajťák pracující pro korporát (narozen 1974). V soukromí však rád prosazuji svobodný software. Snažím se mít přehled o technologiích a trendech. Zastávám názor, že pokud chci něco kritizovat, musím s tím mít nějakou zkušenost. Jsem hrdý manžel, otec dvou dcer a opečovávatel kočky plemene Britská modrá krátkosrstá. Mám rád hudbu, knihy a kulturu obecně. V některých věcech však jdu proti proudu – používám Linux (konkrétně ZorinOS), svobodný software (LibreOffice, GIMP, Inkscape či Joomlu!) a jezdím v hybridním japonském autě.
Přečteno 47 175×
Přečteno 41 384×
Přečteno 35 910×
Přečteno 25 965×
Přečteno 25 767×