Zde - FIT

Komentáře

Transkript

Zde - FIT
BUĎ FIT
1/2016
LÍTAČKA
Gigapanoramatické
fotografie v SAGElabu
TÉMA: NEJ PROGRAMOVACÍCH
JAZYKŮ
1
ÚVOD
AKTUÁLNÍ DĚNÍ
Záhada svítícího kanálu odhalena
POZVÁNKY
UnIT 2016
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
Nejšílenější programovací jazyky
Nejvíce oldschool programovací jazyky
Nejoblíbenější programovací jazyky
Nejnovější programovací jazyky
Nejlehčí a nejtěžší programovací jazyky
TECHNOLOGIE
Gigapanoramatické fotografie v SAGElabu
PARTNEŘI FAKULTY
Spolupráce s Komerční bankou
Lely, innovators in agriculture
2
4
6
8
12
15
18
22
23
28
29
STALO SE
InstallFest 2016
Ples ČVUT
FIT párty 2016
FIŤÁCKÉ PROJEKTY
Lítačka
TVORBA
I am(sterdam)
ZÁVĚREM
Herní tipy
Filmové tipy
Starý alchymistický jazyk – první programovací jazyk?
Mensa úlohy
32
32
33
34
36
38
39
40
41
TIRÁŽ
Šéfredaktor: Kamila Pětrašová
Zástupce šéfredaktora: Veronika Dvořáková
Redaktoři: Zdeněk Kasner, Milan Kurka, Tomáš Nováček, Petra Svíčková
Grafické zpracování a sazba: za skupinu Grafit Vadim Petrov a Karolína Solanská
Jazyková korektura: Tomáš Nováček, Kamila Pětrašová
Fotografie: Archiv PR FIT, pokud není uvedeno jinak.
http://fit.cvut.cz/casopis
[email protected]
Přetisk článků je možný pouze se souhlasem redakce a s uvedením zdroje.
3
AKTUÁLNÍ DĚNÍ
Záhada svítícího
kanálu odhalena
Natáčení nových dílů seriálu Akta X, sociální experiment, portál pro
teleportaci, nebo tajná laboratoř pro testování technologie Li-Fi. Tyto
a další důmyslně promyšlené teorie se snažily vysvětlit přítomnost
­svítícího kanálu při vstupu do dejvického kampusu.
Tajemný svítící kanál se objevil v lednu nedaleko
Fakulty elektrotechnické. Zatímco přes den ho bylo
jednoduché přehlédnout, ve večerních a nočních
hodinách tomu bylo spíše naopak díky barevně svítícímu poklopu. Ten nedal spát několika studentům,
kteří se o původ a účel kanálu začali aktivně zajímat.
Na Facebooku proto založili stránku „Svítící kanál na
ČVUT“ ve snaze rozšířit povědomí o jeho existenci.
První lavinu zájmu a pozornosti vyvolalo video, kde
studenti kanál zkoumali a objevili tlačítko, které kanál rozzářilo do červena. Z této činnosti je vyrušila
ochranka z budovy Fakulty elektrotechnické. Na zmíněné stránce se později začala objevovat další videa
a fotografie, například záznam natočený termovizní
kamerou, který měl dokazovat zvýšenou teplotu poklopu. Téma záhadného kanálu však nezaujalo jen
studenty, ale také významná média.
Zainteresovaní studenti poté zahájili hlubší pátrání, které odstartovalo kontaktováním několika
možných odpovědných institucí, které ale do záhady nové světlo nevnesly. Proto svolali happening, na
který byl pozván i rektor univerzity Petr Konvalinka,
ten však účast odmítl kvůli nedostatku času. Přislíbil,
že bude osobně pátrat po tom, co se pod poklopem
skrývá. Na začátku února byla ke kanálu svolána tisková konference, kde měl veřejnost seznámit s výsledky „pátrání“.
NEJFUTURISTIČTĚJŠÍ PROJEKT
V ­HISTORII
Na tiskové konferenci proběhlo odhalení, na které
všichni čekali. Pod kanálem se totiž dle slov rektora
skrývá nejfuturističtější projekt v historii školy, a to
natolik, že jeho autoři na ČVUT ještě ani nestudují.
4
Svítící kanál byl zvolen za účelem oslovení stávajících
studentů, kterým není jedno, co se na jejich škole
děje, a ti by měli pomoci propagovat a doporučovat
studium na ČVUT svým přátelům či známým. Pod poklopem se tedy kromě tohoto poselství neskrývalo
nic jiného, než baterie a několik žárovek.
Spolu s kanálem byl spuštěn web pro zájemce
o studium www.studujcvut.cz, který prezentuje zajímavé projekty a aktivity, které vznikají na fakultách
ČVUT. Pokud máte ve svém okolí člověka, který bude
příští rok maturovat a začíná vážně uvažovat nad volbou vysoké školy, doporučte mu spolu se studiem na
ČVUT (samozřejmě ideálně na FITu!) i výše zmíněný
web.
Milan Kurka
foto: Facebook page Svítícího kanálu
5
POZVÁNKY
UnIT 2016
Souhlasíte s tím, že u každého článku by měl mít čtenář hned v úvodu
možnost poznat, jestli ho má cenu číst nebo ne? Protože na první pohled
může mít článek hezké barvičky a všechno, ale na konci si uvědomíte, že
se vás vůbec netýkal. Abych se tomu zde vyvaroval, rozhodl jsem se na
úvod zařadit menší kvízovou otázku:
6
Jaká z těchto oblastí programování vás
zajímá?
a) design a návrh webových aplikací
b) programování logiky backendu
c) strojové učení a analýza dat
Chvíle na rozmyšlenou… Máte vybráno?
Mám pro vás nejspíš dobrou zprávu – pokud jste
si vybrali alespoň jednu z těchto možností, článek
pro vás má smysl. Přiznávám, byla to drobná lest. Ale
s dobrým úmyslem :-)
Abych se dostal k věci: UnIT je týmová programovací soutěž, kterou organizujeme se studentskou
organizací BEST Prague. Pod pojmem „programovací
soutěž” se dá představit všelicos, například soutěž
ACM se svými krutopřísnými úlohami nebo 24hodinové hackatony. Narozdíl od těchto soutěží UnIT cílí
na mnohem širší skupinu programátorů – k účasti
není potřeba umět nazpaměť matematické vzorce ani manuálové stránky (ačkoliv dobrovolnosti
se meze nekladou), důležitá je naopak kreativita
a schopnost pracovat v týmu.
Kdy? 19. dubna 2016
Kde? V Nové budově ČVUT.
Mnohem více informací naleznete na http://unit.
bestprague.cz. A pokud jste zatím neslyšeli o BEST
Prague, určitě zavítejte i na naše stránky http://
bestprague.cz, protože kromě této akce pořádáme
i mnohé další.
Neváhejte a přihlaste se, těšíme se na vás!
Zdeněk Kasner
foto: BEST Prague
A jaká že jsou hlavní lákadla?
•
•
•
•
•
•
•
3 kategorie na témata z úvodní kvízové otázky
výběr libovolného programovacího jazyka + přístup k internetu během soutěže
zajímavé ceny pro týmy na stupních vítězů (iPady, sud piva, …)
garantovaný den plný zábavy s týmem vašich kamarádů
mnoho firemních partnerů (CN Group a Unicorn jako hlavní partneři prvních dvou kategorií)
kategorie na data zajišťovaná ve spolupráci s Datalabem FIT ČVUT
bohatý doprovodný program pro návštěvníky a kolemjdoucí
7
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
Nejšílenější
­programovací jazyky
Programovacích jazyků existuje spoustu. Některé se využívají hodně,
­některé jsou specializované na určitou sadu problémů a některé existují
jenom proto, že se někdo nudil. A takových jazyků je snad nejvíc. První ze
série NEJ programovacích jazyků jsou „Nejšílenější programovací jazyky“.
Ano, vím, že se oficiálně nazývají „esoterické programovací jazyky“, ale nikdo z nás jim tak doopravdy neříká.
Vybral jsem z té plejády blbostí a kravin sedm největších kuriozit, samozřejmě s ukázkou v podobě Hello
World. Někdy je tento program na tři řádky a někdy je
na tři strany, někde jsem se tedy rozhodl kód zkrátit.
Tak se, prosím, nepokoušejte tyto kódy odevzdat na
progtest. Děkuji.
ARNOLDC
ArnoldC je imperativní programovací jazyk, jehož
kód je složený z filmových hlášek Arnolda Schwarzeneggera. Tady snad není moc co popisovat a pár
ukázek bude mluvit za vše:
If-else:
BECAUSE I‘M GOING TO SAY PLEASE value
[statements]
BULLSHIT
[statements]
YOU HAVE NO RESPECT FOR LOGIC
Načtení ze standardního vstupu:
I WANT TO ASK YOU A BUNCH OF Q
­ UESTIONS
AND I WANT TO HAVE THEM ANSWERED
IMMEDIATELY
https://github.com/lhartikk/ArnoldC/wiki/
ArnoldC
8
Hello World:
IT‘S SHOWTIME
TALK TO THE HAND „hello world“
YOU HAVE BEEN TERMINATED
OSTRAJAVA
OSTRAJava má za cíl pozvednout kvalitu (nejen ostravského) programování. Na rozdíl od Javy vychází
OSTRAJava přímo z mluveného jazyka (ostravského
nářečí), tedy z něčeho čemu obyčejní lidé rozumějí.
Typický ostravský horník pak nebude mít problém
přejít od těžby uhlí ke klávesnici. Jazyk tak mimo jiné
řeší i problém nezaměstnanosti v Moravskoslezsku.
Deklarace proměnné začíná klíčovým slovem
„toz“ a místo středníků se používá klíčové slovo
„pyco“.
Deklarace proměnné typu int je tedy:
toz cyslo i = 1 pyco
A to, že třída Čtverec dědí od třídy Obdélník z­ apíšeme
jako:
tryda Stverec fagan od Obdelnik
https://github.com/tkohout/OSTRAJava
Hello World:
banik pyco
tryda Ostrava {
rynek(){
Konzola.pravit(„Toz vitaj“) pyco
}
}
fajront pyco
TAXI
Podle tvůrců tohoto jazyka jsou programátoři jako
taxikáři – „převáží“ data z jedné části paměti do druhé. Tak proč nevytvořit programovací jazyk, co tomu
odpovídá?
Se svým imaginárním taxíkem budete projíždět
městečkem Townsburg, které je plné dat, potřebných
převézt z místa na místo. Naštěstí máte k dispozici
mapu celého městečka, takže je pro vás práce jednoduchá.
V městečku jsou ulice s názvy jako Addition Alley
(Sčítací ulice), kde se dva číselní pasažéři sečtou, Heisenberg‘s (Heisenbergova), kde naberete náhodné
celé číslo, nebo Cyclone (Cyklon), kde jsou všichni pasažéři naklonováni, takže máte od každého pasažéra
originál a kopii.
Tím to ale nekončí. Jako správní taxikáři ale vybíráte od pasažérů peníze (0,07 kreditů za míli) a za
peníze si musíte kupovat benzín. Pokud nebudete
pravidelně jezdit k pumpě, budete mít prázdnou nádrž a program nedoběhne.
Hello World:
„Hello, World!“ is waiting at the
Writer‘s Depot.
Go to Writer‘s Depot: west 1st left,
2nd right, 1st left, 2nd left.
Pickup a passenger going to the Post
Office.
Go to the Post Office: north 1st
right, 2nd right, 1st left.
­
Go to the Taxi Garage: north 1st
right, 1st left, 1st right.
­
https://bigzaphod.github.io/Taxi
SHAKESPEARE
Jak asi většina z vás pochopila, kód v jazyce Shakespeare nemá vypadat jako kód, ale jako hra od stejnojmenného anglického dramatika.
Kód začíná seznamem postav, které deklarují
počet zásobníků. Když spolu dvě postavy pak vedou
dialog, tak pracují s horním prvkem zásobníku stejně
tak, jako v jakémkoliv jiném jazyce. Otázky kladené
jednotlivými postavami jsou pak brané jako podmínky if-else.
Jednotlivé akty jsou goto návěstí, na které se dá
odkazovat v rámci celého kódu. Postavy, stejně jako
v dramatu, vcházejí a odcházejí ze scény a určitá slova v jejich dialozích jsou klíčová slova pro různé matematické úkony.
Stejně tak jako reálná Shakespearova dramata,
ani tento kód není úplně nejlehčí na pochopení. No,
posuďte sami.
Hello World:
Romeo, a young man with a remarkable
patience.
Juliet, a likewise young woman of remarkable grace.
Ophelia, a remarkable woman much in
dispute with Hamlet.
Hamlet, the flatterer of Andersen Insulting A/S.
Act I: Hamlet‘s insults and flattery.
Scene I: The insulting of Romeo.
[Enter Hamlet and Romeo]
Hamlet:
You lying stupid fatherless big smelly
half-witted coward! You are as stupid
as the difference between a handsome
rich brave hero and thyself! Speak
your mind! You are as brave as the
sum of your fat little stuffed misused dusty old rotten codpiece and
a beautiful fair warm peaceful sunny
summer‘s day. You are as healthy as
the difference between the sum of the
sweetest reddest rose and my father
and yourself! Speak your mind! You
are as cowardly as the sum of yourself and the difference between a big
mighty proud kingdom and a horse.
Speak your mind. Speak your mind!
[Exit Romeo]
9
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
Scene II: The praising of Juliet.
ttle codpiece. Speak your mind!
[Enter Juliet]
[Exit Romeo]
Scene II: Juliet and Ophelia‘s conversation.
Hamlet:
Thou art as sweet as the sum of the
sum of Romeo and his horse and his
black cat! Speak thy mind!
[Exit Juliet]
Scene III: The praising of Ophelia.
[Enter Ophelia]
Hamlet:
Thou art as lovely as the product of
a large rural town and my amazing bottomless embroidered purse. Speak thy
mind! Thou art as loving as the product of the bluest clearest sweetest
sky and the sum of a squirrel and
a white horse. Thou art as beautiful
as the difference between Juliet and
thyself. Speak thy mind!
[Exeunt Ophelia and Hamlet]
Act II: Behind
mlet‘s back.
Ha-
Scene I: Romeo and Juliet‘s conversation.
[Enter Romeo and Juliet]
Romeo:
Speak your mind. You
are as worried as the
sum of yourself and
the difference between
my small smooth hamster and my nose. Speak
your mind!
Juliet:
Speak YOUR mind! You
are as bad as Hamlet!
You are as small as the
difference between the
square of the difference between my little pony and your big
hairy hound and the
cube of your sorry li-
10
[Enter Ophelia]
Juliet:
Thou art as good as the quotient
between Romeo and the sum of a small
furry animal and a leech. Speak your
mind!
Ophelia:
Thou art as disgusting as the quotient between Romeo and twice the difference between a mistletoe and an
oozing infected blister! Speak
your mind!
[Exeunt]
http://shakespearelang.sourceforge.net
https://github.com/justinmeza/lolcode-spec/
blob/master/v1.2/lolcode-spec-v1.2.md
LOLCODE
Tento jazyk je inspirovaný takzvaným lolspeakem,
jazykem používaným v internetovém meme zvaném
lolcat. Tento jazyk úplně nemá definované priority
operátorů a správnou syntaxi, ale zjevně to nikomu
nevadí.
Příklad if-else:
BOTH SAEM ANIMAL AN „CAT“, O RLY?
YA RLY, VISIBLE „J00 HAV A CAT“
NO WAI, VISIBLE „J00 SUX“
OIC
Hello world:
HAI
CAN HAS STDIO?
VISIBLE „HAI WORLD!“
KTHXBYE
Protože se jeho název některým lidem zdál jako urážející, často jej můžete nalézt také jako b****fuck.
Hello world:
++++++++++[>+++++++>++++++++++>+++>+
<<<<-]>++.>+.+++++++..+++.>++.<<++++
+++++++++++.>.+++.------.--------.>+
.>.
WHITESPACE
Tento jazyk by si progtestuneznalí prváci rozhodně
zamilovali. Využívají se v něm totiž pouze bílé znaky
(whitespace), tedy mezery, tabulátory a nové řádky.
Zajímavosti je, že whitespace jako jeden z mála
programovacích jazyků ignoruje neplatné znaky
(tedy cokoliv kromě whitespace). Díky tomu můžete
například v rámci programu v jazyce Java najít funkční program v jazyce whitespace. Yo dawg, I heard you
like codes so I put code in your code so you can segfault while you segfault.
Hello world:
BRAINFUCK
Asi nejznámější z esoterických jazyků, díky kterému
se s takovýmito šílenostmi roztrhl pytel. Byl vytvořen
Urbanem Müllem, jehož cílem bylo vytvořit nejmenší kompilátor pro programovací jazyk (nyní má jeho
verze kompilátoru pod 200 bytů).
Brainfuck pracuje s polem paměťových bloků,
které jsou na začátku inicializovány na nulu, na první prvek ukazuje ukazatel. Dále se v jazyce využívají
pouze tyto příkazy:
Příkaz
Popis
>
Posune ukazatel doprava
<
Posune ukazatel doleva
+
Inkrementuje paměťový blok, na který
ukazuje ukazatel
-
Dekrementuje paměťový blok, na který
ukazuje ukazatel
.
Vypíše znak, odpovídající hodnotě
­uložené v paměťovém bloku
,
Uloží znak do paměťového bloku
[
Přeskočí za odpovídající ] pokud je
hodnota rovna nule
]
Přeskočí na odpovídající [ pokud je
hodnota rozdílná od nuly
Tomáš Nováček
foto: wikipedia.org, pascaleaslk.bligoo.com
11
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
Nejvíce oldschool
programovací jazyky
Tento článek jsem chtěl pojmenovat nějak poeticky – třeba úsvit programovacích jazyků nebo pradědečkové jazyka C. Pak ovšem přišel příkaz
shůry, že se musím držet tématu a obsáhnout tedy v názvu slůvko „nej”.
Už to skoro vypadalo, že se článek bude jmenovat „Nejstarší programovací jazyky” a přečte si ho tak možná jen pár histrorických nadšenců. To
se mi ovšem nezdálo a doufám tedy, že nový název je stejně cool, jako
programovací jazyky, na něž si teď v jeskyních z programovacího pravěku
posvítíme.
PRVNÍ PROGRAM
Možná si pamatujete – ať už z hodin historie, z lístečků na seznamováku nebo z minulého čísla věnovaného ženám v informatice – že první programátorkou
na světě byla Ada Lovelace, dcera lorda Byrona. Za
program který napsala, je považována její sada poznámek k výpočtům na mechanickém stroji zvaném
Analytical Engine. Ten byl navržen (ovšem nikdy nesestrojen) již v roce 1837 Charlesem Babbagem. Také
povědomé jméno, ne?
Ačkoliv ovšem byla k tomuto stroji zpětně sestavena
jakási sada strojových instrukcí, originální poznámky
lady Ady se rozhodně nedaly považovat za nic, co by
bylo nějak blízké zdrojovému kódu. Úsvit programovacích jazyků tedy nastal až o něco později. Mnohem
později.
O STO LET POZDĚJI
Znáte ten kód, který vypadá, jako by byl textem
k písni skupiny Rammstein? Tak s ním nemá první
programovací jazyk vůbec nic společného. Na rozdíl
od něj ovšem skutečně pochází, možná trochu překvapivě, z Německa. Koncept jménem Plankalkül
(čti se správně drsným německým přízvukem) začal
navrhovat Konrad Zuse v roce 1943. Na tomto notačním systému, ze kterého se stal předek toho, čemu
dnes říkáme programovací jazyky, je zajímavé to,
že jeho původní zápis byl dvoudimenzionální a teprve mnohem později byl k němu vymyšlen i zápis
lineární. Jde o formální systém připomínající relační
algebru a jeho pár klíčových slov je celkem nudně
v angličtině.
Zde je malá ukázka lineárního zápisu:
P1 max3 (V0[:8.0],V1[:8.0],V2[:8.0])
→ R0[:8.0]
max(V0[:8.0],V1[:8.0]) → Z1[:8.0]
12
max(Z1[:8.0],V2[:8.0]) → R0[:8.0]
END
P2 max (V0[:8.0],V1[:8.0]) → R0[:8.0]
V0[:8.0] → Z1[:8.0]
(Z1[:8.0] < V1[:8.0]) → V1[:8.0] →
Z1[:8.0]
Z1[:8.0] → R0[:8.0]
END
ROZJEZD PO WWII
A pak už přicházel jeden programovací jazyk za
druhým. Opravdu? Ehm, ne tak docela. Během 40.
let vzniklo jen pár kódů, které se dají nazvat vyššími
programovacími jazyky. Všechny navíc vznikly dost
podobným způsobem. Když totiž měli Američané
po druhé světové válce chvilku času na oddech, tak
zjistili, že je úplně nebaví lézt po celé místnosti a zapojovat podle předem vymyšlených schémat dráty
u ENIACu a dalších, v té době poněkud rozložitějších,
počítačích. Vymysleli tedy primitivní systém, jak takové počítače donutit číst programy z read-only paměti.
Při té příležitosti vzniklo hned několik kódovacích systémů, neboli v podstatě programovacích
jazyků, které definovaly, jak takový program zapsat.
Nejznámější z nich je pravděpodobně Short code,
který vznikl v roce 1949. Fungoval pěkně, jen s jedním drobným nedostatkem - interpretované programy pod ním běhaly asi 50x pomaleji, než kdyby je
tam nacvakali ručně. Ale za pohodlí se holt platí - to
vám potvrdí každý Java programátor.
TY ZATRACENÉ ZÁVORKY
Další zastávku uděláme u programovacího jazyku
(dokonce u rodiny programovacích jazyků, abych
byl přesný), který se opět částečně používá i dodnes,
například v softwarovém balíku AutoCAD nebo ve
zvukovém editoru Audacity. Je o pouhý rok mladší,
než FORTRAN a je jím… Lisp!
Jeho zkratka neznamená „Lots of Irritating Superfluous Parentheses”, jak se občas s nadsázkou
uvádí, ale obyčejné „LISt Processor”. Každopádně oba
názvy jsou poměrně výstižné: základními kameny
Lispu jsou spojové seznamy, tedy lists, a tyto spojové
seznamy jsou vždy ohraničenými kulatými závorkami, kterých tím pádem v programu nebývá zrovna
málo.
Jednoduchý výpočet faktoriálu pak může vypadat
například takto:
(defun fact (n)
(if (zerop n)
1
(* n (fact (- n 1)))))
A TEĎ UŽ DOOPRAVDY!
Když teď přeskočíme pár jazyků, které stejně nikdo
nezná, tak můžeme říct, že se konečně dostáváme
k jazykům, které jsou celkem známé. Za prvního
zástupce z nich se dá považovat FORTRAN, což je
zkratka je složena ze slov „Formula Translation”. To
naznačuje jednak to, že přecházíme od matematických vzorců ke skutečným programovacím jazykům,
a jednak to, že i všechny programy v tomto jazyce na
vás budou křičet s takto „zaseknutým Caps Lockem”.
FORTRAN je velmi zajímavý jazyk. Přestože ho
firma IBM vyvinula již v roce 1955, dokázal se po
desetiletí udržet mezi nejpopulárnějšími programovacími jazyky. V jisté míře se používá i doteď, především u benchmarků nejvýkonnějších superpočítačů.
To je ostatně blízko účelu, ke kterému byl stvořen
a ke kterému byl i celé půl století využíván: pro svět
intenzivních výpočtů, simulací a fyzikálních modelů.
Pochopitelně, že od původního konceptu a první implementace až k současné podobě prošel značným
vývojem, během kterého získal řadu nových vlastností. A tento vývoj stále není u konce – verze označovaná jako Fortran 2015 se právě připravuje.
ALGORITMY, ALGORITMY,
­ALGORITMY…
Zatímco vycházela druhá verze FORTRANu a Lisp byl
zatím pouze konceptem na papíře, zrodil se ALGOL
58 (z čehož lze i bez pokročilého logického uvažování
odvodit rok vydání). Z předchůdců dnešních programovacích jazyků byly jazyky z rodiny ALGOL zásadní,
protože je na nich postaveno mnoho dalších jazyků
včetně Pascalu – a to už přímo implikuje, že z něj těží
i C. Jako první přinesl do programování bloky kódu,
ohraničené klíčovými slovy begin a end, a s tím spojené lokální proměnné. Syntaxe tohoto jazyka byla
13
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
navíc definována matematicky přesně v tzv. Backus-Naurově formě, což po něm převzaly téměř všechny
následující programovací jazyky.
ČO BOLO, TO BOLO
Jestli se dá některý z programovacích jazyků označit
slovy „die hard”, není to ani C, ani PHP, ale COBOL. Od
počátku byl navržený pro oblast businessu a udržel
se v ní dodnes.
COBOL byl vytvořen v roce 1959 za situace, kdy
jediným mainstreamovým jazykem byl FORTRAN,
který se ovšem pro obchodní účely nehodil. Hlavním
požadavkem při jeho vytváření byla verbozita a čitelnost, jehož důsledkem je to, že COBOL používá cca
300 rezervovaných slov. Jeho programy pak připomínají text v anglickém jazyce (tedy opět až na verzálky,
v té době snad všudypřítomné):
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
DISPLAY „Hello, world!“.
STOP RUN.
Vzhledem k malé podpoře strukturovanosti programů je každý trochu větší projekt v COBOLu tvořený
nepřehledným spaghetti kódem. Banky a další podobné instituce v současnosti naříkají zoufalstvím,
protože zkušení COBOL programátoři již pomalu odcházejí do důchodu a jejich systémy, jejichž upgrade
by byl velmi finančně nákladný, nemá kdo udržovat.
UNIVERZÁLNÍ SYMBOLICKÉ KÓDOVÉ
INSTRUKCE PRO ZAČÁTEČNÍKY
Na závěr se z vyšších sfér superpočítačů a businessu
přesuneme do škol. Programovací jazyk BASIC, neboli „Beginner‘s All-purpose Symbolic Instruction Code”,
byl vytvořen v roce 1964 speciálně pro výukové účely, což se mu díky relativní srozumitelnosti, kompilátoru poskytovanému zdarma a dobré podpoře
podařilo. Možná i vaši tatínkové nebo maminky
v něm na sálových počítačích programovali.
Stejně jako předchozí zástupci, i BASIC
žije v různých transformacích dodnes. Nejrozšířenější je pravděpodobně Visual Basic od
Microsoftu, známý především z maker VBA
v aplikacích MS Office. Pravdou ovšem je, že
s původním BASICem už toho má na první pohled společného pramálo.
ZÁVĚREM
V tomto místě časové osy, orientačně 8 let před
vznikem jazyka C, náš průlet kmety programovacích jazyků zakončíme. Je vidět, že přes
překotný vývoj posledních desetiletí jsou stále
oblasti, kde čas běží trochu jinak a tyto dávno
překonané programovací jazyky jsou stále používány, ačkoliv mnohdy ne zcela dobrovolně.
Ale na druhou stranu, až budete zase jednou
programovat pro assembler, vzpomeňte si
s vděkem na lidi, kteří vytvořili to, čemu dnes
říkáme vyšší programovací jazyky.
Zdeněk Kasner
foto: instacod.es, lisperati.com,
wikipedia.org, jakd.hu
14
Nejoblíbenější
­programovací jazyky
Nejoblíbenější, co to vlastně u programovacích jazyků znamená? Asi vás
napadne, že to bude prostě ten nejpoužívanější. Co ale tedy doopravdy
takové programátorské srdce chce a jak moc je to v rozporu s tím, o jaké
programátory si loni psali firmy k Ježíškovi? I na to se v tomto článku podíváme a neopomeneme nahlédnout ani do srdcí FIŤáckých.
VE KTERÉM JAZYCE MLUVÍ AJŤÁCI
NEJVÍCE?
Jelikož oblibu jsme si v prvé řadě spojili s mírou používaní, mrkneme se i na tuhle kategorii jako první.
V jakém jazyku se tedy dnes napíše nejvíce kódů?
Server IEEE Spectrum (IEEE je zkratkou pro Institute
of Electrical and Electronics Engineers, který je neziskovou organizací sdružující přes 350 000 elektroinže-
nýrů a informatiků z celého světa za účelem podpory
rozvoje těchto oborů) vydal seznam nejpoužívanějších programovacích jazyků. Žebříček samozřejmě
jeho autoři nesestavovali jen tak. Použili 12 různých
metrik a sledovali kódy z 10 různých zdrojů tak, aby
výsledek byl co nejvíce relevantní. IEEE Xplore digital
library, CareerBuilder nebo na FITu oblíbený GitHub,
to je pár příkladů míst, kde sledovali popularitu jednotlivých jazyků.
15
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
A jaký je tedy výsledek? Asi nikoho z vás nepřekvapí,
že nejvíce používaným jazykem ve světě byla v roce
2015 Java. V závěsu za ní se pak drží C, C++, Python
a na 5. místě C#. Všech 5 zmiňovaných jazyků si svoje
místo pevně drží již z předchozího roku 2014, kdy byl
tento žebříček za stejných podmínek také vytvořen.
Celý žebříček top 10 je pak vidět na obrázku.
V levém sloupci je rok 2015, v pravém pak výsledky pro rok 2014. Hodnoty ukazují celkovou
oblíbenost, tedy při započítání všech kritérií. Celý
žebříček, který obsahuje 48 programovacích jazyků,
a možnost zobrazit si výsledky podle různých metrik,
pak můžete najít na webu IEEE Spectrum v článku
„Interactive: The 2015 Top Ten Programming Languages”. Zjistíte tak třeba i to, že pomyslným skokanem
roku je nový jablečný jazyk Swift, který se stal v roce
2015 velkým trendem a v celkovém žebříčku se vyšplhal na 16. místo. Pokud vás tedy téma zaujalo,
určitě doporučuji podívat se na žebříček důkladněji
a zobrazit si výsledky dle toho, co vás zajímá.
Jo a mimochodem… zábavné bude jistě dohledat si zde i jazyky z ostatních článků tématu tohoto
čísla. V žebříčku samozřejmě nenajdete žádný ze „šílených” programovacích jazyků. Tož, je to sice s podivem, ale opravdu se OSTRAJava celosvětově neujala.
O slovo se však z článku o nejstarších jazycích hlásí
dědeček Cobol. A ač na chvostu seznamu, dává vědět, že opravdu ještě platí „Cobol is not dead”.
MILÝ JEŽÍŠKU,
K ­VÁNOCŮM BYCHOM
CHTĚLI, ABY TEN NOVEJ AJŤÁK UMĚL…
Končíte-li v roce 2016 na FITu
(myslím samozřejmě s titulem), nebo se poohlížíte po
nějaké praxi, určitě je dobré
vědět, jaké pozice se firmy
v současné době snaží nejvíce
obsadit. Jaký další jazyk by se
ještě vyjímal ve vašem životopisu a bylo zajímavé se jej
naučit, ať už samostatně, nebo
v některém z volitelných předmětů FIT? Pokud si v již zmiňovaném žebříčku IEEE Spectrum
zvolíte pohled Jobs (jazyky,
které jsou poptávány ze strany zaměstnavatelů), velké
změny se na prvních místech
od celkového žebříčku oblíbenosti nedočkáte. Nejvíce se
programuje samozřejmě v tom
jazyku, ve kterém je nejvíce
16
práce. V první pětce se nám tedy jen prohodí C++ za
Python:
1. Java
2. C
3. Python
4. C++
5. C#
6. JavaScript
7. PHP
8. SQL
9. Rubby
10. Shell
I tady se dere na povrch Swift na 14. místě, ač jeho
kolega Objective-C je stále před ním na místě 12.
Jelikož ale IEEE vychází i u této oblíbenosti především ze zdrojů obsahující napsané kódy a žebříček
je přeci jen již pár měsíců starý, zajímalo mne, co říkají o oblíbenosti u zaměstnavatelů i jiné žebříčky a zda
se významně liší. Aktuálnější a firmám více blízký pohled tak dává například statistika z ledna letošního
roku, která bere jako podklad aktuální nabídky práce
ze serveru Indeed.com. Ten je americkým celosvětovým vyhledávačem pracovních pozic. Zde aktuálně boduje SQL, jelikož databáze jsou dnes potřeba
­prostě všude, a tak se tyhle při písmenka často objevují i v požadavcích pracovních pozit v IT sféře. Žebříček TOP 10 ukazuje následující graf:
Abychom se ale nedrželi jen světových žebříčků,
zamíříme i do českých luhů a hájů. Vím, kde kdo by
chtěl pracovat v Silicon Valley, ale i tak vás určitě zajímá, jak je na tom IT v České republice nebo přímo
v Praze. Server Jobs.cz sestavil dle údajů z roku 2015
žebříček „6 nejžádanějších profesí pro rok 2016“. IT
je zde na 3. místě (1. jsou finance a bankovnictví, 2.
se umístila personalistika). V roce 2015 firmy hledaly
přes Jobs.cz například zhruba 5 500 programátorů, 3
000 IT analytiků a 1 700 Software architektů. A jaká
čísla nám aktuálně vypadnou, když budeme hledat pozice dle jednotlivých jazyků? Zkusila jsem to,
a přesto že C, C++ a C# se špatně vyhledává samostatně, ostatní čísla ukazují, že pozice jazyků v žebříčku amerického Indeed.com platí i pro ČR a dokonce
i pro Prahu, jelikož v hlavním městě je samozřejmě
nabídek nejvíce.
se o nějaké vyložené lásce k céčku stejně asi úplně
mluvit nedá. Přesto však věřím, že pro vás mohou být
tyto výsledky zajímavé. A jaký je tedy FIT TOP 5 oblíbených programovacích jazyků?
•
•
•
•
•
C++
Java
C#
Python
C 25.3% (39 hlasujících)
16.2% (25 hlasujících)
12.3% (19 hlasujících)
11.7% (18 hlasujících)
8.4% (13 hlasujících)
Celkový přehled, tedy výsledek ankety včetně jazyků,
které jsme do ní zapojili, ale které neobrželi ani jeden
hlas, je pak vidět na následujícím grafu.
Výsledky pro celou ČR:
• C, C++ nebo C#: cca 2790
• SQL: 1095
• Java: 523
• Javascript: 328
• Python: 175
• PHP: 182
• iOS: 74p
• Ruby: 27
Výsledky pro Prahu:
• C, C++ nebo C#: cca 1170
• SQL: 753
• Java: 338
• Javascript: 202
• Python: 112
• PHP: 96
• iOS: 49
• Ruby: 18
EXKURZE DO FIŤÁCKÝCH SRDCÍ
Určitě nejenom mě zajímá, pro jaký jazyk bijí srdce
ajťáků a ajťaček z FITu. Proto jsem skrz infomail požádala studenty o vyplnění ankety s jednou jednoduchou otázkou „Jaký je váš nejoblíbenější programovací jazyk?”. Celkový počet hlasujících byl 154, takže
prosím berte výsledek s rezervou.
Že zvítězilo C++ může být možná pro někoho
trochu překvapením. Na druhou stranu však není
divu, že studenti mají rádi to, co už znají a umí. C
a C++ se na FITu učí jako hlavní jazyky hned v prváku, a tak je výsledek vlastně poměrně logický. Pro
případného zájemce o studium je navíc pozitivní
fakt, že ač studentům legendární testovací systém
Progtest k srdci většinou nepřiroste, přesto se jazyk
naučí a oblíbí si jej. Procentuálně však C++ zabralo
jen zhruba třetinu a C méně než desetinu hlasů, a tak
V anketě bylo možné samozřejmě hlasovat i pro jiný
jazyk, než byl na seznamu. Možnost „Other“ využilo
9 studentů a skrýval tyto odpovědi: Rust, TypeScript,
ChucK, Apex, VHDL, Bash, Kotlin, Clojure a Petr. Pokud některé z nich neznáte, zeptej se strýčka Googla
a rozšiřte si obzory, jako jsem to ostatně udělala i já.
Zaujal mne třeba ChucK, programovací jazyk pro
počítačovou hudbu. A Petr? Že by nový Karel? Pravděpodobně měl autor na mysli tuzemský grafický
programovací nástroj, který cílí na úplné programovací začátečníky. Doufám, že náš FIŤák v něm už dnes
neprogramuje, ale dá se pochopit, že objevné programátorské začátky mohou být srdeční záležitostí
na dlouhá léta.
Veronika Dvořáková
foto: codingdojo.com, spectrum.ieee.org
17
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
Nejnovější
­programovací jazyky
Jestli jste si někdy otráveně řekli, že se učíte jen ty „děsně starý jazyky,
které se ještě psaly na stěny jeskyní“ a jak to, že někdo nevymyslel něco
jednoduchého a nového, pak vězte, že nové jazyky vznikají neustále, a pokud opravdu chcete na vlastní kůži pocítit rozdíly mezi jazykem-dědečkem a jazykem-batoletem, pak můžete zkusit některé z nejnovějších programovacích jazyků.
A jaké časové rozpětí vlastně obsahuje slovo „nejnovější“? Je to rok, pět, deset? Když už jsme nový jazyk
přirovnali k batoleti, hodilo by se podívat na poslední
tři roky. Ale potrénujte si čtení i jiných textů než manuálů nebo vlastních i cizích kódů. Pro tento článek si
pojem „nejnovější“ definujme jako „objevivší se v posledních pěti letech“, přičemž si povšimněte, že neobsahuje slovo „všechny“, protože nejenom že by se
to nemuselo vejít do našeho časopisu, ale také proto,
že ne všechny vzniklé jazyky se dostanou na světlo
světa. Proto si dovolíme vám představit nedokonalý
výčet programovacích jazyků z posledních pěti let.
SWIFT, RESP. SWIFT 2
Swift se stal jedním z největších překvapení WWDC
roku 2014, kde se Apple zaměřil hlavně na vývojáře.
Už po pár měsících se tento C-like jazyk pro vývoj iOS
aplikací, potenciální nástupce Objective-C, stal velice
populárním.
Na rozdíl od dynamicky typovaného jazyka Objective-C podporuje Swift silné datové typy – je tedy
staticky typovaným jazykem a lze tedy lépe optimalizovat kód už během kompilace. Dále díky tomu
není nutné psát datové typy, podporuje totiž „type
inference” (kompilátor je schopen odvodit datový
2014 (Swift) / 2015 (Swift 2)
http://swift.org
18
typ proměnné na základě uložených dat). Jedná se
o jednoduchý a rychlý jazyk, který by měl omezit
programátorské chyby (např. se nevyžadují středníky
za příkazy), hlavně by ale měl jít naproti začínajícím
vývojářům, pro které byl Objective-C náročný jazyk.
Může fungovat v jedné aplikaci s Objective-C a měl
by být blízký i vývojářům v Ruby.
V roce 2015 Apple upgradoval Swift na Swift
2 a nechal ho jako open-source. Díky tomu jazyk proniká do všech možných směrů. Momentálně může
být využit nejen pro vývoj aplikací pro Apple, ale
i pro Linux.
TYPESCRIPT
HACK
Tento rychlý programovací jazyk má na svědomí
Facebook. Ten byl původně vytvořen v PHP, ale
s rostoucím množstvím lidí, kteří se podílí na vývoji, přestalo PHP vyhovovat (hlavně nemožnost zjistit
chyby v kódu dřív, než byl spuštěn na webu). Proto
vznikl Hack s volitelným statickým typováním a typovou kontrolou, která běží na pozadí a nezatěžuje
programátora. Jinak se ale vlastně stále jedná o PHP,
akorát s více funkcemi. Většina PHP souborů je tak už
platnými soubory jazyka Hack. Mělo by jít o nejlepší
způsob programování webových aplikací. A jelikož
jej Facebook zveřejnil jako open-source, dokumentaci naleznete na oficiálních stránkách.
Open Source programovací jazyk od... Jakou firmu
jsme tu ještě neměli? Ano, Microsoft! Jde o nadstavbu JavaScriptu doplněnou o některé atributy
z objektově orientovaného programování. Stavění
JavaScriptové aplikace větších rozměrů je náročné, TypeScript je tu proto, aby tuto práci usnadnil.
Všechny JavaScriptové kódy jsou automaticky kódy
i TypeScriptovými.
2012
http://typescriptlang.org
ELIXIR
2014
http://hacklang.org
Pro pochopení Elixiru je lepší znát Erlang (z roku
1987). Elixir a Erlang jsou velice blízké jazyky, co se
týče funkcionalit, ale syntakticky se Elixir inspiroval
v Ruby. Kód napsaný v Elixiru může být snadno zavolán Erlangem a naopak.
JULIA
Vyšší dynamický programovací jazyk, jehož vývoj
začal roku 2009. Je určen hlavně pro vědecké výpočty a momentálně je taktéž open-source. Jádro je
implementováno v C a C++. Vykazuje mimořádnou
rychlost, srovnatelnou s programem psaným přímo
v C. Jazyk je možno modifikovat za běhu, což umožňuje snadné metaprogramování.
2012
http://julialang.org
19
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
K čemu Elixir, dynamický funkcionální jazyk, využijete? Ke všemu, k čemu Erlang. K webovému vývoji
(momentálně nejoblíbenější framework pro Elixir je
Phoenix) a k vývoji škálovatelných aplikací. Stejně
jako Erlang je vhodný k provozu nejenom herních
serverů (např. Call of Duty nebo Game of War běží
na infrastruktuře ovládané Erlangem). A navíc přináší
mocné prvky pro metaprogramming.
2012
http://elixir-lang.org
kódu), má být alternativou k Javě, která řeší její nedostatky, jež v ní zůstávají hlavně kvůli zpětné kompatibilitě. Stále je však plně kompatibilní s Javou. Kotlin
je uvolněn jako open-source.
ELM
Funkcionální jazyk, který se kompiluje do HTML, CSS
a JavaScriptu. Obsahuje debugger, který se umí „vrátit v čase“ a přepsat již vykonaný kód, aby zjistil, jaký
by byl výsledek, kdyby nový kód proběhl za původních podmínek. Využití najde ve vývoji web-browser
GUI.
2012
http://elm-lang.org
2011
http://kotlinlang.com
A tady náš výčet končí. Nicméně na průzkum nových
jazyků se můžete vydat sami – např. Dart, Ceylon,
Rust, Chapel nebo Idris nejsou sice nejnovější, všem
jim je přes pět let, ale i tak si jistě zaslouží pozornost.
Přeci jen se nové jazyky snaží o větší rychlost, bezpečnost a přehlednost – a daří se jim. Takže pokud
vám „jazyky z pravěkých jeskyní” nevyhovují, už vám
nic nebrání rozjet své projekty v některém z nových
jazyků. Anebo si vymyslet vlastní, abychom za pár let
měli zase o čem psát.
Petra Svíčková
KOTLIN
Vyvinuto společností JetBrains, výrobcem nástrojů
pro vývoj v Javě, Ruby, PHP, C# a dalších. Kotlin, statický typovací jazyk pro JVM (Java Virtual Machine)
a Android (a může být zkompilován i do JavaScript
20
Nejlehčí a nejtěžší
programovací jazyky
Pokud se člověk začne poprvé zajímat o programování, logicky první
otázka směřuje na obtížnost jednotlivých jazyků. Vzhledem k tomu, že
každému programátorovi přijde jeho oblíbený jazyk jako zaručeně nejjednodušší, většinou to končí tak, že je začátečník zmaten a neví, s čím
začít. A proto jsme připravili žebříček vybraných programovacích jazyků
seřazených od nejjednodušších po obtížnější.
PYTHON
S Pythonem se ve svém životě musel setkat každý,
kdo to v životě s programováním myslel aspoň trochu
vážně. Tento jazyk bývá označován jako jeden z nejjednodušších jazyků, které pomáhají z­ ačátečníkům
proniknout do tajů programování a algoritmizace.
Kromě toho otevírá dveře do světa internetu věcí,
protože je na něm založen například Raspberry Pi.
Světlo světa spatřil v roce 1991 a používá se dodnes
především pro vývoj webových stránek, videoher
nebo desktopového uživatelského rozhraní.
I když se jedná o nejjednodušší jazyk, nemyslete
si, že není slušně placen. Nejlepší Python programátory zaměstnávají korporace jako Intel, Amazon, či
Dell a jejich roční průměrná mzda se v USA pohybuje
okolo neuvěřitelných 107 tisíc amerických dolarů,
což je v přepočtu okolo 2 630 000 Kč.
Python byl použit pro několik online služeb,
které dennodenně používáme. Příkladem může být
Instagram, YouTube, nebo hudební služba Spotify.
Zajímavost nakonec: věděli jste, že Python získal své
jméno po slavném britském televizním seriálu „Monty Python’s Flying Circus“?
RUBY
Stejně jako s Pythonem se s Ruby setkala většina
z nás na střední škole. Je to spolu s ním další z jazyků, které jsou jednoduché k naučení. Kromě toho
má mnoho knihoven se zajímavými nástroji. Samotné Ruby je směs programovacích jazyků jako LISP,
SmallTalk, Ada, Perl a Eiffel. Začátečníci navíc nemusí
s ničím tápat, protože Ruby má obrovskou a stále
rostoucí komunitu – každé hlavní město na světě má
svoji komunitu a pořádá pravidelná setkání. Ale protože vše není růžové, i Ruby má své nevýhody. Mezi
ně patří výkon, nebo nedostatečná dokumentace.
Většinou se můžeme setkat s pojmem „Ruby on Rails“, což není nic jiného, než framework pro webové
aplikace napsané v Ruby.
JAVA
O trochu více náročnější je Java, která je o čtyři roky
mladší jak Python. Vznikla totiž v roce 1995 a rozšířená je v dnešní době díky operačním systémům Android a iOS. Pokud plánujete vytvořit smysluplnější
aplikaci pro Android, připravte se, že se Javě nevyhnete. Kromě mobilních operačních systémů se Java
stejně jako Python používá pro videohry nebo desktopové uživatelské rozhraní.
Java se potýká s několika problémy, které nováčkům v programování mohou házet klacky pod nohy.
Je jím například nepříliš vysoká rychlost. Tento jev
lze vypozorovat při spouštění kódu Android aplikace
v Java simulátoru na vašem počítači.
Java je stejně jako Python používána ve službách, které většina z nás každý den používá, ať už je
to samotný Android, nebo jen e-mailová služba od
Google. A kdo by zapomněl na klasické Java hry na
„hloupých“ mobilních telefonech, na kterých většina
z nás utrácela stovky korun…
21
TÉMA: NEJ PROGRAMOVACÍCH JAZYKŮ
C
Tento jazyk snad nemá cenu hluboce představovat –
kdo by si nepamatoval „céčko“ z PA1? Nicméně na to,
že se jedná o skoro stařečka, který je tu s námi přibližně 44 let, drží se stále v kondici. Bývá označován
jako jazyk střední obtížnosti, nicméně člověk, který
má zkušenosti s jiným programovacím jazykem, by
neměl mít problém. Obecně také platí, že jakmile
umíte jazyk C, umíte prakticky (skoro) jakýkoliv jazyk.
Pokud jste nadšenci do operačního systému postaveného na Linuxu, vězte, že na jazyce C je Linux
postaven. Kromě Linuxu se s ním můžeme potkat
i v čtečkách Amazon Kindle nebo v OpenGL. Obecně se pak C také používá díky své multiplatformnosti
pro přenositelné aplikace. Původně však bylo určeno
pro programování systémů a softwaru pro něj.
C#
Pokud Linux není váš šálek kávy a v oblibě máte spíše
vývoj pro Windows, nemohli jste se vyhnout jazyku
C#. Ten je relativně nový, byl vytvořen pod taktovkou
Microsoftu na počátku nového milénia, tedy v roce
2000. Je plně integrován s knihovnou .NET, čímž
umožňuje skvělou funkčnost a podporu. Je založen
na jazyce C, pokud tedy C umíte, nebude problém se
C# naučit. Nicméně úplní nováčci v programování by
se měli tomuto jazyku vyhnout – nepatří mezi nejjednodušší a nejsrozumitelnější na pochopení algoritmizace a programování celkově. O čem také svědčí
fakt, že se posouváme v našem žebříčku pomalu na
konec.
Dnes můžeme C# potkat nejen v desktopových
programech pro Windows, ale také v Modern UI aplikacích pro systémy Windows 8 a vyšší. Založeny na
něm bývají také aplikace pro mobilní systémy Windows Phone a Windows 10 Mobile. Kromě Windows
22
je C# použit v oblíbené službě StackOverflow, nebo
v poznámkovači Evernote. Používá se také díky svému zabezpečení v business sféře.
Zajímavost nakonec: název C# byl až další návrh na název. Původně se tento jazyk měl jmenovat
COOL (C-like Object Oriented Language), nicméně
z důvodu ochranné známky se muselo přistoupit na
jiný název. Důvodem, proč byl nakonec zvolen název
C# je prostý. Autoři tohoto názvu se se inspirovali
u notového zápisu, kde znak „#“ u noty naznačuje, že
by měla být o půltón vyšší. Podobně přemýšliví byli
i autoři názvu C++, kde „++“ znamená zvýšení proměnné o 1. A když už je řeč o C++…
C++
Dostali jsme se pomalu, ale jistě, na konec žebříčku.
Znamená to, že jsme u toho nejobtížnějšího jazyka – minimálně z tohoto seznamu. C++ patří mezi
rozšíření „původního“ C. Podporuje několik paradigmat, například objektově orientované programování nebo generické programování. Nejedná se tedy
o čistě objektový jazyk. Sice jsme několikrát označili
C++ za obtížnější jazyk, nicméně i přes svoji složitost
dokáže jednoduše ukázat, jak funguje většina ostatních jazyků, například díky práci s pamětí. Pokud ho
budete ovládat alespoň trochu, dokáže vám odhalit
a vyjasnit nástrahy v dalších jazycích.
Setkat se s ním můžeme nejen ve videohrách
či vyhledávačích, ale také v operačních systémech.
C++ je také přenositelné mezi různými zařízeními,
a to zejména mobilních telefonů, je tedy jedno, zda
používáte mobilní Windows, BlackBerry, iOS, nebo
Android. Jazyk byl také použit při tvorbě e-mailové
služby Outlook.com, nebo vyhledávače Google.
Milan Kurka
foto: munso.no
TECHNOLOGIE
Gigapanoramatické
fotografie v SAGElabu
V letním příspěvku o technologiích jsme se dočetli o SAGE laboratoři
a možnostech, které přináší studentům a výzkumným pracovníkům fakulty. Dnes se podrobněji podíváme na jednu z technologií, se kterými se
v laboratoři pracuje. Pro tento příspěvek jsme vybrali tvorbu a zpracování
fotografií v extrémě velkém rozlišení. Řádově se jedná o gigapixelová rozlišení. Pro srovnání, běžné zrcadlovky mají rozlišení mezi 20 a 50 megapixely. Dnes si tedy budeme povídat o fotografiích s řádově vyšším rozlišením. Ostatně to je, s ohledem na zaměření laboratoře na multimédia ve
vysokém rozlišení, pochopitelné.
K ČEMU JE TO DOBRÉ?
To je otázka na svém místě, ale začněme od začátku.
Jak jsem naznačil, tak si dnes povídáme o ­fotografiích
s rozlišením gigapixelu a více. Ze srovnání je patrné,
že je nevyfotíme jen tak na jedno „cvaknutí”, takže
s tím bude docela dost práce, ale o tom později.
V běžné fotografii řešíme rozlišení s ohledem
na možnost velkoformátového tisku, jako obrazů či
plakátů, nebo z důvodu pozdější postprodukce, kdy
nám rozlišení dává manipulační prostor pro hrátky ve
Photoshopu. V tomto případě, ale už není ani jedno
tím skutečným důvodem. Jednak proto, že úpravy
takovýchto souborů jsou spíš potíž, než že by nám
nějak pomohly, to ostatně pochopíme, až se podíváme na zpracování těchto fotek. Ani možnost tisknout
neomezený rozměr nám není příliš užitečná především proto, že není smysluplně využitelná.
Hlavním důvodem pořizování gigapixelových
fotografií jsou virtuální prohlídky. Pro ty bychom sice
extrémní rozlišení nutně nepotřebovali, ale posuďte sami v ukázce, jestli není možnost prohlídnout si
­každý detail scény, jako bychom byli na místě s dalekohledem, lákavá.
Osobně nesouhlasím s názorem, že by se
virtuálními prohlídkami dala nahradit osobní ná­
vštěva místa, ale na některá místa se prostě ne každý
může dostat ať už z jakéhokoliv důvodu. Z pohledu
cestovatele fotografa je to pak dobrá možnost, jak se
na místo podívat před samotnou cestou a naplánovat si focení.
Samostatnou kapitolou jsou pak vědecká využití pro dokumentaci určitých oblastí a jejich
stavu pro srovnání v budoucnosti či jen experimentální tvorba s cílem překonávat limity SW určeného ke skládání a zobrazování tak, aby bylo vytvořeno rekordní rozlišení. Na největší mně známý
gigapan v době psaní článku se můžete podívat zde:
http://www.in2white.com.
23
TECHNOLOGIE
GIGAPAN TECHNOLOGIE HW
Technologie využívané k tvorbě tohoto typu fotografií se liší. Existuje mnoho různých pomůcek od těch
manuálních, až po velmi pokročilé automatizované
systémy. Vždy jde v zásadě o zařízení, které autorovi umožní přesný pohyb s aparátem tak, aby měl
úplnou a jasně definovanou kontrolu nad každým
dílčím snímkem. Obecně se těmto zařízením říká
panoramatické hlavy. Proč panoramatické je zjevné
a hlavy, protože již u obyčejných stativových hlav,
ze kterých vycházejí, je podobnost jejich pohybu
s pohybem lidské hlavy nasnadě. Nejjednodušší jsou
mechanické typy zajišťující přesné otáčení okolo vertikální osy fotoaparátu. S jejich jednoduchou formou
se setkáte v téměř každém stativu. Nás ale s ohledem
na gigapanoramata budou zajímat varianty, které
umožňují pohyb v obou osách. Pro většinu využití
opět postačují manuální verze, které umožní nastavit
vhodný bod otáčení a pak jen postupně fotíte snímek za snímkem. Pokud ovšem přistoupíme k opravdu velkým fotografiím, zjistíte, že to manuálně fotit
nelze. Taková gigapanoramata se skládají ze stovek
až tisíců dílčích snímků, a to by nebylo nic pohodlného na ruční práci a navíc by to trvalo dlouho. Z toho
důvodu přišly chytré technické hlavy s nápadem celý
proces zjednodušit automatizací. Dnes se tak využívají motorizované a počítačem řízené panoramatické
hlavy. Zařízení pak typicky funguje tak, že nastavíte
vhodný bod otáčení, nastavíte parametry objektivu
a nakonec hlavě určíte rohové snímky budoucího
24
výsledného snímku. Hlava pak spočítá optimální rozložení fotek s ohledem na nutné překryvy a následně
odfotí celou sérii fotek pomocí dálkové spouště fotoaparátu.
GIGAPAN TECHNOLOGIE SW
Po softwarové stránce je skládání panoramat jakéhokoliv tipu zajímavou záležitostí. Nebudu zde ovšem
zabíhat do algoritmických či matematický detailů
neb na to jsou tu povolanější. Podíváme se společně
jen na různé způsoby skládání fotek z pohledu uživatele.
Možnost skládat panoramata ručně rovnou přeskočíme, pojďme se tedy podívat na metody v praxi
používané. Pokud se zajímáme o fotografii, tak nás
určitě napadne využít nekonečných možností Photoshopu, vždyť ten přece umí zázraky. No, se zázraky je
to pravda jen částečně, ale každopádně s panoramatickými fotkami nám pomoci dokáže. Pokud skládáme typická panoramata pro účely širšího úhlu záběru, je vše v nejlepším pořádku. Počítač se vám sice při
skládání docela dost zapotí, ale vše dobře dopadne.
Pokud začneme být náročnější na počet zdrojových
souborů, a to z jakéhokoliv důvodu (může se jednat
o extrémní rozlišení, techniku HDR či focus stacking)
narazíme na omezení. Jak brzo na ně narazíme, bude
záležet na našem HW, nicméně dříve či později Photoshop spotřebuje všechnu dostupnou paměť a následně svými dočasnými soubory zaplní i místo na
discích. Další komplikací, na kterou narazíme, je ne-
valná schopnost Photoshopu proces skládání fotek
paralelizovat. Photoshop tedy není pro naše potřeby
extrémních panoramat vhodnou volbou. V laboratoři
používáme specializovaný SW Kolor Autopano Giga,
jehož výhodou je jednak relativně slušná paralelizace
a jednak umí lépe zacházet s pamětí a nezabere tak
veškeré dostupné místo. Ani tak ovšem nepočítejme
se skládáním na notebooku či slabším PC, to bychom
se výsledku dočkali až napřesrok.
Když už máme SW, ve kterém fotky složíme,
tak máme vyhráno, nebo snad ne? Nebudu zdržovat a prozradím, že ne. Potíž je právě v extrémním
rozlišení, o které nám šlo a v extrémním datovém
objemu. Na jpeg můžeme zapomenout, jelikož ten
má omezení na 65 tis. px šířky, což je sice hodně,
ale pro naše potřeby stále ne dost, u formátu tiff
narazíme pro změnu na maximální objem dat 4 GB.
Použitelným formátem se nakonec ukázal PSB tedy
Photoshop big, který umožňuje až 300 tis. px a není
limitován velikostí souboru. Zároveň je tento formát
podporován skládacím programem.
Máme tedy složenou fotku a máme jí jak uložit, nicméně s otevíráním to nebude žádná sláva,
když náš PSB soubor má nějakých 20 GB. Možností
máme vícero. První je nahrát soubor na web http://­
gigapan.com, který slouží ke zobrazování a sdílení
těchto extrémních obrázků (viz grafit at gigapan.
com) nebo se můžete stavit u nás v SAGElabu, kde je
k dispozici ­specializovaná aplikace pro zobrazování
těchto souborů.
JAK NA TVORBU GIGAPANORAMAT?
Jak vidno tak takové skládání gigapixelových fotografií není nic primitivního, ale na druhou stranu
pokud nebudeme chtít lámat rekordy, a tím pádem
zápasit s omezením dostupných obrazových formátů, není to ani nijak extrémně náročné. Je jen potřeba
dát si pozor na pár věcí.
Předně, jako u každé fotografie je potřeba mít
dobře pořízený zdrojový materiál. V tomto případě
hodně záleží na proměnlivosti počasí v době snímání. Samotné snímání totiž i v případě automatizace
bude trvat minimálně desítky minut, a proto bude
vítr naším nepřítelem. Rychle letící mraky nebo kývající se stromy rozhodně nejsou něco, co by skládací
SW uměl dobře složit. Prostě pokud se mu něco v obraze hýbe, tak nedokáže přijít na to, jakou část odkud
by měl použít. Proto je docela dobré, pokud se jedná
o menší panorama a není možné se větru vyhnout,
fotit po vodorovných řadách a postupovat ve směru
pohybu mraků, sníží se tak rozdíly mezi jednotlivými
snímky.
Pokud máme vybranou lokaci a dorazili jsme na
místo za dobrých povětrnostních podmínek, můžeme si zatleskat, část úspěchu už máme. Při samotném
focení jsou pak, kromě správné expozice důležité
dvě věci, stabilní stativ a správně umístěný fotoaparát v tzv. nodal pointu, což je optický střed soustavy.
Jde o to, abychom měli střed otáčení shodný právě
s nodal pointem, což minimalizuje vznik optického
zkreslení při skládání výsledného panoramatu.
25
TECHNOLOGIE
Samotné skládání je pak otázkou konkrétního SW
(např: Kolor Autopano), ale probíhá většinou automaticky s tím, že nastavíme parametry optiky, s jakou jsme snímali a případně doladíme ručně umístění snímků, které se automatice nepovedlo spojit.
Zde pak nastává nejčastější komplikace, stává se že
SW nenajde ve fotkách dostatek kresby na nalezení
spojů a pak snímek nezahrne do panoramatu a zůstane po něm díra. Pokud jde o pár snímků, je ruční
doladění sice otrava, ale celkem snadno proveditelné. Pokud ovšem chybí například polovina oblohy
pak už je to složité a bude nás to stát spoustu hodin
práce a mnoho nervů, pokud se vůbec povede fotky
umístit. Proto doplním poslední produkční radu. Foťte scény, ve kterých je dost vzorů a málo velkých jednolitých barevných ploch, ušetříte si tak hodně času.
26
Pokud máme gigapanorama vytvořené, můžeme
ho nahrát na web gigapan.com nebo si pomocí
specializované knihovny openseadragon vytvořit
vlastní aplikaci, která bude s našimi výtvory pracovat a dovolí nám se jimi pochlubit. Nebo máme třetí
možnost, a to využít aplikace Deep Viewer vyvinuté
kolegou Jirkou Kubištou a potěšit se svými výtvory
u nás v laborce.
GIGAPANY NA TELESTĚNĚ
V rámci své BP Jirka Kubišta vyvinul SAGE2 aplikaci
pro zobrazování gigapanů. Mohlo by se říct, co na
tom vyvíjet, vždyť prohlížečů obrázků je spousta. To
ano, ale žádný neotevře 20 GB fotku a už vůbec nás
nenechá jí zobrazit a dynamicky s ní pracovat na telestěně. Deep Viewer aplikace využívá speciální způ-
sob ukládání obrázků pomocí tzv. image pyramid,
což je technologie, která uchovává fotku rozřezanou
na spoustu malých dlaždic v různém zazoomování dané fotky. Umístění jednotlivých dlaždic je pak
popsané v dzi souboru, což je v podstatě texťák podobný xml. Díky této metodě pak aplikace načítá jen
potřebnou část obrazu v potřebném rozlišení a nemusí natáhnout do paměti celou obrovskou fotku.
Zároveň překreslování po malých dlaždicích je také
rychlejší než manipulovat s celým souborem. Podobnou techniku ostatně využívá i web http://gigapan.
com nebo třeba online mapy.
https://sagelab.cesnet.cz
https://facebook.com/GrafitCVUT
KDE JSME K NÍ PŘIŠLI A CO ­PLÁNUJEME
DO BUDOUCNA?
HW nutný k tvorbě gigapanů jsme měli jako laboratoř zapůjčený od firmy http://fullframeshop.cz
a v případě zájmu máme slíbenou možnost dalšího
využití na jiné projekty. Do budoucna bychom rádi
zkusili vytvořit nějaké zajímavé virtuální prohlídky
dejvického kampusu, popřípadě dalších míst, a pokud by měl někdo zájem se na něčem z toho podílet
nebo měl vlastní nápad, tak rádi pomůžeme a domluvíme opět zapůjčení techniky. Kontaktovat nás
můžete buď přes FB Grafitu nebo web SAGElabu.
Ondřej Brém
foto: autor, gigapan.com
27
PARTNEŘI FAKULTY
Spolupráce
s ­Komerční bankou
Stříbrný partner fakulty
Komerční banka spolupracuje s naší fakultou více než rok a od té doby se
na praktických projektech vystřídalo sedm studentů FITu. Dvě diplomové
práce se podařilo úspěšně obhájit a další čtyři čekají na svá dokončení. Na
tento i další semestr připravuje KB řadu dalších témat diplomových prací,
workshopů a soutěží pro studenty.
IT je svět neustálých změn. Prakticky každý den se
můžeme dočíst o technologických novinkách či změnách nejen v IT produktech, ale i způsobu řízení IT.
Komerční banka se tomuto prostředí snaží přizpůsobit formou nejrůznějších projektů a aktivit, které
jí pomáhají přinášet nová řešení pro poskytování
kvalitnějších služeb. Nedílnou součástí rozvoje informatiky je i prozkoumávání a analýza nových trendů
a inovativních řešení. Právě toto je oblast, kde se znalosti a kreativita studentů FITu nejvíce osvědčují.
Spolupráce mezi Komerční bankou a FITem započala již na začátku roku 2015. Model spolupráce
je od začátku postaven tak, že témata, která studenti
zpracovávají, jsou prakticky zaměřena pro konkrétní
projekty, ať už připravované nebo běžící. Studenti si
mohou přímo vyzkoušet, jak fungují velké projekty
v bankovním sektoru a co všechno se od IT specialistů nebo IT manažerů očekává v reálném světě.
Témata, kterými se studenti zabývají v rámci diplomových prací, se vůbec nemusí zaměřovat pouze
na IT. Naopak, většina z nich IT přesahuje a zaměřuje se na řešení konkrétních „byznys“ problémů. Příkladem je návrh gamifikované platformy pro nábor
nových zaměstnanců nebo analýza a návrh Learning
Management System (LMS) pro efektivní správu kurzů a vzdělávání zaměstnanců formou elektronického
28
vzdělávání. Další diplomová práce se zabývá bimodálním přístupem k řízení IT projektů a zaváděním
agilních přístupů do korporací. Všechna tato témata
jsou řešena přímo s odborníky z praxe a student se
tak často setkává se reálným využitím výsledků své
práce.
Jakým způsobem se můžete zapojit? Nejsnazší
cesta je účast na některém z workshopů nebo soutěží, které Komerční Banka pořádá. Jedním z nich
je produktový hackathon, který se bude na naší
fakultě konat 8. dubna (více info na http://kb.cz/­
hackathon). Další možností je účast v inovační soutěži Dejte Hlavy Dohromady (více info na http://
kb.cz/­dejtehlavydohromady), v rámci které můžete posílat přihlášky do 10. 4. a do 9. 5. zasílat popis
svých nápadů a řešení. V rámci těchto soutěží máte
nejen šanci získat finanční odměnu, ale nejlepší
studenti budou mít i možnost toto téma zpracovat
formou bakalářské či diplomové práce. A pokud se
zrovna na závěrečnou práci nechystáte, lze v tématu
pokračovat formou stáže, která může být díky programu Partnerství odměněna nejen finančně, ale
i studijními kredity.
Pavel Krejčí
Lely, innovators
in agriculture
Zlatý partner fakulty
Lely’s business scope is agriculture, however, evolution in robotics and
computer science in recent years has widened this scope bringing in new
opportunities and changes to the business. It thus has more in common
with FIT than one would expect. Lely now cooperates with FIT in the field
of artificial intelligence, mainly machine learning, data mining and big
data.
Headquartered in the Netherlands, Lely operates in
more than 60 countries worldwide, inspiring people
to “create innovative solutions” to assist farmers “excel in sustainable milk production, forage harvesting
and energy sourcing”. The company’s core activities
include the development, production and sale of
advanced and innovative agro-technology. With
more than 60 years of practical experience and research, Lely – the “innovators in agriculture” – today
own an impressive portfolio of products and services
ranging from forage harvesting to barn cleaners, automated feeding systems and milking robots.
The most popular Lely‘s product is the Lely Astronaut, a robotic milking system. When the cow enters
the robot, it attaches the teat cups, milks the cow,
detaches and carries out post treatment. Milk is analysed in the robot in real time and substandard milk
is immediately separated. Besides milking, there are
also fully autonomous robots; Lely Discovery that regularly cleans the barn and feeding robot Lely Vector
that distributes fodder to the animals. Everything is
fully automated. It is a combination of mechanics, robotics, computer vision and AI. The farmer’s presence
is required only when the animal or the robot needs
his attention, i.e. animal is falling sick or the robot
ARTIFICIAL INTELLIGENCE
IN ­FARMING
Apart from its wide range of services that reduce
manual tasks on farms, the industry with its strong
customer focus encourages farmers to work smart,
not hard. It takes the responsibility to educate farmers of the change in the management system that
would occur with the transition from conventional
to automated farming, and of the benefits the use
of artificial intelligence techniques in farming would
bring, such as, better well-being of cows, greater quality of milk and efficient farming that in turn make
farms more profitable and durable, and farmers’ lives
easier and more enjoyable!
Lely industries is a worldwide innovator in the
international agro-­
technology market and
a market leader in the sale of automated milking
systems. Focusing on innovative automated
farming methods ever since its foundation in
1948, the company upholds a strong vision of
“A sustainable, profitable and enjoyable future
in farming”.
29
PARTNEŘI FAKULTY
needs some part to be replaced; this is called management by exception. With farming made so easy
by AI, it is now quite common that farmers have part
time jobs in a bank, a software company or any field
for that matter.
ANIMAL-FRIENDLY FARMING
Unconditional respect for animals is a policy that Lely
strongly upholds. The cow is the starting point for
each and every product that it produces. The company is highly acclaimed for its robotic milking appro-
30
ach that enables “free cow traffic” – cows approach
the milking robots at their own will as they can feast
on some fodder around the robots and enjoy being
groomed. This not just ensures happier cows, but the
resulting data also indicates that the cows produce
more milk and remain healthier. Furthermore, all Lely
products stand out due to minimum consumption
of energy, this clearly reflects the company’s efforts
towards a greener environment.
LELY AT FIT
Lely has been in co-operation with the Faculty of
Information Technology (FIT) in Prague since 2014,
having published its first assignment on the Portal
Cooperation with Industry (Portál spolupráce s průmyslem). The assignment was to improve automatic
detection of cow’s heat (oestrus) using machine learning methods. For further explanation, in a modern
farm, cows commonly wear sensors. A widely used
“cow wearable” is an activity sensor, which records
locomotion behavior. This sensor is in the form of
a collar tag and is very often combined with a sensor
recording rumination. The goal of the assignment
was to detect heat using time series of activity and
rumination; with a data driven approach and minimum domain knowledge. The project proved to be
very successful and confirmed that the cooperation
could be beneficial for both Lely and the students
who have the opportunity to work on real research
and innovative projects.
In 2015 the innovation department at Lely decided to strengthen the cooperation and become
a gold partner of FIT.
JOINT RESEARCH
Lely always researches state of the art algorithms and
AI techniques to improve its products and support
farmer’s decisions; this is where Lely and FIT reach
consensus. Since 2015 several joint research projects
are running in cooperation with the Czech Technical University (CTU). An interesting joint research to
draw focus on is in the field of dairy cows’ behaviour.
FIT students are analysing data in order to extract
information about cows’ daily routine, social interactions and explain behavioural patterns. Experts from
Lely and the University of Wageningen (Netherlands)
help with the domain knowledge. Another project
closely related to the analysis of behaviour is BarnSim, a multiagent system for simulation of dairy
barns. Each animal as well as robot is an autonomous
individual with its own physique and behaviour.
Cows interact among themselves and also with the
robots, the whole set of individuals make a complex
dynamic system that simulates behaviour on a dairy
barn. This can be very useful to optimize the barn itself, number of animals and robots.
Tomáš Borovička
foto: Lely
LELY AND YOU!
(OPPORTUNITIES FOR STUDENTS)
If you want to try your AI, machine learning
and data mining skills on real data, we encourage you to make a leap at the opportunity, as
Lely offers an array of interesting and engaging
assignments that are regularly published on the
portal SSP. Your work can help ensure better
­well-being of cows on dairy farms, better quality
of milk and uphold green farming. Gain practical
experience with the innovators in agriculture!
We also supervise bachelor and master thesis, however, preferably after some prior co-operation and experience with the student. Lely prefers long term collaboration with students and
certainly under the supervision of our specialists.
Collaborations usually begin with an assignment
over the portal, assigned as a semester project,
and when the co-operation proves beneficial for
both ends, we co-operate further!
Lely’s assignments at FIT are supervised by
the Data Science Laboratory or Datamole, s.r.o.,
a company that is a research and development
partner of Lely. Datamole has a joint research lab
at FIT that you can reach on the 13th floor. If you
would like to know more about Lely, stop by at
TH:A-1349. You can also interact with Lely scientists at [email protected]
The opportunity is yours and now! Let’s work
together toward a sustainable, profitable and
enjoyable future in farming. Let’s innovate!
31
STALO SE
InstallFest 2016
Tradičně skvěle zorganizovaný, opět o něco rozsáhlejší a tentokrát navíc
i s kvalitní kávou po vzoru Linux Days – tak by se dal popsat letošní ­ročník
InstallFestu, který se konal ve dnech 5. a 6. března ve Školicím centru
­Silicon Hillu.
Akce plná přednášek přilákala na strahovský kopeček odborníky i nadšence ze světa GNU/Linux z celé
republiky. Chybět samozřejmě nesměli ani vyučující a studenti z FIT ČVUT, ať už v roli posluchačů
nebo přednášejících. Během dvou dnů přednášek
a workshopů se dostalo například na téma útoků na
šifru A5/1, triky v bashi, práci se zvukem v Linuxu,
Arduino a Raspberry Pi nebo bezpečnostní analýzu
počítačových sítí. Sobotní program InstallFestu byl
navíc oproti minulým ročníkům rozšířen o sadu tzv.
lightning talků, neboli cca 10minutových přednášek,
které byly příležitostí pro každého, kdo chtěl krátce
představit svůj projekt a procvičit si přitom své prezentační dovednosti.
O občerstvení se starala tentokrát kromě Active24.cz i oblíbená pražírna kávy Kofárna s. r. o., takže
si přišli na své jak experti na kávu, tak vytížení programátoři. Všechny záznamy z akce pak zajišťovalo
ve špičkové kvalitě AVC.SH, které se postaralo nejen o živé streamy z obou tracků a z workshopů, ale
i o upload všech přednášek ve 4K kvalitě ihned po
skončení programu.
Zdeněk Kasner
Foto: twitter @InstallFest_SH
Ples ČVUT
V sobotu 20. února se na pražském Žofíně konal již
desátý Reprezentační ples ČVUT v Praze. Moderátorkou večera byla Martina Kociánová, která hostům
také zazpívala za doprovodu Plesového orchestru
pražských symfoniků. Na pódiu se vystřídaly i jiné
známé osobnosti, například Monika Absolonová, Bohuš Matuš s Orchestrem Karla Vlacha, dále pak Star-
32
dust Kvartet a Ondřej Brzobohatý. O předtančení se
postaralo uskupení Bohemia balet. Reportáž z plesu
můžete zhlédnout zde: https://youtu.be/0u-encij3EM.
Tereza Kadidlová
FIT párty 2016
Párty od fiťáků pro fiťáky. Tedy žádný F.I.T., ani *FIT*, ale prostě a jednoduše
FIT párty. Ačkoliv se samotný nápad zrodil poměrně nedávno, už je z něj
v podstatě zaběhnutá tradice. Slovo „nedávno” v tomto případě znamená
čtyři roky, takže – ano, počítáte dobře – se letos všichni sešli již počtvrté.
plusem. Stěny sklepení rozezvučely kapely Twilight
Kid, ForFun a Farside a o následnou afterparty se
pak postarala čtveřice ve složení Adam J, Springcleft,
System Overload a Hepex. Kromě hudebního programu účastníci využili toho, že budova má v názvu
„sportovna” a zasportovali si při obíhačce ve stolním
tenise.
Celou akci stejně jako v minulých letech zorganizoval student naší fakulty Vadim Petrov. Sice jsme
s ním nepřipravili rozhovor, i tak se ale na tomto
článku podílel, neboť ho jako grafik v naší redakci
upravil a vysázel do podoby, ve které ho nyní čtete.
Máme ovšem nemilou zprávu: tato záliba ho odvála
až na FEL, takže podle jeho slov „se FIT párty bude
muset asi uspořádat sama, ledaže by se toho ujal
někdo iniciativní”. Toto je tedy i výzva pro současné
nebo budoucí fiťáky – bude se tato akce konat i příští
rok?
Zdeněk Kasner
FIT párty se vždy koná ze začátku semestru. To znamená, že na ní všichni přicházejí nabití energií a optimismem, které z nich ještě nestihla vysát tvrdá dřina z domácích úkolů a zkoušek. Nabízí tedy kromě
pařby příležitost sejít se s lidmi z naší fakulty a hodit
s nimi v klidu řeč. Stejně jako loni se tato akce konala
v prostorech Radlické kulturní sportovny na Smíchově, díky čemuž bylo možné vychytat řadu různých
chybek. Například nebylo vůbec potřeba řešit hluk,
protože se kapely přesunuly do podzemních prostor
(odkud by nebylo slyšet ani živáčka, kterého by tam
náhodou někdo zavřel) a termoregulační systém
jednotlivých účastníků letos vydatně podporovalo
rozžhavené topné těleso na stropě.
To ale nebylo to hlavní, protože kdo by řešil zimu
nebo naštvané sousedy, když je lineup nabitý skvělými kapelami a DJs! Ani letos nechyběli jak nezkušení zelenáči, tak osvědčení mazáci. Přítomnost nějakého FIŤáka v hudebním uskupení byla pak jedině
33
FIŤÁCKÉ PROJEKTY
Lítačka
Tramvajenka, MHD kupon, legitka, nebo lítačka… ať jste zvyklí svému
předplacenému jízdnému říkat jakkoliv, budete ji prostě potřebovat.
Řeč je o nové Lítačce, tedy kartě, na které stejně jako na její červené
předchůdkyni máte nahranou svou časovou jízdenku. A jelikož u zrodu
tohoto projektu, který má postupně nahradit problémovou Opencard,
stál náš absolvent Ing. Václav Strnad, požádali jsme ho o rozhovor.
Proč jsi se rozhodl zkusit si pozici IT ředitele ve společnosti Operátor ICT, a.s.?
Když jsem byl osloven jako potencionální kandidát na člena představenstva a IT ředitele v městské
společnosti Operátor ICT, a.s. (tehdy ještě Operátor
OPENCARD, a.s.), bral jsem to jako velkou výzvu.
Navíc v té době byl do čela společnosti jmenován
i jeden z nejzkušenějších IT odborníků u nás a můj
přednášející z FITu Ing. Ondřej Felix, CSc. Naskytla se
mi tedy možnost být u řešení palčivého IT problému
a navíc přímo spolupracovat se špičkou v oboru. Moc
dlouho jsem neváhal. :)
Jak vůbec vznikl ­projekt Lítačka?
34
Poté, co se nám podařilo stabilizovat IT ve společnosti a s velmi omezenou dokumentací začít provozovat
systém bez výpadků, vypršely po několika letech
dva soubory s certifikáty, které jsou potřeba k chodu
celého systému. Nemusím asi zdůrazňovat, že certifikační autoritou byl dodavatel a vlastník autorských
práv k systému Opencard. Ten se však rozhodl, že na
naše výzvy k vystavení nových certifikátů nebude
reagovat až do okamžiku, kdy skutečně certifikátům
vyprší platnost a nám nepůjde nic spustit. To bylo
také důvodem zhruba půldenního výpadku vydávání karet 30. 9. 2015. Nakonec certifikát vyměnit přišli, ale z nějakého důvodu jen o týden a od té doby
chodí měnit každý týden, i když má Praha licenci na
neomezeně dlouhou dobu.
Dostali jsme se tedy do situace, kdy nikdy nevíte,
jestli systém, za který jste odpovědni, bude příští týden fungovat, nebo ne. Museli jsme příjít s nějakým
rychlým řešením. A vzhledem k tomu, že Opencard je
jeden velký vendor lock-in, řešením bylo vytvořit celý
nový systém pro card management.
A tak vznikl projekt nového systému vydávání
čipových karet. V poslední fázi příprav přišel z magistrátu návrh na přejmenování karty, aby se udělala pomyslná tečka za Opencard. A dnes je z toho Lítačka.
Jak to, že najednou šlo pražský dlouhodobý problém vyřešit?
Problematice Opencard se věnuji až od jara 2015,
takže nemůžu říct, proč se problém nedařilo řešit
dřív. Podle mě se ale teď díky dlouhodobému vývoji naskytly možnosti, jak problém řešit. Nedovedu si
představit, že bych zaváděl Lítačku třeba v roce 2013,
kdy neexistoval Operátor a hlavně vůbec nebyly papírové průkazky, takže v případě nějakého delšího
výpadku by si prostě nikdo dlouhodobou jízdenku
nekoupil.
Kolik lidí na projektu pracovalo a kolik
jich Operátor ICT zaměstnává v současné době?
Přímo na nasazení nového systému pro vydávání karet pracovali čtyři kmenoví zaměstnanci v součinnos-
ti s dodavateli SW. V současné době má IT oddělení
OICT 7 lidí včetně částečných úvazků.
Je na kartě Lítačka něco zásadně jiného
od Opencard, pokud pomineme finanční náročnost?
Karta jako taková je stále MIFARE DESFire EV1 4K
a data na ní jsou strukturována podle doporučeních
společnosti NXP, takže tady nebylo třeba žádných
velkých změn. Na kartě ale přibyl EAN kód, takže třeba v knihovnách, kde je potřeba načíst pouze číslo
karty, už do budoucna nemusí mít čtečky čipových
karet, ale stačí jim levnější čtečka čárových kódů, kterou tam stejně mají kvůli knížkám.
Jsou tedy zachovány všechny funkce
jako na Opencard? Je například možnost použít kartu jako identifikátor
v městské knihovně? Chystáte nějaká
rozšíření, která u Opencard nebyla?
Bylo upuštěno od některých funkcí, takže Lítačka
nyní slouží jako elektronická jízdenka na MHD a jako
identifikátor do veřejných institucí (knihovny, školy...). Rozšíření chystáme zejména ve způsobu, jakým
je možné si kartu pořídit. Chceme jít hlavně cestou
on-line žádostí, aby lidé vůbec nemuseli chodit
na žádné kontaktní místo.
Název „Lítačka” vzbuzoval poměrně negativní ohlasy. Jak si to vysvětlujete?
Pro mě je podstatné, že nový název vzbuzoval ohlasy.
Troufnu si říct, že téměř každý v Česku ví, že v Praze je nová Lítačka. A to nebyla na propagaci nového
„brandu” vynaložena ani koruna. To beru jako velký
úspěch.
Nemyslím si, že byly ohlasy negativní, což potvrzuje i analýza soc. sítí, kterou si objednal magistrát
a ukazuje, že víc jak polovina uživatelů vnímá ná-
zev Lítačka pozitivně. Je ale pravda, že ty negativní
ohlasy jsou vždycky nejvíc vidět. Zkusili jsme proto
na ­F­acebooku Lítačky udělat anketu, kde by lidé
mohli navrhnout vlastní název. Z té ankety vyšlo,
že se lidé nejsou schopni jednoznačně dohodnout
na nějakém názvu, a že ani často zmiňovaný název
Tramvajenka nemá nijak převratnou podporu. Zajímavým přínosem ankety bylo pro mě ale zjištění, že
existuje skupina lidí, kteří by chtěli Opencard přejmenovat na Kartu Václava Havla.
Jak si Lítačku můžeme pořídit a je nutné ji hned měnit za Opencard?
Lítačku si můžete nyní pořídit v zákaznickém centru
ve Škodově paláci v Jungmannově ulici, kde ji dostanete na počkání. Současné Opencard budou fungovat až do konce jejich platnosti, měnit ji tedy ihned
nemusíte, ale můžete. :)
Kolik je už vydaných nových karech?
Každý pracovní den se vydá zhruba 800 nových karet. K 18. 3. 2016 jich je v oběhu něco přes 12 000. Jde
většinou o výměny expirovaných Opencard.
Jaká je budoucnost Lítačky? V médiích
bylo zmiňováno, že jde o dočasné řešení problémové situace s Opencard. Jaké
vize tedy máte s projektem do budoucna?
Budoucnost je jednoznačně v tzv. multikanálové kartě, která dá cestujícímu možnost si vybrat, na jakém
nosiči chce svůj kupon mít. V současnosti má cestující dvě možnosti: papír a Lítačku. Byl bych rád, kdyby
se do budoucna podařilo kupón dostat na bezkontaktní bankovní karty a do chytrých telefonů.
Veronika Dvořáková
Foto: Ing. Václav Strnad
35
TVORBA
I am(sterdam)
Amsterdam, město na řece Amstel, plné malebných úzkých domků
s příkrými dlouhými schody, s jízdními koly na každém volném odkládacím
místě, proslavené malířem Van Goghem, kterému je věnováno rozsáhlé
muzeum a především příběhem mladičké Anny Frankové, která svým
deníkem oslovuje lidi po celém světě i dnes.
Asi jste už zaznamenali fotky s červenobílým nápisem „I amsterdam”, kteří si vaši známí přidávají na sociální sítě. Ve městě tulipánů je ale k vidění a poznávání mnoho dalšího. Za deštivého počasí můžete
pobíhat kolem stánků s tradičními tulipány - pořidíte
tu i takové netradiční barvičky jako je tmavě modrá
nebo černá, mým oblíbencem se rozhodně stal fialový tulipán.
Pokud máte v plánu navštívit amsterdamská muzea, určitě se vám vyplatí pořídit si nějakou z turistických karet (Museum card nebo I amsterdam card, ve
které je zahrnuta i doprava). Když zvládnete alespoň
dva kulturní stánky denně, věřte, že dost ušetříte.
Pokud ale chcete vysedávat v coffee-shopech nebo
prolézat Red Light District, tak si kartu nepořizujte.
Red Light District je v těsné blízkosti Oude Kerk,
nejstaršího kostela ve městě, který je otevřen veřejnosti (těžko říct, koho napadlo hříšný háj budovat kolem svatého místa). Asi vás trochu zamrazí, když vám
dojde, že podlahové desky jsou otvory ke hrobům...
Amsterdam je určitě dobré zažít z vody, takže
vyjížďka lodí po kanálech, při které si město prohlédnete z jiného úhlu, by vás neměla minout. Pokud se
36
ubytujete v sousedním městech, můžete využít i trajekt (ferry), který vás za pár minut dopraví na Central – hlavní dopravní uzel.
Pokud chcete vidět muzeum, kde je takříkajíc
„od každého něco”, doporučím Stedelijk, kde můžete
obdivovat na vlastní oči dílo Pieta Mondriana, užité
umění, i to nejmodernější, které bez výkladu asi není
možné pochopit. Ve Stedelijku zhlédnete i několik obrazů Van Gogha, ale většinu jeho díla najdete
v protější budově muzea, které je věnováno jenom
jeho životu a práci. Pozor na krásné výrobky s Van Goghovými motivy v muzejním obchůdku… je to skoro
jako droga.
Do takové TOP 3 muzeí bych ještě přidala Het
Scheepvaamuseum, tedy muzeum lodí a námořnictví. I přesto, že námořnictví není zrovna můj šálek
čaje, musím ocenit autora všech expozicí umístěných
v muzeu, které jsou velmi atraktivní a interaktivní. Pobaví se dospělí, ale i děti si najdou to své. Největším
lákadlem je ale určitě loď v areálu muzea, kterou si
můžete projít a alespoň na chvíli vyzkoušet život na
moři. No, v některých patrech jsem musela chodit
ohnutá a co pak ti, kteří vyrostli víc než jen necelý
metr šedesát.
Zvlášť pro dámy bych ještě navrhovala návštěvu
muzea diamantů, jejíž expozice seznamuje s historií
diamantů, jejich objevy a jejich zpracováním. K vidění jsou třeba netradiční vladařské koruny. V místnosti
za černými závěsy najdete lebku osázenou diamanty ­– jedna z variací díla Daniela Hirsta. Co bych rozhodně nedoporučila ani svému úhlavnímu nepříteli,
je super moderní muzeum EYE s nádhernou bílou
budovou, která by měla znázorňovat ptáka v letu.
Před vstupem ta krása končí… Pak návštěvníky čekají už jen podivná super moderní umělecká videa,
na která se normální smrtelník asi dívat nechce… Ale
věřím, že absolventi multimédií by se v tom rochnili.
Když jedete na náročný výlet, je třeba si i chvíli od-
počinout, napojit se a nasytit. K návštěvě bych doporučila malé restaurace kolem zastávky Dam. Stejně
jako domy jsou úzké, i restaurace nejsou v mnoha
případech příliš rozhlehlé. Pár stolečků, kolem sebe
místa jako mají sardinky v konzervě, tma jako v pytli,
obsluha mi přišla vždy dost protivná. Rozhodně bych
nedoporučovala se v amsterdamských zařízeních
opít, protože vyšplhat na toalety po příkrých schodech, někde víc a někde ještě víc nepohodlných, je
skoro o život i za střízliva.
A co si máte dát? No, nikdy neprohloupíte burgerem a kvantem hranolků. Ale ochutnat byste měli
i tradiční broodjes (což ve finále může být taky burger, ale umí to i bez masové náplně). Palačinky! Rozhodně si dejte jejich pidi palačinky. Ale běžte ve více
lidech – narozdíl od nás, totiž Holanďani dávají pouze
jednu „chuť” navíc – tedy můžete mít palačinky s čokoládou, nebo s banánem, zmrzlinou – ale všichni
dobře vědí, že nejlepší je to s čokoládou a banánem
a zmrzkou a šlehačkou… a tak dál.
Co ale bylo tím úplně nejdůležitějším pro mě
při návštěvě Amsterdamu – prohlídka domu Anny
Frankové. Její deník jsem četla už před lety a vyvolal
u mě obrovský zájem o příběhy lidí, kteří prožili válku. V muzeu se nesmí fotit kvůli tomu, že návštěva
může být pro mnohé hlubokým emocionálním pro-
žitkem. To můžu potvrdit. Chodit po domě a místech,
ve kterých Anna a její rodina přežívali v úkrytu válku
bylo… prostě nepopsatelné. Její maličký pokojíček
se zachovalými plakáty na zdech, fotografie, které rekonstruovaly dobový vzhled pokojů, makety úkrytu,
aby měl člověk přesný přehled, jak život probíhal…
Promluvy jejího otce z videa, který jediný přežil válku,
jejich přátel, spousta nezvěřejněných fotografií, ať už
v knihách nebo tisku, a především původní Annin deník. V obchůdku můžete nakoupit ledacos – pohlednice, komiksy s Anniným příběhem, repliku jejího
deníku a především knižní vydání deníku v různých
jazycích – i já jsem si tam ulovila český překlad. Řada
před domem je dlouhá kdykoliv se rozhodnete do
muzea jít - ale ta půlhodinka čekání opravdu stojí za
to.
Tak ještě pár věcí na závěr – dámy, to vás bude
jistě zajímat a i ty, kteří si všímají kulturních rozdílů –
zatímco u nás jsme zvyklí mít na toaletách u umyvadel i zrcadla, ve kterých se důležitě prohlížíme, ani
v jedné amsterdamské instituci jsem zrcadla neviděla. Ne, že by chyběla úplně – ale jsou třeba v chodbičkách, nikdy ne přímo nad umyvadly. Holanština zní
poněkud zvláštně, pokud nejste zvyklí, ale z psaného
textu se dá mnoho věcí odvodit. No, ale třeba slovo
„kaas”, tedy „sýr” byste asi jen tak neuhádli.
Když vychytáte hezké počasí, zkuste bar Sky
Lounge (v objektu hotelu Hilton) v blízkosti Central,
ze kterého budete mít nádherný výhled na celé město. Pokud vás nebude iritovat posh DJ, hlasití Angličané a dámy na lovu...
Více podrobností najdete v článcích publikovaných na webu www.kultura21.cz od měsíce dubna.
Kamila Pětrašová
Foto: autorka
37
ZÁVĚREM
Herní tipy
QUANTUM BRAKE
Remedy Entertainment se vrací! Studio, které nám
přineslo Max Payna a skvělou hororovku Alan Wake
nám letos naservíruje další titul, který má na to být
hitem. V Quantum Brake budeme hrát za Jacka Joyce,
který umí manipulovat s časem, čímž dostává výraznou výhodu oproti svým protivníkům. Může zastavit
čas, měnit směr letící kulek, či objevit hned vedle nepřítele a jednu mu ubalit. Hráč zároveň bude muset
řešit různé logické úlohy, a tak hra potrápí i mozkové
závity. Rozhodně je tedy na co se těšit.
Datum vydání: 5. 4. 2016
Platformy: Windows, XOne
MIRROR‘S EDGE CATALYST
Pokračování/prequel/reboot parkourové hry Mirror‘s
Edge se zjevně bude odehrávat v nějaké alternativní
realitě světu Mirror‘s Edge, kde se opět vžijeme do
kůže Faith, tentokrát do jejího mládí a budeme se pokoušet svrhnout totalitární vládu nad městem Glass.
Tvůrci slibují klasické běhání po městě a mnoho soubojů na blízko. Zároveň by místo lineárních misí měl
ve hře být otevřený svět, který hráči dovolí vyblbnout
se do sytosti. Také tvůrci slibují určitou formu multiplayeru, který bude minimálně obsahovat žebříčky
nejlepších Běžců. Snad sláva hry letos doběhne dále,
než její předchůdce.
Datum vydání: 24. 5. 2016
Platformy: Windows, Xbox One, PS4
DOOM
Další letošní reboot se bude týkat slavné značky
Doom, která se po dvanácti letech opět probouzí se
čtvrtým dílem. Dle vývojářů se ve hře můžeme těšit na „drsný démony, ku*evsky dobrý zbraně a fakt
rychlý pohyby“. Hra se bude snažit hráče odradit od
jakéhokoliv krytí a čekání na doplnění zdraví, a tak
ve hře nebude žádný regenerační systém. Vývojáři se
dle svých slov při vytváření hry inspirovali rock and
rollem a na příběh nebude kladen skoro žádný důraz.
Půjde pouze o ku*ervoucí akci.
Datum vydání: 13. 5. 2016
Platformy: Windows, Xbox One, PS4
38
Filmové tipy
10 CLOVERFIELD LANE
Tak co sakra, je to pokračování skvělého Cloverfieldu
nebo ne? Nikdo neví. Produkuje to J. J. Abrams, který stál i za Cloverfieldem, název tomu napovídá, ale
podle trailerů to nevypadá jako takové terno. Dobře
zpracovaný found footage z návštěvy mimozemšťanů New Yorku (či to byl nepovedený vládní projekt?)
s tím zjevně nějak spjatý bude a vypadá to na příběh
rodinky, kterou tato tragédie uvěznila ve sklepě.
Bude to tak zajímavé, jako Cloverfield? Dost jistě ne,
ale Abrams málokdy zklamal, tak uvidíme.
Premiéra: 7. 4. 2016
Režie: Dan Trachtenberg
Obsazení: Mary Elizabeth Winstead, John Goodman
CAPTAIN AMERICA: CIVIL WAR
Už to nakousli v Age of Ultron - Iron Man a Cap už nejsou takoví BFF, jako tomu bývalo kdysi. Vláda navrhuje registraci superhrdinů, Tony je pro, ale Steveovi
se to nelíbí. Občanská válka superhrdinů začíná! Každý superhrdina se musí rozhodnout, na čí stranu se v
tomto megalomanském konfliktu přidá, ale jedno je
jisté: nedopadne to dobře. A zároveň taky konečně
uvidíme nového Spidermana! Tak co, jste #teamcap
nebo #teamironman?
Premiéra: 5. 5. 2016
Režie: Anthony Russo, Joe Russo
Obsazení: Chris Evans, Robert Downey Jr
X-MEN: APOKALYPSA
X-Meni se dostávají do problémů. Kromě toho, že se
na scéně objevuje nejsilnější mutant světa Apocalypse, tak nejukecanější mutant letos nasadil laťku velmi
vysoko. Předčít Deadpoola v tržbách nebude jednoduché ani pro celou partu mladých X-Menů, jejichž
nejsilnější zbraní je teď pleš mladého Profesora X. Ani
návrat Jean Grey, která si odběhla střihnout tuto roli z
Game of Thrones, asi sledovanosti úplně nepomůže.
Tak snad nás X-Meni nezklamou a opět dodají dobrou mutantí podívanou.
Premiéra: 19. 5. 2016
Režie: Bryan Singer
Obsazení: James McAvoy, Michael Fassbender
39
ZÁVĚREM
Starý ­alchymistický
­jazyk – první
­programovací jazyk?
Když se v tomto čísle zabýváme programovacími jazyky, je na místě, abychom zařadili i knihu, která se
jimi zabývá. Ale nemusíme být tak doslovní. Příručku
nebo učebnici, jak programovat v tom a tom jazyku,
ne, to vám neuděláme. V Hadích listinách se však
o jistém zvláštním jazyku mluví...
Knihu s atraktivním a tajuplným názvem Hadí listiny
napsala mladá autorka (1986)
z umělecké rodiny. S výběrem
tématu pro svůj debut vůbec
netroškařila – pustila se do
odhalování středověkých alchymistických technik a magického jazyka.
Mladá vědkyně Anna je
zapálená pro zkoumání starých rukopisů a pergamenů.
Vytyčeným bodem její profesní touhy jsou pergameny
starého alchymistického mistra Rexe Illuminata, který, jak
se alespoň odhaduje, chtěl
sestrojit stroj na pravdu. Stroj,
který má pomocí kombinace
třech symbolů dokázat odpovědět na všechny otázky
lidstva. Alchymistický jazyk je
tak něco jako první programovací jazyk.
Výzkum a hledání Annu
přivede do bouřlivé Barcelony, která byla dějištěm brutálních vražd dívek, které měly do těla vyřezány rituální
obrazce, ale místní vyšetřovatelé si s touto záhadou
nedokážou poradit ani tehdy, když je obětí talentovaná herečka Natalia Hernándezová.
Natalia má obrovské nadání nejen k herectví,
ale je zdatná i ve výtvarném umění díky své matce.
Když ji najdou po svátku svatého Jana mrtvou, je to
obrovské pozdvižení. Místní vyšetřovatel Fabregat
40
dostal před její smrtí tajemné dopisy, ze kterých ale
nedokáže vyčíst žádná vodítka. Anna přichází na pomoc. Nejenže je nápadně podobná předchozím obětem, ale má také svůj zvláštní dar – prostřednictvím
halucinací se dokáže vciťovat do pocitů autorů textu.
Přijde na to, co spojuje všechny ženské oběti?
„Zdá se, že žena bez
jazyka je stejně mocná
jako s ním – ba snad ještě
mocnější, neboť nemusí
marnit čas řečmi a může
jej strávit v rozjímání. Staví
je to do obtížné situace,
neboť se tím znovu prokazuje, že uvažující žena
je ještě horší než žena hovořící.“
Jessica Cornwellová
vycházela při psaní svého
románu z mnoha vědeckých a historických knih,
mnohdy se ale nechala
unést svou vlastní fantazií.
Román je složený z několika rovin – vyprávění Anny,
její halucinace, nebo také
korespondence mladíka
s milovanou dámou z devatenáctého století, co
knihu řadí mezi netradičně pojatá díla. V částech,
kdy Anna halucinuje, je
ale text poměrně nepřehledný. Když příběh rozložíte na jednotliviny, nelze
moc vytknout, jako celek už kniha ale ukazuje pár
slabších míst. Co se ale musí autorce nechat je, že
čtenář do poslední chvilky netuší, kdo je dlouho hledaným vrahem.
Kamila Pětrašová
foto: kosmas.cz
Mensa úlohy
LASERY
Zakreslete do diagramu jeden laserový paprsek, který probíhá pouze diagonálně a který do diagramu
vstupuje a diagram opouští na místě označeném
šipkou. Umístěte zrcadla na některé body mřížky tak,
aby byl vždy laserový paprsek odražen na jinou stra-
nu. Čísla na levém okraji a nad diagramem udávají,
kolika políčky v odpovídajícím řádku či sloupci paprsky probíhají. Čísla vpravo a pod diagramem určují
počet zrcadel na odpovídající linii mřížky. Všechna
místa, kde se laser kříží, už jsou označena.
Úloha 1
Úloha 2
Úloha 3
Úloha 4
41
ZÁVĚREM
PERFEKTNÍ LOGICI
Hráči A a B dostali oba na své čelo napsáno číslo 12.
Jeden vidí číslo na čele druhého a naopak, ale nezná
své vlastní. Vedoucí hry jim sdělí, že součet obou jejich čísel je 24 nebo 27 a že se jedná o kladné celé číslo (nula tedy také ne). Poté se vedoucí ptá vždy střídavě hráče A a B, zda mohou určit číslo na svém čele.
A: Ne.
B: Ne.
A: Ne.
B: Ne.
A: Ne.
...
Po kolika „Ne“ skončí hra, pokud vůbec?
BYS TEST
1
2
3
42
ŘEŠENÍ
LASERY
Úloha 1
Úloha 2
Úloha 3
Úloha 4
PERFEKTNÍ LOGICI
U perfektních logiků uslyšíme sedm „Ne“ a poté
„Ano“.
VYSVĚTLENÍ:
Nechť „a“ je číslo hráče A a „b“ je číslo hráče B.
(1) A ví na začátku, že a = 12 nebo a = 15.
(2) B na začátku ví, že b = 12 nebo b = 15.
Ale B neví, že A ví (1) a A neví, že B ví (2). Proto jsou
pro nás vhodnější následující výroky, které jsou
oboum hráčům jasné a každý ví, že ten druhý ví:
(3) b = 24 – a nebo b = 27 – a
(4) a = 24 – b nebo a = 27 – b.
Z prvního „Ne“ od hráče A vyplývá právě z (4)
(5) b < 24
neboť v případě b > 24 by A mohl vyřešit “a”.
To je hnací motor následující cesty řešení:
Z prvního “Ne” od B vyplývá pouze z (3) a (5)
(6) a > 3
a podobně:
A: „Ne“ => b < 21
B: ,,Ne” => a > 6
A: ,,Ne“ => b < 18
B: ,,Ne“ => a > 9
A: ,,Ne” => b < 15
Z toho vyplývá
B: „Ano“
protože dohromady s informací (2) zůstává pouze
jedna možnost.
Proto skončí hra po sedmi „Ne“ s následujícím „Ano“.
BYS TEST
1) 2 – Patří k sobě obrázky 2,6 a 7, dále 3,4 a 8 a poté
1,5 a 9 (popř 2,3,6 a 4,7,8 a 1,5,9). Každá trojice vždy
musí pokrýt šipky všech směrů.;
2) 1 – Károvaný vzor se vždy otočí jednou o 180°, jednou o 90°. Kolečka v kruhu také (popř. o 90° a poté
o 180°);
3) 1 – Trojúhelník vždy přijde na místo, kde se nacházel čtverec, čtverec přijde na místo, kde se nacházelo
kolečko. Kolečko žádný řád nenásleduje.
43

