Programming platforms
Programming platforms can be categorised into two groups: visual programming environments and general-purpose programming languages.
Visual programming environments
In the Australian Curriculum, students from Years 3–6 are expected to use a visual programming language. Note: It is not a requirement for students in Year 2 or below to use a visual programming language. However, many schools introduce apps such as ScratchJr for those students who are ready.
A visual programming language enables students to sequence commands (displayed as blocks) to create a program. In the Years 5–6 band, for example, students create programs that allow user input, choices/decisions (branching), and use repetition (loops) until particular conditions are met.
General-purpose programing languages
In the Australian Curriculum students from Year 7 upwards are expected to use a general-purpose language.
General-purpose languages allow students to solve more complex problems, as they are not restricted by the functionality of visual programming languages. Often referred to as text-based programming languages, these types of programming environments have a particular syntax (the way the code is formatted and understood by the computer). Students need to become familiar with the particular programming language that they are using.
Note: Robots and microcontrollers typically incorporate a programming language that may be block-based or text-based; some may provide both options.
Further information
- For further information about programming, view A guide to programming languages for coding in class.
DISCLAIMER: PRODUCTS ON DT HUB
In this section we highlight features of common technologies used in schools. However, any references to any specific product, process or service is for information only and does not constitute an endorsement or recommendation.

Osmo
Click to learn moreOsmo
Suggested Year Bands: Foundation/ Pre-Primary
Images credit: © Osmo
Osmo is a physical coding program used with the camera of your iPad. Move the physical blocks in front of the iPad camera to see the moves made in the app.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

Scratch
Click to learn moreScratch
Suggested Year Bands: Years 3-6
Scratch is an easy-to-use, block-based visual programming language designed to introduce students to coding. By snapping together colour-coded blocks, students can create interactive stories, games, and animations.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

ScratchJr
Click to learn more
Snap
Click to learn moreSnap
Suggested Year Bands: Years 3-6
Images credit: © Jens Mönig and Brian Harvey, and presented by the University of California, Berkeley
Snap! is a block based graphical programming language that allows students to create interactives, animations, games etc. Snap! Is browser based, meaning it can be used on any computer (without having to install software). Snap! Also allows students freedom to include their own scripts.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

Tynker
Click to learn moreTynker
Suggested Year Bands: Years 3-8
Images credit: OpenClipart-Vectors/Pixabay
Tynker is an educational programming platform that can be used for building games, apps interactives, Minecraft mods and can be paired with robots such as WeDo and Sphero. You visually drag blocks of code and snap them together to form scripts. Python, Javascript and HTML/CSS are also available in the Tynker platform.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

Hopscotch
Click to learn moreHopscotch
Suggested Year Bands: Years 3-6
Images credit: © gethopscotch
Hopscotch is a visual programming platform which allows students to make simple programming designs. It’s simple user interface makes it easy for students to drag and drop blocks.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

Pencil code
Click to learn morePencil code
Suggested Year Bands: Years 5-8
Images credit: OpenClipart-Vectors/Pixabay
Pencil code is a collaborative programming platform used for drawing art, playing music and creating games. The programs are open for everyone to see and copy. It uses coffeescript in drag and drop blocks but can be switched between JavaScript, HTML and CSS.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

mBlock5
Click to learn moremBlock5
Suggested Year Bands: Years 3-8
Images credit: © Makeblock Co. Ltd
The mBlock5 is a web based programming software that uses both visual based block language and text language. The platform can be used for coding Makeblock robots, arduino boards and you can create games, stories and animations. It also has Internet of Things and AI functionalities.
Associated apps or software
Lesson ideas and resources
- There are no lesson ideas and resources associated with this product on the Hub.
Links to Scope and sequence

Swift Playgrounds
Click to learn moreSwift Playgrounds
Suggested Year Bands: Years 5-10
Screen shot(s) reprinted with permission from Apple Inc.
The Swift Playgrounds is an Apple created platform for students to learn Swift, an Apple coding language used to develop some of their apps. Students solve real logic problems to understand the basics of this Apple coding language. As students move through lessons they are introduced to more complex problems and coding.
Associated apps or software
Links to Scope and sequence

Looking Glass
Click to learn moreLooking Glass
Suggested Year Bands: Years 5-8
Images credit: gyathanarts/Pixabay
The Looking Glass is a programming platform where students can make their own 3D stories with animations. It uses a drag and drop interface to create narratives.
Associated apps or software
Lesson ideas and resources
- There are no lesson ideas and resources associated with this product on the Hub.
Links to Scope and sequence

Python
Click to learn morePython
Suggested Year Bands: Years 7-10
Images credit: © Python
Python is a general-purpose programming language widely taught in schools due to its simplicity and readability. It is often used to introduce students to text based programming concepts and problem-solving.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

repl.it
Click to learn more
W3Schools
Click to learn moreW3Schools
Suggested Year Bands: Years 7-10
Images credit: Photo by Émile Perron on Unsplash
The W3Schools provides tutorials, references, and examples to learn a range of programming languages including JavaScript and HTML.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

Javascript
Click to learn moreJavascript
Suggested Year Bands: Years 8-10
Images credit: © Python
The Javascript is an object-oriented computer programming language commonly used to create interactive effects on websites. The vast majority of websites use Javascript to program how a website behaves.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence

Unity
Click to learn moreUnity
Suggested Year Bands: Years 8-10
Images credit: © unity.com
The Unity is a cross-platform game engine. It can be used to build 3D and 2D games and use them across mobile, desktop and VR/AR, consoles.
Associated apps or software
Lesson ideas and resources
Links to Scope and sequence