Portál AbcLinuxu, 23. dubna 2024 10:29

Charles Simonyi (Programmers at Work)

14. 5. 2008 | Tomáš Znamenáček
Články - Charles Simonyi (Programmers at Work)  

V nové sérii rozhovorů se slavnými programátory, kteří změnili svět, najdete kompletní překlad dnes už klasické knihy Programmers at Work, již sestavila Susan Lammers. První na řadě je Charles Simonyi, původem maďarský programátor, který se podílel na mnoha přelomových programech (včetně Bravo ve firmě Xerox a Word v Microsoftu) a později se stal pátým vesmírným turistou.

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ů.


Charles Simonyi, Programmers at Work

Charles Simonyi se narodil 10. září 1948 v maďarské Budapešti. K počítačům a programování se dostal na střední škole, když jeho otec zařídil, aby mohl pomáhat technikovi pracujícímu na jednom z mála tehdejších počítačů v Maďarsku. Do roku 1966 Charles dokončil nejen střední školu, ale i svůj první překladač. Díky zkušenostem získaným při psaní překladače byl schopen sehnat zaměstnání ve firmě Regnecentralen v Kodani. V roce 1968 Dánsko opustil a vydal se studovat do Spojených států na Berkeley, kde roku 1972 získal bakalářský titul. Doktorát následoval na Stanfordu v roce 1977. Simonyi pracoval ve Výpočetním centru Berkeley, na projektu ILLIAC 4, ve firmě Xerox PARC a od roku 1981 v Microsoftu. Během své práce pro Xerox vytvořil programy Bravo a Bravo X pro osobní počítač Alto. V Microsoftu dal dohromady Skupinu pro aplikační software, která přivedla na svět Multiplan, Microsoft Word, Microsoft Excel a další populární aplikace.

Charles Simonyi nechal svou stopu prakticky v každé části světa mikropočítačů, ať už osobně nebo prostřednictvím svého vlivu na spolupracovníky. Je skromný, ale energický, vždy připravený k úsměvu a schopný komentovat prakticky libovolné téma, ať už počítačové nebo jiné. Témata našich dvou rozhovorů – jednoho nad obědem a druhého v jeho kanceláři – sahala od vlastností Excelu přes řízení helikoptér až po některé stránky moderní poesie. Mluví se slyšitelným maďarským přízvukem, který se stal poznávacím znamením jeho řeči i jeho programů. Téměř denně obléká svou uniformu sestávající z ošoupané džínové bundy, trička a obnošených džín, takže neustále vypadá jako student Berkeley ze šedesátých let. Jeho rozhled, chování a úspěchy ale prozrazují jeho moudrost a zkušenosti.

Svůj první počítačový program jste dokončil v Maďarsku, ještě před maturitou, je to pravda?

Ano. On je tu můj první program a můj první profesionální program. Úplně první program, který jsem kdy napsal, sestavil takzvaný magický čtverec, ve kterém součet každého řádku a každého sloupce dává stejné číslo. Napsal jsem ho pro strašně starý elektronkový počítač a strávil jsem celé odpoledne mačkáním tlačítek, jen abych ho do té mašiny dostal. Ten večer jsem dorazil domů s neskutečným bolením hlavy a obřími výtisky magických čtverců osmdesát na osmdesát. To byl rok 1964.

Na jakém prvním počítači jste pracoval?

Byl to počítač ruské výroby, Ural II. Měl jen 4 K paměti, 20bitové operace a 40bitové operace s plovoucí desetinnou čárkou. Programoval se výhradně v osmičkovém strojovém kódu, v absolutních adresách (žádný assembler). Napsal jsem tisíce řádek kódu v osmičkovém strojáku.

Ten počítač se řídil výhradně přes konzoli; byla to vážně práce přímo na železe, jeden na jednoho. Programátoři nemuseli postávat někde kolem a čekat, až operátor rozběhne jejich sadu štítků. Ural II byl přesně jako osobní počítač – jen vy, počítač a nikdo jiný. Se čtyřmi kilobajty paměti a svou nízkou rychlostí byl velice blízko Altairu, který přišel v roce 1974. Užíval jsem si s Uralem v roce 1964 stejně, jako Bill Gates s Altairem v roce 1974.

