Taking the first steps in programming

From the 7th to 13th of December, we celebrated Education week in Computational Sciences, marking the ‘Hour of Code’, an initiative inviting students from across the world to learn programming. If you’d like your students to get closer to the world of Computational Sciences, and take their first steps in programming, aulaPlaneta recommends 10 resources especially designed for this purpose, ordered from lowest to highest difficulty, for all ages.

10 programming resources.

1. Kodable. An easy app for iOS that enables the little ones (starting from age 5) to kick-start their programming through designing movement commands in animated graphic backgrounds. The difficulty slowly increases. To take the next step, you can opt for The Foos, available as an app and online, or Code Baymax, an online application that lets you manage the robot from Big Hero 6.

2. Blockly Games. Google’s initiative that brings the world of programming to students with little experience in this arena. It’s based on a block system, in this case, the Blockly library, implemented like JavaScript. The games increase in difficulty as the student progresses, in order to gently introduce the user to more complicated language.

3. All can code. This game also uses block language from Blockly, in which the gamer’s focus is on a child who travels around the world. While new versions of the app are being developed, you can play online or access the demos on tablet: for iOS and Android.

4. Tynker. App to practice block language, available for Android and iOS, with very attractive graphics, gives the possibility of playing with pre-existing levels or creating a new project. It’s free, even though there’s a paid version for schools and other buying options for uploading content. A similar option online is Pixie, and for the older children, Code Monkey, which uses text for programming, instead of blocks, and lets you play 30 levels for free.

5. Star Wars. Construct a galaxy with Code. This fun idea from Code.org uses a series of science fiction films as the linking thread for children to learn programming. There are two different options, according to age: from 6 to 10, with the block system, and from 11 years old, using a combination of blocks and JavaScript. In both cases the interface guides the user so that they can advance little by little. In the same webpage there are more courses and tutorials in English and Spanish on different themes, from Minecraft to Frozen.

6. Alice. Free software that teaches programming in a virtual reality setting with three scales where you can manipulate and change objects. It’s available for Windows, iOS and GNU/Linux.

7. Scratch. This visual programming system based on coloured blocks was designed by MIT. Its very intuitive, gives you immediate results, and what’s more, allows fairly advanced options and an easy interface for more complicated programming language. In the Help section, there are tutorials and guides to expand knowledge of this language. There is a version designed for children as an app, ScratchJr, which works for mobiles, Android and iOS.

8. Pencil Code. An open source editor that’s free and lets you practice programming with blocks and in HTML and Coffeescript language. The idea is simple, moving a small tortoise around; but the possibilities it brings are huge, to draw, create music, design an adventure or a game. This guide brings you materials and ideas.

9. CodeCombat. A complex game that teaches Python, JavaScript, CoffeeScript, Clojure, and Lua. One writes the code and sees the results immediately on screen. The system is very intuitive and facilitates learning as the difficulty increases.

10. CodeAcademy. A platform to learn different programming languages like Python, Java, PHP, jQuery, Java Script, AngularJS, and Ruby (apart from HTML and CSS). It offers interaction and rewards to motivate the student.

The Hour of Code.

The Hour of Code is a global movement in which millions of students from more than 180 countries are participating. It was born to promote the teaching of programming and to highlight its main advantages (practicing problem solving, and developing creativity and basic knowledge). Any teacher interested in participating in The Hour of Code can sign up to the event online, where they will find a variety of ideas, materials, and resources to design their activity.