Spotify: Java Microservices at Scale

Session abstract

Spotify has a long history of using a microservice architecture and has gone through multiple iterations of programming languages and service frameworks. This session explores how Java finally allowed it a stable and scalable runtime and how its Apollo service framework is leveraged for ease of development and consistency over its more than 1,000 production services.

more >>

Creating a Connected Home: Live Coding and Demos

Session abstract

Wouldn’t you love to be able to walk into a room and use your phone or voice to turn on your lights? When you are relaxing on the couch, listening to music, wouldn’t it be nice to just talk to your speaker to turn up the volume or change the song? Can you imagine being able to turn on the fan by just saying you are hot? In this session, Java Champion and four-time JavaOne Rock Star Kevin Nilson and his 12-year-old son, Andy, do a live-coding demo of creating a connected home.

more >>

Java Keynote

Session abstract

Java KeynoteJava continues to innovate the application world around us. Through continued modernization Java offers developers an innovative language and platform to create the next generation of rich, scalable, and secure enterprise applications. In this keynote, recognized Oracle executive and engineering experts will highlight ongoing Java technology enhancements and showcase how developers can improve and accelerate application innovation, development and deployment especially for the cloud.Building the Future of Data with JavaData is driving a revolution across every technology and every industry. Michael Greene, vice president and general manager of System Technologies and Optimization in Intel’s Software and Services Group, will discuss how Java, together with Intel technology, is critical to this transformation. He will share various examples and uses of Java in connection with emerging technologies, such as persistent memory, illustrating how they’ll shape the future of data driven development and computing.

more >>

Refactoring to Functional Style

Session abstract

In Java we’ve programmed with the imperative style for a few decades now. With Java 8, we can also code in functional style, which has several benefits: concise code that’s more expressive, easier to understand, and easier to change. But the transition from imperative to functional style is a hard journey. It’s not as much an issue of getting comfortable with the syntax–it’s the challenge of thinking functionally. What better way to learn that transition than taking imperative code and refactoring it to a more functional style. This presentation starts with multiple code examples written in imperative style and shows how to approach refactoring them to functional style.

more >>

Streaming Solutions for Real-Time Problems

Session abstract

The world is going “real-time” and constantly producing what’s popularly known as streaming data, which falls somewhere in the middle of request/response and (offline) batch systems. Think about the millions of events flowing in per second. How would your applications consume and process the data and make the insights readily available to end users and other systems in real time–all this in a low-latency, large-scale, fault-tolerant manner? This demands a new kind of architecture, and a niche breed of distributed platforms has sprung up to tackle these problems. In this session, the speakers present their take on building such a system with Apache Kafka, Kafka Streams, and Redis.

more >>

Preventing Errors Before They Happen

Session abstract

Are you tired of null pointer exceptions, unintended side effects, SQL injections, concurrency errors, mistaken equality tests, and other runtime errors? Are your users tired of them in your code? This presentation shows you how to guarantee, at compile time, that these runtime exceptions cannot occur. You have nothing to lose but your bugs!

more >>

Baking a Java EE 8 Micro Pi

Session abstract

Microservices are already a popular architecture for new applications, particularly with the modern need for applications to be cloud-native and light enough for the Internet of Things. One of the key challenges of breaking up monoliths into microservices is orchestration. This tutorial looks at some of the brand-new features and APIs in Java EE 8 that can help and presents an interactive Raspberry Pi-based demo that shows how easily messaging can be made cloud-ready with JCA connectors.

more >>