reactsphere_logo_hdr

March 2-3, 2017
Cracow, Poland

Already decided? Get your passes now

About the conference

ReactSphere is a conference focused on Reactive Programming and Reactive System Design. Now in its 2nd Edition, it’s a perfect opportunity to meet and share knowledge with experts in this field.

This edition will dive deep into the principles of building responsive distributed systems handling huge amounts of data with near-realtime performance. Microservice Architectures, Actors, Messaging Systems, methods for domain analysis, and more will be covered during lively talks.

Our agenda

Day 1

  • 8:00 to 8:55
    Registration
    Registration
  • 8:55 to 9:00
    Welcome
    Welcome
  • 9:00 to 9:45
    Building multiplayer game using streams
    Building multiplayer game using streams
    Chamber C
  • 9:45 to 10:00
    Tea & Coffee Break
    Tea & Coffee Break
  • 10:00 to 10:45
    Modern app programming with RxJava and Vert.x
    Modern app programming with RxJava and Vert.x
    Vert.x RxJava
    Chamber C
  • 10:45 to 11:00
    Tea & Coffee Break
    Tea & Coffee Break
  • 11:00 to 11:45
    Reactive Machine Learning with Akka Streams
    Reactive Machine Learning with Akka Streams
    Reactive MachineLearning Akka
    Chamber C
  • 11:45 to 12:00
    Tea & Coffee Break
    Tea & Coffee Break
  • 12:00 to 12:45
    Circuit Breaker monitoring at scale
    Circuit Breaker monitoring at scale
    Microservices
    Chamber C
  • 12:45 to 14:00
    Lunch Break
    Lunch Break
  • 14:00 to 14:45
    Reactive database access or how to become a friend with slick unicorns
    Reactive database access or how to become a friend with slick unicorns
    Slick Unicorn
    Chamber C
  • 14:45 to 15:00
    Tea & Coffee Break
    Tea & Coffee Break
  • 15:00 to 15:45
    Introduction to observables and reactive programming in JavaScript – explained by example
    Introduction to observables and reactive programming in JavaScript – explained by example
    Reactive programming JavaScript
    Chamber C
  • 15:45 to 16:00
    Tea & Coffee Break
    Tea & Coffee Break
  • 16:00 to 16:45
    TBA
    TBA
  • 16:45 to 17:00
    Tea & Coffee Break
    Tea & Coffee Break
  • 17:00 to 18:00
    DISCUSSION PANNEL
    DISCUSSION PANNEL
  • 19:00 to 00:00
    AFTER PARTY at Stara Zajezdnia
    AFTER PARTY at Stara Zajezdnia
Download full programme as .PDF

Registration

8:00 to 8:55

Welcome

8:55 to 9:00

Building multiplayer game using streams

In this talk you will learn how stream-based programming can be used to implement web frontend and multiplayer backend of the classic game: Snake. Building dynamic applications using imperative approach tends to create lots of unmaintainable code. Stream-based programming tries to solve this problem by introducing fully declarative way of defining application logic. While using streams, you will focus on WHAT needs to be done, not HOW and WHEN. The talk is divided into 3 parts. In the first part you will learn how to create a frontend of the Snake web game using streams as building blocks. Then, we will move to the server side and use Scala and Akka Streams library to create backend service that will allow the game to be played by multiple players. In the third part, we will discuss reactive streams and how they make asynchronous communication safe.
Michał Płachta Ocado Technology
9:00 to 9:45

Tea & Coffee Break

9:45 to 10:00

Modern app programming with RxJava and Vert.x

With the advent of mobile web and IoT (Internet of Things), today’s applications need to handle a lot of concurrent requests while staying responsive and easy to scale. But on the performance side, the party is over: the exponential increase promised by the Moore’s law reached its limits. From now on, we need a programming paradigm switch to make the most of multicore architecture innovations. In this presentation, we will make the case for reactive programming. Then we will guide you through the process of building a real-life web application, based on Vert.x 3 and RxJava, communicating with databases, external services and modern datastores. You will learn how Vert.x integrates with RxJava, and why its simplicity makes it a perfect runtime for reactive applications.
Thomas Segismont Red Hat
10:00 to 10:45

Tea & Coffee Break

10:45 to 11:00

Reactive Machine Learning with Akka Streams

