jOpenSpace

se uskuteční 7. - 9. října 2022

v hotelu Antoň v Telči

Ročník 2022

Registrace: otevřeme v září 2022

Termín: 7. - 9. října 2022

Místo: Hotel Antoň (viz. mapa)

Letos nás pohostí hotel Antoň, v Telči.

O co jde

Říkáte si, co vlastně je jOpenSpace? Je to malá česká ne-konference jOpenSpace. Konference typu OpenSpace konference jsou specifické tím, že se jejich program dopředu příliš neplánuje. Mluví se zkrátka o tom, co účastníky zajímá. Nikdo není jen pasivním divákem, každý přispěje svou troškou do mlýna. Pokud vás zajímá více o tomto druhu "konferencí" podívejte se na slideshow Bruce Eckela (anglicky).

Nápad uspořádat podobný typ konference i u nás se zrodil v hlavě Michala Šrajera (Inmite - nyní AVAST). Michal se do značné míry inspiroval velmi vyvedenou akcí JavaPosse Roundup, která se už několikrát konala za velikou louží. Díky těmto začátkům je také v názvu akce písmeno "J", které stále navozuje pocit, že se jedná o Java konferenci - to ale dávno není pravda. V posledních ročnících se zaměřujeme i na obecnější vývojářská témata, která překračují hranice této platformy.

Společné foto ročníku 2018

Doposud se uskutečnilo 12 ročníků na různých místech republiky a letošní ročník je dvanáctý. První ročníky se odehrávaly v Jizerských horách, ve vinném sklípku poblíž Znojma, v Krkonoších nebo uprostřed Žďárských vrchů. Počet účastníků rok od roku narůstá. V roce 2016 nás bylo bezmála 42 a limit jsme si stanovili právě na maximum 42 účastníků, aby akce zůstala komorní a velmi osobní. Všechny nás spojuje zájem o vývoj aplikací a víkend trávíme debatami o technologiích, našich zkušenostech a aktuálních problémech. Kromě neformálních diskusí si každý z účastníků připraví krátkou přednášku na jím zvolené téma - typicky v rozsahu okolo 10 minut. To, že se jedná o zajímavé přednášky se můžete sami přesvědčit shlédnutím video záznamů.

Od roku 2011 se může přihlásit kdokoliv, kdo má zájem se zúčastnit a v tomto trendu chceme pokračovat.

Pokud máte nějaké další dotazy, můžete kontaktovat organizátory na adresách:

vrablik@gmail.com nebo novotnaci@gmail.com

Přednášející Petr Ferschmann Pohled do publika Petr Hamerník vyhrává licenci JetBrains Networking

Partneři roku 2021

