Premium

Získejte všechny články
jen za 89 Kč/měsíc

Programátorské umění se ztrácí, potvrzuje výzkumnice Microsoftu. Kóduje i pro radost

Judith Bishopová patřila k vůbec prvním studentkám a profesorkám informatiky. Když začínala, na výsledky programu se čekalo i několik týdnů. Nyní, po více než třiceti letech, jsou podle ní nové technologie všudypřítomné. Umění programátorsky myslet se ale stále cení.

Profesorka Judith Bishopová, ředitelka informatiky pro externí výzkum Microsoftu | foto: Microsoft

Profesorka Judith Bishopová se věnuje programovacím jazykům už přes třicet let. Napsala první učebnici jazyka Java a zabývá se koordinací výzkumu v rámci Microsoftu a předních světových univerzit. "Je to taková role seznamovače," směje se. Kromě toho se nadále věnuje informatice z vědeckého hlediska a své studenty učí efektivnímu, promyšlenému, elegantnímu programování: "Kód musí být krátký a přehledný. Jestli v kódu potřebujete komentáře, abyste se v něm vyznali, děláte něco špatně."

Nové technologie mají podle ní dopad na celou stpolečnost, zvláště na rodinu: "Chceme si naplnit domovy technologiemi až po okraj a pak už se nám nechce chodit ven, mimo dosah elektřinou zajištěného pohodlí." Přesto je optimistka a věří, že by se děti měly s novými technologiemi učit co nejdříve, pokud možno v souvislostech.

Dobrodružné začátky informatiky

Profesorka Judith Bishopová si na mě udělala čas v rámci své krátké návštěvy českých univerzit. V budově firmy Microsoft jsme měli jen necelých dvacet minut času, a tak to vypadalo na spěšné interview. Ovšem klidný výklad profesorky Bishopové dal na spěch brzy zapomenout. Místo toho mě vzala k předinternetovým začátkům informatiky, kdy se na výstup jednoduchého programu někdy čekalo i několik týdnů.

Programování se věnujete už několik desetiletí. Popsala byste nám svou kariéru?
Pracuji jako ředitelka informatiky pro externí výzkum společnosti Microsoft, pracoviště máme v americkém Redmondu. Pro Microsoft pracuji necelý rok, ale profesorkou informatiky jsem mnohem déle, už 31 let. Měla jsem to štěstí, že jsem se ocitla v úplně první vlně studentů,

Když chci relaxovat, tak si někdy jen tak pro radost programuju.

kteří informatiku studovali. Rozvoj informatiky jsem tedy sledovala prakticky od jejích úplných začátků. A to mi umožnilo jak pozorovat změny, kterými informatika prošla, tak zůstat v kontaktu a udržet si přehled o tom, co se na poli informatiky děje.

Programování je mojí vášní. Vytváření kódu zkrátka miluju. Někdy, když přijdu unavená domů, tak relaxuji právě tak, že programuju něco, co mne baví. Myslím, že tohle zaujetí mne asi nikdy neopustí.

Kdy jste se poprvé dostala k počítačům?
Když jsem byla na střední, tak si místní univerzita pořídila počítač. Samozřejmě, že to byl obrovský stroj, umístěný ve speciálním sále za sklem. A jednou za rok, na den otevřených dveří, sál otevřeli pro veřejnost. Byla jsem naprosto unešena - počítačem samotným i tím, co umožňuje. Rozhodla jsem se, že to je to pravé pro mě. Prostě jsem cítila, že do toho musím proniknout.

Jaké byly úplné začátky studia informatiky?
Když se studijní program rozbíhal, bylo nás v ročníku velmi málo. A je zajímavé, že celou třetinu studentů v mojí třídě tvořily dívky. A vlastně i v první třídě, kterou jsem na konci 70. let učila, to bylo kolem jedné třetiny. Teprve později začali v tomto odvětví dominovat muži.

To je zajímavé, já bych odhadoval, že podíl žen v tomto odvětví naopak postupně stoupal…

Zpočátku bylo v informatice více žen...

