Mr Baumgarten

Computer Science teacher and self confessed geek

Unit 1 programming

Programming is one of those skills where you will get out of it what you put in. If you make an investment of time, your skills will develop and grow. If you do not invest the time, your skills will stagnate or even deteriorate. While programming is most often thought of as a Math or Science derived skill, it is also very much a Language acquisition. Just like learning any other language, a little bit of practice every day, or every second day, goes a long way. The above is a long way to say this: To do well, you should be aiming to spend 30 minutes every two or three days practicing your programming aand algorithmic skills (outside of class).

My suggested pathway to develop your skills is...

Stage 1 - Introduction to programming

Stage 2 - Practice basic problem solving

Stage 3 - Intermediate problem solving. You can now worry less on the basic mechanics of the language. Start expanding your knowledge with new language features and develop your problem solving thinking skills.

Stage 4 - Independent programming

  • Start designing and building your own projects

Get setup

We will be learning the Python programming language.

Firstly, pleases complete the instructions in my handout to setup:

  • Pycharm
  • Github account signup
  • Github Desktop

Alternatively, use one of the online Python editors such as or These will allow you to try it out without installing anything on your computer.

Your first program

The traditional starting point for learning a programming language.

# display the text Hello world! to screen
print("Hello world!")

Learning Python

Rather than reproducing all my Learning Python notes (and risk updates causing one set of documents to fall out of sync), we will work through my existing Python notes repository

You should complete all the 100-series tutorials and problem sets.

Unit assessment

  • You will be assessed on the problem sets for each of the Learning Python topics in two submissions.

  • Initial submission for formative review & feedback (review targets provided)

  • Final submission for reporting (ARR) purposes

  • There will be a written test for reporting (ARR) purposes.

  • Paper & pen in-class written test

  • No computer, no notes, no calculator
  • The test will be based on the problem sets, the questions being very similar to them.
  • Download a sample test