[Joint talk with Kamil Owczarek] With Machine Learning now placed at the heart of many of applications, from recommender engines to trading bots and the growing popularity of Reactive Programming, we would like to present how to effectively combine the two. The focus of the presentation will be on online / streaming ML algorithms, which by working with live data streams are perfect for such domains as online trading or ad-hoc decision making. Many such ML algorithms have already been implemented on top of Spark, but for truly reactive systems going to extremes (think IoT or HFT), deploying the whole related machinery (HDFS, Zookeeper, etc.) might be too heavy. Come and see how Akka Streams simplifies their implementation while also supporting them with its top tier performance. We will present real-life case studies for statistical and adversarial classes of algorithms in ad-hoc decision making, healthcare and finance.
Jan Pustelnik GFT Poland
11:00 to 11:45

Tea & Coffee Break

11:45 to 12:00

Circuit Breaker monitoring at scale

Everyone can agree that Microservices Architecture introduces a lot of great features in our projects but it also requires from us to put more effort in monitoring them. Probably there is no system without synchronous integrations with external services – you should protect them with Circuit Breakers. In this talk I would like to present an additional layer on the top of breakers which allows you to gather theirs statistics and monitor their state at scale.
Maciej Ciołek Codeheroes
12:00 to 12:45

Lunch Break

12:45 to 14:00

Reactive database access or how to become a friend with slick unicorns

[Joint talk with Krzysztof Borowski] The goal of the presentation is to have somewhat of an introduction to Slick 3.x. Except covering basics however we will delve further and will try to see what are the common problems developers stumble upon when transitioning to Slick 3. By doing so we will also cover Unicorn – a neat library to help you solve some common initial problem and misconceptions you may have starting with Slick 3.x. Presentation is to be pragmatic, so after going through it (together with code samples) you should be able to start using it in your project with no problems. We will rather focus on how basics of Slick work and how you can build relevant queries / operations / patterns rather than Slick internals.
Paweł Dolega VirtusLab
14:00 to 14:45

Tea & Coffee Break

14:45 to 15:00

Introduction to observables and reactive programming in JavaScript – explained by example

In this talk I want to introduce the concept of observables in one of the most widely used languages in the world – JavaScript. I will give real world examples of the user interface challenges that can be nicely solved using reactive programming, and also tell few words about the current state of the popularity of these ideas in the front-end world.
Marcin Baraniecki SoftwareMill
15:00 to 15:45

Tea & Coffee Break

15:45 to 16:00

TBA

TBA
16:00 to 16:45

Tea & Coffee Break

16:45 to 17:00

DISCUSSION PANNEL

17:00 to 18:00

AFTER PARTY at Stara Zajezdnia

19:00 to 00:00

The speakers

Marcin Baraniecki
Marcin Baraniecki SoftwareMill View bio & abstract
Krzysztof Borowski
Krzysztof Borowski VirtusLab View bio & abstract
Maciej Ciołek
Maciej Ciołek Codeheroes View bio & abstract
Paweł Dolega
Paweł Dolega VirtusLab View bio & abstract
Kamil Owczarek
Kamil Owczarek IMS Health View bio & abstract
Michał Płachta
Michał Płachta Ocado Technology View bio & abstract
Jan Pustelnik
Jan Pustelnik GFT Poland View bio & abstract
Thomas Segismont
Thomas Segismont Red Hat View bio & abstract

Marcin Baraniecki

About Marcin: Front-end developer @SoftwareMill. Loves new web technologies and is always interested in grasping amazing concepts & languages.

Topic: Introduction to observables and reactive programming in JavaScript – explained by example
In this talk I want to introduce the concept of observables in one of the most widely used languages in the world – JavaScript. I will give real world examples of the user interface challenges that can be nicely solved using reactive programming, and also tell few words about the current state of the popularity of these ideas in the front-end world.

Marcin Baraniecki SoftwareMill

Krzysztof Borowski

About Krzysiek: He is a Scala programmer @ Virtuslab. Believes that simplicity is the key to modern software development. Passionate about all technologies and ideas that make programmer life brighter and more interesting. Born with a love of mountains, singing, and exciting new experiences.

Topic: Reactive database access or how to become a friend with slick unicorns