Ural II se samozřejmě od osobního počítače v některých věcech lišil. Zabíral hodně, hodně velikou místnost a měl neuvěřitelně primitivní vstupní zařízení, které z větší části sestávalo z přepínačů na konzoli. Samotná konzole vypadala jako stará pokladna. Měla šest sloupců přepínačů a napravo klávesu Enter. Každý sloupec měl klávesy od nuly do sedmi a čísla se zadávala úplně stejně jako na pokladně. Když jste chtěli zadat 2275, zmáčkli jste dva, dva, sedm a pět. Když jste udělali chybu, mohli jste se opravit ještě před zmáčknutím tlačítka napravo. Byla s tím strašná legrace, protože se neustále ozývaly nějaké zvuky. Kdykoliv jsem stiskl přepínač, ozvalo se pevné cvaknutí. A kdykoliv jsem chtěl klávesnici vynulovat – což se všechno dělalo mechanicky – všechny klávesy se vrátily najednou, s hlasitým klak.

A váš první profesionální program?

První profesionální program, který jsem napsal, byl překladač pro velice jednoduchý vysokoúrovňový jazyk podobný Fortranu. Prodal jsem ho jedné státní organizaci jako novinku a vydělal jsem na něm docela slušné peníze, ze kterých jsem nikdy nic neutratil, protože jsem krátce nato odešel z Maďarska.

Právě v té době jsem totiž na veletrhu v Budapešti potkal několik Dánů, dal se s nimi do řeči a získal řadu informací o jejich novém stroji. Na příští veletrh už jsem dorazil s malým ukázkovým programem, který jsem napsal. Dokázal v libovolnou chvíli říct, jakou část dlouhatánského výrazu ten jejich stroj zrovna zpracovává. Poprosil jsem jednoho z kluků, aby program vzali zpátky do Dánska a ukázali ho nějakému šéfovi. Program se nejspíš líbil, protože mi dali práci. A tak jsem se dostal z Maďarska.

V Dánsku jsem programoval rok a půl a našetřil jsem si dost peněz na to, abych se dostal na Berkeley. Tam jsem dělal programátora ve výpočetním centru a vydělal jsem právě dost peněz na to, abych zaplatil školné.

Na Berkeley jsem napsal moc pěkný překladač Snobolu. Jednomu z profesorů informatiky, Butlerovi Lampsonovi, se tolik líbil, že ho používal při výuce. Když pak společně s několika dalšími profesory založili firmu Berkeley Computer Corporation, nabídli mi místo. A když šla BCC ke dnu, hlavní tým lidí převzala firma Xerox PARC.

Kdo ovlivnil váš způsob programování?

Měl jsem dva hlavní vlivy – jednoho maďarského technika a počítač, na kterém jsem pracoval v Dánsku. Mým maďarským učitelem byl technik, který pracoval na počítači Ural II. Obdivoval jsem ho a neustále jsem se mu motal pod nohama a nabízel různé služby za to, že mě tam nechá, ačkoliv jsem tam neměl co dělat. Nebylo to moc místo pro děti, byl to jeden z asi pěti počítačů v celém Maďarsku a považoval se za velikou vzácnost.

Jak jste se k němu dostal?

Můj otec byl profesor elektrotechniky a tenhle technik byl jeho student. Myslím si, že ho otec poprosil, aby mě tam pustil. Snažil jsem se být užitečný. Nejdřív jsem mu nosil obědy, pak jsem držel sondy, a nakonec jsem se přihlásil na noční hlídku.

Počítač se totiž na noc pokaždé vypínal a ráno zase zapínal. Když se elektronky zapínají a vypínají, zahřívají se v nich vlákna nebo zase chladnou, takže mají sklony praskat. Ve stroji se dvěma tisíci elektronek praskne nějaká pokaždé, když ho pustíte, takže první hodina každého pracovního dne padla na hledání prasklých elektronek. Když jsem tam zůstal na noc, mohli počítač nechat běžet a ušetřit si práci. A když jsem ho v noci hlídal, mohl jsem ho používat.

Zkrátka jsem se s tím technikem skamarádil. Byl to matematický génius. Naučil mě spoustu fíglů, jak o symbolických problémech uvažovat aritmeticky.

