Devoxx Poland 2019
from Monday 24 June to Wednesday 26 June 2019.
Mario is a principal software engineer at Red Hat working as Drools project lead. He has a huge experience as Java developer having been involved in (and often leading) many enterprise level projects in several industries ranging from media companies to the financial sector. Among his interests there are also functional programming and Domain Specific Languages. By leveraging these 2 passions he created the open source library lambdaj with the purposes of providing an internal Java DSL for manipulating collections and allowing a bit of functional programming in Java. He is also a Java Champion, the JUG Milano coordinator a frequent speaker and the co-author of "Modern Java in Action" published by Manning.
These days rule and workflow engines are often overlooked, possibly because people think that they are only useful inside heavyweight enterprise software products. However, this is not necessarily true. Simply put, a rule engine is just a piece of software that allows you to separate domain and business-specific constraint from the main application flow. Similarly a workflow engine allows you to put higher level abstraction (not always in graphical representation) over your logic, yet keeping you focused on actual business goal. We are the project leads of Drools and jBPM, respectively the rule and workflow engine of Red Hat, and our target was to modernize our projects and make them ready to be used in serverless environments. In this talk we will explore and make sense of technologies like GraalVM and Quarkus. In particular we will show, with very practical use cases like ours, what is necessary to change in a code base making extensive use of reflection, dynamic class loading and other Java sorceries in order to make it compatible with those technologies and demonstrate how this is allowing us to make Drools and jBPM part of the cloud and serverless revolution.
Containers, Kubernetes, Cloud Native, Microservices, Eclipse MicroProfile. This session will guide the developer through the minefield of all these buzzwords to understand the concepts and develop solutions with them.
The session will start with a short introduction to the concepts and then dive into a hands-on workshop where each of the attendees will implement a set of micro-services using the features of Eclipse MicroProfile, such as tracing, metrics, OpenApi, health checks and fault tolerance. We will use Quarkus, the brand new cloud native Java framework, compile the Java services to native binaries, and deploy them to a locally running Kubernetes.
By the end of the session the attendee will know how to create a series of microservices developed with Eclipse MicroProfile that are deployed to a local Cloud. All microservices working together to provide a cohesive single application.
If possible, please install Docker and Minikube on your laptop before the lab. You can use our simplified instructions for installing minikube on Linux: http://bit.ly/install-minikube