[Joint talk with Paweł Dolega]
The goal of the presentation is to have somewhat of an introduction to Slick 3.x. Except covering basics however we will delve further and will try to see what are the common problems developers stumble upon when transitioning to Slick 3. By doing so we will also cover Unicorn – a neat library to help you solve some common initial problem and misconceptions you may have starting with Slick 3.x.

Presentation is to be pragmatic, so after going through it (together with code samples) you should be able to start using it in your project with no problems. We will rather focus on how basics of Slick work and how you can build relevant queries / operations / patterns rather than Slick internals.

Krzysztof Borowski VirtusLab

Maciej Ciołek

About Maciek: Event Sourcing, CQRS and Microservices Architecture enthusiast. Crazy about Scala language. Experienced software engineer and now Co-founder & CTO at Codeheroes

Topic: Circuit Breaker monitoring at scale

Everyone can agree that Microservices Architecture introduces a lot of great features in our projects but it also requires from us to put more effort in monitoring them. Probably there is no system without synchronous integrations with external services – you should protect them with Circuit Breakers. In this talk I would like to present an additional layer on the top of breakers which allows you to gather theirs statistics and monitor their state at scale.

Maciej Ciołek Codeheroes

Paweł Dolega

About Paweł Software engineer / entrepreneur. New technologies & interesting ventures. Worked in international corporations, small local software houses (two of which I co-founded) . These days my weapon of choice is mostly Lightbend stack (Scala / Akka / Play / Spark) though I am trying to remain flexible and not be too orthodox.

Far more important than actual technology – I am really passionate about technological challenges and problems that technology is trying to solve. I like to work on things that matter.

Worked as a software engineer, development lead and technical manager. Delivered projects both in government and private sector, both in Poland and abroad. All the projects delivered successfully, avoiding government contract fines or customer dissatisfaction (most, if not all, customers were returning ones). Had to fight teeth and nails from time to time to make it happen because of constrained staffing or extreme deadlines.

I worked with large-scale, highly available systems serving millions of clients, been involved in coordinating efforts of teams scattered around the world with crazy timezone differences and spent lots of time in modern virtualization / cloud computing initiatives / projects. Worked mostly with Unices (as plain Linux, Solaris, HP/UX, AIX and i5).

Worked with dozens of DB engines (relational, graph or document based), frameworks and technologies. My key skill is the ability to learn and *adapt* – and doing it rapidly.

Infrequent conference speaker and open source contributor.

Topic: Reactive database access or how to become a friend with slick unicorns

[Joint talk with Krzysztof Borowski]
The goal of the presentation is to have somewhat of an introduction to Slick 3.x. Except covering basics however we will delve further and will try to see what are the common problems developers stumble upon when transitioning to Slick 3. By doing so we will also cover Unicorn – a neat library to help you solve some common initial problem and misconceptions you may have starting with Slick 3.x.

Presentation is to be pragmatic, so after going through it (together with code samples) you should be able to start using it in your project with no problems. We will rather focus on how basics of Slick work and how you can build relevant queries / operations / patterns rather than Slick internals.

Paweł Dolega VirtusLab

Kamil Owczarek

About Kamil: Scala / Big Data Developer. Currently @ IMS Health. Specializes
in Big Data projects involoving Data Warehousing and Machine Learning. Professional motto: „Data is always more valuable than you recognize it to be”

Topic: Reactive Machine Learning with Akka Streams

[Joint talk with Jan Pustelnik]
With Machine Learning now placed at the heart of many of applications, from recommender engines to trading bots and the growing popularity of Reactive Programming, we would like to present how to effectively combine the two. The focus of the presentation will be on online / streaming ML algorithms, which by working with live data streams are perfect for such domains as online trading or ad-hoc decision making. Many such ML algorithms have already been implemented on top of Spark, but for truly reactive systems going to extremes (think IoT or HFT), deploying the whole related machinery (HDFS, Zookeeper, etc.) might be too heavy. Come and see how Akka Streams simplifies their implementation while also supporting them with its top tier performance. We will present real-life case studies for statistical and adversarial classes of algorithms in ad-hoc decision making, healthcare and finance.

Kamil Owczarek IMS Health

Michał Płachta

About Michał Polyglot software engineer specialised in developing distributed applications. Functional programming enthusiast. Loves the human component in software projects. Drinks a lot of tea. Has a blog at michalplachta.com. He currently works as team leader at Ocado Technology, where he is building actor-based software for automated warehouse.

Topic: Building multiplayer game using streams