Chcete se stát partnerem ročníku 2022? Kontaktujte nás na adrese info@jopenspace.cz.

  • Alteryx

    Alteryx je leaderem v oblasti samoobslužné datové analytiky. Platforma Alteryx Analytics poskytuje analytikům unikátní možnost připravovat, kombinovat a analyzovat všechna jejich data pomocí opakovatelného procesu a následně nasazovat a sdílet výsledky analýz během hodin a nikoliv týdnů.

    Analytici milují Alteryx Analytics, protože jim umožňuje připojit se k datovým skladům, cloudovým aplikacím, excelovým tabulkám a dalším zdrojům, získávat z nich data, čistit je a napojovat na sebe bez ohledu na různorodost jejich původu. Poté mohou provádět prediktivní, statistickou či prostorovou analýzu pomocí téhož intuitivního uživatelského rozhraní, bez jakéhokoliv kódu. Tisíce analytiků po celém světě používají Alteryx každý den. Navštivte www.alteryx.com.

  • Cimpress

    Cimpress pomáhá milionům lidí vytvářet customizované produkty jako trička, batohy, marketingové materiály nebo vizitky. Vyvíjíme platformu, která nabízí nástroje a služby pro grafický návrh produktů, optimalizaci logistiky, sledování objednávek apod. Za poslední rok naše platforma zpracovala 30 milionů objednávek od 17 milionů zákazníků. Software vyvíjíme v autonomních týmech, které jsou zodpovědné za design, vývoj i podporu vlastních microservis na platformě AWS.

  • Morosystems

    Již od roku 2006 stavíme v MoroSystems inovativní řešení v oblasti informačních systémů. Věříme, že nejlepší řešení vznikají díky spolupráci lidí a naším cílem je vytvářet prostředí, které spolupráci podněcuje.

    Každému, kdo má zájem o novinky z vývoje nejen v Javě i život v MoroSystems doporučujeme přečíst si náš blog.

  • FG Forrest, a.s.

    Forresti patří mezi českou špičku webového vývoje. Není třeba mnoho slov - naše práce mluví sama za sebe. Děláme vše naplno - pracujeme, sportujeme, bavíme se a pomáháme, kde se dá.

    Pokud i ty chceš běžet s Forresty, napiš nám - není to tak těžké, stačí dobré srdce a zdravý rozum.

  • JetBrains s.r.o.

    Jsme lídři na trhu s profesionálními vývojářskými nástroji, které pomáhají vývojářům po celém světě zvyšovat produktivitu a dosáhnout požadovaných cílů bez nutnosti ztrácet čas opakujícími se rutinními procesy.

    Nabízíme nástroje nejen pro vývojáře, ale také pro týmovou spolupráci - IntelliJ IDEA, Space, PhpStorm, ReSharper, WebStorm, CLion, AppCode, TeamCity, YouTrack, RubyMine, PyCharm, Upsource a další.

  • Barclays

    Se 120 tisíci zaměstnanci a tradicí starší než 326 let je Barclays jedna z největších bankovních institucí světa. Za celou historii jsme přišli s mnoha revolučními myšlenkami, které změnily způsob, jakým lidé přemýšlí o svých financích. Ať už se jednalo o první kreditní kartu vydanou ve Velké Británii nebo první bankomat, vždy jsme se snažili posouvat hranice bankovnictví o kus vpřed.

    Naše pražské kanceláře jsou součástí technologické a provozní divize, která vynakládá maximum pro to, aby se držela na technologické špičce. Samozřejmě technologie není všespásná. Nejdůležitější je, aby vynalézavost tohoto oddělení přispěla ke zlepšení služeb banky klientům a zjednodušila život ostatním zaměstnancům naší společnosti.

  • Commity

    Jsme Commity.cz - parta vývojářů, která vzešla z komunity kolem Google Developer Group Jihlava. Těší nás práce na dlouhodobých projektech pro naše zákazníky, zároveň se snažíme přinášet na Vysočinu technologické vzdělávací akce a dávat prostor k zapojení novým vývojářům. Pojďte do toho s námi!

Přednášky a záznamy

Mediální partneři

Kafemlejnek.TV

Zastavte se na kávu s Honzou Novotným a Petrem Ferschmannem a nic vás při tvorbě software nesemele. Od vývojařů přes designery, architekty až po zakladatele společností. Za kamerou stojí Tomáš Hodr.

Fotogalerie

Kompletní fotogalerie z akce

