A curated, language-organized list of tutorials that walk developers through building complete applications from scratch.
norvig/pytudes
A collection of short, challenging Python programs and Jupyter notebooks by Peter Norvig, designed to build specific programming skills.
- Stars
- 24,413
- Forks
- 2,472
- Open issues
- 29
- Last commit
- 16 days ago
What is it?
Pytudes is a set of Python programs and Jupyter notebooks by Peter Norvig, modeled on musical études: short pieces of considerable difficulty meant for deliberate practice. It targets readers who want to get better at programming through hands-on exercises rather than quick recipes for common tasks.
The collection is organized as an index of notebooks grouped by theme, including Project Euler and Advent of Code solutions, probability puzzles, word games, logic and counting problems, classic algorithms such as convex hull and Game of Life, and small interpreters like a Lisp and a BASIC implementation. Each notebook can be opened directly on Google Colab or nbviewer.
The notebooks date from 2006 to 2026 and include several comparisons of human-written solutions with those produced by large language models.
Key features
- 01Short Python programs built around specific skills and techniques
- 02Notebooks openable directly in Google Colab or nbviewer
- 03Solutions to Project Euler and Advent of Code puzzles
- 04Probability, word-game, and logic puzzles with worked analysis
- 05Small interpreters, including Lisp and BASIC
Use cases
- Practicing Python problem solving beyond tutorial-level exercises
- Studying classic algorithms through readable implementations
- Working through Project Euler or Advent of Code problems with reference solutions
- Comparing human and LLM approaches to programming puzzles
Topics
FAQ
- What is pytudes?
- A collection of short, challenging Python programs and Jupyter notebooks by Peter Norvig, designed to build specific programming skills. Pytudes is a set of Python programs and Jupyter notebooks by Peter Norvig, modeled on musical études: short pieces of considerable difficulty meant for deliberate practice. It targets readers who want to get better at programming through hands-on exercises rather than quick recipes for common tasks.
- Is pytudes free to use? What license does it have?
- pytudes is open source under the MIT license. Check the license terms before using it in commercial products.
- Is pytudes still maintained?
- Actively maintained. The last commit to pytudes was on Oct 5, 2026.
- What can I use pytudes for?
- Practicing Python problem solving beyond tutorial-level exercises Studying classic algorithms through readable implementations Working through Project Euler or Advent of Code problems with reference solutions Comparing human and LLM approaches to programming puzzles
- Where can I get pytudes?
- The source code and installation instructions are on GitHub: https://github.com/norvig/pytudes
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A curated Markdown list of English-speaking YouTube channels that teach programming, web development, machine learning, cybersecurity and other tech topics.
A community-maintained collection of algorithms implemented in Python, intended for learning and education.
A collection of Jupyter notebook examples and guides showing how to accomplish common tasks with the OpenAI API.
Jupyter notebooks, data and supplementary material for the third edition of the Think Stats statistics textbook, built around Python and pandas.
A self-paced, free path through a full computer science curriculum built from online courses and books, organized into Intro, Core and Advanced CS.