Learning Scala

I attended Stuart Halloway's dynamic language shoot-out presentation at NFJS last night. Ruby, Clojure, and Scala are the three languages in which he spent his time. Stuart claimed that each of these languages were made to run on the JVM in order to piggy-back on the penetration of the JVM in the enterprise. The choice of language you make is mostly unimportant, most of these interesting languages on the JVM provide the same general additions to Java running on the JVM. I intend to learn Scala this year. I feel that Ruby has a lot of penetration in the software development field, but that Scala is the up-and-coming language. I believe that the concepts and idioms in the languages are common enough to allow me to easily learn Ruby next year. My plan of attack for learning Scala:
  1. Install Eclipse 3.4.
  2. Install the Scala plug-in from: http://www.scala-lang.org/tools/eclipse/index.html.
  3. Create a working hello world program.
  4. Complete the exercises from: http://www.knowing.net/index.php/2006/06/16/15-exercises-to-know-a-programming-language-part-1/.
  5. Decide on a personal project for using Scala.
  6. Complete the personal project.
  7. Find a suitable open-source project using Scala.
  8. Learn more about the project's eco-system.
  9. Contribute to the project's mailing list.
  10. Submit patches to the project.
  11. Decide on a work project using Scala.
  12. Complete the work project.
  13. Lather, rinse, repeat.
EDIT: updated knowing.net link.

No comments: