ScaTDD: Casting an eye over three major Test frameworks in Scala

Testing has traditionally been the gateway process for Scala development at a number of Java shops looking to evolve their tech stack with minimal disruption or committment. This posts hopes to cover three of the main testing frameworks in the Scala landscape, (Specs2, Scalatest and Scalacheck) with an example of the classic FizzBuzz test, for how they can be used for fun and profit.

3 commands, 2 dependencies, 1 minute.. blast off with Scala development using the mvn archetype

I go to a fair few (probably too many), tech conference and meetups. A passing observation, is that if code samples are shown a proportion of the audience will try to run them while following along. Initially, this seems counter intuitive (to try and both listen and absorbing information while also trying to perform actions as a background task), though my own experience is that this works suprisingly well for practical activities, (maybe the multi-sensory exposure helps learning and retention ?).
Continue reading

Scala + JDK 6 annotations = Simple REST service in ~ 50 LOC

This is a post I’d been meaning to submit for some time and is the chaser sibling to the SOAP fuelled scrub up, showing how to create a very simple service in the Restful style using only Java 6 and the Scala language (note I personally use Scala v2.9). Continue reading

Partial updates in an immutable World

This post was prompted by a conversation with a good friend, who is an experienced Java developer taking their first, tentative, steps towards becoming a Scala programmer. Basically, the conversation went as follows:

“…Immutability seems good and like a goal I should aim for. How can I get this in my domain objects without having to provide a multiplicity of constructors to do partial updates ? Is it really that big a deal ? I’ve rarely had to worry about this stuff in Java at all !”

Both fair question, which I’ll try to address in the remainder of this post. Continue reading

Scala + JDK6 annotations = Simple Web Service < 20 LOC

I’ve recently had the fortune to inherit the Promethean task of evaluating a number of vendor systems, whose main interface to existing ‘enterprise‘ software/systems is via a SOAP Web Service gateway. As intriguing as this may sound, I’ve found the snippet of code below to be an incredibly useful starting point when trying to rapidly knock up a sample integration endpoint. Continue reading