Ne, dříve bylo v informatice více žen. Ten důvod byl, že vláda (v Jižní Africe) určila informatiku jako předmět pro střední školy. Ženy se často hlásily na podobor "učitelství informatiky", který vláda podporovala. Později tento projekt vymizel. A tak se postupně změnila i struktura studentů.

Další faktor, který mne napadá, je, že informatika se (zvláště pro studenty) hodně propojila se světem počítačových her. A počítačové hry byly svým zaměřením dlouho orientované především na kluky, byla to taková střílečková éra. To ženy nezajímalo.

Jaká hra by byla příhodnější pro muže i ženy?
Nemůžu mluvit za všechny ženy, ale já, když už hraji hry, tak jsou to třeba vědomostní hry, hlavolamy, kvízy, deskové hry… Nevyužívám tedy grafické schopnosti počítače, jako spíše jeho schopnost pracovat s databází a algoritmy. Mám ráda třeba Travelers‘ IQ Test (viz článek o zeměpisných hrách, pozn.red.), objevováním různých míst po světě jsem onehdy strávila snad celý den. Vylepšila jsem si skóre tak, že jsem překonala skoro všechny svoje přátele, ale pak jsem raději přestala, protože jsem své přátele nechtěla ztratit… (smích) Je to návykové.

Zmínila jste, že si všímáte rozdílů mezi informatikou v 70. letech a informatikou dnes. V čem spočívají?
Když jsem s informatikou začínala, pracovala jsem s lidmi, kteří jsou dnes v oboru legendami. Maurice Wilkes a další. Jezdila jsem s nimi na konference. Byl to malý obor, informatiků bylo jen pár. Každý znal každého, a mohl jste s kýmkoli mluvit. Vlastně, a to je důležité, musel jste s ostatními mluvit!

Nesmíme zapomínat, že tehdy ještě neexistoval internet, nebyl e-mail. Takže když jsem pracovala na svojí diplomové práci, kterou jsem obhajovala roku 1977, potřebovala jsem nějaká data od kolegy v Austrálii. A abych se k nim dostala, musela jsem mu napsat dopis s kódem. A on pro mne ten kód spustil na počítači, ke kterému měl přístup, a zaslal mi výstup, opět dopisem. To vše poštou mezi Anglií a Austrálií.

Tomu říkám dlouhý ping (round-trip time, pozn. red.)...
Ano, to tedy byl. Ale bylo to v pořádku, zkrátka s tím člověk musel počítat a věci si dobře naplánovat. V době, kdy jsem čekala na výsledky, jsem zase pracovala na něčem jiném.

Nebyl e-mail, nebyl web, akademický život vypadal jinak. Ale měli jsme konference, kde jsme se setkávali a debatovali. V té době přišel na scénu programátorský jazyk BASIC, pak PASCAL. Turbo Pascal posléze zkombinoval BASIC s podporou snadného terminálového přístupu a PASCAL s jeho vynikající strukturovaností.

Pak nastoupila Ada, programovací jazyk navržený pro ministerstvo obrany. Byl to spíše příklad toho, jak by se programovací jazyk neměl navrhovat, ale všichni jsme s Adou ztratili obrovské množství času… A to už se začal rozšiřovat internet, a lidé mohli probírat tyto problémy on-line.

Chronologie programovacích jazyků

Některé známé programovací jazyky a jejich časové zařazení:

1955 - FORTRAN - FORmula TRANslator, určený především pro výpočetní operace a věděcké účely, vyvinutý firmou IBM

1958 - Lisp - vyvinutý na MIT Johnem McCarthym

1959 - COBOL - COmmon Business-Oriented Language, vyvinutý Grace Hopperovou a později vyvíjený ve spolupráci s Pentagonem

1963 - CPL - Combined Programming Language, vyvinutý univerzitami v Cambridge a v Londýně, později tvořil základ jazyka C

1964 - BASIC - Beginner's All-purpose Symbolic Instruction Code, vyvinutý Johnem Georgem Kemenym a Thomasem Eugenem Kurtzem na Dartmouth College. Dnes je nejznámnějším klonem BASICu Microsoft Visual Basic, různé dialekty Basicu se používají v mnoha aplikacích, např. pro tvorbu maker v OpenOffice nebo Microsoft Office nebo v některých programovatelných kalkulačkách.

