193 Lotus blogs updated hourly. Who will post next? Home | Blogs | Search | About 
 
Latest 7 Posts
What to expect in upcoming SmartNSF Beta 3 release?
Mon, Mar 20th 2017 9
What to expect in upcoming SmartNSF Beta 3 release?
Mon, Mar 20th 2017 5
Re: Domino REST performance analysis
Wed, Mar 15th 2017 6
Re: Domino REST performance analysis
Wed, Mar 15th 2017 9
SmartNSF Beta 2 released
Tue, Mar 7th 2017 6
SmartNSF Beta 2 released
Tue, Mar 7th 2017 5
Get ready for Java 8 in Domino/Notes
Mon, Feb 6th 2017 10
Top 10
Call for abstracts for 7th SUTOL conference is open
Mon, Jun 1st 2015 12
Java 8 in 9.0.1FP7? Not likely.
Fri, Sep 2nd 2016 12
Family reunion 2016 (also known as Engage)
Tue, Mar 29th 2016 10
Get ready for Java 8 in Domino/Notes
Mon, Feb 6th 2017 10
What to expect in upcoming SmartNSF Beta 3 release?
Mon, Mar 20th 2017 9
Re: Domino REST performance analysis
Wed, Mar 15th 2017 9
Fall - time of the conferences and hard work
Tue, Sep 30th 2014 7
[In Czech] GeeCON 2016 - Praha
Mon, Oct 24th 2016 7
Automatic building of NSF from (git) repository
Thu, Feb 6th 2014 6
Engage 2014
Fri, Mar 21st 2014 6


[In Czech] GeeCON 2016 - Praha
Twitter Google+ Facebook LinkedIn Addthis Email Gmail Flipboard Reddit Tumblr WhatsApp StumbleUpon Yammer Evernote Delicious
martin jinoch    

Na úvod je asi vhodné uvést, že s organizováním a přednášením na konferencích nějaké zkušenosti mám a ačkoliv se v následujících řádcích někde vyjadřuji kriticky, tak celkově byl GeeCON výborně zvládnutý a přes hodně slušnou návštěvnost jsem nikde nezaznamenal výraznější problémy.

Konečně se mi zadařilo mít čas zajít na GeeCON. A navíc díky Romanu Pichlíkovi z CZ Podcastu jsem měl volný vstup, takže dokonalá win-win situace. O to více, že jsem se na organizaci nepodílel ani nepřednášel, což pobyt na konferenci výrazně ulehčuje.
Trochu problém mám pravda s ranním vstáváním, ale zjevně o něm organizátoři věděli a začátek prvního dne byl v 9:40. Dělat konferenci v kině v nákupním centru by mne popravdě nenapadlo. Velké plus této varianty jsou velikosti plátna a světelnost projektorů. Tady se prostě nestane, že by někdo neviděl nebo nemohl přečíst slidy. Pohodlné sedačky už jsou trochu "dvousečné", dá se v nich velmi snadno usnout. To se hned na druhé přednášce povedlo jednomu účastníkovi, který navíc seděl v první řadě. Chrápáním trochu rušil, ale přednášející to zvládl s přehledem ("This guy clearly loves graphs"). Polský JUG, který GeeCON organizuje na jaře v Krakově a na podzim v Praze, si do Prahy přivezl kompletní tým, včetně cateringu.

Keynote od hlavního sponzora Y Softu mne ničím nezaujala (stejně jako expozice Y soft world s asi břišními tanečnicemi nebo co to mělo být). Výrazně lepší byla následující od Oracle Labs konkrétně od Jardy Tulacha. Kluci tam pracují na vlastní verzi JIT překladače, nazvaného GraalVM, který nejen že je pro běh javových programů rychlejší než standardní, ale s využitím další jejich technologie Truffle umožňuje běh programů i v dalších jazycích, třeba JavaScriptu nebo R. A to kolikrát rychleji než v nativních implementacích. V přednášce zaznělo i to, že Hotspot C2 compiler, který je v standardním Oracle JDK, není moc dobrý ve zpracování kódu Java 8, konkrétně lambda výrazů. Celý je napsaný v C++ a prý se v tom kódu nikdo nevyzná a nechtějí do toho tímpádem moc zasahovat :-). GraalVM je napsaný v Javě, integrování nových jazyků přes Truffle se dělá taky v Javě. Ale je to laboratorní projekt, těžko říct, jaké úmysly s ním Oracle do budoucna má. Zatím je to ale opensource, takže hurá na github a můžete se kouknout, jak to celé funguje.

