What is it?
Programming is the process that makes it possible to create computer software, applications and websites. Currently, computers are unable to think for themselves; they require users to give them sets of ordered instructions to know what to do. This is referred to as 'code'. Most of the resources you use on the computer and internet are made with code. Programming is a core element of the Digital Technologies curriculum because it helps students develop essential skills such as problem-solving, logic and critical thinking.
Visual programming, also known as block-based programming, is the coding language prescribed in the Australian Curriculum: Digital Technologies for primary schools. This type of language allows users to create programs by manipulating elements graphically rather than writing them in text format.
Australian Curriculum definition
A programming language or environment where a program is represented and manipulated graphically rather than as text. A common visual metaphor represents statements and control structures as graphic blocks that can be composed to form programs, allowing programming without having to deal with textual syntax. Examples of visual programming languages include: Alice, GameMaker, Kodu, Lego Mindstorms, MIT App Inventor, Scratch (Build Your Own Blocks and Snap).
Note: A visual programming language should not be confused with programming languages for creating visualisations or programs with user interfaces, for example, Processing or Visual Basic.
This tutorial provides step-by-step instructions and images to support the learning of this visual programming language. The tutorial is designed for educators who would like to learn how to use Scratch.
Through this website, educators explore and share resources and strategies to teach coding.
This is an online resource for teaching computer science to students. This section provides an introduction to coding.
This website includes links to useful resources, and outlines where computational thinking can be leveraged within current NSW K–8 syllabuses.
This course introduces the fundamental concepts of the Australian Curriculum: Digital Technologies, starting with algorithms and data representation and moving toward an introduction to visual programming.
This is a broad collection of online resources to support teachers to develop and implement computational thinking, concepts and computer programming.
These videos, uploaded by Brian Aspinall, provide practical advice about coding and other aspects of implementing digital technologies.
This webinar explores how Google Apps for Education resources and initiatives can be used to support the implementation of coding and computational thinking in the classroom.
This is an online community with resources and discussion forums for Scratch educators.
Find suggestions for introducing Bee-Bots into the primary curriculum.
This resource provides information for teachers about topics such as computer systems, algorithms, computer control, robots and computer programming. It also covers internet searches and internet safety.
This is a beginner course for teachers interested in programming with Scratch.
This book, viewable online using the 'look inside' feature or purchased in hard copy, provides a comprehensive guide to programming for all levels.
This US blog is created by Codesters. Content focuses on the rationale for teaching coding and computational thinking in schools.
Students design a sequence of steps for others to follow. They convey their instructions to peers and evaluate the work of others to determine if the outcome was successful.
This sequence integrates science as students grow a plant from seed. They capture each step and decision as an algorithmic process and record data for future learning.
Students follow and describe a series of steps to program a floor robot. They plan a route to program a robot to follow a path and write a sequence of steps (algorithm).
In this sequence students plan, create and edit a program that will ask maths questions that are harder or easier depending on user performance.
In this sequence students implement a digital solution for a maths quiz. They test and assess how well it works.
Students make a paper prototype of an eco-calculator to demonstrate human impact on the environment and suggest changes in behaviour. This is an unplugged learning sequence with opportunities to extend learning through the development of a Scratch quiz.
Create a computer program to learn a traditional Aboriginal or Torres Strait Islander language.
A range of resources to get you started with the micro:bit, a tiny programmable computer.
This sequence of lessons explores how to incorporate user input, decision-making and loops in programming using the context of a shopping experience, particularly the checkout. It combines data in the form of a barcode and programming choices.
This is a series of self-paced interactive games that progressively introduce programming concepts and challenge students to apply these to solve problems.
This webpage is about Cargo-Bot, a game made using Codea, an app for game creation.
Hopscotch is an app for iOS devices that allows students to create their own applications using a visual block-based programming environment.
Move the Turtle is a purchasable app for iOS devices designed to teach primary students the basic concepts of programming.
Tynker is an online platform designed to teach students how to code using games and stories. Students can learn the fundamentals of programming and design using Tynker's in-built visual programming language.
This website provides a link to Tickle, a free app that enables you to program various robots and air drones. There are also supporting resources.
OzoBlockly gives you the power to fully control Ozobot Bit's movement and behaviour.
Using a tablet device, students code their own simple programs with Scratch Jr.
Students program their own stories and games with Scratch.
Students create 3D games and simulations with StarLogo. They can use the tutorials to get started.
Students build Android apps. There are step-by-step instructions to help them build their first app.
This programming puzzle app is available for use on multiple devices. It teaches students coding concepts as they guide a robot to solve problems and light up tiles.
This free app is available on multiple platforms, including iOS, Android and web. It teaches students early programming skills through the use of puzzle blocks that code for actions.
This free iPad app features a dinosaur that can be programmed to complete a series of simple tasks, including instructions to produce a desired outcome.
Understanding algorithms through baking.
Students use Scratch to create an interactive spelling quiz.
AISSA Humanoid Robot Research Project
Thomas and Pink are two humanoid robots that are making programming and robotics exciting and intellectually stimulating learning frontiers for students in Independent schools in South Australia.
With an intentional focus on the new Digital Technologies curriculum and commitment to ongoing professional learning, St Finbarr’s School in Ashgrove, Queensland, is seeing positive changes. Emily Olsen is the eLearning Coordinator at the school. Here, she describes the key elements that led to change in her school.
This is a world-record attempt to get the most number of children coding at once – and on the night of a full moon!
In this competition students develop a technology project of their choice and then present it to a panel of judges. Projects are submitted in two categories: years 3–6 and years 7–12.
Scope IT offers three different courses: Creative Coding, Bits and Bytes, and Digital Lifestyle.
These resources support the Hour of Code, a global movement supporting and inspiring students to code.
Level F - 2:
Follow, describe and represent a sequence of steps and decisions (algorithms) needed to solve simple problems (ACTDIP004)
Level 3 - 4:
Define simple problems, and describe and follow a sequence of steps and decisions (algorithms) needed to solve them (ACTDIP010)
Implement simple digital solutions as visual programs with algorithms involving branching (decisions) and user input (ACTDIP011)
Level 5 - 6:
Design, modify and follow simple algorithms involving sequences of steps, branching, and iteration (repetition) (ACTDIP019)
Implement digital solutions as simple visual programs involving branching, iteration (repetition), and user input (ACTDIP020)