Skip to content

Teaching Ideas

This site offers a programming practice with three steps:

  1. Run provided Python code, change it a little and run again.
  2. Try implement other suggested code changes and new assignments.
  3. Open an LLM and ask questions about the code you wrote.

What makes a perfect exercise

The exercises were designed with the following criteria and goals in mind:

  • small, under 10-15 lines of code,
  • cover basic Python syntax,
  • achievable within the standard library,
  • encourage experimentation and stimulate talking about code,
  • make at least some connection to real life situations,
  • slightly differ from the classic programming exercises.

The exercises should be beginner-friendly and oriented towards learners with non-tech background.

Levels of difficulty

There three levels of difficulty in the exercises, so that we can keep any student busy:

Entry level: Run provided examples and make small changes to the code to find out how it works and be able to explain it. Document existing code with comments or function docstrings.

Intermediate level: Redesign programs and modify their behaviors to achieve new results according to a provided description or own specification.

Advanced level: Forecast the outcomes of programs over repeated runs using some theory or a simulation. Generalize code for reuse, make tests and refactor code for maintainability. Think of extensions for real-life cases.

All rights reverved.