Coding Curriculum - Python

Statement of Work

Themes Explored

Our team explored themes like Game Development and Study Tools for students. Game Development will be interesting for students as they can play the game upon completion of the lessons. Study Tools will provide students with opportunity to relate what they learn from their classes and use the program for revision.

Our Learning Theory: Situated Cognition

What is Situated Cognition?

This learning theory revolves around the belief that learning is directly connected to doing

To make learning easier and more stimulating the problems need to be situated into a real life context that the student can refer to and identify. This will not only be more engaging, but will also help in remembering the material if what is learnt can be applied into a familiar environment. Therefore, it is essential that this new knowledge be related for example to a social, cultural, or physical situation.

The most important aspect of this theory is that outside of the classroom, students will be able to remember and apply what they have learnt in their own environment, making learning more beneficial and long-lasting.

How have we applied this theory?

We based our project off a simple puzzle that many of us know already: a crossword, or word finder. The concept is even more extend to a situated cognition theory, because we are involving the kid's studies by allowing them to turn the project into a revision tool. This can be seen as replacing flash cards to study for an exam for example: they are presented a list of questions, and have to come up with the answer which is the word hidden in the matrix.

Hence, this curriculum project engages students to recreate a familiar puzzle and make it their own, all the while by learning a new programming language and computational thinking. By using a problem based approach, they are taking the time to understand the algorithmic steps needed to recreate a puzzle.

Scope of Teaching Materials

How Our Curriculum Works

The curriculum is divided into six different lessons, that each explore a new fundamental theme of programming with Python. The lessons we designed and their scope are the following:

LESSON 1 : Simple Input, Lists, and Iteration

We explore two different ways to ask for user input, depending on the variable types, and also use output. In the first lesson the data is stored in a list. We also introduce basic iteration with while loops.

LESSON 2 : Using a Dictionary to Store Data

The second lesson concentrates on creating a dictionary, building up on the knowledge of storing data from the previous lesson.

LESSON 3 : Creating an Interactive Menu

This lesson displays an interactive menu, introducing the idea of an interface which is an important notion in programming.

LESSON 4 : Introduction to Computational Thinking

Computational thinking is one of the most important aspects of programming. It involves breaking down a problem into smaller, simpler steps which make it easier to understand and solve.

LESSON 5 & 6 : Importing functions and Putting it all together

The final lesson is how to use import statements to import functions, and how to use them in your code. At the end of these lessons, the students should be able to put all their code together to get a functional word search puzzle.

Throughout the project, the students build up on what they have learned in the lessons and create a final puzzle project.

How the Project met the Students' Needs

The project aim to educate students attending the weekly Code Club at Harrow High School on intermediate concepts of Python through development of a Word Search Puzzle.

As participation in Code Club is on a voluntary basis, students who attend the lessons are enthusiastic about learning programming and will like to challenge themselves. The development of a Word Search Puzzle program will allow the students to share with their friends about their new skills and at the same time they are able to make use of their knowledge in Maths, Physic and Chemistry to design questions and answers for the puzzle.

Through the lessons, they will not only learn about programming but also revise and reinforce their knowledge of the other subjects.

Resources Required:

  • Projector and Screen for Teacher
  • 1 Computer with Python installed per Student

Setting Up Class

  • Teacher should go through the Lesson with students.
  • Students should write down their answers to the questions in the Lesson and share with everyone in the class.
  • After going through the Lesson, teacher should get students to start coding by completing the Worksheet in each Lesson.

Students are encouraged to discuss with their classmates or raise their hand and get help from teacher.