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 17:44 | Nová verze

    Firma Murena představila /e/OS verze 2.0. Jde o  alternativní sestavení Androidu bez aplikací Google. Mezi novinkami je podrobnější nastavení ochrany soukromí před sledováním aplikacemi. Murena prodává několik smartphonů s předinstalovaným /e/OS (Fairphone, repasovaný Google Pixel 5).

    Fluttershy, yay! | Komentářů: 0
    dnes 14:33 | Zajímavý software

    Do 30. května lze v rámci akce Warhammer Skulls 2024 získat na Steamu zdarma hru Warhammer 40,000: Gladius - Relics of War.

    Ladislav Hagara | Komentářů: 0
    dnes 13:33 | Nová verze

    HelenOS (Wikipedie), tj. svobodný operační systém českého původu založený na architektuře mikrojádra, byl vydán ve verzi 0.14.1. Přehled novinek v poznámkách k vydání. Vypíchnou lze nabídku Start. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 2
    včera 23:22 | Zajímavý software

    BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.

    Ladislav Hagara | Komentářů: 3
    včera 12:55 | Nová verze

    Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.5. 23:44 | Pozvánky

    V neděli 26. května lze navštívit Maker Faire Rychnov nad Kněžnou, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    22.5. 16:33 | Nová verze

    Byla vydána nová stabilní verze 3.20.0, tj. první z nové řady 3.20, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu 64bitové architektury RISC-V.

    Ladislav Hagara | Komentářů: 0
    22.5. 14:11 | IT novinky

    Společnost Jolla na akci s názvem Jolla Love Day 2 - The Jolla comeback představila telefon se Sailfish OS 5.0 Jolla Community Phone (ve spolupráci se společností Reeder) a počítač Jolla Mind2 Community Edition AI Computer.

    Ladislav Hagara | Komentářů: 17
    22.5. 12:33 | Nová verze

    LibreOffice 24.8 bude vydán jako finální v srpnu 2024, přičemž LibreOffice 24.8 Alpha1 je první předběžnou verzí od začátku vývoje verze 24.8 v prosinci 2023. Od té doby bylo do úložiště kódu odesláno 4448 commitů a více než 667 chyb bylo v Bugzille nastaveno jako opravené. Nové funkce obsažené v této verzi LibreOffice najdete v poznámkách k vydání.

    ZCR | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (82%)
     (4%)
     (7%)
     (7%)
    Celkem 524 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Dan Bricklin - 2 (Programmers at Work)

    18. 7. 2008 | Tomáš Znamenáček | Rozhovory | 2439×

    V pokračování rozhovoru popisuje Dan Bricklin, jak vznikal tabulkový kalkulátor VisiCalc, proč byl tak úspěšný a jak došlo k zániku firmy Software Arts.

    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: Dan Bricklin (Programmers at Work).

    Tušil jste, že váš nápad bude tak úspěšný?

    Než se z programu stal VisiCalc, musel projít dlouhým vývojem. Popisoval jsem ho Johnu Reeseovi, svému kamarádovi z Harvardu, který mě hodně povzbudil. Pak mě napadlo použít nějakou variantu Z80 a televizní obrazovku. Myši jsem se vzdát nechtěl. Když jsem ale začal prototypovat na harvardském počítači, který myš neměl, musel jsem přijít na to, jak budu věci na obrazovce vybírat. Chtěl jsem vzít tohle a udělat tohle nebo vzít tyhle a přičíst k tomuhle; bez myši. Tak jsem přišel na systém řádků a sloupců.

    Šel jsem za svým profesorem výroby, který mě hodně povzbudil. Říkal mi: „Podívejte, tyhle věci, o kterých mi tu říkáte, to se při plánování výroby dělá ručně na tabulích. A že někde mají tabule přes dvě místnosti. Sedí u nich a plánují týdenní výrobu, tolik prodáno, tolik vyrobeno, tolik zůstalo skladem… Váš program zní výborně.“ Šel jsem za dalším profesorem Jimem Cashem, který učil účetnictví, a ten mě zase povzbuzoval: „Kvalitní uživatelské rozhraní je v komerčních produktech potřeba. To je problém řady komerčních systémů.“ A já jsem si říkal, že tenhle pán ví, o čem mluví.

    Pak jsem šel za profesorem přes finance a ten mě odrazoval. Zvedl hlavu od svých výpisků a povídá: „Plánovací systémy už tu jsou. Nikdo si nebude kupovat mikropočítač třeba kvůli obchodu s nemovitostmi. Zeptejte se pana Fylstry, to je jeden z mých studentů. Právě dělal průzkum, proč takové věci nikdo nechce kupovat.“ Tak jsem se zastavil za Fylstrou, který mi řekl: „Poslyš, děláme se snoubenkou software a tady z toho bytu ho prodáváme. Budeme prodávat šachové programy. Jestli máš něco zajímavého, tak mi to ukaž.“ Mluvil jsem s ním pak až na podzim toho roku.

    V létě jsem se rozhodl. Jel jsem na kole podél Martha’s Vineyard a řekl jsem si, že až skončím školu, založím vlastní firmu a pokusím se tenhle produkt dotáhnout. A kdybych musel, že ho třeba budu prodávat ode dveří ke dveřím. Na podzim jsem konečně zašel za Fylstrou, abych se podíval na jeho strojový park – měl k dispozici Apple II a Radio Shack. Nabídl mi, že pokud budu chtít něco vyvíjet, Apple mi půjčí.

    Strávil jsem tedy víkend psaním basicového tabulkového procesoru na jednu obrazovku a přišel jsem na systém řádků a sloupců se souřadnicemi A/B/C a 1/2/3. Ještě pořád jsem chtěl použít myš, ale prozatím jsem si vystačil s páčkami pro pohyb kurzoru. Jenže herní páčky fungovaly jen v jedné ose – buď vodorovně, nebo svisle. Takže jsem použil ještě střílecí tlačítko, které přepínalo mezi vodorovným a svislým pohybem. Pak se ukázalo, že páčky jsou v Basicu moc pomalé, takže jsem přešel na kurzorové klávesy. A jelikož měl Apple II jen dvě kurzorové klávesy, použil jsem zase přepínání z vodorovné osy na svislou, jen místo střílecího tlačítka posloužil mezerník. Shift a podobné předřazovače nemám rád. Snažím se předřazovací klávesy pokud možno vyloučit – proto příkazy začínám lomítkem, protože lomítko je na výchozí klávesnici a dá se stisknout bez shiftu; minimalizuje počet stisknutých kláves.

    Měl jsem tedy tohle demo, které umělo pohybovat kurzorem po obrazovce; mohli jste zadávat čísla a vzorce. Dokonce jste mohli ukázat doprostřed nějakého vzorce a říct: „1 + 7 a 1 + A1“, a stačilo ukázat na A1, stejně jako v dnešních tabulkových procesorech. Jen se nedalo posouvat nahoru ani dolů, program zvládl jen jednu obrazovku dat. Přepočítání trvalo asi dvacet vteřin a na každé buňce dělalo zvuk, abyste průběh přepočtu slyšeli. (Ukázalo se, že polovinu strojového času zabralo dělání těch zvuků.) Ale ve výsledku bylo z dema vidět, co všechno se s programem dá dělat.

    Ukázal jsem ho několika spolužákům – například Johnu Reeseovi, který podotkl, že když se odkazujete na nějakou buňku, nemělo by být nutné programu říkat, že ji chcete použít. Přemýšlel jsem, jak to udělat. Když řeknete „1 plus“ a zmáčknete šipku, asi byste chtěli přičíst jedničku právě k téhle buňce. A tak jsem se snažil dosáhnout všech funkcí co nejmenším počtem stisknutých kláves. Tak vzniklo rozhraní, které dnes známe jako standardní a jednoduchý tabulkový procesor typu VisiCalc.

    Ukázal jsem ho své profesorce Barbaře Jacksonové. Ta mi řekla: „Podívejte – jestli chcete, aby něco takového používal ředitel firmy, musí to být opravdu jednoduché. Co mi ukazujete, je sice blízko, ale ještě to není úplně ono.“ Tím mi dodala odvahu k dalšímu zjednodušování.

    O jeden nebo dva roky později, když už byl program na trhu, jsem jí k němu přivedl a povídám: „Jste na Harvardu na obchodní škole v kalkulačkové komisi, takže byste si měla uvědomit, jak je tenhle program důležitý, protože někteří z vašich studentů už ho používají. Na tohle byste se měli připravit.“ A ještě téhož roku ho profesoři z obchodní školy použili k přípravě odpovědních listů pro své testy, čímž hrozně vyděsili ostatní profesory, protože měli práci hotovou hrozně rychle. Dnes po vás Harvard samozřejmě chce, abyste si před příchodem na jejich obchodní školu koupili PC.

    Jakmile jsme měli hotové uživatelské rozhraní, nastal čas programovat. Dlouho jsem přemýšlel nad datovými strukturami a nad tím, jak program udělat co nejmenší, protože jsme ho chtěli rozběhnout na malém počítači. Většina Applů dvojek byla v té době 16K a diskety byly celkem vzácnost.

    Tehdy jste se s Frankstonem a Fylstrou rozhodli spojit síly?

    V podstatě ano. Potřásli jsme si na to rukama. Bob Frankston a já jsme měli program udělat, Fylstra a jeho firma Personal Software prodávat. Dohodli jsme se program udělat nejdřív pro Apple, protože Fylstra měl jeden Apple volný pro vývoj a byl to podle něj nejlepší stroj do začátků. Navíc jsme pro Apple měli nástroje.

    Jak probíhal samotný návrh VisiCalcu?

    Já jsem navrhoval interní části a většinu datových struktur. Datové struktury jsou podle mě nejdůležitější část programu. A také musíte vědět, jak bude vypadat uživatelské rozhraní. Nakonec jsem měl datové struktury, které byly dostatečně rychlé a dostatečně malé na to, abychom do počítače dostali hodně dat.

    Kromě jiného jsme se museli rozhodnout, kde vlastně budeme pracovat. Já jsem byl ještě na obchodní škole a Bob dělal konzultanta ve firmě Interactive Data Corporation. Nakonec jsme se rozhodli pronajímat si čas jednoho velkého víceuživatelského systému. Naštěstí neúčtovali po celých měsících, takže s penězi jsme vyšli.

    Bob psával v noci, kdy byl výpočetní čas levný. Vstal asi ve tři odpoledne, to jsem se já zrovna vracel ze školy. Prošli jsme si změny, které v programu udělal; já jsem program otestoval, vymyslel implementaci nových funkcí, promluvil si s účetními a udělal další věci, které jsou ze začátku potřeba. Pak jsem tam byl třeba až do jedenácti večer. V šest večer se poplatky za výpočetní čas snížily a ještě jednou pak v jedenáct večer. Kolem jedné, dvou hodin ráno bývala mašina nejrychlejší. Bob pracoval až do rána a pak šel spát. Tak jsme VisiCalc napsali.

    Nebáli jste se, že s podobným nápadem přijde jiná firma? Co vás při tak tvrdé práci motivovalo?

    Když vás napadne nějaký podobně jednoduchý program, chcete ho mít co nejdřív hotový. Hodně jsme se báli, že se o nás dozví Texas Instruments a dá podobný program na svůj nový počítač. Applu a Atari jsme program ukázali, ale museli podepsat smlouvu o mlčenlivosti. Atari mělo velký zájem o nějaký produkt, ale ještě neměli hardware. Dostali jsme jeden z prvních prototypů – vypadal jako nějaký počítač od Cromemco, ze kterého v Atari vytáhli desku a nahradili ji svou vlastní. Zkrátka opravdický prototyp.

    Apple nás tolik nepovzbudil. Tehdy jsem se té schůzky nezúčastnil – Fylstra, náš prodejce, jim ukázal kopii budoucího VisiCalcu. Jako programátoři jsme si mysleli, že budeme mít hotovo do čtyř týdnů. Po čtrnácti dnech nebo třech týdnech už toho Bobovi běhalo dost na to, aby se dalo posouvat po listu, sčítat, odčítat a přepočítávat vzorce. Tuhle verzi jim Fylstra odnesl. Já jsem zatím zlepšoval svůj basicový prototyp a zkoušel nové věci. Hodně nápadů jsme museli vypustit, protože jsme měli jen 16 K paměti.

    Kladné ohlasy nám přišly ze západního pobřeží. Ukázal jsem program několika dalším profesorům. Další profesor výroby, který nám hodně fandil, mi řekl: „Hochu, to je velice pěkné, mít všechny ty výpočty hotové skoro okamžitě. To by ručně trvalo hodiny a hodiny. Budu muset přepočítat příklady ve své knize.“

    Začal jsem psát návod a Bob implementoval podle toho, co jsem psal. Byli jsme dobrá dvojka, protože kdykoliv Bob někde povolil, hned jsem mu řekl, že tohle a tohle musí být rychlejší, že to není ono, nebo že tahle funkce tam zkrátka být musí. A kdykoliv jsem zase já řekl, že bychom mohli udělat kompromisní řešení, Bob zase „nene, nechme to tam“.

    Pro ukládání buněk nakonec použil variaci na můj návrh. Na návrhu jsem odvedl hodně práce, ale celá vnitřní struktura programu byla jeho. Tak vznikl VisiCalc.

    Jaké byly první ohlasy na hotový projekt?

    Několik pochvalných recenzí se objevilo, ale většina časopisů ho ignorovala. V některých se VisiCalc neobjevil ještě celý rok. Byte o něm zveřejnil malý úvodníček, nic víc. Carl Helmer, který ten úvodník napsal, byl Fylstrovi na svatbě jako svědek a o VisiCalcu už věděl. I tenhle kousek byl ale psaný pro technické typy a mluvil o sinu a kosinu, které jsme neměli implementované. Když už je zmínil, implementovat jsme je museli – zahodil jsem léto tím, že jsem psal sinus, kosinus a další podobné funkce.

    Půjčili jsme si peníze a koupili si vlastní velký počítač. Já jsem prodal dům, abychom měli na zálohu, Bob vzal své úspory a půjčil si od rodiny. Zaplatili jsme zálohu za minipočítač a přesunuli se do komerčního nájmu.

    Jak jste chtěli VisiCalc prodávat?

    Neměli jsme ani ponětí o tom, jak dobře se bude prodávat. Věděli jsme, že je dobrý a že by si ho měl pořídit každý. Ale tehdy nebylo jasné, jestli se bude lidem do elektronických tabulkových procesorů chtít, zvlášť když si kvůli nim museli kupovat jakousi podivnou mašinku. Textovým procesorům se rozjezd nepovedl.

    Takže jste měli rozběhnutou firmu a co dál? Začali jste objíždět zemi a předvádět VisiCalc?

    To dělal z větší míry náš prodejce Personal Software. Ukazovali jsme program na Národní počítačové konferenci, tam jsme ho úplně poprvé představili veřejnosti. Také jsme ho ukazovali na počítačovém veletrhu na západním pobřeží a na různých výstavách.

    Pak jsme se vrátili k práci, abychom ho dostali na větší počet strojů. Začali jsme na TRS-80, což byla velice důležitá platforma; z našeho pohledu to byl počítač číslo dvě. O přepisování se staral Seth Steinberg, který se k nám přidal. Naším prvním zaměstnancem byl Steve Lawrence. Ten dokončoval například numerické a některé další funkce a pak se vrhnul na verzi pro Atari a Commodore PET.

    Verzi pro Z80 se Seth rozhodl přepsat řádek po řádku z kódu pro 6502 do kódu pro Z80. A jelikož jsme měli vlastní minipočítač, mohl si napsat všechny nástroje, které potřeboval. Napsal tiskový program, který uměl vypsat kód pro 6502 a Z80 vedle sebe. O řadu let později jsme zjistili, že chyby v kódu 6502 byly i v kódu pro Z80 a naopak – tak věrný překlad to byl. Vydržel dlouho, po strojovém překladu s drobnými ručními úpravami z něj vznikla verze pro IBM.

    Na IBM PC jsme se dostali rychle. Když IBM ohlásilo svůj osobní počítač, už na něm běžel VisiCalc. A neohlásili by ho, kdyby VisiCalc neběžel dostatečně dobře, kdyby se ještě nemohl prodávat. Úzkostlivě si to hlídali. Nemohli jsme kvůli tomu použít žádný komerční převodník, měli jsme svůj vlastní assembler. David Levin, jeden z našich programátorů, upravil assembler tak, aby překládal z kódu Z80 do kódu 8086 nebo 8088 a potenciální problémy označil. Konverze musela být dělaná chytře, náš program byl mnohem chytřejší než jiné programy na trhu. Díky tomu jsme se na IBM PC dostali tak rychle – začali jsme prodávat několik týdnů poté, co IBM začalo prodávat PC, takže jsme prodali ohromný počet kopií.

    Jak vznikala smlouva s IBM?

    IBM přišlo nejdřív za námi, protože jsme byli držitelem autorských práv. Podle naší smlouvy měli jednat s Personal Software, a tak jsme je poslali za Personal Software. Museli jsme se dohodnout ve třech. Když nás z IBM kontaktovali, domluvili jsme si schůzku na následující den, probrali jsme naši smlouvu a ukázali jim části smlouvy, které jsme ukázat směli. Chtěli jsme, aby bylo jasno, jak a s kým by jednání mělo probíhat. V tomhle jsme hráli na rovinu.

    Uvědomte si, že jsme jednali s řadou různých výrobců, opravdu jsme se snažili. Někteří výrobci pak udělali štěstí, jiní ne. Předem nikdy nevíte, kterým se to povede.

    Cítili jste tehdy, že IBM prorazí?

    Nějakou dobu trvalo, než jsme vůbec zjistili, co je ten počítač zač. Bylo jasné, že je to výborně navržený stroj. Ale samotný nápad vzít 8088 a přidat k ní klávesnici a obrazovku osmdesát na pětadvacet znaků a všechny ty další drobnosti, tohle tehdy dělalo hodně lidí, včetně špičkových hardwarových designérů. Bylo jasné, že jde o kvalitní návrh. Proto jsme měli pocit, že to vyjde.

    Měli jsme řadu smluvních problémů s Personal Software. Například jsme VisiCalc museli dostat na libovolný počítač, o který si řekli. Oni se chtěli ze smlouvy vyvázat, jenže nechtěli zaplatit dost peněz. Takže jsme náš produkt museli dostat na co největší počet strojů.

    Zajímal by mě vzestup a pád Software Arts. Napadlo vás někdy, že byste mohl spadnout úplně až na začátek?

    I když jsem byl zrovna na špičce, žil jsem ve stejném domě, ve kterém bych žil, kdybych ještě pořád pracoval pro Digital (nebo ostatně kdekoliv jinde). Vždycky jsem své výdaje držel zkrátka, abych si mohl dovolit to, co dělám dneska. Nikdy jsem nechtěl na firmě záviset.

    Proto jsme se firmu v nejlepším snažili prodat, jenže právě v tom okamžiku přišel soudní spor a se soudním sporem se firma prodává špatně. Měli jsme vysoce ceněnou firmu. Na papíře jsme s Bobem byli slušní boháči, ale i když jsme se toho snažili nějak využít, nešlo to. Tím, že jsem si v našem oboru udělal jméno, jsem získal určitou hodnotu, kterou jsem si pak odnesl s sebou. Díky ní jsem se mohl znovu pustit do podnikání.

    Zkušenost se Software Arts stála za to. Za poslední rok jsem odmítl několik velice pěkných nabídek z různých firem – kdybych chtěl někde pracovat, mám možnost, ale já jsem podnikatel.

    Když se podívám zpátky, jsem spokojený. Bylo by moc hezké, kdybychom se udrželi na špičce a zbohatli, ale nestalo se. Řekněme, že se mi vedlo lépe, než kdybych zůstal v Digitalu.

    Práce v Software Arts se mi líbila. Byl jsem tam šťastný, s výjimkou toho období obchodních problémů. Ale i to byla zkušenost, ze které si člověk může něco odnést. Naučil jsem se hodně o životním cyklu firmy. Když teď mám celý cyklus za sebou, mimo jiné si víc věřím při zakládání nové firmy. Mám za sebou dražbu našich židlí, našich terminálů, našich obrázků na stěně, svého stolu a svého trička, takže teď vím, že se můžete dostat úplně nahoru, spadnout zase dolů a stejně to přežijete.

    Když se zpětně podíváte na Software Arts, udělal byste dnes něco jinak?

    Rád bych se vyhnul tomu soudnímu sporu, to by byla podstatná změna.

    Jak k němu došlo?

    Dokončení.

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

           

    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ář

    25.10.2008 11:45 Hadez
    Rozbalit Rozbalit vše Re: Dan Bricklin - 2 (Programmers at Work)
    „Uvědomte si, že jsme jednali s řadou různých výrobců, opravdu jsme se snažili. Někteří výrobci pak udělali štěstí, jiní ne. Předem nikdy nevíte, kterým se to povede.“

    Jestli byl originál „made fortune“, nemělo by to být „Někteří výrobci na tom vydělali…“?
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.