Obrovský vliv na mne měl také ten dánský počítač. Měl tehdy asi nejlepší překladač Algolu na světě, který se jmenoval Gier Algol. Ještě před svým odchodem do Dánska jsem měl k dispozici jeho kompletní zdrojáky, které jsem prostudoval do posledního písmenka. Byly celé ve strojovém kódu, takže to byla lekce programování ve strojovém kódu a zároveň esteticky krásný způsob přemýšlení o překladu kódu. Překladač navrhl Peter Naur, který je to písmenko N v BNF, Backus-Naurově Formě pro zápis syntaktických pravidel. Znal jsem ten program nazpaměť a znám ho dodneška.

Například překladač Snobolu, který jsem napsal na Berkeley, byl jen variací na stejné téma. Řekl bych, že překladač Gier Algolu mám v hlavě ještě dnes – že dodneška ovlivňuje můj způsob programování. Vždycky se sám sebe ptám: „Jak by se tohle řešilo, kdyby šlo o kus překladače Algolu?“ Je to zatraceně chytrý program.

Co mi například uvázlo v hlavě je, že zdrojový kód analyzovali odzadu. Vtip je v tom, že když děláte věci pozpátku, některé zdánlivě složité problémy se okamžitě zjednoduší. Tak třeba řešení dopředných odkazů může být problém. Když berete kód odzadu, z dopředných odkazů se stanou zpětné odkazy, které se dohledávají snadno. Stačí se na program podívat novým způsobem a to, co by se předtím řešilo jen obtížně, je najednou hračka. Podobných krásných triků byl ten překladač Algolu plný.

Jak jste se dostal do Microsoftu?

Když jsem se rozhodl odejít z Xeroxu, začal jsem opatrně zkoumat terén. Byl jsem na obědě s Bobem Metcalfem, tedy panem Ethernetem a zakladatelem firmy 3Com, který opustil Xerox pár let přede mnou. Napsal mi seznam lidí, za kterými bych měl zajít. Číslo jedna byl Bill Gates. Číslo dvě si nepamatuji, protože už na něj nedošlo.

Je programování umění, nebo řemeslo?

O tom, co je vlastně programování, se pořád někde diskutuje. Pro někoho je to věda, pro dalšího umění, pro třetího řemeslo. Já si myslím, že je v něm od každého z těch třech něco. Rádi si hrajeme na to, že je v něm hodně umění, ale zároveň víme, že je v něm hodně vědy.

Děti se ve škole učí matematiku a když vyjdou střední, představují si pod ní sčítání a násobení a dejme tomu třeba i algebru a diferenciální počet. Ale za obyčejnou aritmetikou stojí obrovská věda – třeba i za jednoduchými operacemi, jako je sčítání.

Stejně tak i za programováním stojí obrovská věda. Například matematický důkaz Gödelovy věty je sáhodlouhý a složitý, ale když využijete některé z Turingových vět z informatiky, najednou je triviální. Teorie informací a další části informatiky mají obrovský vliv na matematiku a naopak.

V programování je spousta vědy a zároveň je to tak trochu řemeslo. Pro hodně lidí je programování precizní práce, která vyžaduje velkou pečlivost, třeba jako nástrojařina. Myslím si, že pokud berete rozumně ode všech tří [vědy, umění a řemesla], můžete dojít k velice zajímavým výsledkům.

Která část programování je podle vás umění? Návrh uživatelských rozhraní?

Myslím si, že programy rozhodně mají svou estetickou stránku – nejen v návrhu, ale i ve svém vzhledu, v uživatelském rozhraní. Umělecké hranice programátorů jsou jasně patrné, když se podíváte na nějakou ošklivě udělanou obrazovku. Jinak je programování asi takové umění jako částicová fyzika.

Týká se estetická stránka jen toho, jak program vnímá jeho uživatel? Nebo je patrná i pro jiného programátora, který se podívá, jak je program napsaný?

Rozhodně, rozhodně. Estetika zdrojáků a počítačů samotných mě vždycky fascinovala.

Například ten ruský stroj vypadal jako z vědeckofantastického románu, protože každý jeho klopný obvod [zařízení, které ukládá jeden bit informace] obsahoval maličké oranžové světlo, klasickou plynovou výbojku. Za skleněnými dveřmi a skříněmi blikaly stovky oranžových světýlek, celý život té mašiny pulzoval člověku přímo před očima.

