CC
The sessions where clearly explained and focused. Some of the exercises contained slightly confusing hints and information, but I'm sure those mistakes will be ironed out in future iterations. Thanks!

Manipulating big data distributed over a cluster using functional concepts is rampant in industry, and is arguably one of the first widespread industrial uses of functional ideas. This is evidenced by the popularity of MapReduce and Hadoop, and most recently Apache Spark, a fast, in-memory distributed collections framework written in Scala. In this course, we'll see how the data parallel paradigm can be extended to the distributed case, using Spark throughout. We'll cover Spark's programming model in detail, being careful to understand how and when it differs from familiar programming models, like shared-memory parallel collections or sequential Scala collections. Through hands-on examples in Spark and Scala, we'll learn when important issues related to distribution like latency and network communication should be considered and how they can be addressed effectively for improved performance. 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.

CC
The sessions where clearly explained and focused. Some of the exercises contained slightly confusing hints and information, but I'm sure those mistakes will be ironed out in future iterations. Thanks!
MP
Excellent material. Very good flow. Heather has an amazing way of walking through the flow and simplifying the concepts. Great assignments -- takes a bit longer than 3 hours.
BL
some of the questions are unnecessarily specific (i.e. needs to be rounded to 1 decimal and sorted exactly for it to work)but otherwise, great lecturer and great content
KG
Very Nice and effective course. One of the best course i have done on Spark online. Many Thanks to the course instructor Heather Miller for creating a very detail and updated course on Spark.
PK
The course starts from the basic concepts and moves towards the complex concepts. The most important thing is that minute details are taken into consideration and explained properly.
MT
the theory is very clear and well explained.the practical assignments are a little bit ambiguous but they are overall very good and challenging. highly recommended!
AW
This course has a bit over-complicated practice assignments (where overcomplication is not related to the course), but the content itself is really good, communicative and 100% worth going through.
CH
although spark part is taught nicely, it also takes a lot of time to understand the sql part and remember a lot of sql operations as a zero background man in sql
LS
It surely opens your mind, even on unrelated topics, I found myself able to apply some of the distributed computing logics even to imperative sequential programming. Good job.
NM
Good overview of the subject, covering all important aspects. Assignments were well prepared, with a couple of unclear points that were quickly discovered and explained on the forums.
MS
Great course with nice explanations of some Spark concepts. The third week was particularly useful for my understanding of Spark shuffling and partitioning. Thanks a lot!
WD
Great course to get going with Apache Spark. Would recommend to someone who has java or scala experience already and wants to learn about distributed processing.