Chevron Left
Back to Java Programming: Solving Problems with Software

Learner Reviews & Feedback for Java Programming: Solving Problems with Software by Duke University

7,613 ratings

About the Course

Learn to code in Java and improve your programming and problem-solving skills. You will learn to design algorithms as well as develop and debug programs. Using custom open-source classes, you will write programs that access and transform images, websites, and other types of data. At the end of the course you will build a program that determines the popularity of different baby names in the US over time by analyzing comma separated value (CSV) files. After completing this course you will be able to: 1. Edit, compile, and run a Java program; 2. Use conditionals and loops in a Java program; 3. Use Java API documentation in writing programs. 4. Debug a Java program using the scientific method; 5. Write a Java method to solve a specific problem; 6. Develop a set of test cases as part of developing a program; 7. Create a class with multiple methods that work together to solve a problem; and 8. Use divide-and-conquer design techniques for a program that uses multiple methods....

Top reviews


Oct 7, 2017

Excellent explanations and amount of course work for practice, the tests made good use of the examples and work given, I am satisfied with what I learned in this course and see it's real world usage.


Dec 10, 2020

Excellent explanations and amount of course work for practice, the tests made good use of the examples and work given, I am satisfied with what I learned in this course and see it's real world usage.

Filter by:

1 - 25 of 1,561 Reviews for Java Programming: Solving Problems with Software

By Lucas N

Mar 22, 2019

To say this course is for beginners is a misnomer.

I think if one has some familiarity with another programming language then yes - this could be a beginner course. I came into this course with zero formal programming knowledge and was completely overwhelmed by the pace and material. This course does not give the students any/enough "small wins" to build muscle memory and gain confidence.

I was drawn in by assumed time for completion. 4-8 hours/week sounded pretty good for the schedule of a working adult, however the 10-minute "assignments" consistently took me 6+ hours (most of the time spent calling/screen-sharing with my developer friend for help). Again, I think if one already has some programming knowledge (and therefore not *really* a 'beginner') then yes, this would probably take them that amount of time.

I folded almost at the end of week 2. To echo another review here, it seems the instructors forgot what it is like to be a beginner. The instructors assume too much about what their students know. Really kicking myself for spending the money trying to limp through this course.

If you are like me and starting without any experience, there are plenty of alternative free material actually geared towards 'beginners' that will give you the context and practice needed to actually comprehend the course material.

By Rathna S

May 16, 2017

I have just started the course, but it is way over my head. This should clearly be marked as intermediate, advanced or marked as for people already in IT industry.

By Paul W

Sep 29, 2019

Very disappointing for me. I chose the course to learn the fundamentals of Java, but it is really everything but motivating. The lessons are short and kept very easy and informative, but for the assignments you have to do things that were never mentioned anywhere, so you spend hours of research online on how to do the assignments. That's not why I wanted to visit a course, hours of frustrating online research I can also have while learning it on my own

By shelby p

Feb 10, 2019

Really poor course structure and material explanations. Canceling subscription.

By Theresa S

Feb 18, 2018

There are other OOP courses out there that are easier to follow & execute on assignments. The java editor used in this class is clunky and ridiculous and the assignment instructions seem out of date and disorganized - this class was infuriating. It takes simple assignments and obfuscates instructions.

By Hesam E

Feb 13, 2020

Literally one of the worst courses I've ever seen in twenty years of studying. No evaluation (correction check) for assignments, no reading material is provided by the instructors (except for the two million free websites they refer which makes this course pointless.). I believe this course is meant to make the most money with the least contribution. I regret I paid one month for this course.

PS. If you want to know what a helpful course should be, you may take a look at the course "Python Classes and Inheritance" by university of Michigan. This course: 1-Has step by step reading material, 2-Benefits from an online Python interface that could be used for assignments and quizzes.


Oct 16, 2019

This is an Awesome Course . The best thing About this Course is that It has weekly quizzes and Assignments as well as Practice Quizzes for particular Topics which helps in learning it more easily .

By Eric B

Apr 15, 2020

I signed up for this course because I really liked the first one regarding HTML, CSS and JS. I was very happy with that one,I felt I learned a lot and was well organized(I gave it 5/5).

This one, however, is the opposite. The gap of difficulty between this course and the previous one is abysmal. I am aware that they are completely different things but both courses are categorized as for beginners. I ended up being able to finish the course but only because I have a friend who's a programmer who helped almost every step of the way. The teachers are still really good and the forums help, but the difficulty and the fact that at times the course feels out of order (I found week's 3 and 4 easier than 1 and 2).

So I would recommend you only do this course if you have an intermediate level (what is explained in the videos will seem basic but the assignments will be challenging). However, you're a beginner, I'd recommend you do their first course on HTML, CSS and JS and find another course to learn Java.

By Umar K

Apr 19, 2019

The assignment questions were very repetitive. A lot of times the assignment questions weren't clear. As opposed to spending a lot of time learning and debugging my code, it felt like I was doing rote work. The worst part about the course experience was the BlueJay IDE. It requires you to manually compile your code, then create a new instance of your class, then run the test method, after EVERY change.