Dánský počítač byl zase krásný kus nábytku. Byl veliký asi jako stará šatní skříň a zepředu měl troje dvířka z týkového dřeva. Pamatuji si, jak na něj jeden americký manažer právě kvůli tomu týkovému obložení nevěřícně zíral. Dokonce měl konzoli ve stylu dánské moderny, a celý tajemně voněl týkem.

Počítač na Berkeley byl docela veliký – asi šest metrů dlouhý, dva metry vysoký a necelý metr hluboký. Byl schovaný v betonovém sklepě, který byl celý natřený načerno. Jak tam v tom sklepě stál a svítila na něj světla, vypadal trochu jako monolit z Vesmírné odysey.

Když se podíváte na nějaký program, co je pro vás na jeho zdrojových kódech nebo algoritmech krásné, co vás na nich uspokojuje?

Ze zdrojáků mám zhruba stejný pocit uspokojení, jaký člověk mívá z uklizené domácnosti. Stačí jeden pohled a máte jasno, jestli je tam binec – jestli budete všude zakopávat o neumyté nádobí a odpadky – nebo jestli je hezky uklizeno. Což ještě nemusí nic znamenat, i čistý dům může být doupě hříchu! Ale je to důležitý první dojem, který o programu něco vypovídá. Klidně se s vámi vsadím, že poznám špatný program na pět metrů. Nemůžu vám zaručit, že bude dobrý, ale pokud z pěti metrů nevypadá dobře, můžete se spolehnout, že nebyl napsaný moc pečlivě. A když nebyl napsaný pečlivě, nejspíš není krásný ani v tom logickém smyslu.

Ale dejme tomu, že vypadá dobře. V takovém případě se pustíte dál. Pochopit strukturu programu je nesrovnatelně těžší. Různí lidé mívají různé představy o tom, v čem je struktura programu krásná. Jsou tu například puristi, pro které jsou krásné jen strukturované programy napsané velice striktním matematickým způsobem pomocí jednoduchých konstrukcí. Což byl celkem rozumný postoj v období do šedesátých let, kdy programátoři ještě moc nevěděli o strukturovaném programování.

Pro mě ovšem můžou být krásné i programy, které se tímto konceptem neřídí a mají jiné vlastnosti, které to vynahrazují. Je to jako srovnávat moderní a klasickou poesii. Klasická poesie je krásná a člověk ji ocení. Ale nemá smysl se omezovat jen na klasickou poesii. Zároveň ovšem neplatí, že když na papír vysypete několik náhodných slov a začnete tomu říkat poesie, bude to krásné. Myslím si, že pokud má kód jiné kvality, nemusí být v matematickém slova smyslu strukturovaný, aby mohl být krásný.

Mohlo by se stát, že by si někdo přečetl kus vašeho zdrojového kódu a prohlásil: „tohle musel napsat Charles Simonyi“?

Jasně, určitě. Asi by bylo docela těžké říct, jestli jsem ho psal já osobně, ale jedna věc je jistá: Stačil by jeden pohled a hned byste věděli, jestli vznikl v mé firmě nebo pod mým dohledem. Protože veškerý kód, který jsem asi od roku 1972 napsal, dodržuje určité konvence (běžně se jim říká „maďarská notace“). Podle těch se okamžitě dá poznat každý kód, který vznikl pod mým dohledem, včetně Wordu, Multiplanu, Brava a mnoha dalších programů.

Co přesně znamená „maďarská notace“?

Výraz „maďarská“ je vtip. Když někdo něčemu nerozumí, říká, že je to pro něj španělská vesnice. Maďarská notace je narážka na španělskou vesnici, protože hlavním úkolem těch pravidel je zvýšit čitelnost programu. Vtip je v tom, že program vypadá tak nečitelně, že by klidně mohl být napsaný maďarsky. V zásadě jde o skupinu pravidel, která řídí pojmenování všech identifikátorů.