Na konferencích vybírám přednášky podle dvou kritérií: buď je to něco naprosto mimo moje pole působnosti, nebo naopak něco, co používám často. V druhém případě si na přednáškách snažím potvrdit, že mi v dané oblasti neujel vlak. V prvním případě se jen nechávám inspirovat. Proto jsem zvolil následující moc nesouvisející přednášky:

Who’s Afraid of Graphs? - David Ostrovsky
Jak název napovídá, přednáška byla o Graph databases. David podle mne velmi přehledně a poutavě popsal jejich silné a slabé stránky. Kupříkladu jejich neškálovatelnost. Ta se obchází třeba více identickými kopiemi databáze v clusteru, kdy router směřuje stejné dotazy vždy na stejnou repliku, aby je měla nakešované.
Co jsem si odnesl: i Elasticsearch má podle všeho Graph API, se kterým se dá poměrně pěkně pohrát.

Effective and Clean Java Code? Tips and Tricks from the Real World - Edson Yanaga
Jedna z "potvrzovacích" přednášek. Svižně, přehledně předvedená a vysvětlená taková základní řemeslná latina, s důrazem na Domain driven development. Kód by měl být k dispozici na githubu.
Co jsem si odnesl: zatím mi vlak neujel.

Need for speed: tools for JVM tuning - Andrey Adamovich
Tohle byla naopak přednáška o něčem, co jsem zatím nikdy nemusel řešit. Přehled dostupných většinou volných nástrojů pro sledování a nastavování parametrů JVM. Taková ta přednáška, kde si začnete dělat poznámky, co si chcete vyzkoušet, a v půlce přestanete psát, protože píšete úplně všechno.

Hot code is faster code - addressing JVM warm-up - Mark Price
Tohle mne naprosto nadchlo, byť to nejspíš nikdy nevyužiju. Zkusím to shrnout, ale doporučuju každému kouknout na záznam, až bude k dispozici. Díky JIT se často používané metody překládají do velmi optimalizovaného strojového kódu a jejich běh je tedy rychlý (jakmile se nějaká metoda nevolá dost často, je z tohoto vyjmuta, vrátí se zpátky do skupiny "cold" částí programu a jejích několik dalších volání může tedy probíhat dokonce jen interpretovaně, než se zase díky četnosti volání teoreticky dostane mezi "vyvolené"). To znamená, že po nějaké době běhu programu jsou jeho nejvytíženější části nejvíce optimalizované. A právě to "po nějaké době běhu programu" může znamenat problémy pro systémy, u kterých záleží na rychlosti. Jednou z možností, jak zajistit optimální nastavení takového programu, je nasimulovat mu zátěž co nejpodobnější té produkční, ale ještě dříve, než ono produkční zatížení přijde (Mark popisoval jejich případ s otevřením burzy). Aplikace tedy musí poznat, že se jedná o data "testovací" a nenaložit s nimi v rozhodujícím kroku jako s produkčními (nekoupit/neprodat/neposlat peníze atd.), ale všechny ostatní části aplikace musí zatížit k nerozeznání od opravdových vstupů.
Další z variant je prý "přehrát" log Hotspot překladače (je na to komerční produkt, jehož název jsem neudržel v paměti), ve kterém je právě uložena historie těch optimalizací a přesunů do "hot" zóny. To nicméně předpokládá, že se od minulého zalogování kód neměnil, aby identifikátory tříd a metod v logu odpovídaly metodám v aktuálním kódu aplikace. Mark popisoval, že u nich mají v test prostředí dokonalou kopii produkce, která umožňuje (na úrovni siťových switchů!) přehrávat přesně to, co se na produkci dělo. To samo o sobě mi přijde jako parádní věc a hrozně rád bych si s něčím takovým pohrál.

Naprostý omyl pro mne bylo jít na Enterprise Java in the cloud, kterou prezentoval Dmitry Kornilov. Očekával jsem asi něco jiného než výčet technologií v jednotlivých edicích J2EE resp. Java EE a seznam modulů, které se v další verzi budou měnit nebo budou odstraněny. Směřování do cloudu je pochopitelně velmi aktuální a mne spíš zajímaly detaily, jak (ne že) bude v další verzi Java EE tento směr podporován.

Plánoval jsem zajít i na večerní párty na parníku, ale nakonec jsem se tam po mezipřistání doma už nevykopal. Jak se ukázalo, bylo to dobře. Podle ohlasů na twitteru se jednalo o hladovou a suchou jízdu. Tedy pro běžné účastníky, přednášející a sponzoři měli jiné podmínky. Buď dělám party pro všechny, nebo jen pro vybranou skupinu. Mít v rámci jedné akce různé podmínky pro dvě skupiny mi nepřijde šťastné.

