Java Programming: Build a Recommendation System

Responsive web design is all about creating the best user experience regardless of whether a user is accessing your site from a desktop computer, a mobile phone, or a tablet.This Specialisation covers the basics of modern full stack web development, from UX design to front-end coding to custom databases. You'll build foundational skills in a full range of technologies, including HTML/CSS, Javascript, and MongoDB, and you'll learn to implement a reactive, multi-user web application using the meteor.js framework. We'll also touch on more advanced topics, such as APIs, data visualization, and ani

Created by: Robert Duvall

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 92 / 100

icon
Course Description

Ever wonder how Netflix decides what movies to recommend for you? Or how Amazon recommends books? We can get a feel for how it works by building a simplified recommender of our own!In this capstone, you will show off your problem solving and Java programming skills by creating recommender systems. You will work with data for movies, including ratings, but the principles involved can easily be adapted to books, restaurants, and more. You will write a program to answer questions about the data, including which items should be recommended to a user based on their ratings of several movies. Given input files on users ratings and movie titles, you will be able to:1. Read in and parse data into lists and maps;2. Calculate average ratings;3. Calculate how similar a given rater is to another user based on ratings; and4. Recommend movies to a given user based on ratings. 5. Display recommended movies for a given user on a webpage.

icon
Instructor Details

Robert Duvall

Robert Duvall is a Lecturer in the Department of Computer Science at Duke University. Having taught computer science at Duke for over 15 years, Professor Duvall has helped to transform introductory computing curricula several times by consistently being an early adopter of ideas, research, or software design practices. His goal is always to find ways to present novice students with a simplified, yet intellectually rigorous, interface that enables them to take advantage of advances in technology and solve significant problems. In recent years, Professor Duvall has worked with colleagues to redesign Duke's introductory computer science course to reach a broader range of students at Duke from a variety of backgrounds and fields. Professor Duvall holds a MSc in Computer Science from Brown University.

icon
Students also recommend

Free

10.99

Free

icon
Reviews

4.6

59 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

By Khaled H on 14-Aug-17

i have taken the whole specialization . so this review is for the whole specialization in general and for the capastone in particular.the first and the second course is very easy . but the three remaining course are a little bit tough so you will need to struggle and persist to complete the whole specialization especially the great project .indeed the project is extremely great . you will use all the concept you have learned through this specialization to implement this great project .... but NOTE this specialization in general and the project in particular is NOT for a BEGINNER Programmer. it is for some one who has a background in programming . but overall you will learn a lot great stuff and concepts .. so have fun and enjoy programming .

By Edward F on 10-Jun-17

I took the full Specialization, so I'm going write the same review for each of the 5 modules.This is a great course, but it's not for beginners. They ask you to do a lot of coding, which is great since that's the only way to really gain proficiency. And the code they ask you to write is, in my opinion, pretty hard for someone new to coding. My hat's off to someone new to programming who makes it through the five modules.So, thanks to Duke for putting together a great course. It was very good.

By David H on 11-Dec-18

A great capstone for this specialization. One quibble is with the time estimates: all the reading assignments are marked as taking 10 minutes, which is probably true: just reading and understanding the reading will probably take that long. However, these assignments also task the student with writing code which is impossible to write in 10 minutes. Throughout the specialization, I often took between 1-7 hours to complete a reading/coding assignment. So the time commitment that they advertise is totally out of whack with reality.That said, the material is mostly well-presented and interesting and the coding practice does give you good experience of what it is like working in Java.

By Thomas H on 30-Jan-16

Loved the project, but I am going to keep my review at 3 stars until there is a module to add capstone project to a web page. This would be super helpful for showing my work to a future employer!

By Douglas A on 1-Oct-16

I posted a question on the last week on the forum and never received an answer from a mentor. I had one response from another student which did not actually address the issue of my question and I had several views. And it wasn't as if there were a lot of questions posted. One course mentor could have easily answered all of them.

By Eugeny K on 31-Jan-19

Great course. Somewhat easy relatively to other courses in this specialization.

By LAKKOJU N S S R T on 5-Mar-19

learnt how to apply java in real time applications

By Chris T on 17-Sep-18

Challenging, but I feel that I learned a lot about programming. I'm looking forward to the UCSD intermediate programming course.

By Kishaan J on 11-Jun-17

Offers an opportunity to practice all the concepts learnt so far! Good job by the team!

By Nirlan N Z d S on 20-Jun-16

Excellent course! A real challenge! It is awesome when you apply what you have learned!

By Antonio P on 11-Dec-16

A clear and well organized course

By wen c on 6-Sep-17

very very very good course