Functional Programming in Scala Specialization

Program on a Higher Level. Write elegant functional code to analyze data that's big or small

Instructors: Martin Odersky +3 more

What you'll learn

  •   Write purely functional programs using recursion, pattern matching, and higher-order functions
  •   Design immutable data structures
  •   Write programs that effectively use parallel collections to achieve performance
  •   Manipulate data with Spark and Scala
  • Skills you'll gain

  •   Data Processing
  •   Apache Spark
  •   Performance Tuning
  •   Big Data
  •   Programming Principles
  •   Distributed Computing
  •   Scala Programming
  •   Software Design Patterns
  •   Object Oriented Programming (OOP)
  •   Algorithms
  •   Data Manipulation
  •   Data Structures
  • Specialization - 5 course series

    Learners will build small to medium size Scala applications by applying knowledge and skills including: functional programming, parallel programming, manipulation of large data sets, higher-order functions, property-based testing, functional reactive programming.

    Learning Outcomes. By the end of this course you will be able to: - reason about task and data parallel programs, - express common algorithms in a functional style and solve them in parallel, - competently microbenchmark parallel code, - write programs that effectively use parallel collections to achieve performance Recommended background: You should have at least one year programming experience. Proficiency with Java or C# is ideal, but experience with other languages such as C/C++, Python, Javascript or Ruby is also sufficient. You should have some familiarity using the command line. This course is intended to be taken after Functional Program Design in Scala: https://www.coursera.org/learn/progfun2.

    Learning Outcomes. By the end of this course you will be able to: - read data from persistent storage and load it into Apache Spark, - manipulate data with Spark and Scala, - express algorithms for data analysis in a functional style, - recognize how to avoid shuffles and recomputation in Spark, Recommended background: You should have at least one year programming experience. Proficiency with Java or C# is ideal, but experience with other languages such as C/C++, Python, Javascript or Ruby is also sufficient. You should have some familiarity using the command line. This course is intended to be taken after Parallel Programming: https://www.coursera.org/learn/parprog1.

    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.

    Functional Program Design in Scala

    Parallel programming

    Big Data Analysis with Scala and Spark

    Functional Programming in Scala Capstone

    ©2025  ementorhub.com. All rights reserved