Resources
Getting Started
New to programming entirely? Work through these before (or alongside) the first few weeks of class:
- Hedy — a very gentle introduction to programming
- futurecoder — an interactive, step-by-step Python course
- Kaggle’s Python and pandas tutorials
Development Environment
Coder
If you can’t install Thonny locally (e.g., on a shared or locked-down computer), the course also offers a cloud-based coding environment through Coder.
- Log in at Calvin’s Coder instance and open a workspace
- Your workspace includes Python and Thonny, ready to use — no local installation needed
- What is Coder? — remote development environments in a browser
- Tip: your files persist within your workspace — save often and keep your work organized
Python
Thonny
Thonny is the IDE we use in this class — a simple, beginner-friendly editor built specifically for learning Python. It’s already installed on the lab computers, but you’ll likely want it on your own laptop too.
Installing Thonny:
- Go to thonny.org and download the installer for your operating system (Windows, Mac, or Linux)
- Run the installer, accepting the default options
- Open Thonny — it comes with Python already bundled, so there’s nothing extra to install
Getting set up:
- When Thonny opens, you’ll see two main areas: the editor (top, where you write and save your program) and the Shell (bottom, where output appears and you can try out code interactively)
- Write your code in the editor, then click the green Run button (or press F5) to run it
- Save your file with Ctrl+S before running — Thonny will prompt you to save if you forget
Debugging in Thonny:
- Click the bug icon (or press Ctrl+F5) to step through your code line by line
- Use the step buttons to watch variables change value as your program runs — this is one of Thonny’s best features for beginners
- The Variables pane (View → Variables) shows the current value of every variable while your program runs or is paused
If something looks different than expected:
- Check that “Standard” mode is selected (View → uncheck “Regular mode” is not needed for this course — the defaults work fine)
- If packages are missing, use Tools → Manage Packages to install them
- Thonny documentation has more on installation and troubleshooting for each OS
Debugging Help
- Python Tutor — step through code execution visually
- Common Python errors
- PEP 8 style guide — for readable Python code
How to Succeed in This Class
Starting early is essential to success in programming. Newcomers sometimes think that they can start an assignment at the last minute and do reasonably well. Programming isn’t like writing a paper… In programming, it often either works or it doesn’t.
Attendance & Support
- Come to class, lab, study sessions, and office hours
- Ask for help early — don’t wait until you’re stuck for hours
Helpful Habits
- Don’t just “get it working” — understand why it works
- Start early; take frequent breaks
- Take small steps (run your code frequently, not just at the end)
- Retry lab and homework exercises later without looking at your prior solution
- Review class materials (POGIL activities, slides, retrieval quizzes)
- Discuss problems with classmates
- Create your own syntax/concept cheat-sheets as you go
- Review quiz and assignment feedback closely
Extra Practice
- Complete “Challenge” exercises in the textbook
- Python practice problems
- More Python practice problems
- Search online for “Python practice” — there’s no shortage of it
Patterns
Gather, Compute, Use
A simple pattern for structuring small programs:
# Gather
n = int(input("Enter a number: "))
# Compute
result = n * 2
# Use
print("Twice", n, "is", result)
Problem-Solving Strategies
Once, Twice, Many
A strategy for writing loops: solve the problem for one item, then two, then generalize into a loop.
Once — get it working for a single item:
numbers = [5]
total = numbers[0]
print("The sum is", total)
Twice — extend it to two items:
numbers = [5, 7]
total = numbers[0] + numbers[1]
print("The sum is", total)
Many — notice the duplicated pattern, then turn it into a loop:
numbers = [5, 7, 3, 8]
total = 0
for n in numbers:
total = total + n
print("The sum is", total)
Other Resources
Free
Paid
Fun Stuff
Play with tixy — a tiny, playful way to build computational thinking.
Other Interesting Things
- Falsehoods Programmers Believe About Names
- How integers and floats actually work: