Chevron Left
Back to Learn to Program: Crafting Quality Code

Learner Reviews & Feedback for Learn to Program: Crafting Quality Code by University of Toronto

702 ratings

About the Course

Not all programs are created equal.  In this course, we'll focus on writing quality code that runs correctly and efficiently.  We'll design, code and validate our programs and learn how to compare programs that are addressing the same task....

Top reviews


Jul 12, 2020

Solid course that dives deeper into the fundamentals of CS. Great instruction, attention to detail and the excercises are adequately challenging for beginners and lower-intermediate programmers.


Jul 9, 2022

Jen and Paul provide thorough and understandable explanations of Python as a programming language. The assignments are challenging and test the student's knowledge of the subject well.

Filter by:

1 - 25 of 168 Reviews for Learn to Program: Crafting Quality Code

By haozhen

Jun 2, 2020

This is a small course, but I have to say that I learned a lot from it. As a python developer, many of the features this course talk about is unfamliar to me. I never write test before and also catch errors. In this course, I learned how to write doctest which I think is great! And I also learned the hieranchy structure of Exceptions which I think can be very helpful for my future usage of Python. Thanks a lot! Looking forward that you can make more great courses on Python!

By Alexandre d F O

Aug 10, 2021

The Quizzes in this course are WAY more fair than in the first one. They are not theoretical tricks like in the first module, they are more direct to the point and the goal is to make you go back and maybe pay more attention to what was said.

Week 2 is by far the MOST difficult one, so endure it because after that weeks 3 - 4 - 5 will be a peace of cake.

The common problem between the two courses is the lack of programming exercices and then sundely the throw a HUGE exercice, it´s not even a matter of being difficult, it´s so big that you can´t make heads and tails of what you´re suppose to do, what demands you a lot of time and focus.

I really loved the sorting algorithms section (I already had it in another course but I understood better here) and Classes are made simple and easy.

I´d recommend both modules to someone that has some programming experience, they do a really nice job into training you to have codes that look more professional in my experience. Now I caught myself using the "formula" they printed in your mind when I do a task, and I love it!

By Nathaniel B

Aug 7, 2017

Excellent course! Highly recommended as a next step to anyone that has finished the Python for Everybody specialization and is looking for a bit more of a challenge and to go deeper into Python. Really hope to see more from this team in the future! Thank you so much for your efforts. It has made a difference in my life :D

By Paolo M

Jul 28, 2017

Excellent course! I've enjoyed every bit of it, especially the "automated testing" and the "create your own types" parts. If you are new to programming, this course teaches some principles you would spend a long time looking for them on your own on the Internet. And you might not even be lucky enough to get there, if you just stick to the "sequential" programming and "print" statements.

By Lance B C

Jul 9, 2018

Instructors, material and course structure were great! Only wish I could take this class with a friend to push me to work faster and smarter. Learned a lot from this class.

By Kenta S

May 25, 2019

This is a good course to further Python programming skill after completing the fundamental course offered by the same teachers.

By Felix N

May 28, 2017

This course is not for experienced programmer want to learn how to write good code, as it goes through very basic things. It's not even for beginners want to learn how to program, as the course doesn't cover all necessary every topic in programming, and no topic are taught in depth. Furthermore, this course does not teach you much about programming in general, instead focus too much on programming techniques using Python; therefore don't expect to learn anything here if you're a java/c++/anything_else programmer.

Misleading title, unorganized content, confusing purpose, unengaging instructors (did I mention that above?); consider those words and decide if the course is for you.

By Mau B

May 31, 2020

Great course. Way better than the Fundamentals for me. I felt more compelled to really try and do all the exercises. It was harder and took way more time than the first course for me but it was worth it. I feel more competent and closer to being a programer. Just a quick note, be patient and try all the times you need if you fail. you'll learn more from every failure.

By Juan A

May 30, 2020

The concepts explained in the lectures make students know exactly about it as a whole rather than only knowing how to use it. Quality of explanation by the lecturers are top notch, easy to understand while giving some comprehensive things. Will surely remember the things learned here. Thank You Jen and Paul!

By Morgan E

Sep 23, 2018

I really enjoyed this course. I wanted an accelerated introduction to python since I didn't know it at all and this worked well for that purpose. It was very thorough and a good fast pace for people that are already familiar with programming in general.