Podobné dokumenty

Pegasys Slide Kit

Pegasys Slide Kit - kvalita sérologických testů na stanovení anti-HCV pro diagnostiku akutních i chronických HCV infekcí je většinou velmi dobrá - problémy se specifitou testů se objevují při skríninku dárců krve, b...

Více

Depeche Mode Friends

Depeche Mode Friends V rozhovoru se zpěvačkou kapely Prapaganda Claudií Brücken v časopise Destination Pop padlo také jméno Martina L. Goreho. "Známe se s Martinem už pár let. V hlavě jsem nosila pár písní, které byly ...

Více

Tajemstvi lasky - Texty-pro-dusi

Tajemstvi lasky - Texty-pro-dusi I jednotlivé části “mrtvé” hmoty k sobě svojí podstatou a hmotnou příbuzností určitým způsobem patří a hrubohmotná přitažlivost mezi nimi je podobná jemnohmotné přitažlivosti duševní. A jak je všeo...

Více

Zde - FIT

Zde - FIT Našim cílem je vytvořit perspektivní herecký tým, vymyslet, jak se budeme jmenovat, zajistit si místo a termíny zkoušek, vymyslet a nacvičit naše vlastní originální představení. To pak předvést jak...

Více

Sestava 1 - Asociace hotelů a restaurací České republiky

Sestava 1 - Asociace hotelů a restaurací České republiky Ve dnech 9. – 10. března zasedala v Římě 68. Valná hromada HOTREC. Konferenci otevřel svým projevem viceprezident EK Antonio Tajani, který ocenil význam EK, HOTREC a jednotlivých členských asociací...

Více