Part 0: Intro to the Intro
Part 1: Installation, Set-Up, and "Hello World"
Part 2: Data Types
Part 3: Arithmetic Operators
Part 4: Variables vs Values
Part 5: String Operations
Part 6: Tuples
Part 7: Lists
Part 8: Arrays
Part 9: Sets
Part 10: Maps
Part 11: Logical Operators
Part 12: If Statements
Part 13: For Loops
Part 14: While Loops
Part 15: Functions
Appendix: List of Resources
This tutorial is designed to teach introductory Scala as a precursor to learning Apache Spark.
Scala is an object-oriented and functional programming language. It’s is most closely related to Java, so Java programmers should have a leg up on learning it. However, Scala is designed to be more concise and have features of functional programming languages.
Spark is an open-source cluster-computing framework designed for big data processing. It is written in Scala. Spark can be run in Python (PySpark) and R (SparkR and sparklyr); however, the best performance with Spark can be achieved in Scala.
I will offer some other sources as both alternatives and references. Jose Portilla's Udemy courses are great and my blog will series will loosely follow the structure for his "Scala and Spark for Big Data and Machine Learning" course. If you learn better in video format, I highly recommend that course.
Marius Eriksen of Twitter has published "Effective Scala", which is available online for free. That's a great resource, as well.
If you're coming from a Python background, you might also check out this Python to Scala e-book, written by Rob Story. It's "short and sweet" and serves as a good quick reference for all you Pythoners and Pythonistas out there!