In this talk you will learn how stream-based programming can be used to implement web frontend and multiplayer backend of the classic game: Snake.

Building dynamic applications using imperative approach tends to create lots of unmaintainable code. Stream-based programming tries to solve this problem by introducing fully declarative way of defining application logic. While using streams, you will focus on WHAT needs to be done, not HOW and WHEN.

The talk is divided into 3 parts. In the first part you will learn how to create a frontend of the Snake web game using streams as building blocks. Then, we will move to the server side and use Scala and Akka Streams library to create backend service that will allow the game to be played by multiple players. In the third part, we will discuss reactive streams and how they make asynchronous communication safe.

Michał Płachta Ocado Technology

Jan Pustelnik

About Jan: Technical Architect at GFT Poland and Lecturer at the University of Łódź by day, sporadic akka project contributor by night. Interested in how software works on low level, he does not find big frameworks appealing. This is the main reason why he loves Scala, a very expressive language that allows one to build right abstractions quickly without losing control over details. Jan is an active member of JUG Łódź and occasional conference speaker. Currently he is busy with a Big Data project for one of major investment banks. In his spare time he loves to dust-off some old issue of computer science journal only to find out that everything has already been invented before he even was born.

Topic: Reactive Machine Learning with Akka Streams

[Joint talk with Kamil Owczarek]
With Machine Learning now placed at the heart of many of applications, from recommender engines to trading bots and the growing popularity of Reactive Programming, we would like to present how to effectively combine the two. The focus of the presentation will be on online / streaming ML algorithms, which by working with live data streams are perfect for such domains as online trading or ad-hoc decision making. Many such ML algorithms have already been implemented on top of Spark, but for truly reactive systems going to extremes (think IoT or HFT), deploying the whole related machinery (HDFS, Zookeeper, etc.) might be too heavy. Come and see how Akka Streams simplifies their implementation while also supporting them with its top tier performance. We will present real-life case studies for statistical and adversarial classes of algorithms in ad-hoc decision making, healthcare and finance.

Jan Pustelnik GFT Poland

Thomas Segismont

About Thomas: He works in the Vert.x core team, focusing on clustering, monitoring and reactive programming. He lives in Marseille, France with his wife and four kids.

Topic: Modern app programming with RxJava and Vert.x

With the advent of mobile web and IoT (Internet of Things), today’s applications need to handle a lot of concurrent requests while staying responsive and easy to scale. But on the performance side, the party is over: the exponential increase promised by the Moore’s law reached its limits. From now on, we need a programming paradigm switch to make the most of multicore architecture innovations.

In this presentation, we will make the case for reactive programming. Then we will guide you through the process of building a real-life web application, based on Vert.x 3 and RxJava, communicating with databases, external services and modern datastores. You will learn how Vert.x integrates with RxJava, and why its simplicity makes it a perfect runtime for reactive applications.

Thomas Segismont Red Hat
Get your pass

Get your pass

Join us to discuss about Reactive Programming and Reactive System Design

Reserve your entry

Practical info

Contact us

email: events@virtuslab.com

t: +48 660 539 657
fb: facebook.com/virtuslab

Main venue

Qubus Hotel
Nadwiślańska 6,
30-527 Kraków

The afterparty

Stara Zajezdnia Kraków
Świętego Wawrzyńca 12,
31-060 Kraków

We are powered by

Organizer

Virtus Lab

Gold Sponsors

GrandParade

Silver Sponsor

Tesco

Community Partner

React Kyiv Brain-Dev-Kyiv

Code of Conduct

The following Code of Conduct is inspired by that from other prominent conferences such as ScalaDays or Scala eXchange.

ScalaSphere is dedicated to providing a harassment-free experience for everyone, regardless of gender, gender identity and expression, sexual orientation, disability, physical appearance, body size, race, nationality, age or religion. We do not tolerate harassment of participants in any form. Please show respect for those around you. This applies to both in-person and online behavior.

All communication should be appropriate for a technical audience,

including people of many different backgrounds. Sexual language, innuendo, and imagery is not appropriate for any conference venue, including talks.

If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of staff immediately. If an individual engages in harassing behaviour, the ScalaSphere staff may take any action they deem appropriate, including warning the offender or expulsion from the event.
We expect all attendees to follow above rules during our ScalaSphere DevTools Summit.