Martin Odersky is the creator of Scala, and in his SF Scala talk at Workday, “Scala — the Simple Parts,” he distills the core set of components which comprise Scala, are simple, and together form a solid basis to reason about programming. As we found out before, Scala developers form tribes, from semi-imperative to Idris, and cores can be thought of as sets corresponding to the tribes’ core beliefs. The core which Martin outlines serves the same role as Effective Scala serves for style. It helps beginners to approach Scala in a simple and efficient way, lets practitioners think formally about complexity, and enables teachers with a clear presentation sequence.
Bruce Eckel is the author of Thinking in C++, Thinking in Java, still the best book on Java, and most recently Atomic Scala. He comes to SF Scala to talk about his philosophy of working with reasoning about programming languages. Should we argue about the language choice now as we used to? What are the questions you have to ask yourself about your programming and the tools you choose? Bruce was there and done that, and he shares his ideas for dealing with it all.
Jay Kreps is the tech lead for Kafka, the high-performance queue written in Scala and powering data pipelines at LinkedIn and now many other big data companies. In this talk, Jay provides an overview of distributed systems at LinkedIn which lead to Kafka, and key design decisions which went into it. This is a great overview of distributed systems use cases and how data pipelines are emerging at scale, in the real world.
Alex and Ryan unveil c5, the fast, simple, open-source cloud-optimized compatible successor to HBase. c5 has sensible defaults and no configuration necessary except for the cluster name to work and ensures sub second failover. It is developed in a fully testable and TDD way, guaranteeing data integrity and allowing clear reasoning about failover behaviors.
Jonas provides an excellent first-principles rationale for key requirements for production distributed systems and reviews how Akka satisfies them. A great introduction to Akka.
James builds on yesterday’s introduction of SBT-Web and shows how to build a reactive application with Play 2.3, using the new SBT plugins and web asset pipeline, to make it even easier to debug a Play application.
James Ward introduces SBT-Web, a new toolchain which is used to manage web assets from within SBT. Webjars allow to package the dependencies from SBT, and Play 2.3 uses it all. However you can use SBT-Web on its own for all kinds of web flows.
Ryan Rawson (@ryanobjc) is a co-founder of OhmData and a core HBase committer. In this talk, he gives a technical overview of the world of distributed databases which are the foundations of all web apps and big data flows.
Haoyi blew the socks off everyone by showing how far Scala.js has come along. The reload cycle is about a second, and the ease with which he creates games and mini-frameworks like Scala.Rx is mind-boggling. And this guy has a day job! Haoyi is so great and positive this talk will make you smile in addition to being smitten by tech.
Evan shows how Ooyala simplified its log processing pipeline with Kafka and Akka, and how to make stackable actors to instrument the pipeline itself.