Chevron Left
Back to Learn to Program: The Fundamentals

Learner Reviews & Feedback for Learn to Program: The Fundamentals by University of Toronto

5,503 ratings
1,619 reviews

About the Course

Behind every mouse click and touch-screen tap, there is a computer program that makes things happen. This course introduces the fundamental building blocks of programming and teaches you how to write fun and useful programs using the Python language....

Top reviews


Aug 17, 2019

Great for a fundamental course. I have to admit that I had learnt python a few years back and was using this as a practice and revision course. But I learnt a lot more which I can add to my knowledge.


Dec 15, 2020

Great course for refreshing your python basics, and any beginner looking to pick up Python basics will be in a comfortable spot after completing this course and a bit of practice with the assignments.

Filter by:

51 - 75 of 1,608 Reviews for Learn to Program: The Fundamentals

By Audrey S

Nov 29, 2021

Very beginner friendly, easy to understand, active forums. Thank you for this free knowledge!

By Biswajit C

Apr 14, 2021

This is a perfect course to clear the basic concepts of python language.

By Xander S

Apr 15, 2021

Solid course with good examples. Perfect for Python beginners.

By Sanket K

May 15, 2021

This course is simple, easy & resourceful for beginners.

By Virág N

Mar 4, 2021

Very entertaining course, I learned a lot, thank you!

By Ali K

May 30, 2021

Very good explinations and excersices

By Alexandre d F O

Jul 28, 2021

I´m giving 4* not as a demerit, but only as cautionary warning:

This is not a course that will dive really deep in explaining For, While and If.

So if that´s a subject you have problem understanding go solve it before doing this.

A strong feature in this course is that they really make you write your documentation right, "def" is explained since week 1, which I find is an amazing strategy instead of teaching everything and then forcing you to do this.

What would improve this course would be more exercicies, since the only 3 assignments you have are a major jump, so if you havent yet programed you'll most likely be lost and have a real hard time completing it.

The Quizzes are really challenging, and not in a nice way, I find they are sometimes unfair, that's why I think would be better to have more exercices and tasks instead of those insanely difficult quizzes (and I already have experience in programing so I can imagine someone unexperienced).

If you already know python and programing take this course, it will not be demanding and will teach you great stuff, a real nice way to improve some areas you may be found lacking in your development.

By Akshata P

Jun 4, 2021

Awesome course, very well structured. Good pace. Not too easy, but when you are seriously trying to complete the course it was also not too difficult. Highly recommend!

By Brett M M

Jul 19, 2017

Good introduction to Python but very basic, not for anyone with programming experience as you could learn all this in about an hour.

Audio Quality was quite poor.

By joseph T d

Jan 5, 2022

it is not a beginner-friendly course. It assumes students know everything on the first go. Every quiz in the video expects you to know the answers without an option to supply the answer to you to help you understand why it is so if you don't happen to know the correct answer. So I was unable to answer some of the questions in the quiz and didn't understand what I was doing wrong. If the quizzes showed answers, it helps the student to know what to do next time and better understand the concept. I could skip the quiz, but what it means is, I will never really learn what I should have done in that situation. You must consider that some students are hearing these things for the first time so there is no way they will grab the idea immediately. So I found that the quizzes in between the videos, should have been helpful but were not because the correct answers were not supplied should incase the student cant figure it out. The lessons prior to the quizzes don't quite do justice to the explanations and are so dry and nonengaging enough. Anyway, i have to quit this program and find something else.

By John H

Jun 11, 2020

I successfully completed my programming course today!! Yay me!!

During this course, I often got interested in a part of a lecture and would experiment with things on my own. A three minute video might take me an hour to watch because I wanted to try each thing on my own, not just see it done. They would describe a problem and I would try to figure out the solution on my own before watching them do it. Sometimes I wouldn't be able to figure it out but I'd be in a better position to understand the solution when it was presented.

One other aspect I enjoyed was that if I wasn't sure about a test question, I could just use the tools and try it out. Sometimes things would work in a way that was surprising to me but I found that I learned a great deal in the process of testing. It is one of the big reasons that I like formative assessment - its effectiveness as a tool to improve learning, not just to test it after the fact.

