Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Akka - driving Scala adoption or not?

 
chris webster
Bartender
Pie
Posts: 2367
31
Linux Oracle Postgres Database Python Scala
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
As a Scala novice, I am aware that one Scala's perceived benefits is the ability to use Actors to handle concurrency. So how much take-up have you seen of Scala based on the use of Akka? Is Akka a driving factor in people adopting Scala, or do they simply use the Java Akka library instead?
 
Ivano Pagano
Ranch Hand
Posts: 54
Java Mac OS X Scala
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
chris webster wrote:As a Scala novice, I am aware that one Scala's perceived benefits is the ability to use Actors to handle concurrency. So how much take-up have you seen of Scala based on the use of Akka? Is Akka a driving factor in people adopting Scala, or do they simply use the Java Akka library instead?


I would say that the availability of a Java version is an open path that leads to a possible Scala adoption.

The Java library is powerful but more cumbersome in the notation, wrt the scala version. Still it introduces many functional concepts to the Java developer, that will come useful in case of a full scala language adoption. I'm thinking about futures and combination operators like map, flatMap and family.

I can't say if it'll be more usable after introduction of lambdas in Java8

bye,
Ivano
 
Raymond Roestenburg
Author
Greenhorn
Posts: 5
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In fact I started using Scala because of Akka.
I just finished a project in Java that needed a whole lot of boilerplate and low level concurrency work. The next project was going to need even more concurrency and needed to scale out to more servers and I just wasn't feeling like doing all of that low level and from scratch again.
When I came across Akka and saw how little code was needed in Scala I really wanted to know more. It was a really good fit for the project. At the same time I had been doing some C# work (don't kill me! ;-) which definitely had some functional features I wished for in Java.
After finding out that Scala was way more powerful I decided to start the project in Scala, knowing that if things would go wrong we could always integrate with Java and move the focus more there, but that never happened. We did integrate with Java for some C libraries (through JNA) which worked really well.
Eventually we were very successful with the Scala project, obviously it took quite some time to ramp up but I'm happy that I took the chance when it presented itself.
 
chris webster
Bartender
Pie
Posts: 2367
31
Linux Oracle Postgres Database Python Scala
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks, Raymond. So how much Scala are you doing these days, compared to Java?
 
Raymond Roestenburg
Author
Greenhorn
Posts: 5
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In the past +/- 2,5 years I've done 2 years and 3 months of Scala and 3 months of Java for my dayjob.
My open source contributions are all in Scala.
Right now I'm doing some Java work with Hadoop, sadly we could not use Scala on that project. Next month I'm back to fulltime Scala which I'm really happy about :-)
 
chris webster
Bartender
Pie
Posts: 2367
31
Linux Oracle Postgres Database Python Scala
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Sounds great! Have you used Scala with Hadoop yet? I'd have thought that would be quite a good match.
 
Raymond Roestenburg
Author
Greenhorn
Posts: 5
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Its actually a really great match. Check this post here for instance for some examples of scalding:

http://blog.echen.me/2012/02/09/movie-recommendations-and-more-via-mapreduce-and-scalding/

scoobi is another nice lib for hadoop.

(It was not my choice to use Java in that case, you can't win them all ;-)
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic