Scala Refactoring Dojo


Details
You will get a Scala implementation of Conway's Game of Life [1] to work on. The implementation is complete, it has tests, and they all pass...
The catch? The code is ugly as hell!
Your mission, should you choose to accept it, is to bring the codebase back to a sane state. The goal is to excercise refactoring skills (without causing tests to fail) and to re-design from non-idionatic (mutations, while-loops, etc.) into idiomatic Scala.
We will work in pairs, as it's more fun and productive (although it's not mandatory). We will try to pair experts with beginners. Beginners welcome!
TDD is strongly encouraged for any new component you write. However, it's not the focus of this dojo. The acceptance tests are written for you.
At the end, we will have the opportunity to show and discuss our different approaches / solutions.
What you need:
- Laptop
- SBT
- Git
- IDE / Editor
- Should be able to run "sbt test"
The codebase will be provided at the event, or shortly before.
You can already test your setup by cloning this repo:
https://github.com/scala-vienna/refactoring-dojo
Summary:
- Refactoring of the "game of life"
- Pair programming
- Bring Scala-ready Laptop
- Discussion about Idiomatic Scala
- Beginners welcome!
[1] http://www.codingdojo.org/cgi-bin/index.pl?action=browse&diff=1&id=KataGameOfLife

Sponsors
Scala Refactoring Dojo