Functional Programming in Scala Specialization
Program on a Higher Level. Write elegant functional code to analyze data that's big or small
About This Specialization
Discover how to write elegant code that works the first time it is run. This Specialization provides a hands-on introduction to functional programming using the widespread programming language, Scala. It begins from the basic building blocks of the functional paradigm, first showing how to use these blocks to solve small problems, before building up to combining these concepts to architect larger functional programs. You'll see how the functional paradigm facilitates parallel and distributed programming, and through a series of hands on examples and programming assignments, you'll learn how to analyze data sets small to large; from parallel programming on multicore architectures, to distributed programming on a cluster using Apache Spark. A final capstone project will allow you to apply the skills you learned by building a large data-intensive application using real-world data.
Follow the suggested order or choose your own.
Designed to help you practice and apply the skills you learn.
Highlight your new skills on your resume or LinkedIn.
- Intermediate Specialization.
- Some related experience required.
Functional Programming Principles in ScalaUpcoming session: Jul 16
- English, Korean, Serbian, French
Functional Program Design in ScalaUpcoming session: Jul 16
Parallel programmingUpcoming session: Jul 16
Big Data Analysis with Scala and SparkUpcoming session: Jul 30
Functional Programming in Scala CapstoneUpcoming session: Jul 23
- 6 weeks, 4-5 hours/week
About the CourseIn the final capstone project you will apply the skills you learned by building a large data-intensive application using real-world data. You will implement a complete application processing several gigabytes of data. This application will show interactive visualizations of the evolution of temperatures over time all over the world. The development of such an application will involve: — transforming data provided by weather stations into meaningful information like, for instance, the average temperature of each point of the globe over the last ten years ; — then, making images from this information by using spatial and linear interpolation techniques ; — finally, implementing how the user interface will react to users’ actions.
Dr. Heather Miller
Prof. Viktor Kuncak
Dr. Aleksandar Prokopec
More questions? Visit the Learner Help Center.