Chevron Left
Back to Distributed Programming in Java

Learner Reviews & Feedback for Distributed Programming in Java by Rice University

4.5
stars
492 ratings

About the Course

This course teaches learners (industry professionals and students) the fundamental concepts of Distributed Programming in the context of Java 8. Distributed programming enables developers to use multiple nodes in a data center to increase throughput and/or reduce latency of selected applications. By the end of this course, you will learn how to use popular distributed programming frameworks for Java programs, including Hadoop, Spark, Sockets, Remote Method Invocation (RMI), Multicast Sockets, Kafka, Message Passing Interface (MPI), as well as different approaches to combine distribution with multithreading. Why take this course? • All data center servers are organized as collections of distributed servers, and it is important for you to also learn how to use multiple servers for increased bandwidth and reduced latency. • In addition to learning specific frameworks for distributed programming, this course will teach you how to integrate multicore and distributed parallelism in a unified approach. • Each of the four modules in the course includes an assigned mini-project that will provide you with the necessary hands-on experience to use the concepts learned in the course on your own, after the course ends. • During the course, you will have online access to the instructor and the mentors to get individualized answers to your questions posted on forums. The desired learning outcomes of this course are as follows: • Distributed map-reduce programming in Java using the Hadoop and Spark frameworks • Client-server programming using Java's Socket and Remote Method Invocation (RMI) interfaces • Message-passing programming in Java using the Message Passing Interface (MPI) • Approaches to combine distribution with multithreading, including processes and threads, distributed actors, and reactive programming Mastery of these concepts will enable you to immediately apply them in the context of distributed Java programs, and will also provide the foundation for mastering other distributed programming frameworks that you may encounter in the future (e.g., in Scala or C++)....

Top reviews

DH

Sep 16, 2017

Great course. The first programming assignment was challenging and well worth the time invested, I would recommend it for anyone that wants to learn parallel programming in Java.

AM

May 30, 2020

Very well structured and presented course! Very useful material with good relevant examples! Thank you, Prof. Sarkar for this Distributed Programming in Java course!

Filter by:

51 - 75 of 78 Reviews for Distributed Programming in Java

By RACHNA

Apr 2, 2020

good

By Andrew G

Mar 1, 2020

I will start with the teacher. The teacher is clearly very knowledgeable about the subject and is great at articulating things in a way that is understandable. I do think that some of the lectures about different paradigms focused too much on a specific application, as opposed to more general concepts about the paradigm, but overall this was not a big detractor at all.

The min projects were a bit too mini for my taste. I didn't feel that I learned any one thing as much as hoped. For instance, Spark seems really cool, but I only ended up writing a single function for the project. Perhaps this my fault for having the incorrect expectations.

Overall, a good quick intro to the various aspects to distributed programming in Java, with a relatively small time commitment.

By Dhruva C

Oct 27, 2024

I thoroughly enjoyed taking this course. The knowledge and perspectives discussed were immensely helpful and have significantly broadened my understanding. The high-level abstractions taught were phenomenal and provided deep insights into the subject matter. While I appreciated the content, I felt that incorporating more exercises would enhance the learning experience even further. Practical exercises would allow for better application of the concepts covered. Overall, this course was incredibly valuable, and I am grateful for the opportunity to have participated.

By Benjamin G J

Aug 13, 2018

Solidly worth the money!

The lectures and references are perfect, and the perspective is super helpful. The exercises still need work, but they still provide a good foundation for learning this material.

For the maintainers, a good model for compound assignments of graduated difficulty is the sbt-moderated grading for the scala sequence. I think you did a very good job within the (maybe self-imposed?) constraint of single file upload, but this is the only major area allowing any improvement in this excellent course!

By Daniel B

May 2, 2020

Useful course overall, but a bit too short and too basic in covering a number of concepts. The MPI homework was needlessly painful due to inability to run under Windows other than by repeatedly submitting to the autograder as well as annoying undocumented "feature" of MPI_Isend in combination with MPI_Waitall that cost me 2 days.

By Victor P

Jan 6, 2023

Good introductory course. The implementation assignments (mini projects) could be more challenging though. There are 2 about a web server implementation that could be easily a single one plus a different final project that explored more Distributed actors and Distributed Reactive Programming.

By RODOLFO F J

Mar 6, 2022

Excelente curso para tener una mirada global sobre la programacion distribuida, una pueta a un mundo fasinante para quienes gustan de la ciencia de la computacion, son videos introductorios con referencias a documentacion que puede ser de utilidad/ interes.

By Satchit N

May 2, 2020

The concepts taught were clear and precise which helped me with an ongoing project. It would have been really better if the mini-projects were a bit more complicated.

By prabhakar k

May 28, 2020

thanks to coursera platform,to learn new way to solving distributed problem in java

By Marcos N F

Jul 13, 2019

Excellent course and instructor. It is a nice introduction to several subjects.

By Saifuddin M

Sep 22, 2017

The course was well laid out and introduced me to some new concepts.

By Jimmy C C

Jul 4, 2020

Great lectures. I really learned a lot about distributed computing.

By thiago a d m

May 5, 2018

First two courses are better. This one is quick and a little vague

By Manmeet D

May 3, 2022

Learnt so much, I've going to do such good things at work. :)

By Dima B

Sep 25, 2017

I would expect more indepth details about topics

By sugashini.T (

May 13, 2020

nice experience. i have learned a lot programs.

By Susmit S

Dec 9, 2019

The instructor was not clear with his approach

By Samuele M

May 29, 2018

Course does not go too deep in arguments, but gives a quite basic knowledge about distributed data structures and algorithms.

By MIAO K

Sep 16, 2017

Programming assignment is some what easy, I think it my be better to require student to finished the complete code.

By Ramavtar M

Jun 26, 2019

The basicness of this course is simply unexpectable. It makes you "Jack of all trades, master of none".

By Atsuya K

Feb 5, 2018

Covers topics not in the EPFL's distributed computing course. Assignments are trivial.

By RAVI P

Jul 2, 2018

Good course for over view of all the concepts related to Distributed Programming.

By Ankit M

May 24, 2020

Good course. I think MPI and Actors could use a lot more lectures and exercise.

By Mehul P

Oct 8, 2019

Please provide a detailed explanation to give some background knowledge.

By Luiz F d S G

Nov 19, 2021

The content itself is good, but the grading system is awful. They require you to optmize an algorithm, but do not provide enough resources on the grader, therefore you have to keep repeting the same submission for hours until finally you have the resources available on the server. The quizes also have some nonsense questions.