1970 - Pascal - populární strukturovaný programovací jazyk, jeho autorem je Niklaus Wirth

1972 - C, 1980 - C++ - asi nejznámější programovací jazyky, přezdívané "céčko", vyvinul Dennis Ritchie, respektive Bjarne Stroustrup v rámci Bell Labs

1981 - Turbo Pascal

1983 - Ada - jazyk navrhl Jean Ichbiah pro americké ministerstvo obrany, pojmenován je po první programátorce historie (Ada Lovelace)

1991 - Python, 1991 - Java, 1993 - Ruby, 1995 - PHP, 2000 - C#

zdroj: Wikipedia

Asi nejzajímavější období pro mne nastalo jedním srpnovým dnem roku 1997, kdy ředitel mého oddělení přišel ke mně do kanceláře a řekl: "Koukal jsem se na ten nový jazyk, Java. Myslím, že bychom to měli učit." A já říkám: "No dobře, dám ti zítra vědět, co si o tom myslím."

Přemýšlela jsem o tom, šla jsem domů a začala jsem mu psát dlouhatánský dopis, který shrnoval, proč si myslím, že není dobrý nápad se Javou zabývat. Museli bychom přeorganizovat kurzy, nebyly k dispozici žádné učebnice, neměli jsme žádné kompilátory - samé rozumné důvody, proč se jazyku Java vyhnout. A pak jsem celý ten dopis smazala, a druhý den jsem šéfovi řekla: "Jdeme do toho!"

Pustili jsme se do práce, Javu jsme začali učit jako první univerzita v zemi. Napsala jsem vůbec první učebnici Javy (Java Gently), sehnali jsme kompilátory, už ani nevím, kde. Přešli jsme na operační systém od Sunu. A byla to fantastická volba. Mohli jsme také konečně naplno využít internet, který byl v té době pořád relativně nový.

Myslím, že poučení, které jsem si z toho odnesla, zní: "Přijmi inovace!" Samozřejmě, že nesmíte zahodit to staré a osvědčené, ale zajímejte se o nové věci. Vždycky!

A teď, od července 2009, pracujete pro Microsoft. Když jste nastoupila, čekal Vás řád, chaos, úkoly…?
Asi bych měla říci, co mám v popisu práce. Vedu menší tým v rámci externího výzkumu Microsoftu ("Core Computer Science") a jedním z mých úkolů je sledovat, co se děje v rámci stovek oblastí, jejichž výzkumem se Microsoft zabývá, a koordinovat spolupráci Microsoftu s předními univerzitami u USA i ve světě. Také obcházím konkrétní lidi z výzkumů i univerzit a informuji je o nových poznatcích a technologiích. "Víte o tomto trendu? Hodil by se do vašeho výukového plánu? Můžeme vám pomoci jej implementovat?" A stejně tak zjišťujeme, na čem pracují univerzity: "To je zajímavé, myslím, že vás můžu představit někomu v Microsoftu a můžete rozvinout spolupráci na tomto projektu…" Je to taková role seznamovače.

Začala jsem ve Spojených státech, ale uvědomujeme si, že Microsoft je a má být společností s globálním přesahem. První region, do kterého jsem se vydala, je střední Evropa. Kromě Česka navštívím také Polsko a Maďarsko.

Já i mí nadřízení víme, že je zde informatika silným odvětvím, a chceme jej blíže prozkoumat. Víme také, že místní univerzity nejsou k produktům Microsoftu nepřátelské a naše produkty hojně využívají.

Jaké univerzity chovají vůči produktům Microsoftu averzi?
Některé významné americké univerzity jsou vysloveně odmítavé. Ve Spojených státech to tak občas je. Preferují open-source technologie nebo heterogenní platformy.

Profesorka Judith Bishop působí na Univerzitě v Pretorii a také u Microsoftu

Profesorka Judith Bishop působí na Univerzitě v Pretorii a také u Microsoftu

