Today’s world of parallel and distributed computing poses hard new challenges for software development. A rapidly increasing number of developers now have to deal with races, deadlocks, non-determinism, and we are ill-equipped to do so. How can we keep things simple, in spite of the complexity of the underlying runtimes?
In my keynote I present some of the core technology that was developed in Scala to deal with the parallelism challenge: Parallel collections, actors, and parallel domain-specific languages. They have in common that each involves a sophisticated implementation, yet provides a simple, intuitive toolkit to the developer.
The slides  of the keynote are available on slideshare.
The keynote is followed by two talks later this day: