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!
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.
To me every mooc by Martin Odersky is pure gold. I guess this course underwent a couple of "refactorings" because I didn't have the impression that the topics (and sometimes the assignments) throughout the 4 weeks followed a clear path. This is just my impression though, I might be wrong. Anyway great mooc and lots of fun, I can totally recommend it!
by Chloe L•
Prof Martin's lectures are great.. however I have trouble following the other lecturer Erik. He sounds out of breath all the time and the content is not as well organized & well explained as Prof Martin's. I ended up skipping his lectures (which is sad, as his lectures are about Scala Future which imo is a difficult but important topic).
by MAGDELENAT P•
A bit lost sometimes. The course was remodeled after previous ones obviously and it seems a little chaotic sometimes. Not sure to get all the message that was intended to be passed. Sometimes the exercice are way simpler than the session contents. Still I've enjoyed (almost) every moment of the course and I am eager to go on! Thanks!
by Sergey V•
Thanks for this course!
Only one times i was very confused - when i saw that in the last assignment i should use Vars and Signals, not Features and Promises - that's, i think, a little bit far from as async code in real projects, which contain promises, features, actors etc.
But anyway, thanks for all of that, it was useful for me.
by Tomasz K•
Course material was not difficult, but the homeworks weren't much correlated with it. If you attend other IT online courses you will notice that this one is a little old fashioned. I was also more interested in real-life usages than how it should be implemented. Regardless the cons course was informative and somehow useful.
by Joël V•
Provides an interesting theoretical bird view on: monads & its relation to for expressions, streams & lazy evaluation, elegant examples of mixing mutable and immutable data-structures for stateful programs, and finally signals for event management. The exercises are fun ;-) and illustrative although not too challenging.
by antonin p•
Very good course but not as good as the first one :
Try monads are never introduced but are referenced by one of the lecturer.
Signal DP for mutable state encapsulation is introduced, but it's benefits are unclear until the research paper is read.
Exercises are still very carefully designed. Thanks for the great contents !
by Nikolas V•
The course material about the futures, although interesting should have been developed further and at least with an extra week in the course (and have an assignment associated to it). As things are, week 4 didn't flow as well as the previous ones, or any of the weeks from the course "Functional programming in Scala".
by Erick F•
The only issue I have is with the "Latency as an effect" part of the course, it seemed reasonable but it assumed that you knew many concepts that are not shown, and also it doesn't have as many practical examples as other sections. Nevertheless, the main aspect of the course, functional design, was explained greatly.
by stuart o•
Offers outstanding depth in parallel concepts and the weekly programming samples are really interesting and fun. Some good community discussion but not a lot of participation by instructors. The theoretical material is covered very quickly and there are not a lot of practice exercises to master those concepts.
by Dzmitry B•
A few last lectures (Future, Try) lack pretext, or at least appear somewhat out of order, unless one is familiar with the topic. Generally, higher score (10 out of 10, or 9 out of 10) could have been made a little harder to get. Adding a couple of extra optional problems for one point each could be a good idea.
by Andrei P•
Theory is great but recorded messy sometimes. I looks like it was recorded for something else and then adapted for this course. And I would like to have some more explanation not important topic like Monads, etc
I also would like to have more practice on each of important topic to really fit it in your mind
Martin is smart and knowledgeable. This course really helped me on Scala Programming. Personally, I'd like something more on algebraic design lectures and code assignments such as monoid, functors, applicative functors and many kinds of monads. Anyway, it's my 1st experience on coursera, thanks a lot : )
by Juan P G E•
Very interesting course. You can learn the basics about functional reactive programming and get to know about Signals and Futures. The assignments are not as difficult as the ones in the previous course and you can see that there is a lot of work to provide the infrastructure needed for those exercises.
by Tan K H•
This course touches on many areas of production-level functional programming design. However, it is too short and the parts are somewhat disjointed, particularly the assignments. Can be greatly improved by having a specific focus (e.g. FRP, monadic design, effects) and have a course for each focus.
by YAMADA K•
Most Lectures are extremely helpful for standard learner of Scala who is unfamiliar with Stream, Rx and any other lazily evaluated expression and it's applicable architecture.
But lectures about Future and it's related Class are not enough volume and quality.
It is why I does not rate full stars.
by Sebastian Z•
It's a complete course with more advanced topics than its predecessor but seems that some lectures removed because some times Odersky referenced to lectures that weren't in the course. On the last week was some videos disconnected (talking about Scala Futures) with the rest of the course.
by Veltin D•
Course material quality is unequal throughout the lecture. It does seem that some parts were taken from another class and were copy-pasted into this class. Anyhow, very good class overall, the homeworks are really good and well prepared. Thanks for putting online such a great class !
by Germán A•
The course topics seem a little disjoint, some complex topics like monads and futures require more examples or a more throrough explanation. Excercises seem to be related arbitrarily to the course topcis, for example exercise on week 3 about generators needs material from week 1.
by Hanna S•
The last few 4th week's videos seem a little bit messy, some lessons referenced are definitely missing and Futures part is quite confusing and not very useful (I mean, "guys, just go and read about it online" would bring more value per second than watching the videos).
by Иванов О•
Not a bad course, a nice introduction to monads, reactive programming and futures, though it has a lot of disconnected chunks and exercises from the old course and isn't as polished as the first one about FP (which, in my opinion, really set the bar for other courses).
by Rodolfo N P•
Excellent course, has a good transition from the previous course but still manages to be standalone. The last week about reactive programming was a little hamfisted, though. I would have liked a more formal, but pragmatic, approach like Martin usually does.
by Henrik S•
The first two weeks where very well structured and as interesting as the first course. In week 4 it seems that there have been materials from other courses puzzled together (Principles of Reactive Programming). That made it a bit difficult to keep on track.
by Harish k•
Some of the lectures were tough to follow. Huge disconnect between the course videos and the assignments. QuickCheck assignment was a waste of time for me. Calculator assignment is really good. No assignments related to Week4 course work is disappointing.
by Kaloyan T•
Pretty informative course, even if the first one or two weeks used to the part of the Intro to Scala course. The 2nd part of the lectures in the 4th week seem really disconnected from the rest of the course and are introduced with very little context.