Kdybyste rozebrali program, strčili ho do mlýnku a všechny kousky nakonec roztřídili, došli byste k tomu, že hlavní část kódu tvoří jména. Když napíšete „jablka + pomeranče“, jméno „jablka“ zabírá šest znaků, operace „+“ znak a jméno „pomeranče“ devět znaků, takže celkem máme šestnáct znaků. Z toho pouze jeden (+) se týká samotné operace. Proto mi přišlo logické, že pokud se budu snažit programovat lépe, měl bych se snažit vylepšit tu největší skupinu – jména. Maďarská notace je téměř automatický způsob pojmenování objektu podle jeho vlastností. Jako když se člověk, který byl povoláním kovář, jmenoval Kovář, nebo když se tesař jmenoval Tesař.

Kdykoliv tedy máte strukturu s nějakými vlastnostmi, můžete ji pojmenovat zcela libovolně a nechat ostatní, aby si její vlastnosti zjistili sami. A nebo ji můžete pojmenovat tak, aby byly tyto vlastnosti zjevné už podle jména. To druhé řešení má řadu výhod. Za prvé nemusíte nad jmény tolik přemýšlet – vybavíte si vlastnosti, zapíšete je a okamžitě máte jméno. Za druhé je velice srozumitelné, protože zatímco čtete, automaticky se podle jmen dozvídáte informace o vlastnostech objektů. Vlastností je hodně, takže se špatně popisují stručně. Proto maďarská notace zavádí zkratky, aby se vlastnosti daly zapsat i na malém prostoru. Dá rozum, že výsledek je pro nezúčastněného diváka absolutní chaos, a v tom je ten vtip.

Podle některých lidí je program čitelný, když dokáží přečíst každé z jeho slov. Na téhle čitelnosti ale ve skutečnosti nezáleží. Nikdo nejde s výpisem zdrojáku na jeviště a nečte ho nahlas; podstatná je srozumitelnost. Samotný fakt, že můžete slovo přečíst a vyslovit, je k ničemu. Když někdo vidí výpis zdrojáku napsaného v maďarské notaci, jména se mu těžko vyslovují, takže zdroják často považuje za nečitelný. Ale ve skutečnosti je takový kód díky spojení mezi jmény a vlastnostmi srozumitelnější a sdělnější. Lidé zvyklí na maďarskou notaci ji často používají i poté, co odejdou z mé firmy – mám buňky v Applu, 3Com a mnoha dalších firmách.

A teď něco o procesu, kterým programy vznikají. Máte nějaký postup, který se dá použít u každého programu?

Jasně. Pokud se máme držet výhradně programování, musím vědět, co přesně chci udělat. Pokud to nevím, nastupuje otázka, která je u každého řešení problémů společná: Co přesně chci udělat? Jaký mám cíl?

Mohu například chtít textový editor, který se bude ovládat pomocí menu, bude rychlý, bude mít kontrolu překlepů a tak dále. Cílový produkt je potřeba znát ještě před tím, než se člověk doopravdy pustí do programování. Jeho výběr ale někdy závisí na tom, co všechno už člověk umí. V případě Brava jsme program navrhovali kolem algoritmů. Butler Lampson přišel s několika zajímavými algoritmy, takže jsme editor zkusili navrhnout kolem nich, abychom je využili. A J. Moore – ten z Boyer-Mooreova algoritmu pro hledání v řetězcích – měl několik velice zajímavých algoritmů pro úpravu dokumentů. Tak jsme si zase řekli: „Co kdybychom napsali textový procesor, který bude obsahovat Mooreův algoritmus pro úpravu textů, Lampsonovy algoritmy pro aktualizaci obrazovky a k tomu pár keší?“ Jakmile mám ze stanoveného cíle dobrý pocit, začíná opravdové programování. Otočím list, zavřu dveře, posadím se ke stolu a řeknu si: „Teď se pustím do psaní.“

Když takhle otočíte list a začnete programovat, co přijde jako první?

Pokračování...

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

Seriál Programmers at Work (dílů: 39)

První díl: Charles Simonyi (Programmers at Work), poslední díl: Michael Hawley - 2 (Programmers at Work).
Následující díl: Charles Simonyi - 2 (Programmers at Work)

Související články

Alan Cox odpovídá
Rozhovor: Richard Stallman
Mark Shuttleworth odpovídá
Rich Green, viceprezident Sunu o open source
Opera: Jon S. von Tetzchner
Interview: Matthew Szulik, Red Hat

Odkazy a zdroje

Programmers At Work: Charles Simonyi
Charles Simonyi - Wikipedia

