1. Resources Home
  2. High School
  3. Computing
  4. Computational thinking
Python - Getting Started

Python - Getting Started

4 documents that include example Python code, tasks and programming challenges to complete to help students, NQTs and non-specialist teachers to learn the following Python programming skills: Input and print statements If statements For loops While loops Perfect for classroom activities, homework tasks and self-study. Answers are included.
nwilkin
Python While Loop Practical Challenges

Python While Loop Practical Challenges

A great 2 page handout for your pupils to practice While Loops in Python . Includes example code, a task to read code, a task to correct code and 3 practical challenges for them to practice writing for loops in Python code. It even includes a PDF containing the answers. Great for homework tasks, classroom activities or self-study.
nwilkin
Python For Loop Practical Challenges

Python For Loop Practical Challenges

A great 2 page handout for your pupils to practice For Loops in Python . Includes example code, a task to work out the output from the range function, a task to correct code and 4 practical challenges for them to practice writing for loops in Python code. It even includes a PDF containing the answers. Great for homework tasks, classroom activities or self-study.
nwilkin
Data Structures (DS for Kids aONP)

Data Structures (DS for Kids aONP)

10 single-page resources about the abstraction of values from different representations of data. Informal introduction to variable names. For age range 11+
A_Cowie
Python If Statements Practical Challenges

Python If Statements Practical Challenges

A great 2 page handout for your pupils to practice Python if statements. Includes example code, a task to identify the main operators, a task to correct code and 3 practical challenges for them to practice writing if statements in Python code. It even includes a PDF containing the answers. Great for homework tasks, classroom activities or self-study.
nwilkin
Data Structures for Kids and Other Normal People

Data Structures for Kids and Other Normal People

(PDF - editable Word documents available) These resources can be used by colleagues teaching high school Computing Science in any education system. In particular, they reflect my interpretation of parts of the (Scottish curriculum) Level 3 and 4 Computing Science Es and Os in the Broad General Education. I have thought for a long time that coding is taught too much from a “just get on and write it” approach and there has been little emphasis on the data structures that underpin what is being written. I have found that when I ask a student to draw and name the data structures they plan to use - even if the structures contain simple, single values - their understanding (their computational thinking skills) and their ability to code independently improve immeasurably. My view of the current Scottish curriculum is that it now allows for this, and that was my motivation when I started building these resources. I have tried to create resources that are superficially appealing whilst containing academic content, in order to engage all levels of ability. These resources may go some way to fill the gap between more practical, coding activities and the theory found in certificate courses in the senior phase at secondary level. There are more to follow… I have deliberately kept each resource to one page so that they can be used out of sequence. I have not included much in the way of teacher exposition within each task, to allow for different levels of depth depending on circumstances, but the Teacher Notes include my rationale for each task, some tips/hints/notes for each resource and a reference to the (Scottish Curriculum) Benchmarks for the Es and Os.
A_Cowie
Python Basics Practical Challenges

Python Basics Practical Challenges

A great 2 page handout for your pupils to practice Python basics. Includes example code, a tasks to read code, a task to correct code and 4 practical challenges for them to practice writing Python code. It even includes a PDF containing the answers. Great for homework tasks, classroom activities or self-study.
nwilkin
Ozobot Maze Progression - 10 levels

Ozobot Maze Progression - 10 levels

Inspired by Google’s blockly games, this 10 level progression allows pupils to use ozobot and ozoblockly to solve mazes. The ozobot on its default setting is unlikely to solve the mazes in this progression, and thus, it forces pupils to use ozoblockly.
stuart_cork
Most Used Excel Functions

Most Used Excel Functions

Teach your students the most used Excel functions. All explained with details and includes an example each. The presentation can be adapted to your class activities. Functions that include in the presentation: SUM ( ) AVERAGE ( ) MAX ( ) - MIN ( ) COUNT ( ) COUNTA ( ) CONCENATE ( ) IF ( ) COUNTIF ( ) VLOOKUP ( ) SUMIF ( ) Assessment supports learning abilities and gives a chance to practice them in carefully designed examples with instructions for each. (All functions are used). The “Assessment_SOLVED” file gives the answers of each question. Please make sure you leave a review after your use. THANK YOU!!!
Copolat
ScratchUp! A cunning combination of Sketchup (3D CAD) and Scratch (Coding)

