Hacker News new | past | comments | ask | show | jobs | submit login
Functional Programming Principles in Scala with Martin Odersky (coursera.org)
37 points by draq on May 15, 2014 | hide | past | favorite | 15 comments

Enrolled in current iteration and think it's good enough to finish.

A great excuse to learn Scala. A serviceable introduction to functional programming. Middle of the road in quality relative to other computing coursrs on Coursera I've taken. Work load toward the lighter end for a Coursera course focused on programming [among those I've taken]. Use of IDE encouraged. Use of SBT required.

Of note: assignment structure and IDE encourage and facilitate testing practices. Also for a later iteration of a programming course the discussion forum is very active.

I would love to hear from someone who took (and completed) this class with no prior experience in Scala or FP.

I fit your criteria. I really enjoyed this class; I felt like there was a good balance between Scala-specific features and conventions, and a more general overview of the functional programming way of thinking. The programming assignments were surprisingly involved for an online class.

Since I can't learn anything from lectures unless I force myself to pay attention by taking detailed notes, I took detailed notes. You can find them at the link below, although I make no guarantees about their correctness. (Note that they may also spoil the answers to some of the impromptu in-lecture quizzes.)


I wasn't a fan of the course. For context, I've got a lot of experience in FP, but no experience in Scala. I took the course hoping to learn Scala.

The course didn't teach me Scala. I suppose if I was an FP beginner, I would have learned something, but not much. It had about the same depth in FP as my college Programming Languages course, except that course also covered a ton of other topics.

Part of how dissatisfied I was is because I took the course immediately after Dan Boneh's cryptography course, in which I learned a ton. I was very disappointed how little content was actually in the course.

The title of the course is "Functional Programming Principles in Scala". To me this indicates the focus is FP principles, and Scala is the tool used. The FP content they teach is very good for an introductory course, in my opinion.

If you took the course and read the forums, you probably noticed a LOT of people really struggled with the FP part. Imagine if it also added more in-depth Scala features...

There was very little content or you already knew fp so you didn't learn much?

I felt like there wasn't much content. Some of it was also very misguided, like having an Int => Bool set representation, and then having part of the assignment say "pretend the domain is limited to 0-10000 for this next part". It took 4 or 5 weeks to get to examples of using map. That just felt remarkably slow.

I took this class and enjoyed it; it was my first experience with scala, but I had previously taken grossman's programming languages course which introduce me to FP (https://www.coursera.org/course/proglang).

Actually I thought grossman's was better at giving a comparison of FP and OO and hit on some more of the theory in FP (for example, odersky doesn't talk about the expression problem, but grossman did).

There will still be a lot in scala that's confusing after taking this class, but it's trying to teach the concepts rather than the language details.

That being said, I really enjoyed it and would recommend it.

Scala is an interesting blend of FP and OO. Just be aware that the ML-style languages (or even a lisp e.g. Racket) really feel more like FP. The blend is what makes it a mind-expanding course.

I also fit your criteria. I learned a lot, however I would say I didn't really "get" functional programming until after reading some more books and taking a different course that emphasized functional programming. In this course, I was trying to write imperative programs just as much as I could. However, without this course as a foundation, I doubt my other reading (and the other course I took) would have been as valuable.

I have worked most of this course myself and I am finishing last two assignments. I think, I have learned a lot too. Would you care to share other books you read and course you took ?

I had no previous experience with Scala or FP. I thought it was an excellent course, and one of the most intellectually challenging things I had done in a long time.

I review the course in more depth at http://bigscary.com/2013/02/27/functional-programming-in-sca...

It was fantastic for me, really helped give me the 'bootstrap' I needed to start writing functional code.

I enjoyed (and completed) the class. I had no scala and only minimal FP experience.

It is a pretty basic course. Depending on your level of programming experience it might not even be worth it.

I did most of the course and was pretty new to FP. I have no plans to do Scala development, but the course did help me become a better programmer in the languages I do use.

I've been a developer for 10+ years but have been ignorant to FP. It just opened my eyes a little bit.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact