Skip to content

Final Project

Quick Links

  • Google Form Submission - Each of your four submissions, as described below, should be done at this link.
  • Zipper Script - Run this Python script to easily zip your code files for submissions #2 and #3. You'll need to right-click this link and save the file.

For a final project, you can choose from the list below, or propose your own idea to me. The project should either reinforce the skills you've learned, or extend your skill set.

In software development, it is natural for daily progress to vary. Some days you'll get a lot accomplished, whereas others you will spend most of the time working on a single bug. For that reason, your evaluation will take into consideration not only your final product(s), but what you learned along the way. You will be required to submit four times along the way, using the link in the green box above:

  • Before you begin coding
  • When you feel you are roughly 1/3 complete
  • When you feel you are roughly 2/3 complete
  • When you are fully complete.

Project Options

Arcade Game Engine

This could be an extension of something you already started, or something brand new. Try to get creative with it. Consider adding enemies, power-ups, levels, a health meter, scoring, etc.

To get a starting template for a new project, run the update, and then look for a new folder within Local called Project Templates. There are templates there for both top-down and platformer multi-scene games.

Python GUI (Graphical User Interface) Program

A GUI program is one that uses typical graphical features such as windows, buttons and menus. There is a Python module called easygui that can be used to create GUI programs fairly easily. See if you can self-teach this to yourself, and then create something with it.

Learn HTML/CSS and make a website (max 90%)

HTML and CSS are fairly simple langauges, and arguably some of the most useful coding languages as publishing content to the web is a very common task. While there are many tools that allow you to post to the web without HTML/CSS knowledge, knowing these languages help you to harness the full power of the browser.

There is a good tutorial here. Try to follow it along, and see if you can create a multi-page website.

Scratch Project (max 80%)

We've already looked at Scratch in this course. Although doing a Scratch project will earn you a maximum of 80%, it might be a good option if you're finding Python a little overwhelming.

Python - Your Own Idea

If you have an idea of something you'd like to write in Python that doesn't use the arcade game engine, please speak to me. We will hopefully be able to make it work!

Marking Rubric

Your final project is worth a maximum of 10%.

Important

The process here, and what you learn along the way, is at least as important as your final product. For that reason:

  • A maximum mark of 7% will be given for a partially complete submission form.
  • A maximum mark of 6% will be given for no (or minimal) submission form completion.

Additionally, a conference may be required for me to fully assess your level of learning if the submission form is not fully complete.

Your mark will be assigned according to the following rubric:

Mark Criteria
10 A very extensive project has been completed for the amount of time provided, that shows advanced application of skills developed in the course or substantial learning of new skills.
9 A thorough amount of skill development is evident, as demonstrated by the project and/or the submission form. An excellent ability to apply the skills covered in the course and/or new skills is evident.
8 A thorough amount of skill development is evident, as demonstrated by the project and/or the submission form. An ability to apply the basic skills covered in the course, as well as possibly some more advanced skills, and/or new skills is evident.
7 A reasonable level of achievement for the amount of time provided has been demonstrated, as demonstrated by the project and/or the submission form. An ability to apply the basic skills covered in the course and/or new basic skills is evident.
6 The level of achievement, as demonstrated by the project and/or the submission form, is approaching the expected standard for the course.
5 A basic level of achievement is evident, as demonstrated by the project and/or the submission form.
1-4 The level of achievement is not adequate for a passing mark.