The Playframework User Group on the 11th June (as usual at leanovate) was kind of special, with two guests from Typesafe: James Roper and Christopher Hunt.
James and Christohper work full time on the play framework. They are based in Australia and jumped into our office virtually direct from the airport!
Before the talk, Leanovate's Yann Simon (organizer of the user group) made a short interview with James and Christopher. This interview you can see the video here:
The sound quality is far from perfect, so we made a written excerpt of the interview for those who struggle with it:
Question: How do you organize your work?
Answer: [James] The day begins with a stand up.
[Christopher] A part of the day is used to go through all pull requests.
Q: There are about 300 issues on the github page. How do you handle that?
A: [Christopher] It is a good problem to have so much feedback. The community is very active into contributing and fixing issues.
[James] We will launch a community project focused on quality to go through all the defects.
Q: The Play Framework was created with collaboration between Zengularity and Typesafe. How do you split the work and the responsabilities now?
A: [James] The idea was always that Typesafes takes over the project. There is still communication between the teams and contributions from Zengularity employees, but it is pretty much just Typesafe now.
Q: What is the future of Slick and/or Anorm?
A: [Rich Dougherty, Typesafe employee, maintainer of the play-slick project, was present as well and answered this question] The play slick plugin is actively developed and maintained. The play slick documentation will be included in the play documentation.
The Anorm project is active, thanks to the community. In the future Anorm will be separately distributed. Both projects are healthy.
[James] Anorm and Slick are focused on different purposes. Both will be supported.
Q: What is the next big "thing" in play 2.4?
A: [James] Play 2.4 will be mainly focused on Quality and will not break anything. One big change is dependency injection. Play was unopinionated about dependency injection and that will change.
There is actually a discussion on the play dev mailing list.
One other change will be the integration with reactive streams. Play will be put on top on Akka Http (coming from Spray). We hope that the user can choose between Akka Http and Netty.
We'll continue the modularization. For example, Anorm will be put in its own repository so that it can have its own release cycle.
Q: Why would you switch away from Netty? Netty is very good optimized server. Why would you move to Akka Http?
A: [James] Spray (Akka Http) is pretty close to Netty in performance benchmarks.
Netty is specialized in IO. Akka is much more general, great for IO and great for many other things. Akka provides clustering capabilities.
[Christopher] Akka cluster could be used to distribute session on a cluster. Play can be distributed on many nodes.
Q: What do you like the most about the Play Framework?
A: James] What I like the most is the developer productivity. And the way play models HTTP. It is very close to what HTTP while bringing powerful high level interface.
[Christopher] The point is to bring what is in my head into a program with the least resistance.
That's why dynamic languages are very popular. Ruby on Rails is very successful for example.
To me, we can attain the same goals in a safe environment, leveraging the computer to avoid a lot of mistakes.