Další články z této rubriky

Michal Švec ze SUSE na téma Virtualizace a SLES
Rozhovor s Radkem Špimrem, IBM na téma nových serverů IBM Power Systems LC
Zpověď startupu na vlně IBM
ČVUT jako MIT? Lendl, Navrátilová, Jágr, Sáblíková, nebo absolvent FELu?
Práce vývojáře je dobrodružství

Diskuse k tomuto článku

progdan avatar 14.5.2008 00:16 progdan | skóre: 34 | blog: Archař | Teplice/Brno
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Odpovědět | Sbalit | Link | Blokovat | Admin
Skvely napad, vyborny preklad. Mockrat dekuju a tesim se na dalsi dil!
Collecting data is only the first step toward wisdom, but sharing data is the first step toward the community.
14.5.2008 02:49 Altaran
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
taky se budu nedockave klepat, az na me z RSS ctecky vyskoci Programmers at Work :) navic sem si skoro ani nevsiml, ze rozhovor je 20 let stary :D
Josef Kufner avatar 14.5.2008 21:34 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Jo, čte se to výborně ;-)
Hello world ! Segmentation fault (core dumped)
14.5.2008 00:22 dad
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Odpovědět | Sbalit | Link | Blokovat | Admin
...Myslím si, že ho otec poprosil, aby mě tam pustil ...

je to porad stejne na tomto svete. Kdyz chce clovek neceho dosahnout, tak je dulezite mit nekde tatinka. Nebo nekoho v ODS ...

Je to skutecne na bliti ...
14.5.2008 00:39 trekker.dk | skóre: 72
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Nekrmit.
Quando omni flunkus moritati
alblaho avatar 14.5.2008 10:16 alblaho | skóre: 17 | blog: alblog
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Ne že bych chtěl krmit ten zlý výlev, ale neodpustím si jednu poznámku.

Když se člověk podívá na úspěšné lidi kolem počítačů, dost často byli jejich tatínci univerzitní profesoři, zde to byl univerzitní elektrikář, někdo z dvojice spoluzakladatel Googlu Brin má tatínka profesorem matematiky.

Zkrátka chytrost se dědí, kdo se narodí hloupý (a ošklivý), má horší šance než chytrý (a krásný). Teď je otázka kam se můžem vyšvihnout my, kteří máme rodiče normální středoškoláky :-)
15.5.2008 05:31 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Já si myslím, že úspěch záleží na motivaci a na podpoře okolí (jinými slovy, "chytrost" se nedědí, ale spíš získává). Pokud chce někdo uspět a přitom nemá zrovna vhodnou startovní pozici, výsledek se může dostavit třeba až o generaci později... Je to bohužel tak trochu bludný kruh (řešený třeba studentskými slevami a v zahraničí stipendii). A výlevy jako je ten dadovo nepomůžou už vůbec nikomu. Zajímalo by mě, jestli dad sám dělá něco pro to, aby jeho syn měl tatínka "někde" (nejlépe univerzitního profesora) :-)
juraj-bit avatar 15.5.2008 08:20 juraj-bit | skóre: 14 | blog: X BLOG X | Bratislava
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Ono svet sa vždy delil na záujmové skupiny, klany, vyvolených, privilegovaných a tých ostatných. Možnosť prieniku z vonka do takejto skupiny iba iniciatívou jednotlivca môže byť úspešná len zčasti a závisí od rôznych okolností, ktoré jednotlivec nemá šancu ovplyvniť. Každá skupina si totiž svoje výsady chráni a votrelca medzi seba ťažko prijíma. Človek s nadpriemernými vlohami ich zvyčajne nemusí dokázať uplatniť ak nemá na to podmienky. A naopak, nadpriemerným sa človek môže stať napriek tomu, že má podpriemerné vlohy ale podmienky priaznivé. Či je to správne alebo nie - nehodnotím. Neviem si však dosť dobre predstaviť ako by svet vyzeral, ak by každý robil len to, na čo má vlohy. Niektoré ľudské činnosti by asi zanikli.
14.5.2008 07:22 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Odpovědět | Sbalit | Link | Blokovat | Admin
Hmm, Charles Simonyi, to zní jako Karel Šamonil, znám z TV :-)
14.5.2008 07:55 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Odpovědět | Sbalit | Link | Blokovat | Admin
BTW, docela pěkná variace na podobné téma je kniha Beautiful Code. Slyšel jsem na ni jen samé pochvaly. :-)
Jak moc jsou ábíčkáři inteligentní? ;-)
14.5.2008 12:41 laco
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Kyosuke napsal: ...docela pěkná variace na podobné téma je kniha Beautiful Code. Slyšel jsem na ni jen samé pochvaly...

