wood burning stoves 2.0*
The moose likes Scala and the fly likes Effective Strategies for Scala Adoption? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of OCA/OCP Java SE 7 Programmer I & II Study Guide this week in the OCPJP forum!
JavaRanch » Java Forums » Languages » Scala
Bookmark "Effective Strategies for Scala Adoption?" Watch "Effective Strategies for Scala Adoption?" New topic
Author

Effective Strategies for Scala Adoption?

Tony Baines
Greenhorn

Joined: Aug 11, 2003
Posts: 15
Between the inertia and reasonable fear-of-change that many teams have over making a big change in technologies - cost of training, risk of failure, difficulty finding maintainers - there's a big barrier to adopting any new language, and while I can see that Scala can be used as a 'better' Java it has a reputation for being a complicated language with difficult new concepts.

Given all this, does anyone have strategies that have worked for them in introducing Scala into an existing Java-centric team?

For example
* Start small or commit fully?
* Embedded modules e.g. Akka within Camel?
* Scala infrastructure with embedded Java?

Cheers
~Tony
chris webster
Bartender

Joined: Mar 01, 2009
Posts: 1788
    
  16

Not sure if you've already seen this, but there are a couple of videos on InfoQ describing how The Guardian newspaper moved part of its systems over from Java to Scala and how they feel this simplified development. They seem to have taken a fairly evolutionary approach i.e. writing Scala-as-Java initially then gradually re-factoring to a more functional style as their developers became more confident in FP. The Guardian seems to be a bit of a poster-child for Scala, and they seem to have a very progressive approach (as you'd expect!) to their IT e.g. they also use MongoDB for their web content rather than a relational DB.


No more Blub for me, thank you, Vicar.
Tony Baines
Greenhorn

Joined: Aug 11, 2003
Posts: 15
Thanks for that Chris I'd not seen it before, and it's certainly inspiring and perhaps reassuring for Java devs being asked to take the jump.

What seems to have worked for them appears to be an inside-out growth, starting with Scala replacing certain Java-written features and growing outwards to finally have Scala own the whole application. The implication is that there was a customer willing to pay for significant refactoring work with minimal new features, or a whole lot of extra hours put in under-the-radar, which obviously worked for them but I'm not sure would happen in a less 'progressive' setting.

Any other examples of where it's gone well, especially in an enterprise setting?

Cheers
~Tony
chris webster
Bartender

Joined: Mar 01, 2009
Posts: 1788
    
  16

Unfortunately, I have yet to make it into a Scala-enabled workplace, but I've read that some people sneak Scala into their organisations by using Scala-based testing tools like Specs 2 or ScalaTest which are allegedly quite easy to use for testing Java apps.

I guess it depends on how much buy-in you have from your paymasters and developers for the idea of investing in learning new stuff that should hopefully pay off in the medium/longer term. If nobody has a good reason for playing along, they're not going to.
Jon Ferguson
Greenhorn

Joined: Sep 05, 2007
Posts: 16
Hey Chris,

Thanks for the link from the Guardian.. it was quite enlightening. 2 things struck me: 1) the ability to keep all your production deployments the same as with Java, and 2) the massive code reduction. Since every line of code introduces potential bugs this is very cool. Their REST API for accessing data across the enterprise is also just the kind of application I'm looking at. Interesting how they started with test then felt they had to build the whole think in Scala.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Effective Strategies for Scala Adoption?