Den druhý

Tady už organizátoři dost vyzkoušeli moje limity a první přednáška začínala v 9 hodin. Přednášku jsem sice fyzicky stihl, ale k vědomí se probírám až kolem desáté, takže How to bake reactive behavior into your Java EE application pořád nevím. Snad se Ondra Mihályi nebude zlobit.

Na One VM to rule them all Jakuba Podlešáka a Jana Štoly už jsem byl v rámci svých možností v kondici a to, co GraalVM a Truffle nabízí, se mi moc líbí. Bylo to naznačeno už v keynote, ale rychlost běhu nejen javových aplikací pod tímhle VM je hodně dobrá. Ne že bych si snad plánoval napsat vlastní programovací jazyk, ale jak to na mě jednou přijde, určitě budu koukat po GraalVM/Truffle.

What is your application doing when you are not around? - Adam Dubiel
Adam se hned na začátku přiznal, že je control freak a pohled na dashbordy ukazující, co se děje v aplikacích, ho baví. Praktické rady, jak v aplikaci nahradit logování uběhlých milisekund mmezi sledovanými operacemi komplexnějším přístupem, jaké metriky má smysl sledovat, jaké vlastně nemají nijak velkou vypovídací schopnost, i když se nás mozek snaží přesvědčit, že je tomu naopak, atd. Já sice nehodlám přiznat, že bych snad mohl být control freak, ale ty dashboardy rozhodně musím mít!

Na TDD: That's not what we meant a Steva Freemana jsem se moc těšil, navíc jak známo člověk raději přijímá informace, které jsou mu blízké, takže tady jsem si vyloženě užil. Přemýšlet o návrhu kódu před začátkem implementace je mi vlastní, Test Driven Development je v tom navíc velmi nápomocný. Kupříkladu tohle jsem v různých kódech viděl tolikrát! Líbil se mi Stevův nedogmatický přístup k používání TDD nebo třeba k volbě jmen testovacích metod.
Co jsem si odnesl

JVM dive for mere mortals od Jakub Kubryńského pro mne bylo po čtvrtečním Hot code is faster code - addressing JVM warm-up už vlastně zbytečné a pokud bych si měl vybrat, kterou z těch dvou zvolit pro získání přehledu, co a jak se v JVM děje, určitě by vyhrál Mark Price. Nicméně tento slide je myslím velmi užitečný.

Reverse engineering clean code - Jakub Marchwicki
Krátké zamyšlení o vztahu designu fyzických objektů (přístrojů, nábytku, ...) a přístupu k navrhování api a kódu obecně. Trochu nepřekvapivě se poznatky z první oblasti dají úspěšně používat i v oblasti druhé.

Dirty Hacks With Java Reflection Heinz Kabutze na závěr byla lahůdka. I když vlastně všechny ukázané techniky byly unsafe :-) Opět doporučím počkat na záznam a mezitím koukněte na kód.

Na závěr jen poznámka: jsem dost citlivý na kvalitu kávy (zly jazykové tvrdí, že přecitlivělý). Ale tady to bylo tragické. Hnědá tekutina vydávaná za filtrovanou kávu snad ani nezaslouží komentář. Pro všechny účastníky tak byl k dispozici jeden kávovar s ucházející kávou, ale ono si ho naštěstí zase tolik lidí nevšimlo, takže u něj nebyly nekonečné fronty. A viděl jsem i pár lidí, kteří nelenili a vybíhali do okolních kaváren v obchodním centru.



---------------------
http://jinoch.cz/czech-geecon-2016-praha
Oct 24, 2016
8 hits



