Sunday 31 March 2013

Independent project


For the independent project, I chose to work collaboratively with a peer. After discussing the programming applications explored in phase 3 (exploring alternatives to Scratch) we decided to use Alice for this project. 


The version 2.3 of Alice provides the learner with an object oriented visual tool with which they can design and create a variety of animations, games and videos. This program would be great for middle to upper primary and older school students rather than the lower grades as there is a large amount of reading, comprehension and sequencing involved.  

The greatest appeal for us to choose Alice, other than it being 3D, was the familiar use of algorithmic sequence programming similar to Scratch. We also liked the programming implementation in Alice where the components of world window, object tree, events area, details area and editing area are all visible at the same time. It was visually easy to select an object/figure from the gallery, drag and drop it into the world and then maneuver and resize it. Object/figures sub-parts were able to be programmed to move independently with some actions pre-programmed for each figure ensuring ease when creating a program design.

Rather than create a game we decided to challenge ourselves to create a simple video of a penguin jumping over a frozen piece of water then meeting a rabbit who disappeared. We thought this program would be beneficial to learn and useful for visual story telling in the classroom. The visual components displayed in Alice allowed us to program the figures movement one step at a time and play the video to see whether it was successful or needed further refining continually.  Although we thought this task would be relatively easy, it was quite time consuming and required a great deal of collaboration and trial and error before we produced a very short, and what appears to be, simple video.

The video linked to the image demonstrates the finished product of our attempt at a short story as well as the algorithmic programming used to create the video.
I felt this particular programming application would be extremely useful for story telling in the middle to upper primary sector. Alice would also lend itself nicely to collaborative work where students could support and extend their learning through communicating and sharing ideas. It would be necessary for teachers to allocate adequate time for this type of activity and include it in their planning.

This program links to the Australian Curriculum: Technology 



Digital Technologies Processes and Production Skills
Sub-strand – Using digital systems

4.4 Use a range of digital systems and peripherals for diverse purposes, and transmit different types of data


Sub-strand – Specification, algorithms and implementation

4.5 Define simple problems and follow and describe the algorithms (sequence of steps and decisions) needed to solve them

6.7 Design and Implement digital solutions using visual programs with user input, branching and iteration

8.10 Manage the sequence of tasks, the types of processes and the resources needed to develop software that meets user requirements 

Design and Technologies Processes and Production Skills
Sub-strand - Generating, developing and evaluating ideas

4.6 Generate, develop, evaluate, communicate and document design ideas and design decisions using both manual and digital technologies

6.7 Generate, develop, evaluate, communicate and document design ideas and processes for a range of audiences, using some relevant technical terminology

8.8 Generate, develop, communicate, test, evaluate and communicate design ideas, plans and processes for identified needs and audiences using manual and digital technologies and collaborative techniques

10.5 Apply design thinking, creativity, innovation, enterprise and project management skills to develop, evaluate, modify and communicate design ideas; sequence production and management plans using digital technologies



Exploring alternatives to Scratch



Blockly
I chose to explore links provided on the study desk under Digital Technologies, as I am not familiar with computer programming environments. As I struggled with the programming involved with Scratch, I decided to explore what was listed under programs similar to Scratch. Blockly was the first program to be explored. 

Blockly is very similar to Scratch as it has a stage and a separate programming section in which to display the blocks used for the program sequence. As with Scratch the blocks the pre-written blocks are dragged and clicked together to form the program. This program offers a number of specific tutorials aimed to instruct new users on specific skills useful when creating activities.
Programming blocks
Maze created using Blockly














Kodu
After reading posts in an online forum, I decided to expand my knowledge and explore the program Kodu. There was a lot of information provided in relation to this programming environment but the greatest appeal was that it was free and used a pictorial programming language. The Kodu site promotes Kodu as teaching more than programming and lists the following advantages for using Kodu in schools.
  • Kodu is a rich tool for narrative creation and storytelling
  • Kodu demonstrates that programming is a creative medium
  • Kodu helps children with critical thinking, breaking a complex goal into manageable steps, and iterate on the design process – an approach applicable to all academic subjects, business and personal relationships
  • Kodu introduces the logic and problem solving of programming
  • Kodu introduces conditions and sequences, which teaches cause and effect
  • Students learn about cooperation, logic and creativity in addition to programming
  • Read about our Kodu pilot program in Australia's public schools: Report (pdf) (Microsoft, 2013)
There are numerous videos provided on the site that include how to install the program and tutorials that step through simple programming processes to support initial engagement. As this is a very, visual program with limited reading required, once the basic programming process is understood it would be very easy for younger students to use as an introduction to computer programming.
Programming layout
Kodu - one of the menus 











However, after watching a number of videos, reading information about Kodu and installing the program, I found it very frustrating to find that my computer would not run this program. This made me wonder whether the technology available in most state schools would be able to run it.
Reference
Microsoft. (2013). Kodu. Retrieved May 25, 2013, from http://fuse.microsoft.com/projects/kodu



Alice
The third alternative to scratch I explored was Alice. Alice uses a 3D animation, programming environment that enables the same click and drag programming options provided in Scratch. I found this program easier to use than Scratch with regard to resizing and maneuvering sprites and on screen objects. The format of the program enabled immediate feedback to any programming changes so blocks could be easily removed, replaced and retested until the desired results were achieved.


There are written and video tutorials available for this program but I found Scratch offered more support. There are also two versions of Alice available for free download (3.1 and 2.3), however after downloading the 3.1 version I found that some of the sprites did not function to their expected capacity so I installed the 2.3 version and had much more success. This was very frustrating as I wasted a lot of time trying to rectify the problem in the 3.1 version before admitting defeat. 
Clear visual display of programming devices and sprites
Programming and viewing screen












The version 2.3 of Alice provides the learner with an object oriented visual tool with which they can design and create a variety of animations, games and videos. This program would be great for middle to upper primary and older school students.
  

All of these programs would link very well to the Digital Technologies and Design and Technologies Processes and Production Skills strand of the Australian Curriculum: Technologies.
Digital Technologies Processes and Production Skills

Sub-strand – Using digital systems

2.4 Identify, explore and use digital systems (hardware and software components) for personal and classroom needs

Sub-strand – Specification, algorithms and implementation

2.5 Follow, describe, represent and play with a sequence of steps and decisions needed to solve simple problems

4.5 Define simple problems and follow and describe the algorithms (sequence of steps and decisions) needed to solve them

6.7 Design and Implement digital solutions using visual programs with user input, branching and iteration

8.10 Manage the sequence of tasks, the types of processes and the resources needed to develop software that meets user requirements  

Design and Technologies Processes and Production Skills

Sub-strand - Generating, developing and evaluating ideas

2.6 Visualise, generate, develop, evaluate and communicate design ideas through a range of media including digital technologies 

4.6 Generate, develop, evaluate, communicate and document design ideas and design decisions using both manual and digital technologies

6.7 Generate, develop, evaluate, communicate and document design ideas and processes for a range of audiences, using some relevant technical terminology

8.8 Generate, develop, communicate, test, evaluate and communicate design ideas, plans and processes for identified needs and audiences using manual and digital technologies and collaborative techniques

10.5 Apply design thinking, creativity, innovation, enterprise and project management skills to develop, evaluate, modify and communicate design ideas; sequence production and management plans using digital technologies

The implications for the classroom of the identified programs are vast and could easily extend to integrate the KLA of Technology with all KLAs within the Australian Curriculum. 


However, it is vitally important to scaffold student learning so that engagement is meaningful, relevant and successful. When learning new programs students require explicit step-by-step instruction with time allocated for free exploration before engaging in assessable activities.