July 20–24, 2015
Portland, OR

Get started developing with Scala

Jason Swartz (Mesosphere)
9:00am–12:30pm Monday, 07/20/2015
Scale D136
Average rating: ****.
(4.00, 1 rating)
Slides:   1-PDF 

Prerequisite Knowledge

You should have basic familiarity with common data structures such as lists and maps, and iterating over them. You should feel comfortable working with a shell, ie a command-line interface, and be able to extract archive files, move files & directories and run basic commands. You should be familiar with object-oriented programming and have experience developing applications with Javascript, Ruby, Python, or Java.

Materials or downloads needed in advance

You will need to bring a working laptop with at least 4 GB of RAM and the following software installed: JDK 7 or greater; SBT.

Description

Disrupt your programming comfort zone by picking up Scala, a powerful functional language built on the JVM.

The Scala language combines the static typing and object-oriented modularity familiar to Java developers, the expressive and readable syntax that Ruby and Python developers love, and the first-class functions and immutable collections that are at the core of modern approaches to writing concurrent programs and handling big data. Created in 2003, Scala has reached a maturity level in features and tool support such that it is now considered an enterprise-ready platform. A winner of the 2014 InfoWorld Technology of the Year award, Scala is used across a range of industries and companies such as LinkedIn, Twitter, Intel, Workday, and Walmart.

In this tutorial you will get a hands-on introduction to the Scala language and functional programming concepts, and learn everything you will need to know to build your own REST API from scratch. While we will only have time to cover a small subset of the language comfortably, you will be able to get a clear picture of what it is like to develop in Scala and how this can benefit you as a developer. You will gain experience writing applications in idiomatic Scala and using higher-order functions to work with and manipulate data effectively.

We’ll cover the following topics in this tutorial. By the time you leave, you’ll have a working understanding of the language and have built your own application!

  • Introduction to Scala and functional programming
  • Using the Scala REPL
  • Literals, values and types
  • Expressions
  • Functions
  • Collections
  • Object-oriented Scala
  • Building a REST API
Photo of Jason Swartz

Jason Swartz

Mesosphere

Jason Swartz is a software developer who enjoys intuitive user interfaces, expressive programming languages and concise user documentation. He is currently building data center automation at Mesosphere and organizing Scala community events in the San Francisco Bay Area. His book, “Learning Scala”, was published by O’Reilly Media in December 2014.