ScratchUp! A cunning combination of Sketchup (3D CAD) and Scratch (Coding)

This is ScratchUp! A cunning combination of Sketchup (3D CAD) and Scratch (Coding) to bring your pupils’ programming projects to life! The idea for this emerged after teaching my classes Sketchup as a specific CAD tool within the DT curriculum to design lunar buggies, before then proceeding to the build stage. I was so impressed at their grasp of the software and 3D design as a concept, that I wanted to set a new challenge. Similarly, they had progressed extremely well in my computing lessons until they were quite proficient using coding constructs and concepts within Scratch, so what was the next step? I noticed that their sprite and background design within Scratch always fell short of their best, probably as they were so keen to code and get their project working. It was all coloured blobs and stick men; purely functional, but little in the way of inspiring graphical user interfaces! Enter: Sketchup. I decided that they could use their design skills to create high quality sprites, then export them as a 2D graphic to be loaded into Scratch as a costume. And then it hit me.  Why not export a series of rotations of a 3D sprite, load multiple images into a sprite’s costume, then animate it, so it appears as a rotating 3D sprite? The possibilities are endless! Take a look around this resource which includes my presentation from the CAS (Computing at School) National Conference 2018, the list of angles I used for my car direction, my ScratchUp examples, pupil Sketchup and ScratchUp examples and a Sketchup help sheet. Let me know how you get on!!! www.rundontwalk.co.uk
PhilWickins
Scratch DIRT SHEET - Assessment

Scratch DIRT SHEET - Assessment

Created this DIRT sheet for my Year 8’s but can be used for any year group. SIMPLE TO FOLLOW Teacher can look through their scratch projects and tick the boxes the pupils have covered in their Project. Pupils can then reflect on their project and suggest improvements they could make.
LUKEB82
Linked Lists Using PHP Classes

Linked Lists Using PHP Classes

This resource was developed for Advanced Higher Computing Science (Scottish Curriculum). It describes a linked list and works through the implementation in PHP of the following operations: insert and delete nodes, read the contents of a node, count the number of nodes, read the whole structure. Some suggestions are given for programming problems involving linked lists.
A_Cowie
What is an ALGORITHM

What is an ALGORITHM

An introduction to algorithms using a flowchart with sequence, selection and iteration. The worksheet provided enables students to slow down their thinking to focus on each instruction in the algorithm until the last instruction is executed and the program ends.
chris_vidal
Getting your head around while loop - ITERATION for beginners.

Getting your head around while loop - ITERATION for beginners.

Understanding variables and loops are the most significant aspects of coding. It is important for students in early stages to grasp the concept of how loops work if the are to be successful candidates for computer science. This power point presentation is a scaffold building fundamental steps required in understanding and applying loops using python. Students must already know how to use basic input and output functions in python. The language and terminology used is simple enough for a non specialist to use and teach a coder at beginner level. The python idle software is available to download for free at https://www.python.org/downloads/. After students have fully grasp the concept of loops and how they work, they extension task will provide a challenge for them to apply their knowledge, using computational thinking to improve their code.
chris_vidal
Computer Science GCSE - Logic Gates - Match up the name, symbol, description and truth table

Computer Science GCSE - Logic Gates - Match up the name, symbol, description and truth table

Computer Science GCSE CIE 0478 Unit: 3 Topic: Logic Gates A task to match up the name, symbol, description and truth table for each logic gate. The task produces a single A4 sheet/table which is great for a reference/revision of the topic. Students complete a table with four headings; name, symbol, description and truth table. All the details are provided and can be copied and pasted into the table. Final results can be printed and used for revision or as a quick reference guide during the topic. A homework has been included to reinforce the learning. Please leave some feedback.
cormacmcgleenon
[GCSE+IGCSE] Python Text Adventure Coding Challenge

[GCSE+IGCSE] Python Text Adventure Coding Challenge

