Ola Kunysz & Konrad Zdanowicz
Wrocław Nov 23rd 2016
You already know that well
Scala in a nutshell
Case class is your friend
Lots of cool things you already know
Lots of not so common concepts you will like
def learnNew(style:Paradigm = Paradigm("imperative"))
* hype boom
* reflection - did we really need Scala?!
* way easier when you have a mentor
Tooling: Compile time, not perfect IDE support and integration
Lack of enough experience in the industry
Job security patterns (even unintentional)
You'll feel you don't know a thing
but then you accept it and the life is easier when the expectations are lower
Conversations about category theory
* Level A2: Intermediate application programmer
** Level L1: Junior library designer
16 out of the 23 design patterns found in the GOF book are invisible or simpler in dynamic languages
You get that all thanks to the function being an ordinary value
Who said Scala cannot duck type?
Scala is dead
You don't need Scala, when all you care is:
FP in Java 8 is fun, limited and noisy,
but still possible and fun
Anybody with Java 8 and Scala exp can relate?
programming languages support for FP
Where is your language?
20% of Scala features
The rest 80% of Scala features I don't understand
Scala code I see in real projects chart
Scala is not a functional programming language only
Scala is so much more
when you notice its OO support
Programming in Scala (Odersky, Spoon, and Venners)
Functional Programming in Scala ( Chiusano and Bjarnason)
Learn You a Haskell http://learnyouahaskell.com
Transitioning to Scala
5 years of Scala and counting...