Recent Blog Posts
9
What to expect in upcoming SmartNSF Beta 3 release?
Mon, Mar 20th 2017 11:35a   Martin Jinoch
Changes We've decided to rename strategies to make the names shorter, yet still descriptive enough. We've basically removed all SELECT_ and ALL_ parts of the names. For example SELECT_ALL_DOCUMENTS_FROM_VIEW is from now on DOCUMENTS_FROM_VIEW. Extending the life of your keyboard is just a positive side effect of this change. Bug fixes Date format of returned DATETIME items was broken, so we fixed it. Bigly! ARRAY_OF_DOUBLE data type was returning array of nulls instead of array of actual doubl
5
What to expect in upcoming SmartNSF Beta 3 release?
Mon, Mar 20th 2017 10:35a   Martin Jinoch
EDIT: Beta 3 has been released: https://openntf.org/main.nsf/project.xsp?r=project/SmartNSF/releases/CCB... Changes We've decided to rename strategies to make the names shorter, yet still descriptive enough. We've basically removed all SELECT_ and ALL_ parts of the names. For example SELECT_ALL_DOCUMENTS_FROM_VIEW is from now on DOCUMENTS_FROM_VIEW. Extending the life of your keyboard is just a positive side effect of this change. Bug fixes Date format of returned DATETIME items was broken, so
6
Re: Domino REST performance analysis
Wed, Mar 15th 2017 7:18a   Martin Jinoch
Csaba Kiss has published blogpost http://xpagexplorer.org/domino-rest-performance-analysis/ about his findings regarding performance of various REST technologies available on Domino now. Just a couple of remarks: use case for reading 10000 documents at once is probably very far from most real world scenarios some may argue ReadViewEntries method is not REST service per se. And it is a core function deep in the HTTP server, probably developed in C. That's something we can't beat I guess SmartN
9
Re: Domino REST performance analysis
Wed, Mar 15th 2017 7:18a   Martin Jinoch
Csaba Kiss has published blogpost http://xpagexplorer.org/domino-rest-performance-analysis/ about his findings regarding performance of various REST technologies available on Domino now. Just a couple of remarks: use case for reading 10000 documents at once is probably very far from most real world scenarios some may argue ReadViewEntries method is not REST service per se. And it is a core function deep in the HTTP server, probably developed in C. That's something we can't beat I guess SmartN
6
SmartNSF Beta 2 released
Tue, Mar 7th 2017 9:50a   Martin Jinoch
You may have noticed that there is new project available on OpenNTF.org site. It is called SmartNSF (https://openntf.org/main.nsf/project.xsp?r=project/SmartNSF/summary) and it aims to help developers build REST services on top of the Domino databases. Unlike other approaches I am aware of, this project adds Designer integration and smart definition of routes, data retrieval strategies and returned values in one place. And this definition is made using Groovy syntax. How cool is that?:-) You can
5
SmartNSF Beta 2 released
Tue, Mar 7th 2017 8:50a   Martin Jinoch
You may have noticed that there is new project available on OpenNTF.org site. It is called SmartNSF (https://openntf.org/main.nsf/project.xsp?r=project/SmartNSF/summary) and it aims to help developers build REST services on top of the Domino databases. Unlike other approaches I am aware of, this project adds Designer integration and smart definition of routes, data retrieval strategies and returned values in one place. And this definition is made using Groovy syntax. How cool is that?:-) You can
10
Get ready for Java 8 in Domino/Notes
Mon, Feb 6th 2017 10:42a   Martin Jinoch
Java 8 is coming to Domino/Notes. First just runtime environment for server and client in FP8 and later this year hopefully to Designer as well. That will be huge improvement for developers, because it means - apart from Java 8 new features - we'll get newer Eclipse, newer OSGi etc. Yay! At the same time I feel like admins are not going to be that happy. Change of Java runtime from 6 to 8 should - in theory - be safe. Chances are, however, some stuff will be broken. A really really thorough te
3
Get ready for Java 8 in Domino/Notes
Mon, Feb 6th 2017 9:42a   Martin Jinoch
Java 8 is coming to Domino/Notes. First just runtime environment for server and client in FP8 and later this year hopefully to Designer as well. That will be huge improvement for developers, because it means - apart from Java 8 new features - we'll get newer Eclipse, newer OSGi etc. Yay! At the same time I feel like admins are not going to be that happy. Change of Java runtime from 6 to 8 should - in theory - be safe. Chances are, however, some stuff will be broken. A really, really thorough t
3
IBM Champions 2017 - welcoming new Czech one!
Thu, Dec 15th 2016 8:39p   Martin Jinoch
I am very very happy that my friend and real yellowbleeder Jan Krejcárek has been named IBM Champion in ICS for 2017. He is the third one from Czech Republic (in ICS) and it is a well deserved achievement. I do not have any real statistics (apart from those I am just making up), but I think we might be the best in "champion per capita" ratio. There might be some smaller country though, I really should check it before writing it in the blogpost. But we have post-fact era after all :-) Thanks
4
IBM Champions 2017 - welcoming new Czech one!
Thu, Dec 15th 2016 8:39p   Martin Jinoch
I am very very happy that my friend and real yellowbleeder Jan Krejcárek has been named IBM Champion in ICS for 2017. He is the third one from Czech Republic (in ICS) and it is a well deserved achievement. I do not have any real statistics (apart from those I am just making up), but I think we might be the best in "champion per capita" ratio. There might be some smaller country though, I really should check it before writing it in the blogpost. But we have post-fact era after all :-) Thanks




Created and Maintained by Yancy Lent - About - Planet Lotus Blog - Advertising - Mobile Edition