The Coursera Recommender Systems Programming Assignments