Moving from visual to general purpose programming
When starting to learn computer programming, students typically use a visual programming language that is represented and manipulated graphically. These graphic blocks can be composed to form programs, allowing students to program without having to deal with textual syntax or inputting vast amounts of text. Basic programming might start with a simple sequence of steps. Branching, user input and repetition are important elements to includes as students’ progress their programming skills. Branching offers a choice to do two or more things considering user input. Often we want to complete a common task multiple times; we do this by including loops (repetition). Programming also allows students to develop the important mindsets of thinking logically, problem solving and debugging.
Scratch and Blockly are commonly used visual programming languages, but there are also Tynker, Snap and a host of others.
There are many opportunities for students to develop their skills in visual programming language. Examples include creating an app using MIT App Inventor, controlling an Edison or Sphero robot or building one using Lego Mindstorms, or creating a digital game using the BBC micro:bit. By secondary school, students generally start using a text-based programming language (general purpose programming). Python and JavaScript are widely used.
However, for each programming language, students have to learn the particular set of rules that can be used to combine words and symbols into a correctly structured program. This is referred to as the syntax. For example, if you think of an email address, it has a particular syntax (name@organisation.com). Get it right and your email goes to your intended recipient. Get it wrong and your message is not sent. Similarly, in a programming language, rules need to be followed for the program to work. When you follow these rules, the program you create will function as you intended. But, if you don’t follow the programming language's syntax, you will get errors. For further reading on visual and text-based programming languages, check out this blog post. If you want to find out more about moving from visual programming to a general purpose programming language, register for our upcoming webinar.
There is a range of learning sequences available on the Digital Technologies Hub. The ones below incorporate developing programming skills and mindsets.
Problem-solving processes
In this unit of work students draw on computational thinking to break down problems into components, then design and use algorithms to create a visual program to implement a digital solution.
Create an app or game
In this unit of work, students examine existing digital solutions, design their own solution, program their solution using a general purpose programming language, and evaluate it against design criteria and user needs.
Creating a digital game
Students follow a problem-solving process to design, build and evaluate a digital game. They state the digital design problem, create an algorithm for the game, implement their solution, and evaluate the end product.
Creating a digital game
Students create a digital game by defining their target audience, designing the rules/actions of the game using algorithms, then using visual programming to create their game.
Robotics and embedded systems
Students can use programmable robots or microcontrollers to solve problems of increasing complexity, progressively adding additional functions such as the control of motors, lights, sounds and sensors.
Robotics and embedded systems
This unit of work begins with an introduction to robotics. Students design and fabricate an assistive device such as a robotic hand. They can also explore the role of sensors and/or sewable electronics.
Upcoming webinar: From Scratch to text
29 August 2018, 4.30pm – 5.30pm AEST
Presented by: Martin Richards, Content Manager of the Digital Technologies Hub, and Jason Vearing from QSITE (Gold Coast Chapter)
This webinar will be useful for educators with students who are transitioning from visual programming to text based programming. Jason Vearing from QSITE (Gold Coast Chapter) will demonstrate some useful programming skills such as branching, strings, creating variables and arrays, and putting it all into practice with simple games such as 'heads or tails' and 'higher or lower'. You will also learn to make a dynamic table generator with just three short lines of Python code! We will provide video links and further resources for the games to follow up the programming skills covered.
Using data to change the world
Presented by: Martin Richards and Dr Linda McIver
This webinar introduces you to a way of integrating STEM problems using data to empower kids to solve problems in their own communities. From Foundation through to Year 12 and beyond, data can be used to enhance every subject, from science and maths through to geography and history.
The recording for this, and all our previous webinars, can be found on our webinars page.
See our events calendar for competitions, conferences and professional learning opportunities on offer in 2018.
- Day of STEM: STEM Cup; 15 June – 15 September, national
- Leading a Digital School conference; 16–18 August, QLD
- Game Changers and Changemakers STEM Festival; 17–18 August, VIC
- Digital Harvest 2018; 17 August, VIC
- Digital Technologies Workshop: Bunbury; 17 August, WA
- Digital Literacy and Creativity in Victorian Classrooms with Adobe; 21 and 22 August, VIC
- Digital Technologies and the NSW Curriculum workshops; 15 August – 27 November, NSW
- How to use Bebras webinars; 23—29 August, Online
- Digital Technologies Curriculum and Skills workshops; 24 and 27 August, NSW
- F–6 Digital Technologies MOOCs; 28 August – 5 October, QLD
- Unpacking coding, design and computational thinking in the NSW Syllabus; 29–30 August, NSW
- K–12 digital classroom practice conference; 31 August, VIC
- Bebras Australia Computational Thinking Challenge; 3–14 September, National
- Brekkie with a Tekkie webcast; 5
September, NSW
- RESCON NZ; 7–8 September, Auckland
- Computational thinking workshop: Kempsey; 11 September, NSW
- RESCON Australia; 14–15 September, VIC
- Computational thinking workshop: Goonellabah; 20 September, NSW
- ACCE Conference; 2–5 October, NSW
- SMART: The Inspire Greatness Conference; 11–12 October, NSW
|