• Vietnam informatiky

    Mým oblíbeným článkem, hlavně kvůli analogii z historie, je The Vietnam of Computer Science, který před již mnoha lety napsal Ted Neward. S jeho laskavým svolením přináším překlad. Dlouho jsem si na něj netrou­fal, ale nakonec jsem učesal výsledek z DeepL. Překlad uvolňuji pod licencí Creative Commons BY-NC-SA 3.0, nicméně autorská práva stále náleží Tedu Newardovi.

    Nabízím analogii k objektově-relačnímu mapování a problémům, které představuje

    26. června 2006

    (Na Micro­soft TechEd 2004 v San Diegu, jsem se na akci po konfe­renci účastnil rozho­voru s Harrym Piersonem a Clemensem Vaster­sem, a jak je typické, když se my tři sejdeme, předmětem našich diskusí byla archi­tek­to­nická témata. Kolem nás se shromáždil dav lidí stejných zájmů. Přišla řeč na techno­logie objek­tově-re­lač­ního mapování a tehdy jsem poprvé použil větu: „Objek­tově-re­lační mapování je Vietnamem infor­ma­ti­ky“. V mezidobí jsem obdržel řadu žádostí o upřes­nění diskuse, která se za tímto výrokem skrývá, a vzhledem k nedáv­nému oznámení Micro­softu ohledně „podpory entit“ v ADO.NET 3.0 a přijetí Java Persis­tence API jako náhrady za EJB Entity Beans i JDO se zdálo, že je čas přesně to udělat.

    (2022 Poznámka: Tento článek je již patnáct let starý. Několikrát jsem byl v pokušení historickou část zkrátit - to je jedna z nejčas­tějších výtek k tomuto dílu -, ale v zájmu toho, aby po světě nekolo­valo více jeho kopií, jsem ji zde ponechal. Pokud chcete lekci historie přeskočit, zde je rychlý odkaz na techno­lo­gické kousky.)

    Žádný ozbro­jený konflikt v dějinách USA nestrašil americkou armádu více než Válka ve Vietnamu, známá jako Vietnam. Tolik odlišných prvků se spojilo, aby vytvořily nejrozhod­nější bod obratu v moder­ních americ­kých dějinách, že se vzpírá snaze jakého­koli laika je od sebe oddělit. Přesto je příběh Vietnamu v podstatě prostý: Spojené státy zahájily vojenský projekt s jedno­duchými, ale nejas­nými a proti­chůd­nými cíli a rychle se zapletly do šlamas­tyky, která nejenže svrhla dvě vlády (jednu legálně, druhou silou zbraní), ale také hluboce pozna­me­nala americkou vojen­skou doktrínu na další čtyři deseti­letí (přinejmenším).

    Ačkoli se to může zdát banální, Objek­tově-re­lační mapování je Vietnamem informatiky. Předs­ta­vuje šlamas­tyku, která začíná dobře, postupem času se kompli­kuje a zanedlouho své účast­níky uvězní v závazku, který nemá jasné ohranič­ení, jasné podmínky vítěz­ství ani jasnou strategii úniku.

  • FIRST Lego League Challenge

    Miluju lego, jako dítě jsem si s ním nesku­tečně vyhrál a moje láska k němu přetr­vává i do dospělosti. Nicméně pozorní čtenáři blogu vědí, že kroužek programování se snažím držet nízkonák­la­dový, takže lego robotům jsem se dlouho vyhýbal. Učitel infor­ma­tiky na naší škole, Matěj Burda, přišel s nápadem, že ho zaujala soutěž FIRST Lego League Challenge. Říkal jsem si proč ne, kroužek stejně potře­boval po letech nový impulz. Domlu­vili jsme se na tande­mové výuce a šli do toho. Jestli soutěž neznáte nebo váháte, zda se příští rok přihlásit, tak vás může násle­dující text navna­dit, abyste se příští rok zúčast­nili i vy.

  • Opěrné písně pro intervaly

    Mám pocit, že jsem v hudbě uvázl na úrovni věčného začáteč­níka a abych se z toho vymanil, tak jsem se na stará kolena přihlásil do ZUŠky. Je to ten nejlepší krok, co jsem mohl udělat. Dokonce mě to nakoplo, abych konečně pokročil i s hudební teorií.

  • Hledání šéfa

    Hledání šéfá není náborový příspěvek, ale táborová hra, mně rovněž známá pod názvem Hledání pokladu. Bratr Zet, Miloš Zaple­tal, celoži­votní sběratel her, kterému vděčíme za mnohé, nedávno oslavil 95. naroze­niny. Což mi připom­nělo, že si má člověk budovat vlastní sbírku. Tam kde on skončil, kniha Retrohraní začíná. Jim nehodlám konku­ro­vat, ale o své poznámky bych se s vámi rád podělil. Ani nevím, kde se hra vzala, abych mohl někomu připsat zásluhy. Já se s ní seznámil na táboře Pikomat.

  • Finta s cache na více nodech

    Jeden z klamů, kterému stále podléhám, je, že vám program poběží v jediné instanci. Jasně, mnohdy na to myslím, klasicky zajištění, aby úloha v celém clusteru běžela maximálně právě jednou, k tomu perfektně slouží knihovna ShedLock. Nicméně pro některé případy stále ještě nemám vypěs­to­vanou dosta­tečnou intuici. Fousatá legenda praví, že v IT máme dva obtížné problémy: pojme­nování věcí a invali­daci cache. No a jak invali­dovat cache pro více nodů? Distri­buo­vaná cache. Tak to nechceš. Pro svůj případ jsem našel jedno­dušší funkční řešení.

  • Elektronická parkovací brzda Toyota Avensis

    Automa­tická elekt­ro­nická parko­vací brzda se mi ze začátku zdála jako zbyteč­nost, ale člověk si na ni rychle zvykne, takže když přestane fungo­vat, začne vám chybět. A co že se mi rozbilo v mé Toyotě Avensis a jak jsem to opravil? Hledáním jsem strávil jeden večer a vy už teď nemusíte.

  • Skrytý poklad nahlížení do katastru

    Abych nebyl jen negativní a nepsal pouze o námit­kách ohledně elekt­ro­nic­kých přihlášek na střední nebo se vyjadřoval k novému staveb­nímu řízení (obecně vítám, proces prove­dení by šlo kriti­zo­vat), tak bych tentokrát pro změnu raději chválil a poodkryl skryté poklady státní správy. Český katastr nemovi­tostí i obchodní a živnos­tenský rejstřík v našem českém rozsahu a přístup­nosti shledávám, i ve světovém srovnání, jako věc nevída­nou. Nahlížení do katastru nemovi­tostí na adrese https://nahlizenidokn.cuzk.cz jistě znáte a vlastně si nedokážu předs­ta­vit, že by někdo alespoň jednou v životě nepoužil (i když možná jsem příliš uzavřen do své bubli­ny). Každopádně bych vám chtěl ukázat, jak získat víc infor­mací, než jen jakou má nemovi­tost výměru a komu patří. Lze zjistit, od koho ji kdo dostal nebo koupil a dokonce za kolik. Jen je to pro běžného člověka trochu neintui­tivní, tak to alespoň vydá na článek.

  • Jak jsem debuggoval kotel

    Jako programátor mám jisté tendence myšlen­kových pochodů i v běžné životě, zkrátka analy­tický přístup nemůžu potlačit. Poslední sezónu nám nefun­go­valo podla­hové topení. Jak jsem na to přišel, jak hledal příčinu a jak se to vyřešilo?

  • Zjednodušený funkční model Enigma

    Na kroužku progra­mování se věnujeme i aktivitám bez počítače. Patří mezi ně i kryptog­rafie a Caesa­rova šifra. Její princip i vysvět­lení jsou snadné. Názorně na ní lze ukázat i prolo­mení šifer. Zde je hlavní problém konkrétně v tom, že se stejné písmeno šifruje vždy stejně, tudíž je dnes triviální ji prolomit frekvenční analýzou či hrubou silou. Co dalšího tedy předs­tavit zvídavým žákům, aby to bylo zajímavé jak po technické stránce, tak se silným příběhem? Jedno­značně Enigma. Ale jak jim to předat?

  • Děti programují hry na konzoli

    Již mnoho­krát jsem se vyznával, že jsem se k počítačům dostal přes hry. Na jejich tvorbu jsem však neměl schop­nosti. Ovšem i cesta k nim byla v dobách osmibitů (jako C64) obtížnější. Nicméně nutkání mě nikdy úplně neopus­tilo. Dlouho jsem měl v hledáčku pygame respek­tive knihu Making Games with Python & Pygame. Osobně jsem se k tomu nikdy nedostal, ale s vedením kroužku progra­mování jsem o tom opět začal uvažo­vat. Zatím sobě a hlavně dětem nehodlám písmenkovými progra­mo­vacími jazyky kompli­kovat život a zůstanu u blokových jazyků. Naštěstí taková varianta existuje a tu vám chci přiblížit. Jedná se o dialekt Micro­bitu. Navíc jsou na trhu k dispo­zici i fyzické herní konzole, kde si vlastní výtvory můžete doslova osahat.

subscribe via RSS