Tak proč si ji nepřečteš ?
14.5.2008 12:49 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Přečtu, jakmile budu mít trošku času. ;-)
14.5.2008 13:25 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Já právě začal :-) Tohle čtení mě docela zajímá a když už jsi hodil ten odkaz, přečetl jsem si ToC, a hned to koupil (v _PDF_ jak jinak :-)) A v práci dneska nuda. Ideální podmínky!
14.5.2008 13:43 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Jo, vypadá to výborně. Hned co vyjde druhé vydání Effective Java, mám co objednávat :-) A PDF je děs :-)
Ještě na tom nejsem tak špatně, abych četl Viewegha.
juraj-bit avatar 14.5.2008 11:38 juraj-bit | skóre: 14 | blog: X BLOG X | Bratislava
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Odpovědět | Sbalit | Link | Blokovat | Admin
Po tomto článku určite prechádza predseda SNS Ján Slota na GNU/Linux, veď v tom Microsrote majú prsty maďari a teraz sa to jasne ukázalo. Aspoň niečo tí národniari vybavia. :D
Nihil habenti nihil deest
xxxs avatar 14.5.2008 12:28 xxxs | skóre: 25 | blog: vetvicky
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
ak mu nikto nenatrie inga molnara, tak by to slo.
15.5.2008 12:13 Peter Fodrek
Rozbalit Rozbalit vše Nerob si nadeje
Staci si pozriet exminister Szigeti je madar za Stranu Madarskej kolalicie a Mikolaj za Slovensku narodnu stranu..

04.05.2006 Ihr Interesse gilt dabei vor allem dem Comenius-Schulprojekt, das über 20 Schüler und Lehrer am Stand des Linux-Verbandes präsentieren. Im Rahmen dieses von der EU geförderten Projektes, an dem Schulen aus Deutschland, Polen, Portugal, Spanien und der Slowakei beteiligt sind, wurden mit Hilfe von Open-Source-Software wie OpenOffice und Mathexer Unterrichtsmaterialen erstellt, die die Schüler in die verschiedenen Sprachen übersetzt haben. http://www.heise.de/newsticker/LinuxTag-Besuch-aus-dem-Justizministerium--/meldung/72720

7. 8. 2006 Minister školstva Ján Mikolaj zrušil verejné obstarávanie 400 multimediálnych súprav pre internetizáciu škôl, ktoré vyhlásil rezort pod predošlým vedením. Oficiálnym dôvodom je nesprávne nastavenie kritérií hodnotenia súťažných ponúk.

Obstarávanie súprav vo forme verejnej súťaže vyhlásilo ministerstvo pod vedením exministra Lászlóa Szigetiho v máji tohto roku.

Každá sada mala obsahovať Tablet PC, dátový videoprojektor, prenosnú interaktívnu počítačovú tabuľu, sieťové prepojenie, WiFi router a zaškolenie troch učiteľov v celkovej cene 80 miliónov Sk bez DPH.

Najlepšia ponuka bola podľa ministerstva skreslená nesprávnym nastavením hodnotiacich kritérií, ktoré príliš preferovali vyškolenie učiteľov na úkor koncovej ceny

Najlacnejšia ponuka zúčastnených firiem predstavovala 60,9 milióna korún, najdrahší záujemca bol ochotný obstarať súpravy za 78,8 milióna Sk bez DPH

Nákup súprav má byť financovaný z eurofondov, z kapitoly ministerstva školstva pôjdu financie len na vyškolenie učiteľov v práci s multimediálnou sadou. http://www.sme.sk/c/2840662/mikolaj-zrusil-verejne-obstaravanie-vyhlasene-byvalym-vedenim-ms.html

