Chevron Left
Back to Functional Program Design in Scala

Learner Reviews & Feedback for Functional Program Design in Scala by École Polytechnique Fédérale de Lausanne

2,999 ratings
512 reviews

About the Course

In this course you will learn how to apply the functional programming style in the design of larger applications. You'll get to know important new functional programming concepts, from lazy evaluation to structuring your libraries using monads. We'll work on larger and more involved examples, from state space exploration to random testing to discrete circuit simulators. You’ll also learn some best practices on how to write good Scala code in the real world. Several parts of this course deal with the question how functional programming interacts with mutable state. We will explore the consequences of combining functions and state. We will also look at purely functional alternatives to mutable state, using infinite data structures or functional reactive programming. Learning Outcomes. By the end of this course you will be able to: - recognize and apply design principles of functional programs, - design functional libraries and their APIs, - competently combine functions and state in one program, - understand reasoning techniques for programs that combine functions and state, - write simple functional reactive applications. 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 Programming Principles in Scala:

Top reviews

Sep 14, 2016

This is a university degree course which takes enormous effort to complete. But still its beond the programming course range giving you whats not possible to google or learn practical way. Thanks!

Mar 17, 2018

Thank you for this exciting course! I did the FP in Scala course a few years ago and decided to do the full certification now. I am looking forward to the next courses in the specialisation.

Filter by:

476 - 496 of 496 Reviews for Functional Program Design in Scala

By Mayeul M

Sep 5, 2016

Not as useful as the first course. The part on the futures is not really understandable.

By yassine a

Nov 3, 2017

not bad , but very short and not huge plus value compared to first course

By Gabriele A

Oct 1, 2019

Good course but not much coherence between lessons and exercises.

By mostafa n

Apr 29, 2017

nice course but i was expecting more about actors and futures

By Andrew Z

Sep 5, 2016

The main difficulty of the task does not apply to the course

By Bert H

Oct 6, 2016

Course material looked sometimes recycled and unstructered

By Shi Y

Sep 4, 2019

A bit of confusion about the assignment instruction.

By Chang F

Dec 5, 2016

Not as good as the first one, esp near the end.

By Sergey S

Dec 17, 2016

progfun and reactive programming was better

By Kuba F

Sep 24, 2016

Worse than Scala Principles - too chaotic.

By dani l

Sep 27, 2016

The old version was more interesting.

By Ivan P

Oct 27, 2019

The first week is simply useless :(

By Dmitriy K

Dec 3, 2016

Asigments are too easy to implement

By Luigi

Sep 23, 2016

I was expecting more from it.

By Ibrahim M

Jun 25, 2020

For the content of last 3 weeks, I struggled through some of them, I found some of them quite irrelevant, therefore I had to catch a lot of ideas from all over the internet, I thought it was just me until I saw other reviews about the course, obviously, this version of the course is different from the original one, some content was removed, glued, or out of order.

By Shodz

May 17, 2020

Subjects of exams are really cool but they are already written at 80~90%, I would prefer to have to do things from scratch even if the subject is less interesting. A part from that, there no connecting thread during the course, each weeks is about something new and we don't really use stuff from the previous week. Globally, it's hard to retain the new knowledge...

By Peregrine D

Jun 17, 2020

As other reviews have indicated, this course is a mish-mash and a big disappointment after the 5* progfun1 course.

By Jinliang F

Aug 17, 2020

The assignment did not sever the purpose to enhance what had been taught in the videos.

By Michael P

May 20, 2018


By Alessandro C

Nov 8, 2020

This module as the one before (for which Coursera doesn't allow me to leave a review) is really "academic" like. That really means a lot of notion with no practical examples. Even the first module wasn't really explaining scala, it already starts like you are supposed to know it already. While in the description it was depicted as a beginers-like course. For instance, the lectures talk about the argument "A" and then the assignment is about "Z^2". One of the worst thing about the lectures is that you spend 20 minutes trying to understand a really complicated notion and then in the next minute he implements the same concept with less line of codes and also more optimised, so you have wasted all that time trying to understand an obsolete technique, why you didn't show me the optimised way immediately?! Lectures of 15 minutes that could be resumed with an internet search of 3 minutes. Definitely a waste of money, I completed the first one hoping to understand more in this one but what I got was just a huge waste of time and money.

By Bogdan F

Jun 22, 2020

Курс значительно слабее первого, после 2 недели начинается хаотичная нарезка лекция.