By David N

Aug 7, 2016

You need a little more experience in coding that just the first course, or try not to leave everything by the end of the week(as I did) to find what you need for the assignments. Great course !

By Olga V

Nov 9, 2018

Do not recommend this course and this specialization for beginners. The first part of the specialization was even good, bit this one went considerably worse. Maybe worthy to make only if you have an experienced developer on your side to help you. Most likely, you're going to be really frustrated. Had high expectations on this courses, sadly was disappointed. Poor and unclear explanations, too complicated and multiple assignments, everything moves too fast for a beginner. Plus using a BlueJ environment which nobody in a real world uses.

By Mattapalli S

Apr 25, 2021

the course is very good.The way of teaching is very excelent each and everyone who knows basics will understand this.The examples which was used are user understandable and real,I LOVE THIS COURSE.

By Abhishek G

Aug 28, 2020

This is a very good course for those students who want to study java from the very beginning. Assignments and quiz system is also very efficient in understanding and applying the learned concepts.

By Jason D

Jul 6, 2020

This course teaches some basics, but it doesn't really explain them. The pace is also quite fast. Additionally, there is too much focus on importing libraries and using functions/methods from those libraries. The course should be focusing on methods, variables, strings, etc, but instead shoves obscure methods from the libraries down the throats of the students. The instructors of this course do this so that the students can feel like they're coding something important using predefined methods, but in reality they should be focusing on the basics instead.

By Subhrangshu A

Nov 5, 2018

Course taught up to like beginner level, assignments are like PhD level. Need to read from other sources, in depth, to solve these assignments.

By Суслина Э В

Apr 9, 2016

It is really not for beginners. The first week was ok , but we didn't spend much time coding. Then it was really difficult to follow.

By Andreas M

Oct 17, 2017

i think its not for beginners

By Ekaterina V

Jan 10, 2021

I took this course as a part of Java Programming Specialization. My prior experience in programming consisted of several lessons on Pascal back in school about 13 years ago, so basically zero experience + 1st course on HTML+CSS+JS.

This course wasn't as great as the first one. First problem is BlueJ. That's the environment you're forced to use for coding. Forced - because Duke created some Java libraries for learning purposes and added them to their BlueJ version. The problem is that nobody uses BlueJ in real life. There is an option - you can download those libraries and add them to another environment of your choosing (and used in real world), to learn more efficiently. But don't expect any help with that.

Also the reason of great frustration for me was estimated time info. It's a total mess. It says for example about 30 min for a programming assignment, about 4 hours to complete the whole week. Not going to happen, probably even if you are a pro. I'm not a pro and 30min turned out to be 3-10 hours and 4 hours turned to be 3-4 days (about 8 hours per day, because I had free time), depending. The first week was the worst, because I had completely no idea what i'm supposed to be doing. Mentors advised to rewatch the videos. It got slightly better in the 2nd week, but I'd still say it was extremely challenging and frustrating. Another thing is assignment specification: if you want to pass the graded quiz, you have to read all threads in the forums on each method you're required to write. For some reason, half of the info will be there in the discussion forums, dated 2 years ago, and not in the problem statement. You won't pass the quizzes without a working program.

Concluding, I'll say that you'll definitely get some Java knowledge and experience from this course, but get ready to spend three more times than stated, and to work on your own, beginner level or not. Unless you know a developer you might ask for help if you get stuck.

If you have an option of rushing through this course instead of the first one in your 7 day free trial, I strongly recommend to do so. This might help you to make a better informed decision before paying for the subscription.

By Leo C

Aug 31, 2017

I already had some programming experience - a semester of C (I can use pointers!) and some web development and I found this course very, very challenging and time consuming but ultimately very rewarding. The problem areas covered are really interesting and it is obvious that a lot of thought and effort has gone into making this course.

I would not recommend this course or specialization to a complete beginner unless they have a lot of spare time and are prepared to go slow and deal with a lot of frustration. There seems to be some excellent courses for complete beginners out there that would be a better place to start one's coding adventure.

By Chris C

Mar 28, 2018

Great course, it does help to have some background knowledge in another language but it is doable without any. goes through some fun projects but also some work usable items such as CSV parsing.

By Frederico V A

Oct 8, 2017

Excellent explanations and amount of course work for practice, the tests made good use of the examples and work given, I am satisfied with what I learned in this course and see it's real world usage.

By Jyotinder S

May 19, 2019

Really practical course content with great tutorials. The programming assignments are fun and challenging and deal with real world data and problems which makes the course all the more useful!

By Hanna B

Jun 2, 2019

Thanks a lot for improving my skills! This course is really great to succed in Java as a beginner:) A lot of interesting practical tasks!

By Hasan Ç

Feb 11, 2018

It was very instructive course. I recomend every people who want to take this course. I thank all the instructors who gave this lesson.

By Yuming C

Jun 3, 2019

A good experience! The programming exercise is interesting!