OctaPi : Brute-force Enigma
Make and then break Enigma-encoded messages on your Raspberry Pi
Start project Download lesson plan PDFWhat you will learn
- applying higher-order programming techniques to solve real-world problems
What you will need
Hardware
- A Raspberry Pi
Software
- Raspbian with Python 3 package
Curriculum alignment for this project
Use this guide to see how Code Club delivers on the NDTC.
Years F-2
- ACTDIK001 Meets
Recognise and explore digital systems (hardware and software components) for a purpose
- ACTDIK002 Partially meets
Recognise and explore patterns in data and represent data as pictures, symbols and diagrams
- ACTDIP003 Partially meets
Collect, explore and sort data, and use digital systems to present the data creatively
- ACTDIP004 Does not meet
Follow, describe and represent a sequence of steps and decisions (algorithms) needed to solve simple problems
- ACTDIP005 Partially meets
Explore how people safely use common information systems to meet information, communication and recreation needs
- ACTDIP006 Does not meet
Create and organise ideas and information using information systems independently and with others, and share these with known people in safe online environments
Years 3-4
- ACTDIK007 Meets
Identify and explore a range of digital systems with peripheral devices for different purposes, and transmit different types of data
- ACTDIK008 Partially meets
Recognise different types of data and explore how the same data can be represented in different ways
- ACTDIP009 Partially meets
Collect, access and present different types of data using simple software to create information and solve problems
- ACTDIP010 Partially meets
Define simple problems, and describe and follow a sequence of steps and decisions (algorithms) needed to solve them
- ACTDIP011 Partially meets
Implement simple digital solutions as visual programs with algorithms involving branching (decisions) and user input
- ACTDIP012 Partially meets
Explain how student solutions and existing information systems meet common personal, school or community needs
- ACTDIP013 Partially meets
Plan, create and communicate ideas and information independently and with others, applying agreed ethical and social protocols
Years 5-6
- ACTDIK014 Meets
Examine the main components of common digital systems and how they may connect together to form networks to transmit data
- ACTDIK015 Does not meet
Examine how whole numbers are used to represent all data in digital systems
- ACTDIP016 Partially meets
Acquire, store and validate different types of data, and use a range of software to interpret and visualise data to create information
- ACTDIP017 Partially meets
Define problems in terms of data and functional requirements drawing on previously solved problems
- ACTDIP018 Partially meets
Design a user interface for a digital system
- ACTDIP019 Meets
Design, modify and follow simple algorithms involving sequences of steps, branching, and iteration (repitition)
- ACTDIP020 Meets
Implement digital solutions as simple visual programs involving branching, iteration (repitition)
- ACTDIP021 Partially meets
Explain how student solutions and existing information systems are sustainable and meet current and future local community needs
- ACTDIP022 Partially meets
Plan, create and communicate ideas and information, including collaboratively online, applying agreed ethical, social and technical protocols
Years 7-8
- ACTDIK023 Partially meets
Investigate how data is transmitted and secured in wired, wireless and mobile networks, and how the specifications affect performance
- ACTDIK024 Partially meets
Investigate how digital systems represent text, image and audio data in binary
- ACTDIP025 Partially meets
Acquire data from a range of sources and evaluate authenticity, accuracy and timeliness
- ACTDIP026 Does not meet
Analyse and visualise data using a range of software to create information, and use structured data to model objects or events
- ACTDIP027 Partially meets
Define and decompose realworld problems taking into account functional requirements and economic, environmental, social, technical and usability constraints
- ACTDIP028 Meets
Design the user experience of a digital system, generating, evaluating and communicating alternative designs
- ACTDIP029 Meets
Design algorithms represented diagrammatically and in English, and trace algorithms to predict output for a given input and to identify errors
- ACTDIP030 Meets
Implement and modify programs with user interfaces involving branching, iteration and functions in a generalpurpose programming language
- ACTDIP031 Partially meets
Evaluate how student solutions and existing information systems meet needs, are innovative, and take account of future risks and sustainability
- ACTDIP032 Partially meets
Plan and manage projects that create and communicate ideas and information collaboratively online, taking safety and social contexts into account
download printable version of the Version 8.4 curriculum.