Jai’s Weblog – Tech, Security & Fun…

Tech, Security & Fun…

  • Jaibeer Malik

    Jaibeer Malik
  • View Jaibeer Malik's profile on LinkedIn
  • Subscribe

  • Feedburner

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 28 other followers

  • Archives

  • Categories

  • Stats

    • 275,480
  • Live Traffic

Scala Train: Get on it, you will miss it or will be too late

Posted by Jai on December 5, 2012

Early morning run to catch the metro, sometimes you find it just leaving the platform or door closing in front of you and you say c/s/f***. Ofcourse you will catch next one but you always think if you have been early few sec or if you have started early. Something similar with the IT world, new programming languages or something new to catch on.

I am just back from two days training “Fast track to Scala” organised be Xebia in association with Typesafe. The fresh thoughts around the same here.

Urs Peter did a good job in organizing the training and getting us familiar with core concepts of the programming language and relevant pointers to take the torch further.

I do remember some time back me starting a bit with initial hello world stuff around scala and lift, covering in the post “Getting started with scala“. But never got a chance to get my hands dirty and to actually use in any of the real projects.

To relate to the title, we did cover lot of hands on exercises during the training around developing application scalatrain, a journey planner application. And yes, the whole idea of getting on it from the exercise itself.

Why scala must try for every java programmer

For every programmer, you need to keep moving on new promising things analyzing all pros and cons around it. For all java programmers, the additional paradigm shift is indeed the functional programming ideas, everything is function.

Lot of nice articles to push further the scala adoption for every java programmer,

  • Why Scala?
  • Additional benefits over java.
    • functional programming
    • multiple inheritance, traits.
    • Immutability
    • high order functions
    • concurrency
    • less code :)
  • Even java 8 with have it, lamda expressions. better get started with functional programming concepts
  • Get started with functional programming concepts

How to get started

Some of the resources to get started with, thanks to Urs Peter for sharing the information.

Scala books:

Programming in Scala (the official book)

http://www.artima.com/shop/programming_in_scala_2ed

Scala for the impatient

http://horstmann.com/scala/

Scala in-depth (advanced)

http://www.manning.com/suereth/

Tutorials to learn Scala:

Learn to read Scala code

http://www.scalakoans.org/

Various tutorials from Twitter

http://twitter.github.com/scala_school/

Write little robots in Scala and see how they compete

http://scalatron.github.com/

Additional resources of the Scala.org site:

http://www.scala-lang.org/node/1305

Great video of 12 year old Shadaj Laddad showing what he had accomplished in Scala:

http://skillsmatter.com/podcast/scala/making-games-and-solving-puzzles-in-scala

Popular Scala web frameworks:

The official choice:

http://www.playframework.org/

Liftweb:

http://liftweb.net/

Cool lightweight http servers++:

http://spray.io/

http://unfiltered.databinder.net/Unfiltered.html

Great template engine that supports a great range of template formats:

http://scalate.fusesource.org/

Some DSLs:

DSL for hadoop

https://github.com/nicta/scoobi

http://nosql.mypopescu.com/post/20002660339/introducing-scoobi-and-scalding-scala-dsls-for-hadoop

Sql:

http://squeryl.org/

Apache Camel:

http://camel.apache.org/scala-dsl.html

Site with all (known) Scala user groups:

http://www.scala-tribes.org/

What stack to use

As suggested stack by typesafe, Stack

Scala-Akka-Play

The Typesafe Stack includes:

  • The Scala programming language and standard library
  • The Akka event-driven middleware, with Scala and Java APIs
  • The Play framework for developing real-time Web applications, with Scala and Java APIs

Much more to scala

The journey just started, lot to grab and try around.

Happy journey!

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
Follow

Get every new post delivered to your Inbox.

Join 28 other followers

%d bloggers like this: