abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 6
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 45
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    25.4. 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 3
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 876 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Ray Ozzie - 2 (Programmers at Work)

    29. 8. 2008 | Tomáš Znamenáček | Rozhovory | 2098×

    V dokončení rozhovoru mluví Ray Ozzie o tom, jak probíhala práce na produktu Lotus Symphony, a také o nové tajné aplikaci (ze které se později vyklubal program Lotus Notes). „Volal mi chirurg, který Symphony používal pro realtime analýzu dat během operace srdce. Když si uvědomíte, že tam někdo leží na operačním stole a třeba i spoléhá na to, že váš program poběží správně, docela vystřízlivíte.“

    Programmers at Work je kniha 19 rozhovorů s významnými programátory, kteří svou prací a myšlenkami tvarovali podobu dnešních operačních systémů a mnoha dalších aplikací. Ačkoliv vyšla již v roce 1986, rozhovory jsou z velké míry nadčasové a stále velmi zajímavé. Susan Lammers se po více než 20 letech od prvního vydání knihy rozhodla zveřejnit rozhovory na Internetu a dala AbcLinuxu.cz souhlas k jejich překladu a vydání. Kvůli jejich délce bude většina rozhovorů rozdělena na dva díly. Každý rozhovor doplníme o krátký dodatek, ve kterém budou shrnuty další osudy jednotlivých programátorů.


    Začátek rozhovoru: Ray Ozzie (Programmers at Work).

    Napadlo vás, že ho budou chtít všichni?

    Rozhodně. Tedy alespoň za programátory jsem si byl jistý. Tehdy jsem ještě neměl žádný velký cit pro trh, v podstatě jsem byl hacker. Kdyby IBM přišlo s mikropočítačem, ceny by klesly a počítače by byly dostupnější. Programátoři jako já by se osvobodili ze závislosti na mainframech.

    Byl jsem z IBM PC nadšený, protože v mých očích to byl první mikropočítač dostatečně silný na to, aby přeložil vyvíjený program. Mohl jsem program změnit, přeložit, sestavit, rozběhnout a otestovat na jednom stroji. Když jsme prvně dostali pevný disk, byl to pro mě splněný sen. Mohl jsem jednoduše sedět v kanceláři a pracovat, co hrdlo ráčí. Dokumentace byla bídná a jakékoliv technické informace v podstatě nedostupné, ale byl jsem příliš nadšený na to, aby mi to vadilo. Práce na mikropočítači byla lepší, i když byl třeba pomalejší.

    Jsem z osobních počítačů nadšený, protože mladí lidé s programováním v krvi už se nebudou muset kvůli počítačům strkat a politikařit, jak jsme museli my. Doufám, že si rodiče a školy uvědomí, jak fantastická věc počítače jsou. Moc rád bych viděl počítačové kroužky pro děti, kteří si chtějí s počítačem hrát, ale nemohou si ho dovolit.

    Vypadá to, že jste byl v Software Arts spokojený. Napadlo vás někdy, že byste odtud odešel?

    Byl jsem v Software Arts několik měsíců, když jsme zašli na oběd s Jonem Sachsem. On zrovna opustil Concentric Data Systems a chtěl mi povědět o jednom chytrém klukovi, kterého zrovna potkal. Ten kluk byk Mitch Kapor, který založil firmičku Micro Finance Systems. Jon s ním chtěl spolupracovat. Když jsem se zeptal, na čem budou dělat, nemohl mi přesně odpovědět, ale vedl mě k tomu, že půjde o klon VisiCalcu. Chtěl vědět, jestli bych měl zájem s nimi spolupracovat.

    Nevěděl jsem, co na to říct. V Software Arts jsem sotva začal a práce na opravdovém VisiCalcu mě bavila, zrovna jsme měli uvést verzi pro Radio Shack. To pro mě byl velký krok – znamenalo to, že VisiCalc bude všude. Proč pracovat na imitaci, když můžu pracovat na originálu? Rozhodl jsem se zůstat. Jon s Mitchem mezitím dělali na svém, napsali Lotus 1–2–3.

    Kdy jste se s Jonem setkali potom?

    To bylo na Comdexu, kde jsem se zrovna seznámil s Mitchem. Ohlašovali tam vydání 1–2–3. Tou dobou už jsem pro Software Arts dělal asi rok a půl, TK Solver byl hotový a na trhu.

    Stačilo vyjít z letadla a hned jsem věděl, že Mitch s Jonem (tehdy už Lotus) dělají něco správně. 1–2–3 bylo hlavní téma výstavy, ačkoliv jsem tehdy ještě netušil, že porazí VisiCalc.

    Dlouze jsme s Jonem hovořili a on mi znovu nabídl, abych šel k nim. 1–2–3 už sice vydali, ale ještě měli dlouhatánský seznam funkcí, které chtěli s Mitchem přidat do druhé verze. Řekl jsem, že se nad tím vážně zamyslím.

    Byl jste připravený ze Software Arts odejít?

    Nad odchodem ze Software Arts jsem asi přemýšlel víc, než jsem si sám uvědomoval, protože už půl roku před Comdexem jsem se snažil založit firmu se třemi kluky z Digitalu. Za jedním z těch tří přišel zástupce National Semiconductor, že prý se snaží rozběhnout vývoj levného lowendového systému, něco jako VAX. Postavený měl být na procesoru 16032, který byl blízko dokončení. Měli jsme pro ten stroj napsat operační systém, emulaci VAX/VMS.

    Nakonec z toho sešlo, protože se v National nemohli rozhoupat zaplatit pár miliónů dolarů na financování. To nás ale nezastavilo a zašli jsme za několika rizikovými investory. A to byla pro nás studená sprcha, protože nám položili spoustu dost složitých otázek, na které jsme neměli kloudnou odpověď – zvlášť co se marketingu týká. Tak jsme firmu rozpustili.

    Tehdy jste se vážně zamyslel nad Jonovou nabídkou?

    Má žena Dawna tehdy čekala dítě. Když se Neil narodil, celé jsme to ještě jednou promysleli. Ještě pořád jsem chtěl založit svou firmu a pracoval jsem na předběžné funkční specifikaci nového softwarového produktu. Probrali jsme situaci s Mitchem a dohodli jsme se, že půjdu do Lotusu pracovat na projektu, ze kterého se později vyklubalo Symphony. Mitch mi slíbil, že k mé funkční specifikaci a podnikatelským spádům se vrátíme po dokončení Symphony.

    Jak se vám v Lotusu pracovalo?

    Hned ze začátku jsem si uvědomil, že mi hodinové dojíždění do Cambridge bere moc času na práci. Promluvili jsme si s Mitchem a otevřeli s Jonem malou kancelář v Littletonu, ke kterému měli blízko tři členové projektu – Jon, já a Barry Spencer.

    Když jste přišel, specifikace Symphony už byla hotová?

    Měli jsme jen pět nebo šest stránek obecného přehledu a nekonečný seznam funkcí, které by v produktu mohly být.

    Začal jsem pracovat na jedné z největších částí, na textovém procesoru. Barry Spencer, který na projektu také zrovna začínal, pracoval na další velké části, na komunikaci. Po několika měsících začal být Jon z práce na projektu unavený. Nedával do své práce srdce, nejspíš už na jednom kusu kódu dělal moc dlouho. Odešel tedy a já převzal místo vedoucího projektu. Tým jsme do původní trojice doplnili výborným programátorem Mattem Sternem, který začal pracovat na databázi. Dalších devět měsíců jsme všichni tři pracovali jako šílenci. Každých čtrnáct dní jsem se zastavil v Lotusu a setkal se s Mitchem, abych ho informoval o průběhu projektu. On se vždycky podíval na naši práci, zhodnotil ji, synchronizovali jsme plány a já zase vyrazil na několik dalších týdnů pracovat.

    Byl to pro vás efektivní způsob práce?

    Rozhodně. Mitch je jeden z důvodů, proč je Lotus ta nejlepší firma, pro kterou jsem kdy pracoval. Nebojí se přenechat rozhodování na někom jiném. Ohromně ho zajímají podrobnosti o různých funkcích, uživatelském rozhraní a pořadí, ve kterém funkce implementujeme. Ale programování máme v rukou my, protože algoritmy ho tolik nezajímají. Není z těch, kteří by každých pět minut přišli a bez dobrého důvodu chtěli měnit návrh.

    Symphony je složitý projekt. Proč myslíte, že se ho podařilo dát dohromady tak snadno?

    Zčásti kvůli tomu, že se na Symphony soustředila velká část firmy. Všichni na ten projekt byli hrdí a byli pevně rozhodnutí ho dokončit včas. I když jsme to třeba nepřiznali, hodně z nás se bálo konkurence – Ovation a Frameworku.

    Další důvod, díky kterému se nám podařilo dodržet termíny, byla dobrá komunikace. Malý vývojářský tým v uzavřeném prostředí komunikuje velice efektivně. Jakmile se objevilo úzké hrdlo v komunikaci mezi pobočkou a hlavní kanceláří Lotusu, okamžitě jsme pobočku zavřeli a přestěhovali se zpátky do hlavního stanu.

    A konečně jsme měli malý vývojářský tým. Myslím si, že návrh a implementaci produktu by nikdy nemělo dělat víc než pět lidí, alespoň pokud je to možné. Je jasné, že při implementaci opravdu velkých systémů – například daňového auditového systému pro IRS – tak malý vývojářský tým nestačí. Ale malé týmy mají hodně výhod.

    V čem přesně je malý tým efektivnější než ten velký?

    Myslím si, že jakmile velikost týmu překročí pět lidí, začne trpět komunikace mezi jednotlivci a dojde k problémům s jednotou kódu. Chyby jsou často důsledek špatného rozhraní mezi podsystémy a špatné rozhraní zase často vzniká kvůli nedostatečné komunikaci mezi lidmi při návrhu podsystému. Když najdete nějakou chybu, často se řeší v rámci podsystému a nepodíváte se na systém jako celek. Pokud nemáte několik lidí, kteří podrobně znají každý podsystém a způsob jejich zapojení do celku, ve výsledku se vám nejspíš objeví chyby.

    Existují nějaké další důležité požadavky na dobrý program?

    Důležité je mít během vývoje čistou a jednotnou architekturu. Architektura se dá v průběhu vývoje změnit, ale spravovat špatnou architekturu ke konci vývoje je průšvih. Místo několika menších chyb pak často musíte zakrývat pořádné díry.

    1–2–3 je dobře navržený, jednotný program. Symphony je velká vrstva nad tímhle čistým produktem, obrovský program s velkým počtem navzájem spolupracujících částí. Symphony nikdy neměla vážnější chyby, protože každý z vývojářů rozuměl vzájemným vztahům mezi podsystémy a znal základní kostru 1–2–3.

    Co jste dělal po dokončení Symphony?

    Mitch dodržel své slovo. Znova jsem přinesl specifikaci, kterou jsem napsal ještě před příchodem do Lotusu, a promluvili jsme si o ní. Navrhl mi, abych na ní ještě pár měsíců pracoval. Aby bylo jasné, jak produkt bude fungovat, k čemu je dobrý, jak se bude používat a jak prodávat. Vývoj Symphony převzal Barry Spencer, takže jsem mohl veškerou energii vrhnout do nového produktu.

    Na dokončenou specifikaci se neformálně podívali viceprezidenti firmy. Musel jsem se k návrhu vrátit a předělat ho – bez jakýchkoliv slibů, že bude firmu zajímat. Produkt musel obstát sám o sobě. Nakonec Lotus souhlasil s tím, že můj projekt zaplatí, a to v podobě samostatné firmy Iris Associates. Okamžitě se ke mně přidali dva dřívější společníci Tim Halvorsen a Len Kawell, oba z Digitalu. Od té doby jsme nabrali ještě dva další lidi.

    Jaký typ programů bude podle vás na trhu za pět nebo deset let?

    Sám se nemůžu dočkat, až to zjistím. Dřív jsem si myslel, že to dokážu odhadnout, ale teď nemám nejmenší představu. Stejně jako hodně dalších jsem si naivně myslel, že existuje něco jako trh domácích počítačů.

    Myslel jsem si, že by byl neuvěřitelně šikovný program pro plánování osobního času. Teď se ukazuje, že nosit počítač v kufříku, otevřít ho a nastartovat jen proto, abych se podíval na seznam svých schůzek, je nesrovnatelně méně pohodlné než nosit v kapse černý notýsek. Hodil by se ale černý notýsek, do kterého bych mohl psát zároveň se svou sekretářkou, protože bychom mohli můj volný čas pohodlně plánovat oba. Přál bych si, aby takový černý notýsek někdo chytrý vymyslel.

    Co byste poradil někomu, kdo chce dělat software?

    Dobrá příležitost čeká na ty, kteří rozumí potřebám uživatelů z vertikálních trhů. Masových aplikací pro horizontální trhy, jakou je například 1–2–3, může existovat jen pár. Dnes byste je možná spočítali na prstech jedné ruky: textové procesory, tabulkové procesory, databázové systémy. Pokud mají mít osobní počítače dlouhodobý úspěch, bude to díky programům psaným pečlivě na míru konkrétním uživatelům.

    Výbornou příležitost k psaní programů pro vertikální trhy mají studenti informatiky, kteří zároveň dělají v rodinné firmě. Ti dobře rozumí počítačům i jejich vlivu na konkrétní podnikání. Řekl bych, že by lidé neměli tolik usilovat o pohádkový úspěch a spíš by se měli snažit najít svou vlastní niku.

    Jak moc se při vývoji produktu musíte ohlížet na potřeby koncového uživatele?

    Do práce chodím, protože si rád hraji s počítači. Ale produkty navrhuji tak, abych dal uživatelům něco užitečného. Je hrozně důležité na tenhle cíl v průběhu vývoje nezapomínat.

    Jak dáte koncovému uživateli přesně to, co chce?

    Nejdřív se snažíme sestavit profil člověka, který podle nás bude produkt používat. Pak zkoušíme zhruba odhadnout, kolik procent uživatelů bude používat kterou funkci – potřebujeme nějaký podložený odhad toho, která funkce se bude používat nejvíc. Nad funkcemi, které bude používat nejvyšší procento uživatelů, se snažíme strávit nejvíc času. A když naopak narazíme na nějakou obskurní funkci, kterou bude používat jen zlomek uživatelů, dlouho se jejím návrhem nezabýváme. Nakolik byly naše profily správně zjistíme až tehdy, když produkt vyjde na trh.

    Ozývají se vám uživatelé?

    No jasně. Na tohle téma mám řadu historek. Je fajn dostat zprávu od někoho, kdo váš produkt používá denně už delší dobu a našel chybu v nějaké zastrčené funkci. Bere mě představa, že někde na druhém konci země žije úplně odlišným stylem někdo, kdo používá náš software. Je dobré vědět, že jim stojí za to napsat dopis a na něco si postěžovat.

    Asi nejfantastičtější zážitek byl, když mi těsně po založení Iris Associates volal chirurg, který Symphony používal pro realtime analýzu dat během operace srdce. Když si uvědomíte, že tam někdo leží na operačním stole a třeba i spoléhá na to, že váš program poběží správně, docela vystřízlivíte. Člověku to připomene jeho skutečnou zodpovědnost vůči uživatelům.

    Je pro vás programování hra? Když píšete program, baví vás to, nebo je to otrava?

    Kdyby mě to nebavilo, nedělal bych to. Otrava je, když se během náročnější části vývoje nevidím s Dawnou a Neilem. Přál bych si, aby den měl o pár hodin navíc. Bez podpory, kterou pro mě znamená Dawna, bych to nikdy nedokázal – tohle je důležitá věc, která by se neměla podceňovat.

    Přijde mi, že hodně programátorů jsou původně kutilové nebo hračičkové, kteří se k programování dostali až později. Co vás na programování tak přitahuje?

    Programování je kutilské nebe. Kutil potřebuje nářadí. Elektronik má různé součástky, ze kterých může něco postavit, ale neustále ho omezuje dostupnost fyzického vybavení. Nic takového v počítači neexistuje – pokud si něco dokážete představit, můžete to udělat. Můžete si udělat své vlastní nářadí, své vlastní součástky, za pochodu. Když se vám něco nelíbí, můžete to vyměnit nebo přepsat. Pokud máte dost prostředků, počítač je nekonečná krabice s nářadím. Omezujícím faktorem je pouze doba, kterou vám zabere psaní programu, a doba, za kterou počítač dokončí zadaný úkol. Máte neuvěřitelnou volnost.

    Jak hlídáte, abyste nevyhořel?

    Nepřepínám svůj rozvrh a beru si dostatečné pauzy. Když se chystám nějakou dobu intenzivně programovat, zařídím to tak, abych před dalším podobným obdobím měl alespoň půl roku obecného návrhu nebo něčeho podobného. Dám si přestávku, dokud se zase necítím na pořádné programování.

    Měl byste nějakou radu pro dnešní mladé programátory?

    Pokud vás programování láká, pokud o něj máte zájem, neztrácejte optimismus a programujte co nejvíc, na různých projektech, kolik jen zvládnete. Pracujte s počítačem co nejdéle to jde, ale naučte se správně odhadnout únavu. A nedělejte si hlavu s tím, když vás někdo bude mít za exota.

    © Susan Lammers 1986–2008, přeloženo s laskavým dovolením autorky.

    Program TK Solver, na kterém Ray Ozzie pracoval v Software Arts, slouží k matematickému modelování a řešení matematických problémů podle zadaných pravidel. Původně ho v rámci výzkumu na Manchesterské univerzitě vymyslel Čechoslovák Miloš Konopásek, kterého v Software Arts později také zaměstnali. Firma Software Arts se dostala do finančních potíží a v roce 1985 ji spolkl konkurenční Lotus. TK Solver se vyvíjí a prodává dodnes.

    Tajemný produkt, o kterém se Ray Ozzie v rozhovoru zmiňuje, a na kterém pracoval v rámci Iris Associates, vyšel v roce 1989 pod názvem Lotus Notes. Firmu Lotus koupilo v roce 1995 IBM, které Notes vyvíjí dodnes. Ray Ozzie pracoval ještě nějakou dobu pro IBM, ale pak založil vlastní firmu Groove Networks. Ta vyvíjela software pro spolupráci více lidí na jednom dokumentu a v roce 2005 ji odkoupil Microsoft, čímž vznikla nová součást Microsoft Office – Microsoft Groove. Ray Ozzie po prodeji firmy nastoupil jako jeden z hlavních technických vedoucích do Microsoftu, načež 15. června 2006 převzal od Billa Gatese post hlavního softwarového architekta.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    29.8.2008 02:24 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: Ray Ozzie - 2 (Programmers at Work)
    jo, tento pan to ma v hlave docela dobre poskladane... a vypada to, ze programovani a vecem o kolo rozumi... narozdil od nekterych predchozich respondentu... ;-]
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    Jiří Svoboda avatar 29.8.2008 08:41 Jiří Svoboda | skóre: 37 | blog: cat /dev/mind | Prostějov
    Rozbalit Rozbalit vše Re: Ray Ozzie - 2 (Programmers at Work)
    Technická: Máte nějaké popletené odkazy. Náhodou jsem zjistil, že odkaz na první část rozhovoru v úvodu článku nefunguje. Pak jsem zjistil, že máte u obou '2', jen na jiné pozici...
    29.8.2008 10:30 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Ray Ozzie - 2 (Programmers at Work)
    Díky, opraveno.
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.