Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Why Scala for Web 2.0?

50,163 views

Published on

A presentation to Web 2.0 Expo San Francisco, arguing for Scala as an ideal language for social web businesses.

Published in: Technology

Why Scala for Web 2.0?

  1. Why Scala for Web 2.0?
  2. Hi. I’m Alex Payne, API Lead at Twitter, Inc. Also, co-author of Programming Scala, out later this year from O’Reilly.
  3. A brief history of the languages behind Web 2.0.
  4. Let’s talk about recession engineering.
  5. Can we still afford to build things we love with tools we love?
  6. fast functional expressive statically typed object-oriented concurrent beautiful
  7. C C++ Ruby PHP Python Erlang Java [JVM dynamic languages]
  8. And then, there’s Scala.
  9. Features.
  10. Java compatibility keeps your ROI returning.
  11. Actors keep concurrency simple.
  12. Immutability keeps concurrency predictable.
  13. Type inference keeps code clean.
  14. First-class functions keep things exible.
  15. Traits keep behavior reusable.
  16. Pattern matching keeps your needles out of haystacks.
  17. XML literals and query methods keep XML tolerable.
  18. More: case classes properties existential types implicit conversions lazy evaluation parser combinators monads annotations ... !
  19. The price: complexity. But it’s worth it.
  20. Wins.
  21. A queuing system that takes the hits.
  22. An API test suite that helps us sleep.
  23. People search that returns in milliseconds.
  24. Community.
  25. Groups: Bay Area Scala Enthusiasts (BASE) Chicago Area Scala Enthusiasts (CASE) New York Scala Enthusiasts (NYSE) etc. etc.
  26. Education: Programming Scala Programming in Scala The Busy Java Developer’s Guide... Why Scala? Introduction to High-Level Prog’ing... Scala Language Speci cation
  27. Blogs &c.: Code Commit Coderspiel Scala-Blogs Graceless Failures Delicious Reddit FriendFeed Twitter Search
  28. Tools: IDEs: Eclipse, NetBeans, IDEA Editors: Emacs, VIM, TextMate JavaRebel Whatever JVM tools you like!
  29. Libraries and frameworks Lift Specs ScalaCheck Con ggy Scalax, Scalaz every Java library ever even libraries in other JVM languages!
  30. So, why Scala for Web 2.0?
  31. Thank you. Questions? scala-lang.org bit.ly/progscala twitter.com/al3x al3x.net

×