Johannesburg

April 8-9, 2019

The Forum
Ground Floor Wanderers Building, The Campus Office Park Cnr Sloane Street & Main Road
Bryanston, 2021, South Africa


Agenda Day 1

8:00am

Breakfast

8:45am

Welcome

9:10am

Better Software is Better than Worse Software

Michael Coté, Technical Marketer, Pivotal

Read more
“Digital transformation” seems like idle business fantasy. But, it’s a real strategy used by the US Air Force, Air France KLM, Liberty Mutual, DBS Bank, and others to out-innovate competition & delight people. To kick-off the day, Paul will go over how Pivotal customers like these are improving their software, how Pivotal Cloud Foundry lays the foundation for better software helps, and how you can be a part of making the world a better place with better software.

Read less

9:40am

Drinking from the Stream: How to Use Messaging Platforms for Scalability & Performance

Mark Heckler, Spring Developer Advocate, Pivotal

Read more
Most mission-critical systems have distributed elements or are entirely distributed, resulting in a number of challenges: performance, scalability, reliability, resilience...the eight fallacies of distributed computing are alive and well! Messaging platforms are often used to solve these problems and increase the "ilities", but they don't come without a few complexities of their own. Come to this session to learn how to leverage open source solutions like Spring Cloud Stream, RabbitMQ, & Apache Kafka to maximize your distributed systems' capabilities while minimizing complexity. All examples will be coded *live & in real-time*!

Read less

10:30am

Break

11:00am

Spring Security 5.1 by Example

Rob Winch, Spring Security, Session, & LDAP Project Lead, Pivotal

Read more
In this talk we will be taking an insecure, set of microservices and gradually apply Spring Security 5.1 to it. Along the way we will highlight the new features in Spring Security 5.1 including password storage migrations, new OAuth2 Client and Resource Server Support, and more. Whether you are new to Spring Security or a seasoned Spring Security user, this presentation is a must.

Read less

12:00pm

Bootiful Reactive Testing

Mario Gray, Principal Technologist, Pivotal

Read more
Join us for an exploration of testing a reactive Spring Boot 2.x application. Test driven development gives us the confidence necessary to improve our code faster, safely. But how do you test components and services, as well as integrations across distributed systems, while maintaining fast feedback loops, and how do you do all of this within the context of reactive Java? In this talk, we'll look at how to test imperative components, reactive data flows, and mocks. We’ll examine how to take advantage of test slices, and how to test web applications. We'll look at how to ensure that API producers and consumers work well together using consumer driven contract testing without sacrificing the testing pyramid for end-to-end integration tests. And we’ll do it all within the context of reactive programming.

Read less

1:00pm

Lunch

2:00pm

Pivotal Conversations

Read more
Pivotal Conversations is loosely based in the open space meeting format, meaning it is based on (un)common sense of what people do naturally in productive meetings. Pivotal Conversations is a simple meeting format where attendees will break into smaller groups and have candid conversations about topics that our speakers have composed, based on the talks they gave earlier in the day. Each 45-minute session will have a casual format where attendees can feel comfortable discussing anything they want to know more about. Although these conversations are facilitated by our speakers, attendees should really be the ones leading the conversations.

Read less

5:00pm

Day Ends



Agenda Day 2

8:00am

Breakfast

8:45am

Welcome

9:00am

The Reactive Revolution

Josh Long, Spring Developer Advocate, Pivotal

Read more
The reactive revolution continues. For as much as we've been talking about reactive programming in Spring for the last few years the journey has only just begun. Join Josh Long, and we'll take our reactive applications further, looking at how to build microservices for cloud platforms like PAS (Cloud Foundry) and PKS (Kubernetes). Some of the things we may cover include: - reactive NoSQL data access - reactive SQL data access with R2DBC - orchestration and reliability patterns like client-side loadbalancing, circuit breakers, and hedging - messaging and service integration with Apache Kafka or RSocket - API gateways with Spring Cloud Gateway and patterns like rate limiting - API adapters - serverless programming with Spring Cloud Function and project Riff - reactive authentication and authorization with Spring Security.

Read less

9:55am

Efficient Web Apps with Spring Boot 2

Stéphane Nicoll, Spring Developer, Pivotal

