Michal Šrajer - Happyness at work
Výsledky
Pro mě smysluplné výsledky
Vztahy
Možnost růstu
1 z nejdůležitějších potřeb
Firmy třeba vezmou experta z 1 oblasti a dají ho do jiné, kde je newbie
set-point theory
důležitá férovost mezd
Co dělá dobrý manažer?
Pomáhá budovat dobré vztahy
Pomáhá dosahovat lidem výsledky
S lidi se baví, a rozumím jejim potřebám
Tyrkysové organizace
Orientace na purpose
Např. Buurtzorg
Kniha: Reinventing organizations
Martin Jinoch - organizování akcí pro komunitu
Nebojte se prezentovat anglicky
Zdeněk Merta - Jak děláme continuous development
Airbank DE
Cloud Azure + Microservices
CD - proč?
Akcelerace dodávání nových features
Experimentálně - testujeme nové features na klientech na produkci, zahodíme, co se neosvědčí
Best practices
Klíčem je dodávat malé změny hodně často
GITOPS pattern
GIT = jediný zdroj pravdy o systému
GIt = jediné místo zprávy
Technologie
GitLab (pro CI)
Azure
Weaveworks Flux
Poslouchá v GITu změny
Automaticky updatuje MS přes Kubernet API do clusteru
Bitnami Sealed Secrets
Snížení rizik
Feature flags
Canary release (Istio)
GitOps i pro infrastrukturu
Push do gitu = změna infr.
Terraform a podpora Azure
Lukáš Křečan - jak postavit koloběžku
Když chce klient auto, dejte mu nejdřív koloběžku
Častá chyba - nedělá se sběr zpětné vazby z používání koloběžky
Zadání problému (chci auto) není řešení problému
Chytré zadání problému
Jako ředitel
chci prostředek
abych mohl jezdit po areálu
Šéf zadává úkol
Dodávejte lidem to, co potřebují, ne to, co chtějí
David Oldřich - Ig Nobel Prize
Luboš Račanský - Jak jsem začal s kroužkem programování
Akce Hodina Kódu
děti si zkouší progarmování
Manželé Javůrkovi - lázně toušeň
mají know-how
školné - 400Kč za půl roku, počítač kolem 2200Kč
Kolik dětí?
20 je moc
6 je fajn
Kolik času?
Hodina příprav
Dělší pauza na oběd
2 lekce po 60 minutách
30% holek
code.org
neziskovka, poskytuje lekce pro děti
Co se osvědčilo
Robot meet edison
Michal Hybášek - Atlassian Team Play-book
Metodika (best practices), jak Attlassian řídí své týmy
Jak týmy, tak manželství, vyžadují systematickou práci na rozvíjení týmu
Typy týmů
Healthcheck týmu
10 minut přípravy + 1 h
Oblasti fungování, o kterých lidé hlasují
zelená - jde nám to dobře
žlutá - so so
červená - vůbec nám to nejde
diskutuje se, dokud se tým neshodne na stejné barvě v každé otázce/oblasti
vybere se jedna věc, kterou zlepšíme, za 6 týdnů se znovu zopakuje
Příklady oblastí
Velocity
www.atlassian.com/team-playbook
Moderátor může podpořit člověka s "negativním názorem", ať ho vyjeví naplno, pročistí to vzduch
Lukáš Kolísko - the things people get wrong about blockchain
blockchain = distributed, centralized
Omezení: nízký počet transakcí za vteřinu
POW - proof of work
skupina nezávislých nodů, je potřeba rozlišit nespolehlivé
Concensus algorithm
princip = decentralizovaná loterie
pravděpodobnost výhry závisí na počtu koupených lístků
jejich odměna je součástí toho, co vygenerují - to by mělo být validní
bitcoin
double-spending
resilient
Dagi Roman Pychlík - QA in production
do teď - QA on testing env.
Problém: dlouhý feedback od zákazníka k vývojářům
nově - QA in production
QA zkoumají, jak se používá aplikace při produkci
nástroje
feature flags
Fázovaný rollout
Feature se zapne filtrem na IP adresu
monitoring
Logging via Splunk
Real User Monitoring
APM via NewRelic
Boomerang & Grafana
Ukáže časy, kolik strávil uživatel na stránce a kolik čekal na http requesty
InfluxDB/Grafana
Probing
testuje klíáčovou funkčnost
Seleniové testy
execution
oprava věcí, které se objeví při testování na produkci
Martin Talpa - kde se vzalo moderní GUI?
Vannevar Bush
Předpověděl stroj, který bude uchovávat a vyhledávat všechny dostupné informace
Douglas Engelbart
První počítač NLS s myší, GUI, videoconferencing
Mother of all demos
Lidé přešli do Xerox Parc
WYSIWIG editor
Postscript
Laserová tiskárna
Postavili nástupce NLS - Xerox Alto
Sil vector grapihics editor
WYSIWIG
Další iterace - Steve jobs WIMP
Vojtěch Růžička - GatsbyJS
JAM Stack
Staticky vygenerované stsránky namísto CMS
Rychlejší
Bezpečnější
GatsbyJS
podpora hodně formátů
Markdown, JSON, YAML
podpora datových zdrojů
wordpress
Drupal
Dotazování na data přes GraphQL
Uvnitř PWA, GraphQL
Orientace na výkon
I když SPA v reactu, chytře přednačítá zdroje
Inlinování kritických CSS
Responzivní obrázky
přes GraphQL můžu transformovat obrázky (např. ořez)
WebP formát obrázku - oproti JPG, PNG menší velikost
Image placeholders
Generuje Progressive Web Applications
zvládne pracovat i offline nebo s omezeným připojením
vojtechruzicka.com
Vladimír Oranout - Micronaut
Micronaut CLI
Instalace přes SDK man
DI/IOC container
Proč?
Nepoužívá reflexy, generuje si extra třídy při Compile time
3-4x rychlejší start oproti spring boot
<1s, na GrallVM < 22ms
méně potřebné paměti
Nativně cloud native
Jednoduchá tvorba AWS lambda funkcí
Vlastimil Dolejš - Řízení remote týmu
Kickoff - 2 týdny fyzicky spolu v ČR
Wireframe
Technologie
Proof of concept
Problémy
2 ze 3 odešli z týmu
Obtížná komunikace našich představ
Nestíhá se termín
Lessons learned
Důležitá důvěra v lidi
Když se poruší, začně vzájemné obviňování
Potřeba kvalitně a často komunikovat
Těžko je lze motivovat, když nejsou naši zaměstnanci
Milan Lempera - State of JS
npm balíčkovací systém
transpilery
OOP
class od ecmascript 6
proposal na private methody a field deklarace
populární funkcionální přístup
reaktivní programování
immutable api
akgebraické datové typy
typescript
lepší podpora IDE, refactoring
v runtime pořád js
superset javascriptu
má private fields
řada frameworků (např. Angular) jako alternativa k react + JS knihovny
Frameworky jsou konzervativní, typovou cestu
Jan Steinbach - Zpovykaní vývojáři aneb jak se buduje plzeňská kokmunita
DevFest v Plzni - 350 lidí
to k vytvoření komunity nestačí
malé eventy
přednáškový večer s večeří
Možnost koupit vstupenku bez večeře
Meetup
Startup pivo
Web Sprint
Soutěž pro střední a VŠ
Grilovačka
DevBattle
Souboj dvou technologií s diváky a dvěma speakery
Deskovky
proč komunita?
Vzájemné učení
win win pro všechny
jak na to?
Vstupné na eventy pomůže, že zaregistrovaný účastník přijde
300Kč na víkend student
Tomáš Řezáč
Ivo Musil - Jak na modeling
Objektové modelování
Vytváření modelu reálného světa
Eclipse modeling framework EMF
Definice dat (tříd)
Perzistence
Prezentace
Definice dat v XMI
Možnost uložení do JSON, rel. nebo noSQL DB
Metamodelování
Transformace
GenModel > generuje zdrojový kód z modelu
Sirius
Grafické zobrazení a editace modelů
Ke stažení Eclipse modeling toolbox
Míň programujte, víc modelujte
Několik talků jsem nezapisoval, protože jsem byl na workshopu Micronautu
Honza Šimonek - TDD turnaj
1 denní programátorská soutěž
2 členné týmy
Průběh
Hráči nemají game engine, 1 hodinu kódování jen podle testů
Poté se v game engine roboti utkají
Pět kol
Ceny, pizza
Motivace
Interní zaměstnanci
Teambuilding
Veřejnost
PR
HR - recruitment
Marketing
Michal Bernhart - LSP
Language Server Protocol
Oboustranná komunikace client (IDE, editor) LSP server
IDE as a service
editor může LSP implementovat pro různé jazyky
Existující IDE/textové editory můžou podporovat LSP pomocí pluginů
Výhody
skvělé pro autory nových jazyků
skvělé pro autory nových IDE a editorů
Radek Teichmann @ Morosystems - Rozvoj a sdílení znalostí
Znalost
Extrémě důležité pro firmu
Vytvořili jsme tým Knowledge leads
Solution architekti
Pracují ve více projektech naráz
Senior vývojáři
Každý má ročně 5 dní na vzdělávání
Interní školení
Online vzdělávání
Mimopracovní vzdělávání
Raději workshop než "školení"
Komunitní eventy po práci
Konference v zahraničí s výstupem
blog post na java.cz
blog post na našem veřejném webu
MoroSnídaně
voting & management přes Jiru
Hackatony
2x ročně
dobré je pozorovat a vytipovat třeba team leadery
DB znalostí
Nesmí tam být nic, co lze snadno vygooglovat
Confluence & wiki
Best practices
MoroAkademie
3 měsíční projekt pro studenty se zapojením do projektů
Lubomír Petera @ dynatrace - monitorování výkonu aplikací
APM
Pavel Jetenský - No More Mr Nice Guy II & Sexuální polarita ve vztahu
Jak se pozná "hodný kluk"?
Základní životní paradigma pro štěstí
Když budu hodný, dostanu ocenění a lásku
Štěstí dosahuje skrze ostatní
Zištně pomáhá ostatním
Touží po ocenění od druhých
"Stěhovák"
"Vrba"
Zištně pečuje o partnerku
Nevyžádaně "léčí deprese"
Partnerka bývá energetický středobod
Emoční závislost na partnerce/matce
Dává svoje dary, aby dostal zpátky
Chce vše dělat "správně" (z pohledu ostatních)
Je milý, empatický
pečuje o bezkonfliktní prostředí
skrývá své stíny
skrývá svoje chyby
potlačuje vlastní agresivitu
žije "vzorný" život, než vybuchne
Ve vztahu za něj rozhoduje Ž
Nemá (radostnou) sexualitu
závislost na pornu
Myslí, že je ve vztahu lepší než ostatní muži
"Nechápu, proč ženy přitahují lumpové, a ne já"
V čem je problém?
Sebepotlačení, strpění vlastního ponižování
Frustrace z nerovnováhy Má dáti - dal
"Nikdy neudělám nic správně"
Nefér pocit dávání do vztahu víc
Finančně
Prací v domácnosti
Emocionálně
"Jsi to ty, Marie, kdo má pořád problémy"
Ztráta sexuální jiskry pro opačné pohlaví
Příčina = nízká polarita M a Ž podstaty
Ž zastává mužské role a ztrácí ženskost
M zastává ženské role a ztrácí mužnost
Příčiny poválečné epidemie
Chybějící mužský vzor
Klesá čas strávený s otci, s muži
Přechod od agrární k průmyslové společnosti
Práce otců na směny, mimo domov
Převažující podíl žen ve školství
Výchova k empatii
Zdůraznění nekonfliktního řešení problémů, bez síly
Pracující matky
Nenaplnění potřeb blízkosti, dotyku
"Nejsem dost dobrý"
Odklod ve výchově od tradiční definice mužství
Válka ve Vietnamu
Muž Hnutí Hippie
Tancuje
Má rád květiny a hudbu
Nesnáší násilí (a válku)
Snížení polarity ve vztahu
WW2
Rozmach feminismu
Nezávislost žen na mužích
Rostoucí tolerance rozvodu ve společnosti
Ženy posilují svoji mužkou složku
Jak se pozná integrovaný muž?
Dělá věci pro ostatní, pro svět
Pracuje na své misi, v níž věří
Partnerka je pro něj až 2. priorita
Koná rozhodnutí s ohledem na misi
Dává svoje dary nezištně, pro radost z naplňování mise
Partnerku v depresi neopravuje, ale je jí k dispozici
Jak se "hodný kluk" uzdraví?
Převezme odpovědnost za vlastní život
Najde svoji misi
Pečuje o svoje štěstí
Pečuje o svoje potřeby
Integruje svůj (dětský) příběh, aby nebyl závislý na Ž
Přijetí
Odpuštění
Pochopení
Vděčnost
Knihy
David Deida: The way of the superior man
Robert Glover: Rádce pravého muže
Jan Novotný - validace formulářů
Inline validace
Poté, co uživatel opustí pole
U hesla např., chceme validovat průběžně
Error message musí být blížko vstupnímu políčku
Správné barvy
Informační hlášky - modře
Například U e-mailu kontrolujeme doménu, jestli umí přijjímat e-maily
Warningy - žlutě
OK - zeleně
Chyby - červeně
Umět si poradit s částečně nevalidními daty, jdou-li opravit
Vždycky ale uživateli řekneme, na co jsme to opravili
Petr Hamerník - NLP: Machine learning evaluation
geneea
Systém analýzy textu
methods
statistical methods
neural networks
k-means
application on text
supervised learning
parallel corpora (paralelní korpus)
Kanadský parlament
titulky k filmum
korpus je zdroj dat pro trénování
importance of exact evaluation
NN can return undeterministic data
pojmy
precision
recall
true positive, true negative, real positive, real negative, predicted positive, predicted negative
texty reprezentujeme pomocí vektorů
počet (četnost) slov
Word2Vec
Radim Kubacki - Streaming data processing
Lambda architecture
Pomalá (spolehlivá) pipeline
Hadoop
Rychlá - Storm
po Stormu přichází flink
Běží na kafka clusteru
Two issues
achieve correcrtess
nelze zahodit dávku, před tm, než se docílí korektnost
how to perceive timeline
perfect watermark
heuristic watermark
Michal Augustýn - docker a windows
Docker VB běží na windows na Hyper-V
Dříve běžel na virtual boxu
LCOW - linux containers on windows
nový projekt
pro každý nový unix kontejner se pouští samostatný Virtual machine
stejný démon dokáže pouštět jak Windows, tak Linux containery
Windows kontejnery
Nanoserver (cca 90MB)
Windows server core (přes 1.2GB)
Windows - plné windowsy, vhodné pro QA automatizované testy
process izolace funguje jen na windows serveru, ne na klientských windows
Ondřej Chaloupka - software transaction memory
Narayana
pro synchronní sekce používá optimistické zámky
řeší konsistenci dat při paralelním zpracování dat ve vláknech
co to je?
model, jak handlovat paralelní běh programu
pracuje se sdílenou pamětí
alternativa k řešení pomocí zámků
splňuje DB ACID
Atomicita
Konzistence
Izolace
využití v Haskelu
Jan Vondrouš - Geb a proč ho chcete znát
Nadstavba nad Selenium
Moduly
Něco jako page objekty, ale reuse opakujících se komponent v rámci webu
modifikátory
everyTime
firstTime
Martin Krchňáček - TDD
test metoda by se neměla jmenovat testMetoda
ale např ověř, že se uživatel může přihlásit
tip na knihu: Growing object oriented software, guided by tests
Tomucha - flatter.io
Jeden code base, app pro Android a iOS
v Dartu
Reaktivní UI
State.build()
GestureDetector obalí Text, a pak lze detecovat onTap
RotatexBox - orotuje content
SafeArea conteiner - má dostatečný padding, aby nešlo klepnout na citlivé věci po okraji mobilů
SpriteWidget - 2D herní engine
2 Dimensions
vše je widget
Hot reload v IDEA
po uložení zdrojáku - v pravo se aktualizuje obrázek mobilu
kompiluje se do ARM strojáku
no java byte code
nativní pro danou platformu
UI se kreslí na GPU
Zcela přepsané UI komponenty
Alois Holub - Digitální nomádi
Jirka Penzéš
Pracuje v kavárnách
Každá kavárna = nové zajímavé místo
Korsika s 4 dětmi - 2 týdny
na pláži se pracovat nedá, ani to nechcete
je potřeba rozdělit dobu, kdy pracujeme, a kdy nepracujeme
2 byty přes AirBNB
Sluchátka s aktivním odrušením zvuku, rozkládací stoleček
Varianta - obytný vůz
Stoleček, křesílko, stan
Tam může pracovat
Super věc - tráví se s rodinou intenzivní čas
Je potřeba mít k nomádění s dětmi manželku
Ladislav Prskavec - Drone
Ryze Tello
100 dolarů
GoLang wrapper pro openCV - GoCV
Proč GoLang pro OpenCV?
výkon
portability
Framework GoBot
Vlastní Wi-Fi access point
TensorFlow framework
Intel Myriad VPU
5 Mpx camera
Electronic stabilisation
no GPS
Lukáš Hasík - Prostor kolem nás
Bagua map - teorie Feng Chui
Toky energií
Dveře bychom neměli mít za zády
openspace není dobrý pro flow programátora
trochu pomůžou sluchátka
Tapety lesa
I malé změny mají velký dopad
Je dobré nechat si poradit
Koupit novou židli pro paní prodavačku
Zdeněk Henek - Single Sign On & SAML 2.0
Složky
User agent
Service provider
Identity provider
nevyžaduje, aby náš identity provider server měl konektivitu na Service provider
browser based
funguje na asymetrické kryptografii
zalogováním do systému (windows) znamená, že už user nemusí znát heslo ani username do našeho systému
Okta - nástroj pro správu SAML konfigurace