Chevron Left
Back to Functional Programming Principles in Scala

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

4.8
stars
8,244 ratings

About the Course

Functional programming is becoming increasingly widespread in industry. This trend is driven by the adoption of Scala as the main programming language for many applications. Scala fuses functional and object-oriented programming in a practical package. It interoperates seamlessly with both Java and Javascript. Scala is the implementation language of many important frameworks, including Apache Spark, Kafka, and Akka. It provides the core infrastructure for sites such as Twitter, Netflix, Zalando, and also Coursera. In this course, you will discover the elements of the functional programming style and learn how to apply them usefully in your daily programming tasks, such as modeling business domains or implementing business logic. You will also develop a solid foundation for reasoning about functional programs, by touching upon proofs of invariants and the tracing of execution symbolically. The course is hands-on; most units introduce short programs that serve as illustrations of important concepts and invite you to play with them, modifying and improving them. The course is complemented by a series of programming projects as homework assignments. Recommended background: You should have at least one year of 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 background in mathematics (e.g., algebra, logic, proof by induction). Last, you should have some familiarity with using the command line....

Top reviews

RS

Oct 8, 2016

Really good explanation by the instructor. Good assignments. The assignments gave a good insights into functional programming. I loved the way the problems were decomposed into neat smaller functions.

VP

Sep 13, 2018

It took me much longer than expected to finish the course and sometimes it made me feel stupid and helpless. Diving into functional programming was a mind bending experience, totally worth time spent!

Filter by:

1601 - 1615 of 1,615 Reviews for Functional Programming Principles in Scala

By Elliot

Nov 5, 2023

A real case of theory vs practical applications. The lecturer goes over the theory in immense detail in the lectures but not much practical applications. Assignments have no build up where you can first practice the new topics you learned. Just straight in the deep end with some very tough problems - it results in you not building up any momentum as the student and feeling confident in attacking the problems. Would not recommend

By Cristian l

Jun 6, 2021

It is mentioned that it is only necessary to have at least one year of experience in a programming language, however, it does not mention that you must have a solid base in arithmetic, all the examples are associated in a very general way but with great complexity that is not clarified. The assigned tasks are becoming more complex. All prerequisites to enter the course should be declared.

By Pritesh S

Jun 2, 2020

There is a big disconnect between lectures and assignments. It seems like there is a mix and mash of materials from different sources. Had the instructor and EPFL team put more efforts into the support resources, it could have been much better. I really liked the videos from Weeks 1 and 2, but then the later week videos seemed inconsistent.

By Anastasiia Z

Sep 10, 2021

This course was too theoretical, for my taste. Many lectures looked like an advanced mathematics course. Also, the course tasks were way too hard for someone just starting with the language. My senior colleagues at work said, that if their learning of Scala would have started this way, they would have ran away and never returned back.

By Miguel A “

Oct 6, 2020

I have a proficiency in Python and R and I think it is very difficult to use the ItelliJ for the first time. I would like some guidence in order to know how to use correctly the IDE. I get so many errors and I do not know what does so many things about programming in this lenguage or Java. A bit dissapointed...

By Tomás T

Apr 2, 2021

Although the explanation is well done in the videos, the complexity of the submission excercises is crushing. Besides you never know how it is properly done. There is nothing that guarantees that you are doing the right thing. This course is not for 100% beginners in scala. Terrible experience

By Varun A

Sep 1, 2023

The examples covered in videos did not cover real world problems that one would relate to very easily. Most of the videos covered mathematical concepts to explain functional programming which were a kind of distraction.

By Jason J

Jun 9, 2020

Most basic setup instructions for the dev environment do not work as described or at all. Linked external instructions are not clear. I would have been better off trying to learn FP in Scala on my own.

By Cherniaev A

Feb 2, 2021

too much academic and outdated (2012 year of release, if i am not mistaken) . The book "Programming in Scala" written the same author is much better, because the author updates the book.

By Domício

Sep 20, 2021

The course doesnt provide the necessary information to complete the assignments. Too heavy on algorithms solving instead of teach functional programming.

By Igor M

Apr 26, 2023

Materials provided in course are not sufficient to finish assignments.

By Vedang B

Mar 8, 2021

Poor preparation especially in week 1

By Yo S

Mar 8, 2022

disorganised

By Pramod D

May 21, 2021

I spent more than 3 hours on the first itself. I was stuck at setting up the environment. The video shows one sort of instruction, but the document provided has a different one.

There is no clear explanation on why we are using what and where. Instructions are pretty vague and not for beginners.

There is no section to provide basic help on the most common errors faced and how to resolve them.

By Antonio B

May 2, 2021

The course is good, but the projects just don't work in 2021. There is no point in spending 95% of time trying to figure out how to configure the many moving parts to work. This is sad because it confirms why Scala cannot get more popular - it's environment is just too convoluted.