Václav is a programming enthusiast who's constantly seeking ways to make development more effective and enjoyable. He's particularly interested in server-side Java technologies, distributed systems, parallel programming, agile methodologies, modern programming languages, DSLs and of course IntelliJ IDEA. He works for JetBrains as a senior software developer and a technology evangelist. On the side, he's leading the GPars project, an opensource concurrency library, investigates the domains of neural networks, evolutionary programming and data mining.
Linkedin page: https://www.linkedin.com/in/vaclavpech
Unleash your processor(s)
Does your processor laugh at your code? Does it dawdle, travel over other processes, does it feel bored all the time, instead of taking full engagement and focus properly on the work at hands? It's your old-styled code that's failing here, code, which has been written for the processor's single-core grandpa. We all live in a new era now, single-thread has been out of fashion for a while and certainly doesn't appeal to the young processors. I'd like to show you how to write in modern fresh multi-threaded style, so popular with these processor youngsters, a style, which doesn't let them sleep. Write about brave Actors, lay Fork/Join, mention Parallel Arrays, call in Agents and ensure smooth Dataflow. The processors will adore you for that and will work tirelessly to read your code start to end as fast as possible while making your applications lightning-fast again. If you want to harness all the of the cores in modern multicore processors, this session is for you.
Groovy actors and concurrent dataflow with GPars
Low-level concurrency handling is usually hard to get right. And it's not much fun either. Now, when parallel systems are the norm in the mainstream, it has become obvious that the common shared-memory multithreading causes more troubles than it solves.
In this hands-on session we will go through the concurrency options that GPars, an open-source concurrency library for Groovy, gives to your Groovy applications. We'll cover parallel collection processing, map/reduce, fork/join, asynchronous closures, actors, dataflow concurrency and other concepts, which aim to make your Groovy code concurrent with little effort.
If you want to learn how to safely harness all the cores in modern processors, this session is for you.
Get 'em before they get you
Let's face it - the code we write contains bugs. These bugs impact stability, reliability, correctness, performance or maintainability of our applications as well as our own reputation as developers.
I'll show you a few handy tools that help a lot in finding and eliminating bugs, tools that enable you to start fixing reported exceptions in seconds, tools that highlight repetitive pieces of code, analyze flow of values through your program, visualize dependencies in code and highlight possible dependency problems.
During the presentation I'll show you an alternative view on IntelliJ IDEA, a Java IDE with more than a 10 year history in the field. You'll get a chance to see lots of hands-on practical demos revealing the analysis aspect of the IDE and gain more insight into how you can fight for greater code quality in your projects, today.