Miro Cupak | Voxxed Days

Voxxed Days Bristol 2018
on Thursday 25 October

Miro is a VP of Engineering at DNAstack, where he builds a leading genomics cloud platform. He is a Java enthusiast with expertise in distributed systems and middleware, passionate about genetics and making meaningful software. Miro is the creator of the largest search and discovery engine of human genetic data, and the author of a book on parallelization of genomic queries. In his spare time, he blogs and contributes to several open-source projects.

See also https://mirocupak.com

Exploring reactive programming in Java


When Java 8 was first introduced, it revolutionized the way Java applications were written by providing the core constructs for asynchronous programming and handling data streams. With Java 9, 10, and 11, these capabilities were extended to the level that allows us to write truly modern, reactive applications with the JDK.

In this live-coding session, we explore JDK 9-11 features enabling all the aspects of reactive programming - updates to the Stream and CompletableFuture APIs, Reactive Streams publish-subscribe framework, HTTP/2 client, and more.

Writing clean code with Java in 2018


Recent releases of Java introduced a set of features aimed at providing better developer experience when it comes to writing code. In this live-coding session, we'll explore several new language features and APIs enabling us to create cleaner code.

We'll use JShell, Java's REPL implementation from Java 9, and an excellent tool for learning and exploration of APIs, to demonstrate how the recent releases of Java allow us to produce cleaner code faster by exploring smaller, often overlooked features in Java 9, 10, and 11. We'll take a look at factory methods for collections, extended streams, updates to Optional, try with effectively final resources, private methods in interfaces, local variable type inference, and HTTP/2 client. We'll also talk about best practices and patterns for using these features in the context of modern applications.