Keep Calm and Type Safe!

ScalaCamp #10
RSVP

Informacje

O Scali

Scala jest nowoczesnym językiem ogólnego przeznaczenia, zaprojektowanym aby umożliwić stosowanie popularnych wzorców projektowych w sposób zwięzły, elegancki i bezpieczny (type-safe). Sprawnie łączy ona własności języków obiektowych i funkcyjnych, zwiększając efektywność programistów. Kod przecietnej aplikacji jest dwa razy krótszy niż jego odpowiednik w Javie.

Więcej o Scali.

O ScalaCampie

Seria spotkań poświęconych językowi programowania Scala oraz technologiom na nim bazującym: Akka, Play! framework czy Slick.

ScalaCamp odrobinę różni się od innych Campów - uwzględnia także aspekt biznesowy wykorzystywanej technologii. Chcemy każdorazowo kłaść nacisk na pokazywanie prawdziwych przykładów i na to, jakie korzyści można osiągnąć wykorzystując i wdrażając technologie oparte na Scali.

Gdzie i kiedy?

Wtorek, 24.01.2017, 19:00

Agenda - ScalaCamp #10

Godzina Temat Prelegent
19:00 - 19:45

Chaos Engineering and Runtime Monitoring of Distributed Reactive Applications

Distributed systems are difficult to build and test, so it is important that you identify weaknesses before they manifest in system-wide, aberrant behaviours. Tools such as docker and docker-compose standardise the process of defining system components and deploying them. However, current testing frameworks for these environments are often inadequate for performing end-to-end testing or Byzantine fault injection. During this talk, you will explore the docker-compose-testkit. This is an open-source asynchronous testing framework (implemented in Scala) that allows docker containers to be instrumented (instrumentation sensors are modelled by Observables), deployed (e.g. by docker-compose) and then fault injected (fault injection points are modelled by Observers). Abstraction layers allow the same testing code to target both local environments and cloud environments (e.g. AWS, DC/OS, etc.).
A Scala DSL is introduced to define composable and modular state machines that allow one to both monitor these sensors at runtime and to match against expected outcomes. Using for-comprehensions, complex testing scenarios may be defined that allow for warm-up and fault injection.

Cake Solutions

Carl Pulley
19:45 - 19:50

Przerwa / Break

19:50 - 20:35

Let’s speed up our compilation. Live profiling of zinc application

In this talk I want to show you whole process of improving performance of scala-compiler related code.
We will start with defining our problem, then we will try to apply various techniques to find roots of problem to finally fix them.
To spice things up our code will live inside scala compiler.

VirtusLab

Krzysztof Romanowski
20:35 - 20:40

Przerwa / Break

20:40 - 21:25

Dynamic load balancing with Akka Streams

There are a lot of talks about Microservices Architecture which describes synchronous communication (REST API) as anti-pattern, but sometimes you need to live with this approach in your system - probably you need to make a group of services to communicate with each other or you are just building an application gateway. If you would like to have this resilient, you need to scale out your services and add load balancer a the top. In this talk I would like to present how to implement dynamic HTTP load balancer using Akka Streams and Akka HTTP.

Codeheroes

Maciej Ciolek
21:25 - ...

Networking

Organizatorzy

Kraków Scala User Group - założona przez członków JUG oraz pasjonatów z firmy VirtusLab, którzy spotkali się na innym meetupie i postanowili stworzyć grupę skupioną na języku Scala i technologiach na nim opartych. Nasz cel to wymiana doświadczeń z pracy z tym eleganckim językiem. Przy odrobinie wsparcia od TypeSafe i dobrych Traitów ;) grupa planuje wpisać się na stałe w krajobraz IT w Krakowie.
Firma sponsoruje powstanie grupy i organizowane wydarzenia.

Sponsorzy