Scala is a functional programming language for the Java Virtual Machine. But, what is exactly functional programming? It's a programming model where we use only pure functions. This means that this functions do not have any kind of side effects.
Now the question is: What's a side effect? They are actions like modifying variables, data structures or fields on objects; throwing exceptions and halting with errors; reading or writing to files, including the console, or drawing on the screen.
Last September we ran a two day Scala training event as part of our Launchpad series.
The event was hugely popular, with tickets selling out within 24 hours.
We like Scala, and there are clearly a lot of other interested people in Edinburgh, so we thought it would be good to put something together for the anyone that couldn't get tickets last time.
Last weekend we shipped Typesafe's Philipp Haller and Cake Soloution's Jan Macháček to Edinburgh to talk about Scala, and we have the compromising video to prove it.
There are many nice things about Scala as a language, but compared to Java tool support is poor.
Fortunately we get some time to play with interesting things at work, so a few weeks ago we decied to add a bit of Scala support to one of the tools we use when developing Java.
Back in March, we ran our Clojure Launchpad as the first of what we hoped would become a series of community training events.
I'm now very excited to announce our second event.
Typesafe have very kindly loaned us the use of Philipp Haller for a weekend and Cake Solutions are shipping us an only-slightly-used Jan Machacek.
We therefore have the makings of a truly awesome (and I use that word only after careful consideration) two day Scala training course on the 20th and 21st of September.