Read more
How can we improve the efficiency of an existing web application? We could completely rewrite it, leverage more concurrency and even reactive features. But is it really worth it if we don't even measure and track the relevant metrics? In this talk, Stéphane will work on an existing Spring Boot MVC application to make it more efficient. He'll replace `RestTemplate` with `WebClient` and use Reactor operators to improve efficiency, without the concurrency pitfalls. He'll use out-of-the-box metrics, add new ones to measure, and keep an eye on capacity gains with dashboards.

Read less

10:45am

Break

11:15am

How to Live in a Post-Spring-Cloud-Netflix World

Olga Maciaszek-Sharma, Senior Software Engineer, Pivotal
Jakub Pilimon, Principal Technologist, Pivotal

Read more
Zuul? Gateway? Should we get rid of Ribbon? What is going on with Hystrix? If you have ever faced those questions, come and listen to this talk. In December 2018, Netflix decided to move a number of their popular OSS projects, like Hystrix and Ribbon into maintenance mode and to make newer, backward incompatible versions of some others, like Zuul and Archaius. The Spring Cloud team moved some of the corresponding Spring-Cloud-Netflix projects into maintenance mode as well and proposed a newer, more modern Spring Cloud stack that could be used instead. During this talk, we would like to show how to move over to these newer solutions. We will discuss possible approaches, show a code demo and speak about potential issues and solutions.

Read less

12:05pm

Kube Your Enthusiasm

Paul Czarkowski, Principal Technologist, Pivotal

Read more
Part talk, part demo, part live coding. We will take the audience through the basics of Kubernetes and then turn to the audience to go go down a Kube Your Own Adventure exploration of a number of different Kubernetes related topics such as Spring Cloud Kubernetes, Helm, Spinnaker, Knative, Operators, and so much more!

Read less

1:00pm

Lunch

2:00pm

Thinking Architecturally

Nate Schutta, Solution Architect, Pivotal

Read more
Rich Hickey once said programmers know the benefits of everything and the trade offs of nothing...an approach that can lead a project down a path of frustrated developers and unhappy customers. As architects though, we must consider the trade offs of every new library, language, pattern or approach and quickly make decisions often with incomplete information. How should we think about the inevitable technology choices we have to make on a project? How do we balance competing agendas? How do we keep our team happy and excited without chasing every new thing that someone finds on the inner webs? As architects it is our responsibility to effectively guide our teams on the technology journey. In this talk I will outline the importance of trade offs, how we can analyze new technologies and how we can effectively capture the inevitable architectural decisions we will make. I will also explore the value of fitness functions as a way of ensuring the decisions we make are actually reflected in the code base.

Read less

2:50pm

DDD and Microservices: Like Peanut Butter and Jelly

Matt Stine, Cloud-Native Polymath and Product Owner, Pivotal

Read more
As an architectural style, microservices are here to stay. They have crossed the proverbial chasm, and now it’s time to get to work. Microservices provide us with the ability to create truly evolutionary architectures composed of cohesive and autonomous components using well known and characterized distributed systems patterns. As an architectural style, microservices are here to stay. They have crossed the proverbial chasm, and now it’s time to get to work. Microservices provide us with the ability to create truly evolutionary architectures composed of cohesive and autonomous components using well known and characterized distributed systems patterns. As we create and compose components across the hard boundary of the network, we become deeply interested in establishing the correct boundaries and has resulted in renewed interest in system design and decomposition. Fortunately, the tried and true practices of Domain-Driven Design are available to us. In this presentation, we will cover a distillation of strategic (bounded contexts, subdomains, context mapping) and tactical (aggregates, domain events) DDD techniques and demonstrate how they enable us to create effective event-driven microservices.

Read less

3:40pm

Break

4:00pm

Data Processing with Microservices

Michael Minella, Project Lead Spring Batch & Spring Cloud Task, Pivotal

Read more
When the word "microservice" comes up, many thoughts go directly to REST endpoints powering websites. However, applying the 12 factor concepts to batch and integration style workloads can provide immense benefits. In this talk, we will walk through creating data microservices for both streaming applications (integration) via Spring Cloud Stream as well as short lived microservices via Spring Cloud Task. We'll finish by looking at how Spring Cloud DataFlow can be used to orchestrate these microservices into useful applications. A general knowledge of Spring and Spring Boot will be useful for this talk.

Read less

4:50pm

Day Ends