This is possibly my most favourite piece of work to do with the students. I do it as an end of year activity when they are a bit more confident with the material. We create a zombie survival text adventure game and I have recently updated it to include questions similar to what has been in the recent exam and in the exemplar exam What is covered Local and Global Variables Variable Types Input and Validation Conditional Loops Fixed Loops Arrays Subprogram calls (Functions, Procedures and Pre-defined) Libraries Complex conditions and selection Repetition and Iteration What is included Word document with instructions, task overview and more detail on the activity Student Starting Python file (in zip folder) Teacher completed exemplar file Answer document to questions
PaperAirplane
#GoogleExpeditions The Hydrosphere: Modeling the Water Cycle with Scratch

#GoogleExpeditions The Hydrosphere: Modeling the Water Cycle with Scratch

This lesson combines science and computer science as students explore the water cycle through an expedition in the hydrosphere and use the programming language Scratch to create their own model. Objectives: Students will discuss how all water moves through a never ending cycle identifying key points in all stages. Students will apply their understanding by creating a model of the water cycle in Scratch. Standards: ESS2C: The Role of Water in Earth’s Surface Processes 5-ESS2-1 MS-ESS2-4 CSTA 1B-AP-10: Create programs that include sequences, events, loops, and conditionals. CSTA 1B-AP-17: Describe choices made during program development using code comments, presentations, and demonstrations. Additional videos / resources: Crash Course Kids: The Great Aqua Adventure https://www.youtube.com/watch?v=z5G4NCwWUxY Google Expedition Research Journal https://drive.google.com/file/d/1cd-NZMmx4dwzMsWNOuBg8Y375_iDJm6G/view?usp=sharing Create your own Google Logo Activity https://csfirst.withgoogle.com/c/cs-first/en/create-your-own-google-logo/overview.html Scratch Project Rubric https://docs.google.com/document/d/1jxxNbEITs4SDxNjsl0fXoq-XRX3t2HpY6aRfL_iKDyk/edit?usp=sharing Optional/Additional Lesson Plans/Resources Hydrologic (Water) Cycle Multimedia Text Set https://docs.google.com/presentation/d/e/2PACX-1vROakYmPuB2lMPONXbnF2kh28gPHC9EWM2ojZp7tvu9pFHUqgOjUFlb-URpx9w5zZnfCFf6qK28Wqht/pub?start=false&loop=false&delayms=3000 NASA Precipitation Education: Exploring the Water Cycle https://pmm.nasa.gov/education/lesson-plans/exploring-water-cycle
kdmoura
[GCSE+IGCSE] Mini Project: Pentathlon

[GCSE+IGCSE] Mini Project: Pentathlon

This is another of the mini projects that I get my students to complete in preparation for completing the coursework. Lesson Overview Depending on ability level, we start by completing flow charts and pseudocode to complete the design of the program. I sometimes prepare a complete one, but blank out some of the steps to give to my weaker students. Better students I will give blank designs to and somewhere in between for the other students. At end of this lesson, we look at how the code works In preparation for the next lesson, I get the students to watch the video as a homework task. The next lesson, the students complete the program using their pseudocode / flow charts completed in previous lesson. If they are still struggling, they can watch the video again in class time, as well as me able to wander around and help. Students who are better at coding will easily be able to add more functionality to this project Included Zipped file contains: 2 CSV files required for the project and the completed solution file (1 of the CSV files is the file writing part) Video Support of completing the solution Whilst this is mainly aimed at students, it would be useful PD for any Computer Science teachers who are still struggling to understand the complex programming side of the course What this teaches File Reading from CSV file File writing back to CSV file Storing Data in 2D arrays Functions/Procedures Parameter Passing Complex Functions (Finding Minimum algorithm using 2D arrays) Combining
PaperAirplane
[GCSE+IGCSE] Mini Course work project with Video and Solution Computer Science

[GCSE+IGCSE] Mini Course work project with Video and Solution Computer Science

This is a smaller project that uses File Reading, 2D arrays and some manipulation of the data stored in it. A complex project, smaller than a final year project, but building in complexity. Included: 3 solution videos, completed solution file (.py) and zipped (TES doesn’t allow this file type) with the CSV file to access - save these in the same folder, or your program will not work
PaperAirplane
[GCSE + IGCSE] Python Coursework Mini Project 2D arrays, File Reading and Writing and Sorting

