
Ends soon! Save on skills that make you shine with 40% off 3 months of Coursera Plus. Save now

Learn to Program: The Fundamentals


525,321 already enrolled
Included with
Gain insight into a topic and learn the fundamentals.
Beginner level
No prior experience required
Flexible schedule
3 weeks at 10 hours a week
Learn at your own pace
Most learners liked this course
Gain insight into a topic and learn the fundamentals.
Beginner level
No prior experience required
Flexible schedule
3 weeks at 10 hours a week
Learn at your own pace
Most learners liked this course
91% of learners achieved a positive career outcome
See how employees at top companies are mastering in-demand skills

There are 7 modules in this 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.
This module gives an overview of the course, the editor we will use to write programs, and an introduction to fundamental concepts in Python including variables, mathematical expressions, and functions.
What's included
8 videos10 readings1 assignment
This module introduces strings (a Python data type used to represent text), and a process to follow when creating a function.
What's included
6 videos6 readings1 assignment1 programming assignment
This module introduces Booleans (logical values True and False), how to convert between types, how to use Boolean expressions in if statements to selectively run code, and the concept of a Python module.
What's included
7 videos7 readings1 assignment
This module introduces one way to repeat code (using a for loop), how to manipulate strings, and how to use a debugger to watch a program execute step by step.
What's included
5 videos5 readings1 assignment1 programming assignment
This module introduces another way to repeat code (using a while loop), how to properly document your code to help other programmers understand it, Python's list data type, and the concept of mutation.
What's included
6 videos6 readings1 assignment
This module introduces how to use a for loop over the indexes of a list, how to nest lists, and how to read a write files.
What's included
7 videos6 readings1 assignment1 programming assignment
This module introduces tuples (an immutable version of lists), and Python's dictionary type.
What's included
4 videos3 readings2 assignments
Instructors

University of Toronto
2 Courses564,502 learners

University of Toronto
2 Courses564,502 learners
Offered by

Explore more from Software Development
Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."

Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."

Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."

Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."
Learner reviews
- 5 stars
78.57%
- 4 stars
17.87%
- 3 stars
1.93%
- 2 stars
0.60%
- 1 star
1%
Showing 3 of 6735
Reviewed on Mar 2, 2018
I enjoyed this course. The video lectures were short and explained bite sized chunks that were easy to understand. The reading material after each lecture helped in revisiting what we just learned.
Reviewed on Apr 11, 2020
I enjoyed this course very much. The concepts were well explained. I gave only 4 stars because I wish there were more assignments to do instead of the quizzes. All in all great intro into programming.
Reviewed on Apr 6, 2020
The course is interesting. I love that students can access all contents without any paywall and you can submit your code for grading (unlike some certain courses which require you to pay for that)
Frequently asked questions
You'll learn how to turn simple problems into Python code and understand what the computer is doing as it runs that code. It starts with expressions, variables, and functions, then builds into decisions, loops, and working with text, files, and collections. You'll apply that in quizzes and programming assignments, including string-processing work such as DNA processing.
No, the course starts from the beginning and teaches Python as it teaches programming. You'll begin with installing Python and using IDLE, then move into expressions, variables, and functions. The main thing you'll need is a willingness to practice, because you'll start writing code early in the course.
Yes, it's beginner-friendly for someone who wants a thorough introduction to programming, not just a quick tour of syntax. The course explains core ideas carefully and reinforces them with lessons, readings, quizzes, and programming assignments, so you keep practicing as the material builds. It may feel more demanding if you're looking for a very short overview, because regular practice is part of the learning experience.
More questions
Financial aid available,