As much as I enjoyed the course, it also made me think a lot about how I'll do my courses in the future. While I very much enjoy in-person teaching, I've looked at the course as a model for how I might change the way I do retests, allow use of notes, and opportunities for design projects. I know that this first year back in is going to be a busy one but my brain is working and planning.

I think part of this is just that as teachers, it is important for us to try things outside of our comfort zones. If we're going to try to help kids, we have to remember what it is like to have those, "what are they talking about" moments? Online lectures aren't as much fun but the ability to pause and take a sidequest was super-beneficial to me. How do I make that possible for my students?

I guess part of all this is that after spending half my life teaching in Blue Valley, I am far from having all the answers. I think having the vulnerability to model that you are still learning and still messing up gives students some room to do the same.

The ability to learn might well be our greatest gift. Let's keep using it.

By Varun R

May 4, 2020

What an amazing introductory course for beginners! After watching all the videos and completing the quizzes and assignments, I really feel that I have got a good foundation in the basics of Python and I'm eager to further develop my skills. Both the instructors were very good, and went through each concept step-by-step in an efficient manner. The regular quizzes were a great test of my understanding of the subject content in the particular week. Personally, the best part of the course were the three assignments, which were wonderful opportunities for the learner to put their knowledge into practice. I had tons of fun completing the assignments, especially the last one involving a word game for which we were to write a major piece of the code. Finishing the assignments and quizzes was very rewarding. Finally I would like to mention how incredibly helpful the discussion forum is. The mentors reply to your questions within hours with comprehensive answers. For absolute beginners looking for a introductory Python course, look no further!

By Peter K

Dec 13, 2017

I liked this course. Even though I am experienced programmer in different languages, I chose this course to learn Python. Although I found the Visualizer sessions boring, I completely agree it is very important to teach young or beginning programmers how the memory and data structures behave. I also liked the programming assignments as they were either funny or giving an example of real life problems that can a beginning programmer face in the future and shows him how they can solve them by programming (ant that they can!). The only recommendation I have is to include more programming assignments as people learn programming the best when really programming - answering quizzes is not the same, may work for schools and for grades, but here we are to learn to program ;-)

By freeman

Jan 19, 2019

I retired as an engineering manager 6 months ago after 41 years in the computer hardware business. I never really did much programming and wanted to take it up when I retired. I tried some on line reference books but didnt really stay with it. I really needed more structure. This course was the answer for me. I got enough programming from the exercises, lectures, and quizzes that I can now move ahead with more self teaching as I have a grasp of the basics and have learned to use on-line references to fill in the gaps. This was my first Coursera course and I will be taking others. Big kudos to Jennifer and Paul, University of Toronto, and their team for this great class. I would sincerely recommend this course to others.

By Ganesh K

Jul 13, 2021

I was very happy with this course. I was made to write code which would accomplish some tasks. I became quite adept at the syntax of the language. So, when I entered wrong code, the messages generated made sense to me, and I was able to quickly rectify the mistakes and go ahead with the work. Some of the questions in the quizzes and the final exam were quite challenging, and needed sound reasoning. Now, I am continuing on my own. I wrote code to add a message if a student has failed or passed the problem of 'assignments grade.' Now, I am writing code to arrange the 'assignments grade' in the descending order of grades and assign ranks. I am also thinking of writing programs which I may use in my small business.

By William L L

Mar 31, 2017

In this fine introduction to computer programming, I covered a lot of ground. The course lays out an elegantly constructed approach to the fundamentals of coding with Python 3.4. The videos and materials were filled with elucidating code examples and sensible development practices, all meticulously explained. I've never found a more approachable guide to building well-documented functions or a more useful explanation of how relationships between variables and values are managed during program execution. The quizzes challenged my preparedness to apply a solid understanding of the subject matter. I applaud presenters Paul Gries and Jennifer Campbell for the top-notch way they crafted this excellent introductory course.

By Michael H

Oct 6, 2021

This is an exceptional course for beginners to programming in general, and specifically to programming with Python. The content has helped my programming in another language, so the skills you learn are indeed transferable. Although I thought some of the assessment questions were challenging, none were so hard as to frustrate me, but they do present enough of a challenge that you need to exercise your brain, which is what I expected, and wanted. The assignments were sometimes challenging as well, but not impossible, and deal with the exact content of the course, so there were no surprises.

Overall, I learned much from this course, and I recommend it to anyone as a first step in the domain.

By Lawrence S