21. 12. 2006 Ministerstvo školstva (MŠ) sa rozhodlo obstarať 400 multimediálnych súprav, aby sa vylepšila internetizácia základných a stredných škôl. Plánuje ich nakúpiť za 80 miliónov korún v užšej súťaži. Ako pre agentúru SITA uviedol Ľubor Hanzal z MŠ, oslovia päť firiem a z nich vyberú víťaza. Výhercom sa stane tá, ktorá predloží ekonomicky najvýhodnejšiu ponuku z hľadiska špecifických kritérií. Jedným z kritérií je aj počet autorizovaných servisných stredísk, ktoré robia záručný servis dodávanej techniky. Rezort vyfinancuje nákup z eurofondov a z vlastných zdrojov. http://www.zive.sk/default.aspx?article=270588

12. 7. 2007 Ministerstvo školstva (MŠ) nakúpi 400 multimediálnych súprav pre vybrané základné a stredné školy od firmy Datalan. Účet by mal dosiahnuť vyše 71 miliónov korún bez DPH. Peniaze pôjdu z eurofondov a ministerského rozpočtu. Rezort hľadal dodávateľa techniky v užšej súťaži, do ktorej predložili ponuky štyri firmy. Postupne dodajú 500 počítačov, 100 notebookov, 450 tlačiarní, 50 scanerov, 50 datavideoprojektorov, 10 serverov a 500 pamäťových kľúčov. http://www.sme.sk/c/3391336/Mikolaj-obdaruje-vybrane-skoly-multimediami.html
14.5.2008 12:02 panda
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Odpovědět | Sbalit | Link | Blokovat | Admin
Super, diky za clanek a dobry preklad. Uz se tesim na dalsi dil.
14.5.2008 19:35 KS | skóre: 10 | blog: blg | Horní polní u západní dolní
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Odpovědět | Sbalit | Link | Blokovat | Admin
Skvělé, díky moc.
Pochybnost, nejistota - základ poznání
16.5.2008 12:58 0x100 | skóre: 4 | Vysoke Myto
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Odpovědět | Sbalit | Link | Blokovat | Admin
Tzv. Maďarská notace (http://en.wikipedia.org/wiki/Hungarian_notation) je něco příšernýho. Viděl jsem to jen kdysi ve Win32 API. Přijde mi označovat datový typ předponou identifikátoru jako nadbytečné (předpona označující pointer by se ještě tolerovat dala).
"V dnesni dobe je naivní vsechno dobré..."
16.5.2008 15:51 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Přesně to si myslím také. Znám ale Windows programátora, co říká přesný opak. Takže je to asi nakažlivé :-)
16.5.2008 17:19 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: Charles Simonyi (Programmers at Work)
ja znam hovada, ktere jelikoz to videla nekdu u MS, tak to tahaji i do jazyku typu C#... takze tam prasi treba cMojeTrida, eMujEnum... aby toho nebylo dost, tak si jeste pujci z visual basicu, ci jakeho slaka m_mojeLokalniPromenna
Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
17.5.2008 12:56 Tom.š Ze.le.in | skóre: 21 | blog: tz
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Takzvana madarska notace priserna je. Ale to neni to, co intervievany pan (ktery zrejme neni idiot :-) ) navrhoval pouzivat. (Odkazy v druhe diskusi)
28.5.2008 10:33 Pev | skóre: 28
Rozbalit Rozbalit vše Re: Charles Simonyi (Programmers at Work)
Přijde mi označovat datový typ předponou identifikátoru jako nadbytečné.
Není to obráceně: označovat identifikátor předponou datového typu?

Jinak chápu, že v době, kdy nebyla IDE typu Eclipse to asi bylo vhodné.

Ale Linusovi se to nelíbí :-). Věřím, že je to dost návykový styl.

V jazycích C/C++ a Java je relativně dost datových typů / objektů. Někdy také přemýšlím, jak to pojmenovat, aby to bylo přehledné, výstižné, krátké a neobsahovalo zbytečnou informaci.

Btw: ukázka ze zdrojáku XML uložení z Excelu 2003 (který je IMHO dost šílený):

<Style ss:ID="s185">

Všechna ID jsou stringy sČíslo. Tedy zřejmě typ string. Pro programátora používajícího to XML je to dost zbytečné.

Jinde je zas
<Style ss:ID="Default" ss:Name="Normal">
<Style ss:ID="m157046304">

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.