By Kristina G

Jul 20, 2017

I'm a total beginner with Python and I found this course challenging yet accessible. The mentors were very helpful when I got stuck at certain points on assignments. I would recommend this course to everyone!

By Sandeep R

Jan 17, 2021

I really liked this course as it was really refreshing for me coming from the physics background, this course thought basic nuances to keep in mind while production level code.

By Hugo B M

Mar 16, 2017

A good follow up to the first part, I found the testing section particularly useful. I could only wish the course was longer and delved deeper into Classes and Exceptions.

By Trong T L

May 3, 2019

The instructors' explanations were excellent. Topic regarding algorithm can have a little bit of background, because jumping into that right away was a little confusing.

By Jun-Ting Y

Feb 19, 2018

Really enjoyed this as a continuation of the fundamentals and liked how it introduced us to the complex concepts at a starter level, like for testing for errors and using the debugger. I previously wrote code without the descriptions and I found that to be good practice to continue. I enjoyed the assessments and the peer-review was useful in seeing how other people wrote their code, comparing it to my own. I especially like the Rat-Race assessment (and the one in LTP: The Fundamentals using the time) where we write half the code and the other half it is pre-written so we can see how our code contributes to a game/program that is actually playable.

By Eduardo M

Jun 24, 2017

The best thing about this course is that it was meant for you to struggle and figure out how to solve your problems. It makes you think rather than memorize, which I appreciate 100%. The only thing I would possibly modify would be that if you do get marked off for a submission, give feedback to why that was incorrect. Not to give away the answer, but to have the learner understand WHY they were marked off.

Other than that, this course was very valuable into making me a better programmer. THANK YOU!

By Gian-Franco S

Aug 9, 2021

Again, very good course with both good explanation and examples. Great complement to the first course, "Learn to program: The fundamentals". Would recommend this course to anyone who already did his first (small) steps in python andwants to learn more.

When you need help you can ask the forum and you’ll get a response within some days, which does not tell you the solution of the exercise but leads you towards it. – that’s how it should be!

By Minh D

Dec 11, 2018

If you are feel very hard to learn to coding (Python) even after taking a few coding course. "Learn to Program: Crafting Quality Code", teacher make the knowledge very consice, conherence, intuitive, good arrangement so you feel absorbing it naturally. Teachers also put into the course their expertise of professional coding, computational thinking to solve problem.

By piotrbrendan

Jan 6, 2018

Exceptionally well introduced material, it is a natural extension of previous course: Learn to Program: The Fundamentals. It would be marvelous if Uni of Toronto introduced more intermediate python classes online.

Thank you for providing this classes - I really have the expression that I have learned a lot having a lot of fun at the same time

By Mohammad K

Mar 1, 2019

Very good course for beginners. Good content presentation as well. This course also focuses on writing quality code in style.

I had basic knowledge on python and object oriented programming before taking this course and still I learned much about coding from this course.

Thanks to University of TORONTO and Coursera for this course.

By Marko G

Mar 12, 2018

Course was very meticoulusly planned and structured. The teachers are simply amazing and I couldn't recommend them more. However, it seams to me that the final task was a bit to ambitious, at least for me. It got me stranded staring at the screen. Perhaps it is just me, but I don't know. Anyway - 5 stars from me.

By Ambika L

Jul 18, 2020

The course is good with good level of quiz questions and assignments. Easy to follow and faster to complete. But, only short glimpse of exception handling is provided. More focus is on Object Oriented Programming and Debugging and algorithm. Should be taken!

By Rieko E

Nov 25, 2022

Very useful course. "Learn to Program: Crafting Quality Code" really made me learn how to code with correct syntax and proper semantics. Thanks to Mr. Paul Gries and Mrs. Jennifer Campbell who took the time to teach and Coursera who brought this course

By Gavin T

Mar 28, 2018

A good coverage of some intermediate level python techniques. I liked the section on testing and the peer reviewed assignment. However, I felt it would have been good to have one more assignment to practice the algorithms section of the course.

By Andrew B

Nov 7, 2017

Again a very good course taught by these tutors. Questions are hard and require thought but as with the Fundamentals course this means that the lessons have to have be learnt and understood in order to progress effectively.