Zápisky z konference

    Jan Horalík

    Kvantové počítače

    • využívá se znalostí quantové mechaniky
      • suprapozice,
      • interference - mohou se zvýraznit a
      • entanglement - schopnost provázat dvě částice geograficky vzdálené
    • umožňují řešit exponenciálně ryhchleji problémy neřešitelné jiným způsobem
      • RSA šifra - Shorův algoritmus
      • kdy bude prolomen bitcoin?
      • výzkum materiálů - sloučenin, které jsou možné je velké množství, které není ani možné vyzkoušet a kvantové počítače mohou být velmi efektivní v simulaci
    • hlavní problém - extrémní fyzikální podmínky a s tím spojený šum
      • velký pokrok v posledních letech
      • odhad že za deset let dojde k velkému zlomu
    • kvantové obvody
      • u klasických obvodů máme hradla
      • kvanmtové obvody jsou obecnější - vstupy a výstupy nemusí být jen 0 / 1, uvažuje se superpoziceměření p zmizení superpozice se převede na 0,1
    • kvantový stav qbitu
      • představa koule v prostoru, severní pól 9, jižný 1, a každý bod na této svéře je validným stavem.
      • tento bot je možné vyjádřit dvojicí komplexních čísel
    • kvantové hradlo
      • násobí unitární maticí - abysme se stále pohybovali po povrchu koule ve validním stavu
      • pauliho-X hradlo
      • NOT
      • CX - CNOT hradlo
        • kontrolované hradlo, dva vstupy dva výstupy
        • jeden vstup je kontolní - pracuje jen když je na něm jednička
      • Halamardovo hradlo
        • transformuje dva stavy do superpozice
    • Kvantový Hello World -sestavení obvodu

    • Spuštění - na simulátoru, nebo na kvantovém počítači

    • typicky se spouští mnohorkát kvůli šumu - aby statisticky vygeneroval správný výsledekspuštění na kvantovém počítači

    • dostupný prakticky zadarmo v každém cloudu

    • praktický příklad použití je bezpečnost a kryptografie

    Kamil Ševeček

    ZX Spectrum

    • 23.dubna 2022 - výročí 40 let
    • počítač se nerozpadl v prach, komunita nespí a vyrábí se klony
    • v osobním volnu dělá vývoj na spectru
    • má doma krásné muzeum ZX techniky a originálnho SW

    Čím to začalo

    • 23.dubna - 1982
    • ZX Spectrum - Sir Clive Sinclair
    • 30.7. 1944 - 16.9. 2021
    • Didaktik Gama
    • Didaktik M - nejstabilnější klon
    • Kompakt - s didketovkou
    • 90 léta - usnulo - na smetišti zadarmo
    • Ben Heck - ZX Spectrum na nepájivém poli
    • poměrně jednoduché

    Dnes jak se dělají

    • Diskrétní součástky - old school, velký problém s ula chipem
    • Harlequin 128 - stavebnice z didkrétních součástek

    • softwarová emulace - neemulují rozšiřující sběrnici

    • v system on chip vytvořená Spectrum emulace
    • VEGA - krabička která se připojí k televizi
    • ZX Baremulator - raspberry pi emulator

    FPGA

    • 100% kompatibilní se Spectrem ale drahé
    • ZX spectrum next - krásné zařízení ale nedostupné
    • Překvapivě velká komunita

    Oldcomp.cz

    • Bytefest 2021 konference v Praze
    • ZX Spectrum a Kamilovy projekty
    • TV digitizer - Cinch composite - HDMI
    • Plošinovka Dizzy - v Kotlinu

    Lukáš Křečan

    Jak vyhrát diskusi na internetu

    • Zesměšnit
    • Ukázat fakta
    • Nenásilná cesta -

    Co vyvolává nepravda na internetu - emoce - zlost frustraci

    • vztek = strach / stud / bezmoc

    Postup

    • ubrzdit automatickou reakci
    • pochopit svoje pocity - proč mi to vadí
    • pochopit co potřebuje ten druhý
    • pobavit se o tom jak to udělat spolu
    • https://nenasilnakomunikace.org/

    Kartičky

    • stěžejní pomůžou pojmenovat svoje emoce

    Martin Talpa

    Life 3.0

    • možný vliv umělé inteligence na lidskou společnost

    Co je život?

    • život ? kultura (změna vlastního SW) ? technologický život (změna vlastního SW i HW)
    • Inteligence - schopnost řešit komplikované tasky
    • dnes vídáme spíše slabou AI - šachy - ale neumí řídit auto
    • obecná inteligence - schopnost řešit jakýkoli problém stejně jako člověk
    • Superinteligence - za hranicemi člověka
    • Inteligence Explosion - inteligence, která se dokáže vylepšovat
    • Kniha Life 3.0 - Max Tegmark

    Hypotetická situace 1 - systém umí generovat AI systémy a vylepšovat se2 - během dne sám sebe vylepší a může vydělávat peníze bude řešit MTurk tasky ty dojdoukam dál - počítačové hry a programy ne - co kdyby vytvořil něco nebezpečného 3 - filmy - přečte knihy, scénáře a začne psát filmy a vydělá víc než všichni dohromady4 - Nestačí AWS- začne designovat datacentra aby měl kde běžet5 - získání moci

    • média - generování textu a analýza politické situace
    • ví jak podpořit, a koho se zbavit pomocí
    • pokud mají nejčtenější média tak je to velmi jednoduché nejsou zlí6 - nový svět - AI vybírá to nejlepší pro lidskou společnost a podporuje, tím vzniká víc stejně smýšlejících stran a lidé je podporují7 - aliance přeroste i vlády a na pozadí bude ovládat celý světlidé jsou spokojení, protože všechno funguje dobře

    Milan Lempera

    XTDB - CruxDb

    • svět funguje v čase a často si jej zjednodušujeme

    Např:

    • objednávkový systém
    • adresa odběratele se mění ale chceme mít historické hodnoty
    • evidence zaměstandů
      • mění se jména, náklady

    Bitemporal databáze

    • v databázi jsou dva zaznamy o čase
    • valid time, transaction time, decision time

    Použití XTDB

    • transakce - put / delete / match /evict
    • přistupuje se k jsonu
    • dotazuje se pomocí datalogu
    • dotazy dle času ukazují aktuální stav
    • evict - umožní zapomenout - řešení gdpr
    • SQL adapter - pokud nevyhovuje datalog je možné sql
    • Java API, HTTP api

    Dotaz do publika - jak toto řešíte:

    • duplikace dat - bobtnání dat
    • vložení kopie (adresa do objednávky)
    • datový sklad - protože v realtimu není historie často třeba
    • workspace - v oraclu
    • datalog umožňuje doptávat se na logické vazby (jméno herce, který hrál s vybraným hercem a je mladší než on)

    Petr Filip

    Jak jsem programoval RT multiplayer hru

    • z programátorského hlediska nutno vyřešit, jak komunikovat
    • jaká data posílat na a z klienta

    Přenos dat

    • long pooling - spousta requestů / responsů
    • event source - data jen ke klientovi
    • websockety - obousměrná komunikace

    nejdůležitější je samotný stav -

    • GameState = (currentState, moves, rules) = rules(currentState, moves)
    • ukládal historii stavu pro možnost znovuposlání - je k ničemu
    • ale poté došlo k tomu, že se posílal stále celý stav
    • v nové hře potřebujete
    • vykreslovací vrstva
    • definice stavu hry
    • pravidla

    Tomáš Látal

    Parse, don´t validate

    • funkcionální přístup umožní odstranit validaci vstupu z funkcí
    • pomocí parseru můžete z méně strukturovaného vstupu udělat více strukturovaný
    • dovnitř funkcí se pustí validní vstupy, nad kterými nemusíte dělat žádné kontroly
    • silný vstupní typ, slabý výstupní typ
    • neprázdné pole
    • neduplicitní pole

    • může vést k tomu, že nevalidní data se protáhnou systémem, a až na konci se zjistí, že nevyhovujev Elmu na to ale příjde při kompilaci

    • možnost zapouzdřit třeba číslo karty, kde nikde neuteče číslo a bude zde jen poslední čtveřice

    Víťa Plšek

    Lego

    • pokud máte sety z lega, často děti vyžadují další sety což není příliš ekologické a leze to do peněz
    • služba rebrickable - návody na alternativní plány pro sety z lega
    • podle čísel setů umožňuje vyhledat a stáhnout návody na řadu dalších modelů ze setů, které už máte
    • je možné si vytvořit jednoduchou bluetooth klávesnici na tři tlačítka s cenou 250 Kč, stačí umět trochu pájet
    • doporučuje nahrávat s dětmi návody na složení modelů pomocí stop motion aplikací v mobilu / tabletu
    • bricklink, umožňuje najít konkrétní dílek, který se ztratil a najít obchody, které je prodávají a v Čechách jich je hodně. Dílek stačí často třeba jen korunu.
    • IKEA příborník se hodí na kategorizaci dílků lega podle typu
    • třídit lze dobře ručně quicksortem
    • na YT je i video, které představuje automatickou třídičku, která používá AI na třídění dílků lega - https://www.youtube.com/watch?v=04JkdHEX3Yk&,ab_channel=DanielWest

    Strudio pro design lego modelů - https://www.bricklink.com/v3/studio/download.pageBrickling - bible lega - https://www.bricklink.com/v2/main.page Rebrickable - alternativní modely - https://rebrickable.com/home/

    Tomáš Zvěřina

    AsciiiDoc a PlantUML

    • ASCII doc je principem podobný markdownu, ale hodí se na psaní celých knih
    • má rozšíření pro poznámky, sidebary, poznámky pod čarou, citace, zdrojový kód
    • jeden z pluginů je PlantUML, který umí activity diagramy, sekvenční, deployent diagramy, vizualizovat JSON … velmi jednoduše se ty diagramy píší
    • výsledkem je velmi produktivní a spravovatelná dokumentace
    • nevýhody - klient to nemůže editovat - komentáře jen jako code review, diagramy nelze doladit o layoutu rozhoduje algoritmus, při větším množství obrázků je to pomalejší
    • výhody: lze to verzovat, rozdělit a includovat
    • formát umožňuje plno věcí a zároveň není výsledek rozbitý, formát je robustní
    • dokumentace se builduje Mavenem, existuje plugin do IntelliJ Idea … musí se ale něco doinstalovávat na stroj, který provádí publikaci

    Vojtěch Růžička

    Web monetization

    • pokud jsem tvůrce na webu a chci platit
      • reklamy
      • paywall - zaplaťte pro další čtení
      • jsou velmi invazivní
    • Brave browser
      • řeší privacy
      • řeší odměňování tvůrců
      • za reklamu dostávám BAT Cryptocurrency
      • na stránce vidím, zda stránka může získávat odměnu
      • můžu poslat přímo
      • můžu nastavit auto příspěvek - podle toho, jak na web chodím.
      • po spárování peněženky, mohu jako tvůrce dostávat odměnu
      • podpora také github, youtube, reddit, twitter, umožňuje odměňovat
      • problém - svázáno s prohlížečem - aktuálně 38M uživatelů
    • Web Monetization - návrh standardu W3C
      • po schválení by mohli podporovat prohlížeče
      • Uživatel
        • Registruju se u poskytovatele - platím Coil - (5$ měsíc
        • Aktuálně není standard - tedy potřebuju plugin
      • Poskytovatel
        • Registrace
        • připojení peněženky - Gatehub / uphold
        • JS api, můžu se dotazovat na eventy (začal platit)
    • Aktuálně Web Monetization menší použití než Brave Browser
    • API aktuálně nepodporuje “subscription” spíše funguje stylem, kudy chodím, tudy trousím peníze
    • dev.to - integruje

    Zbyšek Voda

    Jak na desky plošných spojů

    • v čem navrhovat:
      • EasyEDA - online, napojeno na prodejce součástek, jednoduše se vyrobí tišťák
      • KiCad - oblíbený - opensource, stojí za ním CERN
    • Kroky návrhu
      • Schéma
      • Konkrétní součástky
      • Import tvaru výsledné desky - vrstva - edge cuts
      • Rozmístění součástek
      • Nakreslení spojů
      • Vygenerování jednotlivých vrstev pro tvorbu
    • Výběr výrobce
      • číňan
      • Pragoboard
      • Isler
    • ukázka objednávky - JLCPCB
      • upload a výběr barev
      • naklikám
      • za 14 dní + celní řízení a mám je doma
      • je možné obědnat i se součástkama - KiCad by měl umět PCBA (PCB assembly)

    David Ondřich

    Jak (vy)řešíme GDPR

    • osobní údaj je v principu cokoliv podle čeho je možné identifikovat
      • možnost nakládat ukládá zákon, oprávněný zájem, souhlas
      • požadavky zákazníka
      • mít zákazníka jednou, se správnou rolí
      • historizace
      • omezená viditelnost, (pseudo)anonymizace
    • architektura
      • IDM - zná jen identifikátor, nezná email uživatele -
      • při přihlášení emailem se vytvoří hash proti kterému se porovnává
      • rejstřík osob pro osobní údaje - ta drží osobní data
      • profily - implementace role s daty navíc
    • REST API
      • zámky - data nelze měnit, musí udělat externí autorita, nebo právní zákaz změny dat
      • vše v paměti
      • úložiště ala firebase, event- driven úpravy
    • Kde je to GDPR?
      • data na jednom místě
      • klienti pracují jen s ID + displayName
      • anonymizace na jednom místě v kombinaci se zámky
      • auditní stopa

    Filip Sedlák

    Audit a startup

    • i v prostředí startupu se dá s auditem vyrovnat
      • chtějí vědět co děláte a co bude když se to rozsype
      • auditoři mají rozum a do malého týmu tolik netlačí
      • zpřesňování auditu
    • PCI-DSS - práce s platebními kartami
      • Roční KPMG audit
      • Due Diligence
      • 2 týdny práce pro několik lidí
      • spousta otázek z jiného světa
      • dopisován dokumentace
      • dohledávání
    • Nejvíc je zajímá
      • Change management
      • github + youtrack stačil
      • Důležité mít malý počet lidí, kteří mohou zasahovat do produkce
    • Vše zaznamenávat
      • Mít penetrační testy - auditorům stačí mít zaškrtnuto, že mají
      • Pci-DSS
      • nemít citlivá data a mít oddělené služby
      • Dodavatel měl jednoduchou databázi Key value - prodával za těžké peníze, protože procházel audity
      • není třeba splnit vše
      • nelhat a přiznat, že něco neumíme, je na majitelých aby se rozhodli co s tím

    Filip Štaffa

    Guix

    • výběr distribuce linuxu
    • ubuntu, debian - nuda, používají to všichni
    • GUIX - distribuce a package manager
      • Balíčkovací manager
      • zajišťují verzování souborů
      • řeší závislosti balíčků - nedovolí mít více balíčků ve stejné verzi
      • breaking update - nemůžu mít knihovny, které závisí na různých verzích
      • musím potenciálně upgradovat když nechci, nebo musím počkat na upgrade
      • je těžké zreplikovat instalaci současného systému
      • některé balíčky mohou být novější
      • při použití více balíčkovacích systémů musíme řešit kompilaci
    • GUIX
      • umožní mít balíčky ve více verzích
      • při instalaci vytváří profil a ukládá s hashem a zachovává starou verzi balíčku
      • profil - skupina balíčků
      • balíčky mohou být z libovolné doby - je možné replikovat jakýkoli stav
      • channel - repository s definicemi balíčků, commit určuje verze všech balíčků
      • source code distribuce - s binárními substitute
      • GNU - libre kernel - nemá svobodné balíčky
      • Asdf - možnost mít více verzí runtimu a přepíná podle adresářů - https://github.com/asdf-vm/asdf

    František Řezáč

    K čemu je pravda

    • Samoopravné a samodetekující kódy
      • pokud posíláme po nespolehlivém kanálu
    • řešení
      • zdvojení - samodetekující kód - nezjistíme ale co je správně
      • ztrojení - samoopravný - pravděpodobně opravíme podle dvou správných
    • Hammingův kód
      • 4 bity zakódujeme pomocí 7 kódů
      • vypočítá se “syndrom” - zjistí chybu v konkrétním bitu
    • Kompilátor

      • v kódu má dostatek redundance na to, aby vydedukoval co jsme chtěli udělat
      • navlékáme kód na syntaxi
      • pokud je kód složitý a není tam dostatek redundance, tak není možné zjistit kde je chyba - například Java Streamy
    • Explicitní tvrzení o skutečnosti jsou redundantní

      • pravdivé tvrzení může sloužit jako kontrolní redundance
    • V programování -Curry-Howardova korespondence
      • datový typ odpovídá logicky dokazovanému tvrzení a program je jeho důkaz
      • Redundance v programovacím jazyce je tradeoff
      • je třeba vyměnit výhody na nevýhody

    Jan Novotný

    Evita DB

    • E-commerce API pro sjednocení frontendů e-shopů
      • důraz na rychlost
      • google preferuje rychlé odezvy
      • research grant
      • tři konkurenční týmy
      • standardizované api
      • tři implementace - PostgreSQL / Elasticsearch / in-memory noSQL -
      • FG forrest se zabývá in-memory databází
    • kritéria
      • kompletní api
      • rychlost

    Zajímavé knihovny

    • Roaring Bitmaps
      • práce s rozsáhlýma polema čísel (ID záznamy v databázi)
      • automaticky kombinuje pole, BitSet , run-length encoding
      • velká úspora proti výběru pouze jedné strategie - pro každý případ se použije nejvýhodnější varianta
    • Kryo - serializační knihovna
      • řeší pomalost standardní serializace
      • 1,5gb dat - 7 sekund
    • Random testing
      • testování náhodných operací nad datovými strukturami
      • používá pro transaction memory
      • porovnávání operací nad referenční implementací a vlastní implementací
    • Výkonostní testy
      • CI/CD job - vytvoří infrastructure nad digital ocean, spustí testy a pošlou do gistu a infrastruktura se zruší - nízká cena
      • JMH - visualiser - zobrazuje JSON z Gistu

    Jaromír Pešout

    Shenandoah GC

    • firma Luxonit - low latency Java - zpracování dat
      • Ve finančním světě se dělají aplikace v C++ kvůli absenci garbage projektoru
      • díky nízké latency by bylo možné problém považovat za vyřešený
    • Shenandoah GC
      • JDK 8 - 17
      • low pause time
      • negenerační kolektor
    • Cyklus shenandoah
      • Konkurenční fáze - s aplikací Continuous mark
      • Paralelní fáze
      • Celá halda se prohledává najednou
      • pauza závislá na velikosti root setu - 5-10%
      • vysoké nároky na paměť, ideální utilizace 30%
      • poté zpomalení a prodloužení pauzy
      • Amazon corretto pracuje na podpoře generací
      • JDK 16-17 - concurent stack processing
      • STW méně než 1 ms

    Luboš Račanský

    Výuka programování bez PC

    • ve volném čase vede kroužek programování
      • jako první věc chce naučit převod z 10ky do 2kové
    • jako v Hejného matematice
      • základní schopnost - rozpoznávání vzorců opakování
      • trénovat barvy, nebo geometrické tvary
      • iq testy jsou pěkné úlohy na opakování
      • trendem jsou bloková schémata
      • úloha s podmínkami a kratami
      • rychle se naučí sledovat kroky, ale problém je abstrakce a opakování
    • datová struktura algoritmů
      • komprese
        • zvládne i druhá třída
      • kontrolní číslice - čárový kód
      • třídění
        • děti podle schématu mohou putovat v políčcích a na konci budou seřazení
      • grafové algoritmy
        • spojení mezi městečky
    • Bobřík informatiky - spousta úkolů pro různé věkové kategorie
    • Podzimní aktivita Codeweek
    • Stavebnice
      • Boffin a klony
    • Důležitost komunikace
      • pomocí lega a tiché pošty je možné tvořit stavby, a porovnávat se zadáním - dobrá ukázka, že komunikace je důležitá
    • Turring Tumble - turingtumble.com
      • turingovský počítač

    Tomáš Záluský

    Neo4j

    • grafová databáze
      • subset Cetin Network Inventory - 140 000 uzlů, 1.5M hran
      • úloha - analýza výpadků v síti
      • původní implementace - oracle
      • v nové implementaci - zmenšení datového skladu a napojení na Neo4j
    • přechod mezi paradigmaty
      • řádek možno připodobnit k uzlu v grafu
      • relationship není přímo hrana ale je to jemnější propojení
      • nemusí odpovídat 1:1
      • dotazuje se jazykem Cypher
      • grafové paradigma je silné pro hierarchie
      • je možné říct, kolikrát je možné přeskočit uzel
    • algoritmy a*
      • více se ptáme jak než co
      • java plugin - uložené procedury
    • netahejte skálu ke krumpáči.
      • Je možné vytvořit plugin do Neo4j, tedy vše se provádí v Neo4j
      • Traversal framework - umožní určit jak se graf bude procházet
      • dobrý sluha zlý pán
      • Plugin psali i kvůli zjednodušení, cypher by byl příliš složitý
    • Databázi si hostuje cetin sám

    Zdeněk Henek

    Volební obvody vytvořené genetickým algoritmem

    • změna pravidel vedla ke spravedlivějšímu rozdělení mandátů na hlasů
    • v 2017 - výsledky voleb vedly k tomu, že strany 6% měly 3% mandátů kvůli DHondtovu pravidlu
    • Pokud si začnete měnit volební obvody budete obviněni z Gerrymanderingu
    • V USA okrsek zvolen tak že vypadal jako salamander
    • většinový volební systém vede k tomu, že ten kdo vyhraje o procento dostává všechny mandáty

    Jaký systém by měl být spravedlivý

    • středočeský kraj -milion 397 tisíc
    • Karlovarský 300 tisíc
    • menší kraj generuje míň mandátů
    • Autoredistrict - pomocí genetického algoritmu vytvořeny volební obvody, které mají stejný počet voličů - tedy potenciálně stejné zastoupení
    • algoritmus to zvládne pro ČR s rozdílem desítek lidí
    • genetický algoritmus
    • pomocí fitness funkce zajistí spojitost okrsků
    • každý výpočet vypadá jinak

    Borek Bernard

    Jak v JSONu poslat číslo

    • některé api - posílají string, některé number

      • problém s number a přesností
      • řešíme přenos - datové typy v JSONUI
      • cena je normální číslo
      • IEEE 754
      • používá každá platforma
      • Kolem čísel je spousta bludů
    • Argumentace: 1.7 se nedá vyjádřit přesně - výsledkem je 1.69 nebo 1.7

      • 1,7 - double
      • uloženo jako 1.699999 …..
      • printing = 1.7 a nikdy 1.69
      • Tedy argumentace je špatná
    • JSON jako celek je string

      • JSON number je bezpečný na přenos, ale ne počítání
      • Přenos jako string má také své problémy - 7.47 - je formátorvací rozhodnutí
      • Pro přenos Number OK, ale ne pro výpočty
      • pro výpočty decimal datový typ
      • spočítat a zaokrouhlit
      • V Javě do BigDecimal
      • při převádění - použít string a ne number

    Martin Bednář

    Istio

    • service mesh
      • konkurence Linkerd(málo možností), Consul (komerční)
      • Istio - intenzivní vývoj
    • Funkce
      • Automatický load balancing - HTTP, gRPC, Sockety
      • routing, retrie mezi servisami, circuit breaker
      • je možné pracovat s chybovostí service - FaultInjection
      • metriky, a logy
      • zabezpečení, Autentizace autorizace (ingres)
      • dostupná v cloudu
    • Architektura s Istio
      • do každého konteineru přidá proxy envoy
      • služba s proxy komunikuje s HTTP
      • service spolu komunikují přes https - control plane je generuje a posílá do proxy
    • GUI
      • Kiali - vizualizace provozu a konfigurace istia
    • Budoucnost
      • B/G deployments - Canary deployments
      • WASM - filtery

    David Voňka

    Překlad do SQL

    • vytváří systém pro zpracování dat - no code system
      • velké množství práce v paměti po natažení všech dat do paměti
      • možno vylepšit
      • řada problémů
        • joiny
        • indexy
    • funkce nekorespondují v db a aplikaci
      • snaha o přepis do sql - Snowflake v cloudu
      • aktuálně zkouší proti sqllite

    Lubomir Petera

    Spolehlivost

    • jak špatná může být špatná prezentace
      • kritéria úspěchu
      • máme tendenci žít v černobílém světě
      • kdo si řekne “super mám 60% programu přeloženo a pak to spadlo”
    • faktory kvality - Spolehlivost - požadované funkce s požadovanou přesností
      • SLA
      • SLO
      • SLO
      • KPI
    • jakou škálu použít pro hodnocení jak vhodné je UI
      • nic není černobílé, je dobré znát celou škálu
      • často v porovnání s jinými, to nemusí být tak špatná volba
      • https://userinyerface.com/