The Evolution From Monolith to Microservices to Serverless and Beyond
If you are a developer or an architect, the odds are that you grew up building systems that are now commonly known as monoliths. In the last few years, we've seen a significant evolutionary shift to systems composed of microservices. Today we are witnessing the birth of serverless. The rate of evolutionary change is accelerating. But what is changing, and what remains the same?
By Hugh McKeel
Java Modules (aka JPMS) for day-to-day Java developers
Java 14 has been released recently and a feature introduced in Java 9 stills a mystery for many Java developers. JPMS is a change to the Java libraries, language, and runtime. This means that it affects the whole stack that developers code with day-to-day, and as such JPMS could have a big impact. For compatibility reasons, most existing code can ignore JPMS.
By Rafael Benevides
Performance testing is done right (ENG)
Everybody says that they do performance testing. But do you do it right? Are you sure that the interpretation of the numbers, or even the number themselves, has really something to do with the truth? In this talk, we will identify some of the common bad practices and mistakes while doing performance testing.
By Jiri Holusa
Get the most from the testing on the local machine (UA)
We’re often complaining about the test environment while developing autotests for web applications UI. Where to deploy the app under the test? How to manage external dependencies and in what way configure test execution? The case gets more complicated when a developed application that needs to be tested is running on localhost by default (like some java apps do), while not in production, that tends to limit the variety of possible combinations of operating systems, browsers, etc during the testing.
By Iurii Kutelmakh
Machine Learning: The Bare Math Behind Libraries
During this presentation, speakers will answer how much you’ll need to invest in superhero costume to be as popular as Superman. We will generate a unique logo that will stand against the ever-popular Batman and create new superhero teams. We shall achieve it using linear regression and neural networks.
By Łukasz Gebel
By Piotr Czajka
During this session, we first provided a short history of machine learning and an overview of two basic teaching techniques: supervised and unsupervised learning.
We started by defining what machine learning is and equip you with an intuition of how it works. We then explained the gradient descent algorithm with the use of simple linear regression to give you an even deeper understanding of this learning method.
Intro to GraalVM and Native Images
In this talk, we'll briefly go through key concepts of GraalVM and then focus on the native image overview. We'll talk about the best use cases for GraalVM native images and how to make sure it's the right solution for your project, where to get started, what are some helpful configuration options.
By Alina Yurenko
By David Leopoldseder
GraalVM Native Image from a Compiler Developer’s Perspective
In this session David will provide a technical dive into the native image technology: the technical architecture of the native image, walk through the steps of the image building process, reflect on performance aspects of AOT and JIT-compiled code and talk about the key benefits of native image.
Where is my cache? Architectural patterns for caching microservices
This session presents different architectural patterns for distributed caching: Embedded, Client-Server, (Kubernetes) Sidecar, and Reverse HTTP Proxy Caching.
By Rafał Leszko
By Nazarii Cherkas
Low Latency Data Processing in the Era of Serverless
In this talk, we see how easily you can build a low-latency processing layer for the Lambda Functions using the Hazelcast Cloud - a fully managed Hazelcast IMDG service. If you already have some background in the Cloud Computing and willing to learn more about Serverless and high-performant state management for the Lambda Functions - this talk for you.
Reactive for the Impatient (A Gentle Intro).
This talk presents to the audience a few of the major Java-based reactive frameworks and toolkits in the market today, such as RxJava, Spring Reactor, Akka, and Vertix.
By Mary Grygleski
By Oleh Dokuka
Multiplayer Pac-Man with RSocket.
Today the adoption of Machine Learning is enormous. We use it almost everywhere: on clusters, on our phones, on hand watches and even on the teapots. But, who knows how challenging could be the development of the continuously improved (or even real-time) machine learning.
From Zero to Hero with Kubernetes and Istio. Great talk on two parts.
Cloud-native applications are the present and the future of software engineering. And Kubernetes is one of the best option to deploy, scale, and run your cloud-native application in production. Istio adds a new set of features for connecting, securing, controlling, and observing your application.
By Serge Bishyr
Two talks by Sebastian Daschner, Lead Java Developer Advocate @ IBM
Modern Enterprise Java from the ground up
Enterprise Java has come a long way. Let’s not focus on the old, darker days, but modern approaches on how to do enterprise applications.
Seven Principles of Productive Software Developers. When working as a software developer, as well as in any other job, it’s important to be productive and to get things done.
By Sebastian Daschner
Remote Freelance Software Gardener from Poland Piotr Przybyl and two talks:
Passwords: do you keep them safe? At the first talk we'll consider meaning that keeping passwords in a [web] application is a boring and trivial task: some hashing, maybe some salt, et voilà!
Java. Migrating to 11 in the real app. The second talk it's real experience how managed to migrate two real Java server apps to Java 11. Why it was done, what and how was done, what wasn't required. Some hints for you.
By Piotr Przybyl
The first speaker at our meetup was from Poland, Lead Software Engineer at Casumo with two talks. The first one: Fantastic Frameworks and How to Avoid Them. In this session, we’ll have a look at the cons of adopting invasive frameworks and how we can minimize the problems they cause.
And the second: Purely Dysfunctional Data Structures. Where we'll explore what the concept of Persistent Data Structures is, how are they implemented, and how much blood, sweat, and tears need to be done on the other side to make the experience of working with immutable data structures at least a bit efficient.
By Grzegorz Piwowarek