On April 17-18 the three of us attended the Scala Days 2012 conference in London. Many of the most known and active contributors to the Scala community were there – either as attendee or speaker. The conference was fully booked with 400 participants and so many on waiting list. We would like to give a summary and our thoughts about this conference.
As it happened two of four keynotes on this Scala conference were mostly about other programming languages than Scala. The opening talk that Guy Steele did was about Fortress. Steele is a computer scientist who worked on the early Java versions as well as other languages. Fortress is
a programming language designed for high-performance computing trying to push the boundaries on providing a highly readable syntax, especially for a mathematical purpose. In his talk Steele showed similarities and difference between Scala and Fortress. His talk gave some very interesting insights into language design and showed how both languages can learn from each other. He mentioned that programming should be like writing on a whiteboard…
The second keynote was held by Simon Peyton-Jones who is a researcher at Microsoft Lab in Cambridge. His area of research is mainly Functional Programming and Haskell. He demonstrated a lot of Haskell codes and walked through a practical actor implementation in Haskell.
The creator of Scala and founder of Typesafe – Martin Odersky – held the third keynote on the second day of conference on “Where Scala is going?”. He quickly discussed the new features and improvements in future 2.10 release. The greatest news is that you can use Scala reflection API in 2.10. Martin mentioned the difficulty of integrating the reflection API into the Scala core and how they have managed to do that. Then he talked about Scala Macro! It will be experimental in 2.10 release but it’s a start of a game changer in Scala ecosystem.
The last keynote was given by Antony Rose the founder Zeebox. The talk was mainly about visionary behind a revolutionary social TV and not really something about Scala at all. The only thing he mentioned was that they use Scala in their backend system.
There were around 70 great talks totally at the conference. Here are some of our personal favourites:
Akka2: Distributed by Design: Jonas Bonér talked about the new cluster module in Akka.
The Future I was promised: Viktor Klang talked about Futures and Promises and how they can be used to compose asynchronous dataflows.
Stackless Scala with Free Monads: Rúnar Bjarnason showed how Trampolining technique can be used to get rid of stack overflow problem.
How to map and fold over an HList in shapeless: Miles Sabin talked about Shapeless and how one can do map and fold on an heterogeneous list
Practical Scalaz: Using One of Scala’s Most Controversial Libraries: Jordan West discussed how Scalaz library is heavily used at StackMob
Spark in Action: Matei Zaharia demonstrated Spark that is a cluster computing framework that outperforms Hadoop by up to 30x in applications where repeated map reduce tasks have to be performed.
Spray: REST on Akka: Mathias Doenitz talked about Spray that is a suit of lightweight Scala libraries for building and consuming RESTful web services on top of Akka
High Performance Embedded DSLs with Delite: Arvind Sujeeth explained how one can use Delite that is a framework for building high performance embedded DSLs in Scala.
Pettswood – Executable Documentation for Scala Acceptance Testing: Chris Agmen-Smith gave a lot of insight on having users describe the requirements directly in his Pettswood tool.
Making games and solving puzzles in Scala: 12 year old Shadaj Laddad gave a great talk and explained how he learned programming in Scala and how he has fun with it solving puzzles and writing games.
- A very high level on the conference talks. It appears that there has been a lot of advances recently in Scala.
- IntelliJ IDE and Scala IDE are both powerful enough to enable handy and cool features for Scala enthusiasts. The Scala tool support is getting better all the time.
- Scala community has shown a great passion for improvement and being open to critics that we think is really valuable. See Scala Improvement Process (SIP) for an example.
- Some languages exist in Industry and some other exist only in academia. Scala is where academy and industry meet each other. There were around 14-15 people from EPFL in the conference and that are mostly PhDs. It’s a secure feeling that a lot of researcher and PhD students heavily contribute to Scala community while keeping the stability for industry.
- Skillsmatter did a really good job organizing Scala Days, and many of the talks already came up as podcast during the conference. You’ll find them here: http://skillsmatter.com/event/scala/scala-days-2012