David Nolen keynotes on how developers learn as seen in a number of diverse examples drawn from objected oriented user interface programming to constraint logic programming.
Daniel Spiewak discusses how modern languages such as Scala, Clojure, and Haskell have moved beyond the simple lambda calculus paradigm, being better suited for large application architectures.
Creighton Kirkendall discusses how polymorphism is implemented in Clojure, Ocaml, Haskell and Scala.
Carin Meier shares from her experience doing functional programming in Clojure for flying robots.
Gerald Sussman explains how programming can help understand Analytical Mechanics and Differential Geometry, and make some concepts of General Relativity come alive. Indeed, a well-crafted program is an expression of an idea, and it may be a work of art.
Chris Ford shows how to make music starting with the basic building block of sound, the sine wave, and gradually accumulating abstractions culminating in a canon by Johann Sebastian Bach.
Jim Powers presents ways to use functional programming techniques and the new Async framework for Scala to regain compositionality while retaining the power of the model.
Ben Christensen explains how Netflix optimizes server’s interaction with more than 800 client devices by creating customized concurrent service endpoints with RxJava and Hystrix.
Joe Armstrong outlines the architectural principles needed for building scalable fault-tolerant systems built from small isolated parallel components which communicate though well-defined protocols.
Dean Wampler supports using Functional Programming and its core operations to process large amounts of data, explaining why Java’s dominance in Hadoop is harming Big Data’s progress.
Kevin Scaldeferri reports on using Scala for an SBT plug-in, for unit and functional testing, type-safe shared configuration using Zookeeper, and live inventory with WebSocket and Akka Actors.
Stuart Sierra introduces some general guidelines for designing systems which make their data and abstractions more transparent to developers, using code examples in Clojure.