In several countries they are discussing if computer programming should be a school subject. Programming has a close connection to other subjects like languages and math. The logic you learn from being able to program makes it easier to learn other languages. The logic and problemsolving required helps a lot when solving math problems.
Hakitzu Elite – an app that combine programming and computer games in a way that I´m sure that many kids like. The company behind the app is called Kuatostudios (www.kuatostudios.com) and I really hope that they will release more products like this one. I´m pretty sure that this is a success concept! In the game you control two robots (and your opponent has two robots as well). The playing area is almost like a chessboard, but with obstacles. The robots can have different weapons and you control them by coding their moves/attacks. The objective is to get to the other players base and to destroy it. It´s a turn-based game, which makes it perfect to use in the classroom (when i`m done I´ll tell you and it´s your turn and so on). You can play against random people on Internet, but you have to wait for your turn which can be a bit annoying if you want to play now and the other player hasn´t done his/her move. Recommended!
Cargo Bot A free app where the objective is to program a robot that will do your work. A good app that will get you (or your students) inte the logic thinking of programming. It´s drag´n drop, so you don´t need any pre-knowledge. Suits both younger and older kids.
Blocksworld ”visual programming” I´d call this app. You build with lego-like building blocks. There is a good tutorial that will make you build a lot of different stuff and after that you can start the free constructing. It´s like LEGO meets Minecraft with a dose of programming. A good app for younger kids to start with. Entertaining even for older kids. A video that shows some stuff you can construct within the app: http://www.youtube.com/watch?v=89QiP3KV6ZQ
Robo Logic 2 HD There is a free version and a paid version (2 dollars). The objective is to program a robot. It´s very easy to use and therefor usable for young kids.
Kodable Pro Available in a free version called Kodeable. Drag ´n drop to get the figures to move according to the path. Suitable for younger kids.
Hopscotch HD A free app for younger kids that also uses drag´n drop. You control the movement of a character. The app also has ”change x with” and ”change y with”, so it can be used to introduce variables and coordinates in math.
Move the turtle An app I haven´t tested. Costs about 3 dollars. The objective is to move a turtle on a lawn.
Programs and services online
Scratch Drag´n drop blocks to control what happens. There is a section for teachers.
Snap Similar Scratch (See above) Build your own blocks. Uses Java and runs in your browser.
Blockly The Google version of Scratch. Works on iPad as well.
Tynker Reminds of Scratch and Snap. Runs in your browser. They say it´s for school use. There is a function that gives the teacher an assembly of the students achievements. There is a limited free version (standard) and a paid version (premium).
Codeacademy An online tool to learn programming. You need to create an account, but you can try it out before creating an account.
Hackety Hack You download a program to your computer. There are links to help functions.
Kids Ruby Another program that you download to your computer. There are help functions to get you going. The window is split into two. One half is your coding and the other half is the result of the coding. Available for both Mac and PC.
Mats Rörbecker has made a guide in Swedish on how to program in Ruby: http://rorbecker.com/spelskola/
Code Monster An online tool for younger kids.
Kojo A more advanced tool but still easy to use. Is open source (free to use). Can be used both online and by downloading.
Kodu Create your own games. The threshold is higher than in many other tools, but so is the reward. If you´re used to Minecraft it´s a bit easier to use Kodu, since you´re creating worlds.
Courses and education in programming
w3schools.com Lots of courses. You can also ask how to use concepts in programming and get answers.
Udacity Free interactive courses online. Demands registration.
Coursera Online courses, programming as well as other courses.
Apple Developer For those that wants to program Mac, iPad and iPhone.
Android Developer For those that wants to write programs for Android.
Google Developer For those that wants to program for Google (for instance Chrome apps)
Microsoft Developer For those that wants to program Microsoft products.