In this talk we will look at some of the “gateway drugs” of scalaz: Validation, NonEmptyList, \/, Monad Transformers, and more. How do they work from a practical standpoint? What is their value for real world applications? Can we use them without an advanced Maths PhD? And just how fun is it to *really* code with these tools?
Explore the potential of contracts as the best-yet compromise between types and tests. No Clojure experience (or interest) needed.
This talk presents several techniques and architectural activities that are useful on agile projects and explains how an agile architect’s role can and should differ from that of a traditional software architect.
Modern, cloud-native applications typically use a microservices architecture in conjunction with NoSQL and/or sharded relational databases. However, in order to successfully use this approach you need to solve some distributed data management problems including how to maintain consistency between multiple databases without using 2PC.
I will discuss the experience at LinkedIn and elsewhere moving from batch-oriented ETL to real-time streams using Apache Kafka. I’ll talk about how the design and implementation of Kafka was driven by this goal of acting as a real-time platform for event data.
This talk will discuss the problems faced in the modern data center, and how a set of innovative open source tooling can be used to tame the rising complexity curve. Join me on an adventure with Vagrant, Consul, and Terraform as we take your data center from chaos to control.
In this talk, Benjamin Hindman (one of the original creators of the Apache Mesos project) will discuss Apache Mesos and how it can be used to more easily build and run distributed systems.
Go is a natural fit for building web applications and services. Over the last few years the Go community has been busy creating better tools for web development in Go.
Massively concurrent systems are the future, and shared data mutability is the obstacle to getting there. Where does that leave imperative languages like Java, that depend on mutation?
For Java programmers, looping over a collection is the time-honored
way of processing data. Now, from Java 8 onwards, we will instead be
writing stream programs – more concise, more expressive, and more
maintainable. But how fast will they be?