Jak se změnilo programování za poslední roky?
Myslím, že je potřeba rozlišit programování z hlediska architektury a programování z hlediska programovacího jazyka. Já se zabývám tím jazykem. Co se změnilo za posledních 30 let, je příchod celého odvětví - softwarového inženýrství. Nyní jsou k dispozici nástroje, modely a technologie k programování na vyšších úrovních. To, který programovací jazyk použijete, přestává být relevantní.

To, jaký programovací jazyk použijete, už není v době softwarového inženýrství tak důležité, jako dřív.

Skládáte kousky, program navrhujete v modulech a na samotný kód dojde až v druhé nebo třetí řadě. Studenti to tak asi nevidí, protože při studiu vidíte jen malé jednotlivé kousky, na kterých se učíte programovat. Ale když v programování podnikáte, jste o několik vrstev výše, a pak už zase nemusíte vidět ty jednotlivé dílky.

Ale vývojáři ty dílky samozřejmě vidět musejí, vždyť je kódují. Vývoj kódu je často redundantní - když se vývojář izoluje, tak nevidí, že by mohl použít již hotový kód, který vytvořil jeho kolega třeba v rámci stejné firmy. Už dávno, asi v roce 1989, přišly tzv. návrhové vzory, určité obecné řešení problému, které se může používat v různých situacích. Programátoři se od té doby učí napodobovat dobré zvyky a způsoby programování, což urychluje vývoj a zároveň usnadňuje spolupráci. V mojí poslední knize (C# Design Patterns) právě ukazuji poslední trendy návrhových vzorů u novějších jazyků.

Příkladem takového návrhového vzoru je třeba "observer pattern" (observe = sledovat). Máte dva objekty a jeden objekt potřebuje vědět, kdy se změnila vlastnost druhého objektu. A tak objekt A řekne objektu B: "Když se něco změní, dej mi vědět." A pak jej nemusí kontrolovat, protože až bude čas, B se sám ozve. Jsou dobré a špatné způsoby, jak toho docílit.

Špatný způsob by byl třeba pravidelná kontrola objektu B v nějakém intervalu, že?
Přesně tak, to by byla katastrofa. Objektové programovací jazyky mají speciální mechanismy, které tento problém řeší elegantně a "správně".

Má každý programovací jazyk možnost použít správné řešení, správný návrhový vzor?
Ano, někdy to může být tak, že ten který návrhový vzor nelze v daném jazyce úplně uplatnit. Obvykle je to ale tak, že programátoři jej akorát neodhalili nebo jej nepoužívají, nevědí o něm. Proto jsou učebnice návrhových vzorů tak důležité. Promýšlejí ten správný způsob a ukazují cestu.

Nemáte pocit, že se programátorské umění ztrácí a na místo kódování a ladění nastupuje slepování a kombinování?
Do značné míry tomu tak je. Dnes jsou k dispozici různé způsoby programování. I pro "uživatelsky přívětivé programování" je tu místo. Další užitečnou aplikací je "rapid prototyping" (rychlé vytváření prototypu aplikace), a to má své nenahraditelné místo v časných fázích projektu.

Ale co když někdo zůstane u toho funkčního prototypu a už jej neodladí a neoptimalizuje?
Ano, ale tak tomu je v mnoha disciplínách. I dům můžete postavit narychlo, nebo promyšleně.

Neil Postman ve své knize Technopoly ukazuje, že technologie mění naše životy nečekanými způsoby a přináší společenskou změnu. Vy jste měla možnost sledovat nástup počítačů velmi zblízka. Jaké myslíte, že mají počítače na člověka a společnost vliv?

Člověk ztrácí svou přirozenost, raději zůstává v pohodlí domova.

Technologie skutečně naše životy výrazně tvaruje. A myslím, že tu je velký tlak na rodiny, a především na mladé lidi. Existuje tu jakási touha naplnit si dům technologiemi až po okraj, a člověk v takto přetechnologizovaném prostředí ztrácí schopnosti používat svoje smysly přirozeným způsobem, zvláště mimo dům. A tak zůstáváme více uvnitř, kde nám slouží elektřina.

Děti nejdou jezdit na koni, rybařit, nebo zkrátka na výlet. Pohodlnější je zůstat doma u konzole…

Jsem si jistý, že Xbox nabízí nějakou rybářskou hru...
Ano, nepochybně. A nechci kritizovat hry obecně, ale je to každopádně významná změna.

Mladí lidé a počítače, k tomu chci ještě něco dodat z pohledu profesorky informatiky. Současná počítače jsou tak komplexní, a problémy, které řešíme, tak spletité, že si myslím, že by měly být děti vystavené informačním technologiím poměrně brzy. To ale neznamená jen internetovou zábavu, to znamená učit se chápat fungování počítačových systémů.

Dovedu si představit, že to dnešní rodiče mají těžké. Jejich šestileté dítě možná umí s počítačem více věcí, než oni… Jak mohou rodiče vůbec působit jako autority v oblasti informačních technologií?
Je to pro rodiče rozhodně těžké. Mohou zkusit spolehnout se na školy, ale mnoho škol s nedostatkem kvalifikovaných učitelů zápasí zrovna tak. Microsoft ví, že tohle je problém… (zarazí se) Asi bych měla mluvit více o Microsoftu, viďte? (smích)

Dobře, tak něco o Microsoftu. Hodně se mluví o cloud computingu (např. serverovém zpracování a uchování klientských dat on-line, pozn. red.). V samých začátcích počítačů tu byl obrovský počítač, ke kterému se připojovaly terminály. Pak se přešlo na osobní počítače, a teď se oklikou vracíme znovu k modelu server-terminál. Jaký je Váš náhled na tento trend?
Ano, cloud computing má rozhodně budoucnost. A velké společnosti jako Microsoft berou tento trend velice vážně. Než se ale cloud computing může stát veřejně využitelným, musí být k dokonalosti dotaženy dvě věci.

Tou první je rychlá, nepřetržitá dostupnost. Udává se, že reakce by neměla přesáhnout 0,15 vteřiny pro milion zároveň připojených uživatelů.

Uživatelé považují spolehlivost za samozřejmost, ale pro nás jsou to statisíce řádků kódu, který musíme otestovat.

Druhou je vysoká spolehlivost. Na této spolehlivosti pracuje Microsoft ve svém výzkumném středisku v Cáchách. Musím říci, že jejich výsledky jsou výborné. Nástroj zvaný Hypervisor zajišťuje, že běžící program neovlivní běžící programy někoho jiného. To je nesmírně důležité. Tahle spolehlivost je pro koncového uživatele něco samozřejmého, jako něco, co prostě Microsoft udělá. A my to samozřejmě splníme, ale je to sto tisíc řádků kódu, které je potřeba otestovat a ověřit.

Co vás na programování fascinuje?
Dvě věci. Dosáhnout cíle, tedy funkčního kódu, a pak také eleganci. Někdy programuji se svými syny, oba po mně zdědili onen elegantní kód (smích). Když programuji se studentem, což často dělám, a on se dopouští prohřešků proti eleganci, vždycky mne to rozladí.

V čem taková elegance spočívá?
Kód musí být stručný a krátký, to je vždy dobré znamení. Ale nesmí být kryptický a nečitelný. Takže elegantní kód je krátký a přehledný. Třídy a funkce musejí mít své místo, neměly by si lézt do zelí, vše musí jasné. Málokdy používám ve svém kódu komentáře. Myslím, že nutnost komentáře ukazuje, že samotný kód je nejasný.

Co byste vzkázala studentům, především studentům informatiky?
Pokud vás baví, co děláte, vybrali jste si správnou profesní dráhu. Pokud si to neužíváte, tak byste možná měli zvážit jinou kariéru. Informatika není jen nějaký přívažek, je to něco, co musíte prožívat bytostně. Něco, co žije ve vaší hlavě bez ustání. Informatice musíte upsat duši.

Autor:

Povodně

Od čtvrtka do neděle platí výstraha na extrémní srážky. Na většině území ČR platí také povodňová pohotovost či povodňové ohrožení

  • Nejčtenější

Jaderný zločin v roce 1954. Jak Sověti nacvičovali třetí světovou válku

Východní mocnost vedená Kremlem nechtěla zůstat v ničem pozadu. Proto i ty strašné věci dokázala hnát do hrozivých rozměrů. Jako jaderné cvičení s reálnou explozí, kam nahnala 45 tisíc vojáků. Vedle...

14. září 2024

První výstup soukromníků do volného vesmíru proběhl tak, jak měl

Účastníci letu Polaris Dawn ve čtvrtek provedli historicky první soukromý výstup do vesmíru s využitím nových skafandrů společnosti SpaceX a přepracované kosmické lodi Crew Dragon. Na začátku výstupu...

12. září 2024  12:13,  aktualizováno  13:21

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Konec učení jazyků se blíží. Vyzkoušeli jsme nová sluchátka s překladačem

Premium

Berlín (od zpravodaje Technet.iDNES.cz) Jako ve Star Treku by si mohli připadat uživatelé sluchátek Timekettle W4 PRO, které měly na veletrhu IFA 2024 světovou premiéru. Mají zvládnout překládat 40 jazyků a 93 akcentů. Firma slibuje až...

7. září 2024

FOTODUEL: Neuvěřitelné klávesnice. Která se vám líbí nejvíce?

Krásné, vtipné, trhlé, nápadité, praktické, nepraktické, kýčovité, nevkusné ... na veletrhu IFA 2024 jsme potkali obrovské množství klávesnic, které mezi návštěvníky poutaly nečekanou pozornost a...

10. září 2024

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Dostali „antinobelovku“ za objev, že savci mohou dýchat konečníkem

Prokázaná schopnost savců dýchat konečníkem, rakety naváděné s pomocí poštovních holubů či plavecké schopnosti mrtvých pstruhů. To jsou některé z nejnovějších přínosů na poli nevážné vědy, které si...

13. září 2024  20:38

Vodíkové balony nad Evropou opět bojují o Pohár Gordona Bennetta

Zatímco Česko hledí v těchto dnech k nebi s obavami z dalšího deště, na obloze západní Evropy odstartoval 67. ročník nejstaršího leteckého závodu světa – Pohár Gordona Bennetta. Původní start v pátek...

14. září 2024  19:40,  aktualizováno  15.9

Velká sláva na Seči. Před 100 lety začala stavba Masarykovy údolní přehrady

Před sto lety, 15. září 1924, začala stavba známé přehrady Seč na řece Chrudimce v Železných horách. Dodnes jde o ráj rybářů a rekreantů.

15. září 2024

To monstrum znal jen ze hry. Nyní tank s největším kanonem v historii ožil

Původní myšlenka vznikla při hraní populární videohry World of Tanks, kde patří mezi nejvražednější volby. Stíhač tanků FV4005 byl prototyp s největším kanonem, jakým kdy byl tank osazen. Hovořili...

15. září 2024

V nadživotní velikosti. Havlíčkův pomník stojí v Brodě už 100 let

Německý Brod, dnes Havlíčkův Brod, před sto lety slavnostně odhalil pomník Karla Havlíčka Borovského.

14. září 2024

Líbí se mu moje pipinka. Je pořád nadržený, stěžovala si vyměněná manželka

V novém díle Výměny manželek se pohodlná Lucie snažila přizpůsobit domácnosti, kde se stále něco děje. Ilona jako by...

Schwarzenegger se v Praze proháněl na kole. Vyfotil se také s „Klukem s kamením“

Legendární herec a bývalý guvernér Kalifornie Arnold Schwarzenegger (77) je v Praze. O víkendu si užíval kávu na...

Plivnout při orálním sexu na penis. Obscénnost jižanské slečně změnila život

To, co v anketě vypustila do světa, byla obscénnost. Nic elegantního. Naopak, největší sprosťárna. Jenže ji do kamery...

Půllitr už mnohde není standard. Hospodští kouzlí s mírami a štvou hosty

Pivní kultura je v Česku zakořeněná po staletí a její součástí je odjakživa čepování do půllitru nebo třetinky. V...

Zatnu zuby a nevěra není. V tolyamorii žije v Česku stále více párů

Podvádíš mě, spíš s jinými a já to vím. Doma děláme, že se to neděje, a i když mi to vlastně vadí, rozhodně o tom...