[GCSE + IGCSE] Python Coursework Mini Project 2D arrays, File Reading and Writing and Sorting

**Teaching Duration: ** For main tasks, 3 lessons. This task can be expanded to challenge the top level students to add more and more features in. A further 1 to 2 lessons where we reverse engineer the flow charts which is very useful skill for the final exam Who is it for: Students studying GCSE in preparation for final project. Students studying IGCSE who are consolidating their skills at developing a large project. Also useful for staff struggling with teaching the course What’s included Instruction File: Includes detailed instructions and code that students should enter to complete the project Student File: partially completed code that students add to Teacher File: Completed project Text File: This project includes file reading, this is the text file to use. Make sure to save it in the same folder as the python file, or it will not work This covers every area of the programming side of the course from Units 1 and 2 completely. This is a perfect project for students to practice a larger project before tackling the coursework, or as a revision task for the practical exam / paper 2 by reverse engineering code/pseudocode and flow charts which is always a tricky area to learn. This has been in all exemplar papers, as well as the 2018 exam.
PaperAirplane
[GCSE+IGCSE] 2D Arrays introductory Task

[GCSE+IGCSE] 2D Arrays introductory Task

Activity is written using standard pseudocode/python, so easy to change and update for any other programming language . Use this to introduce arrays and records and discuss the diffrences between them both - with python coding in mind, as well as the exam based pseudocode being different from Python Questions from the new curriculum on 2D array data manipulation
PaperAirplane
Scratch [Modelling and Simulation]

Scratch [Modelling and Simulation]

My activity booklet for building a model of a the solar system in Scratch. Students complete some Internet research first (gives us a chance to look into searching techniques, fake news and logging data/information) We then spend a few lessons coding the solution to the model, getting the sun to rotate around the sun. Adding the moon to rotate around earth and then adding the other planets. This is a really fun activity that I use as a transition from talking about Internet safety, Internet skills to programing in Scratch, I have also included an example solution file, so you can learn how to code this particular solution, as well as demonstrate a working model the students.
PaperAirplane
Python Problem Solving Algorithm and Coding Challenges [GCSE + IGCSE]

Python Problem Solving Algorithm and Coding Challenges [GCSE + IGCSE]

A series of 11 coding challenges for students. This is a unit of work that I complete once my students have seen the basics of coding and have used the Mathematical Operators in Python (MOD % / DIVISION // INTEGER DIVISION) There are a variety of logical puzzles to work through and solve. I have included the solutions to all problems (11 Python files in ZIP format (TES doesn’t support direct upload of .py files)) For this unit, I had students work in groups. For my students who were struggling, I prepared some files with the pseudocode already typed in, or I hand drew some flow charts for some differentiation. For many of these, it would be very easy to build on and challenge your top level students to make some of the challenges even more difficult.
PaperAirplane
Scratch Programming Fractal Tree Activity

Scratch Programming Fractal Tree Activity

One of the areas of the national curriculum that we should be introducing students to is RECURSION. This is an excellent activity to introduce that concept in a visual way with a simple task to create a fractal tree in Scratch programming. This activity I had a learning observation on. I had my students work in small groups to try and complete the main activity together. When they finished this, they were to research other fractal activities on-line and see what they could create. Students really enjoyed this activity at the end of the Scratch topic to introduce a very complex topic that is not part of GCSE, but that appears again at IB level and A level. I expect students to learn that recursion is a complex rule that simplifies programs, but is very difficult to understand and it is a function that uses itself to solve a problem.
PaperAirplane
Scratch Programming Test 2 + Answers

Scratch Programming Test 2 + Answers

End of section test (I use with Y8 students) to assess their comprehension of coding using Scratch (I have uploaded my unit of work which goes with this. This is used a long with the assessment activity uploaded in the other unit of work, to check student progress. This is a problem solving assessment which tests students abilities to read and interpret code, as well as explain it. Checks their logical and computational thinking skills and ability to spot and correct errors.
PaperAirplane