Kraków, Czerwiec 2017

Mutants, Xenomorphs and Bytecode

0: getstatic  #2 
3: ldc  #3 
5: invokevirtual #4 
8: return

If these things don't mean anything to you, but at the same time you have this strange feeling deep inside you, that you should know it by heart, come to this talk. Do you want to understand how component scan works in Spring? What nasty things does Hibernate do to your lovely entity classes? And how does AspectJ work underneath? If the answer to any of the above questions is "yes", you should feel welcome to the journey through bytecode, stacks, local variable tables and class file format. I am going to unveil some of the JVM bytecode fundamentals, explain how everything works and why some things seem weird as well as to present a few tools that allow you to play with bytecode in a warmth of your desk. I promise not to hurt any animal during my presentation, except ASM, ByteBuddy and Byteman. And yes, I did it a few times in production, for better good of humanity.

Wykład w języku polskim.

 

Jarosław Pałka

Od kilkunastu lat w branży IT, jako administrator baz danych, programista, architekt, manager i "inżynier od spraw katastrof". Brał udział w małych, średnich i nonsensownie dużych projektach, prowadzonych zgodnie zasadami "waterfall", Agile oraz przy braku jakichkolwiek metodyk, z tym samym zawsze skutkiem. Co doprowadziło go do wniosku, że nie ważne co robisz tak długo, jak robisz to dobrze, w najprostszy z możliwych sposobów i używasz właściwych narzędzi, które wykonają pracę za ciebie. W międzyczasie dał się porwać ideom TDD oraz Software Craftmanship, do granic możliwości wyeksploatować tak piękne w swej prostocie pomysły jak REST i NoSQL, by potem porzucić je aby zgłębić tajniki "system thinking" i zachwycić się siłą jaką niesie z sobą "metafora" oraz odkryć, że rządzą nami te same prawa "natury". Niepokorny wyznawca kościoła JVM, badacz bytecode'u i JIT oraz wszelkiej maści parserów, interpeterów i kompilatorów. Od czasu do czasu można usłyszeć jego wykłady na konferencjach w całej Polsce. Na co dzień w Allegro.tech, w wolnych chwilach trener w http://symentis.pl i autor bloga na http://geekyprimitives.wordpress.com/