May 24, 2017

I enrolled in this MOOC because I saw from one website that this was the best introductory course in Python programming. It lives up to its reputation of being the best because the topics were presented in good chronological order. The in video quizzes were challenging and the lecture quizzes forced you to think and therefore apply what you have learned. The only thing I could ask for was more programming exercises. There were only three and I felt like I could do one more. Kudos to the instructors and the team for preparing a very comprehensive introductory course in Python programming. For someone like me who wants to start a career in Data Science, I definitely recommend this MOOC.

By Jon M

Dec 6, 2017

Years ago I sat an intro to C++ course at university and really struggled, it was just too deep down the rabbit hole at the time. Now completing this course has renewed my interest in the subject.

Easy to understand videos with excellent explanations of concepts and thought processes. Relevant questions and tests to ensure the subject matter sticks. While it's still only a starting point to continue learning, I'm now a lot further down the road than I was when I started.

I would spend 30min during my lunch breaks each day at work to do the course and managed to complete around 85% of the course (excl. quiz/tests) like this so time commitment isn't excessive.

Highly recommended!

By Leonardo R

Feb 22, 2020

Excellent introduction to program, focused on essential data structures and concepts at programming, including how to debug. it prepares you to further go on your own in your programming journey. After not programming for +10 years, It was exactly what I was looking for: To start again from zero. I wish I had this course when freshman at university :-) In addition, excellent programming language choice: Python's syntax is simply very easy, and very friendly for newcomers. I already recommended this course to a friend of mine which wishes to introduce his kid (11yo) into programming. Last but not least, big Thanks and Kudos to Jennifer and Paul for this, you guys rock...!

By Alan S

Jul 17, 2020

I just completed the course and could not offer a stronger endorsement. I have tried several avenues to learn Python 3 and this course was perfect for me. The videos are brief, while completely explaining their topics. The textbook is a great reference against the course content (I strongly advise purchasing a copy via the instructors website) The many tests for comprehension were really appreciated, and the Weekly Quizes, Final Exams and Class Projects solidified what I had learned and where my understanding was incomplete. I venture that over half of my understanding was gained by solving the test/project questions. I am looking forward to the follow-on course.

By Andrew K

Apr 3, 2018

I really enjoyed learning Python with this course. The pace was perfect - I never felt lost and rarely felt bored. There were several instances where the instructors seemed to anticipate a question that I was wondering about. No sooner did a thought occur to me than they had already explained how a certain concept is applied in a specific situation.

This might go without saying, but you must follow along in Python and experiment with each concept as it comes up. I found applying the concepts to be invaluable experience. You might try to burn through the course (it's possible to do more than one week in a single day), but try not to get ahead of yourself.

By Edward W

Oct 2, 2018

This is a great course to gain a fundamental sense of programming; it is perfect for a fresh beginner. However it is very fundamental, the load of knowledge and questions in exercises etc. are very minimal given that the focus of this course is to warm-up for a more progressive studying later on. So if one finds the study material not so challenging I would encourage such to play with python out of the course or find thoughts-provoking problems online just to make sure you have a solid foundation of understanding. After all there is no limit on learning and great problems can be solved with such easy-to-use yet powerful tool like python.

By Harish

Jan 14, 2018

Lots to like about this course as an introductory course to programming. I have been a student of programming for 7 years, but still this course helped me relearn the familiar topics as well as introduce me to new concepts that are indigenous to python. Python makes life a lot easier when it comes to programming. About the tutors of this course, their videos were really engaging and they never presumed that the viewer knows the programming vocabulary and traversed every concept step by step leading to the unveiling of the overall lesson. Looking forward learning the second part of this course.

PS: Paul, you look a lot like Mark Hamill

By Josep M C G

May 31, 2022

Curs molt ben pautat en la introducció progressiva de materials, ideal per persones amb certs coneixements previs de programació en altres llenguatges i, o bé pràctica en programació o bé bones capacitats de lògica. Amb aquestes condicions ideals, el curs es pot superar amb una única assistència a les lliçons, però la possibilitat de repetir els videos i els exercicis plantejats durant els mateixos permet a qualsevol introduir-se en la programació i al llenguatge Python.

Quant a l'anglès dels videos, a més a més de comptar amb transcripcions en diverses llengües, la veritat és que es poden seguir visualment sense problema.