What are the best toys to teach children and young adults coding or programming in a fun way that will actively teach them the new technology skills they will need for the jobs of tomorrow?

Coding and programming are now part of the national curriculum, in order to solve the “skills gap” between the number of technology jobs and the people qualified to fill them. ICT (Information and Communications Technology) has in the past been dominated by dull tutoring of how to use a word processor or PowerPoint, and has been replaced by a new “computing” curriculum including coding lessons for children as young as five.

According to Computerworld, in just a few years, there will be a shortage of 300,000 digitally skilled workers in London alone. While most students may have little interest in becoming software engineers, digital literacy will be hugely beneficial in a world where technology is being embedded deeper and deeper into our everyday lives.

This will appear most scary not to Little Johnny or Jane (with their open minds, inquisitive natures, and love of anything with a keyboard and screen) but to parents who have coding skills equivalent to those of their grandparents - i.e. none.

For the purposes of this feature we are describing some products as “toys” or “games” when they are or can be actually a whole lot more. We’ve described them this way because we’re looking at products that kids will want to play and interact with.

If they think that the Educational Thing is a toy they are more likely to play with it, rather than just do it. Learning through play is one of the best ways of picking up new skills, and overcoming what can at first appear rather daunting educational challenges. If you're looking for something less kid-focussed though, take a look at our broader guide to learning to code.

SAM Labs Science Museum Inventor Kit

SAM Labs Science Museum Inventor Kit

Learning how to code is only a part of the story. Learning to program requires different skills. Programming is creating the logic, while coding is translating that logic into code.

Writing code is only a portion of what makes up the duties of a programmer. A programmer needs to actively think about abstract solutions to problems before even touching any code.

One of our favourite programming toys is the SAM Labs Science Museum Inventor Kit, just one of a number of wireless electronic kits from this exciting British start up.

The SAM Labs Science Museum Inventor Kit is the starter package, and works as a great standalone toy that can also be added to with extras available from the SAM Labs site.

It promises to teach engineering powers to everyone, using simple active blocks and an intuitive desktop app for Windows and Mac. It’s a wonderful STEM tool because it integrates more than just one subject – linking, for example, coding with engineering through designing and building things.

The SAM Inventor Kit includes four wireless blocks: a Light Sensor, Tilt Sensor, Buzzer and a DC Motor. You can also buy other blocks (for example, a simple Button, Pressure Sensor, Proximity Sensor, Slider, Fan and Dimmer).

While a little simplistic an explanation some have called the SAM Labs building-block approach “Mekkano for the Internet Generation”.

Through step-by-step instructions the child or adult quickly learns five STEM activities, including mastering Morse code, making your own electronic songs, creating ingenious alarm systems (a lot of fun for kids), adding sounds to your drawings, and building a mini drum machine. After these there are more activities online.

While the visual building of circuits in the app is similar to the Scratch coding language enjoyed by many kids, the coding element of SAM Labs is based on JavaScript, which is a little more complex and it would help to have some JS knowledge beforehand.

That said, the SAM Inventor Kit is a lot of fun as a programming tool/toy without you having to even touch the coding side.

SAM Labs wireless building blocks and the intuitive desktop app are supported by STEM tutorials, and also by community projects. You can add extra blocks and even customise using standard modelling motor accessories from its website or the likes of Amazon.

Part hardware, part software, the SAM Labs Science Museum Inventor Kit is an innovative and really fun way for kids to explore programming, and the scope is limited only by the user’s imagination or creativity.

Sphero SPRK+

Sphero SPRK+

Kids love robots and it’s hard to find a more playful one than the Sphero, a robot ball that you control via various apps on your smartphone.

Sphero SPRK+ (which stands for Schools/Parents/Robots/Kids) is a translucent version of the robot ball (about the size of a tennis ball) but any of the Sphero models will work with the iOS or Android app – including the much cheaper Sphero Mini, or the Star Wars droids including BB-8, BB-9E, and R2-D2.

There are two versions of the hardware: the original Sphero SPRK and the newer Sphero SPRK+, which has a more scratch-resistant shell.

It’s this app that uses a Scratch-like coding environment that lets you set simple commands to roll, flip, spin or change the colour of the ball. You can dig into the C-based OVAL programming language if you’re more of an advanced programmer but the block-based coding is easy enough for coding beginners.

The latest version (using Sphero Edu) lets you program Sphero robots with JavaScript, the most common web programming language in the world.

You drag-&-drop actions (colour, spin, move, change angle of direction, speed, etc) in simple blocks from the app’s menu, and these commands lock together in whatever order you decide. Changing that order is as easy as moving the blocks around the screen.

There are 12 sample programs to get you started, and you can change these to quickly get the hang of things. It's a lot of fun, and a brilliant starter for kids who like to keep moving while learning.

Read our full Sphero SPRK+ review.

Kano Computer Kit

Kano Computer Kit

The Kano Computer Kit is similar enough to the Piper Kit, in that it's another chance for kids to construct their own computer powered by a Raspberry Pi.

The Kano kit puts less emphasis on assembling the hardware however, which is a quick, simple process, and instead keeps the focus firmly on the software side. It also has the benefit of including a keyboard with a built-in touchpad (instead of a mouse) - though the cost is there's no display included, so you'll need to use the included HDMI cable to connect to a monitor.

Once you get the stylish package up and running, there's a variety of different coding games and lessons included in the software, a number of which are built into a larger RPG-esque videogame that lets kids design their own character who then explores the world inside the computer, learning how it all works along the way.

You can use the coding lessons to create art, music, simple games like Pong or Snake, or creations within Minecraft. Kano includes both lessons built around visual block coding, and some utilising real languages like Python and Javascript, along with some Terminal commands.

Alongside the base Kano kit, you can also buy a DIY screen kit that lets you build a screen and learn exactly how they work and a Pixel Kit that lets you use your coding skills to create interactive light displays.

littleBits Droid Inventor Kit

littleBits Droid Inventor Kit

We loved the littleBits Droid Inventor Kit when it was first released, giving kids (and, ahem, big kids) the chance to build their very own R2 droid, customise it with different designs and components, and send it out into the world, controlled entirely by their smartphone.

Now it's even better, thanks to a post-release update that adds in support for coding, so the Droid Inventor Kit is now just as useful for teaching programming skills as it originally was for building an understanding of engineering and electronics.

The drag-and-drop coding system is built on Scratch Blocks, with colour-coded blocks for the droid's various functions, to make it as easy as possible to program actions in and watch as the little droid carries them out.

There's also a selection of missions dedicated to coding to add a touch of gamification, encouraging kids to try out the coding mode and walking them through the basics, before leaving them free to explore the functionality to their heart's content.

Beyond the coding elements, the app includes detailed instructions on assembling the droid in its various configurations, which include the ability to navigate the world on its own, rotate its head, record secret messages, draw, and even navigate with the wave of a hand in the 'Force Drive' mode.

As for customisation, the set includes a selection of colourful stickers to decorate the body, but the whole kit is also designed so that you can build the droid out of almost anything - a milk carton for a body, a flower pot for a head, or just about anything else a kid can dream up.

Anki Cozmo

Anki Cozmo

Unlike some of the others toys and games on this list, the Anki Cozmo isn't primarily designed with coding in mind. First and foremost, it's a charming, fun, interactive robot, but that appeal could make it a great tool for engaging kids in its coding mini-games.

Cozmo is a personality-packed robot that fits in the palm of your hand and can interact with people, the environment, and a set of three touch-sensitive LED blocks included in the set. He can move and stack the blocks, play a series of games with them, and show off a wide range of animations - and even use his built-in camera to recognise people's faces.

Most interesting for our purpose is the Code Lab feature, which lets you string together a series of movements, actions, and animations to code Cozmo's behaviour.

It uses a simple, colourful block coding system to teach kids the basic logic of coding, with blocks for actions, movements, and animations; blocks for functions like looping; and other blocks for triggers like seeing a face he recognises, or finding a block near him.

It's simple stuff, but there's obviously room to expand it almost endlessly and build up to very complex behaviours - all acted out in front of you by the endlessly charming Cozmo.

If you want to find out more, you can see him in action in our hands-on video.

Piper Computer Kit

Piper Computer Kit

While coding is all software, knowing the hardware is an important skill that not many young people get to grips with. Making their own computer from a kit is a fun, hands-on way for kids to understand the parts of a computer. 

The Raspberry Pi-based Piper Computer Kit requires kids to build their first computer using a real engineering blueprint. Expect it to take a couple of hours, so it's not a straight-out-of-the-box experience. And it's not meant to be easy. That's the point.

Completing all the Piper hardware missions takes 8-10 hours, and it's recommended for children aged 8-12.

Once constructed kids can then learn engineering, programming and design using 3D design platform Minecraft, already a favourite with children. Piper believes that complex engineering theory and diagrams are easily understood by kids when presented in a Minecraft world.

Coding in Scratch (included) or Python is possible, too. They can also create anything they could with a regular computer: program a game, edit a document, surf the web, and (using LibreOffice) even create documents, presentations and spreadsheets.

The Piper Computer Kit comes with a mouse, rechargeable battery, speaker, and 7-inch 800-x-480 LCD display. You may want to add a keyboard for coding purposes.

The Piper PC is a Raspberry Pi 3, with a 1.2GHz quad-core processor, 1GB of system memory, 802.11n Wi-Fi, Bluetooth 4.1, an Ethernet port, four USB ports, one HDMI port (so it can be connected to a TV), a microphone/headphone  jack, and a MicroSD card slot for the operating system and programs. The board  has 40 GPIO pins, camera and display interfaces.

The Kit isn't cheap at £300/$300, but you're paying for the whole kit construction build-your-own-PC ethos behind Piper. This is not just to teach coding but building and electronics too.

Osmo Coding games

Osmo Coding games

One of our favourite and innovative kids’ games for the iPad is Osmo, which uses a fun Montessori-like method to teach via physical objects – not normally what you’d expect from an iPad game.

Osmo consists of a Base unit that you slot the iPad in portrait mode, and a little plastic mirror cap that fits over the camera so the iPad can ‘see’ what’s happening on the table below. This “Reflective AI technology” allows kids to play with physical items in the real world while still benefiting from the power of iPad technology.

There are several wonderful Osmo games, which we really recommend you take a look at; read our full Osmo for iPad review. The latest set of games is Osmo Coding, which are designed to teach coding to kids aged 5-12.

Osmo Coding uses the brilliantly simple Osmo game system. Osmo’s team is made up of former Google software engineers, so you can be sure that these guys know what they’re doing when teaching to code.

There are three Osmo coding games.

Coding Awbie and Coding Duo use simple blocks that magnetically snap together in front of an iPad and are interpreted as instructions that guide the game’s cute character Awbie on a journey to finding strawberries in a magical world of forests and beaches.

Each physical code block contains a unique command (walk, change direction, jump, grab) that can be sequenced with other commands. Combined with parameter, loop, and boolean (if-then) blocks, kids can easily make complex sequences for Awbie to follow.

Players can see the effects of the coding blocks in real time before running the actions. It’s like (visual programming language) Scratch meets Lego.

Coding Jam works in a very similar way and lets kids code to create music. Osmo Coding Jam costs £59.99/$59.99.

All the Osmo Coding games require at least the £69.99/$69.99 Osmo Starter Kit, which includes the Base unit. Check around on Amazon, though, as sometimes the other Osmo kits, which include the Base unit, are cheaper and include more great games. For example we found the Osmo Creative Kit on sale for under £60.

Wonder Workshop Dash

Wonder Workshop Dash

Wonder Workshop’s Dash is aimed at children aged 6-11. It’s a six-inch-tall stack of spheres that scoots around on three wheel under each part of its body – with a head on top that can move independently. It is covered with lights that you can control, and it can see, hear and speak.

Control is performed through a series of five apps for iOS or Android. All of the apps include tutorials to help your children (and you) learn how to build increasingly complex programs, before setting you free to code away.

A physical toy helps children build a better idea of what coding is for, and who doesn't like cute robots?

A real robot also offers some neat science lessons along the way. For example, Dash doesn't actually turn his wheels, he just spins one faster than the other. Your child can set the speeds for each wheel individually, getting them to understand the physics behind this through play and experimentation.

Dash costs a not-insignificant £150/US$150 from Apple - though you can usually get it from at least a tenner less from Amazon. You can also get a bundle with the smaller Dot robot for £199.99/$199.99 from Amazon.

For older or more accomplished coders Wonder has another robot called Cue, which can use more complex code, but costs a little more.

Read our full Wonder Workshop Dash review.

Cubetto

Cubetto

Cubetto, from Primo Toys, is a Montessori-approved toy that is aimed at teaching the basics of computer programming to pre-school or early-years kids through hands-on play.

Even modular programming languages such as Scratch are way too complex for kids who can hardly read, so Cubetto brings the concept and possibilities of programming into the real world.

The Cubetto Playset takes the form of a wooden robot that, like ET, needs to go home.

There’s the Cubetto robot box, an interface board, 16 action blocks that are used for the “programming”, a world map, story book and instruction manual (for parents or teachers).

There are four types of block: Forward, Left, Right and Function. Place the blocks on the board to tell Cubetto where to go. Hit the blue button and the Cubetto robot follows these programmed instructions from the player.

The Function block is used to teach the notion of loops and subroutines. Kids should also grasp otherwise complex concepts such as algorithms, the queue, debugging, and recursions.

It’s Montessori approved because it’s very hands-on and made of wood (Linden plywood to be precise), so is tactile to encourage learning. Best of all, there’s no distracting screen.

Cubetto has been designed to be most useful for children aged 3-6, so uses child-friendly language in the stories, and machine-washable maps.

Teachers will be interested in the bank of Cubetto activities (Build a Jetpack, Dance Around a Tree, Create and Navigate a Maze, etc), lesson plans, and other resources to help inspire coding in their classroom.

Bitsbox

Bitsbox

Bitsbox uses simple coding commands to create cool apps. Kids learn to program by copying and modifying apps and then downloading them to their smartphone or tablet. Every month Bitsbox sends out to subscribers a fun package of programming materials in a box.

In each box there’s a full-colour booklet with between 12 and 20 apps to code, alongside high-quality extras such as trading cards, posters, stickers, non-toxic tattoos and other goodies – even a mystery toy. Kids type in these lines of code on Bitsbox's virtual tablet on its website. As they type the code they see the app coming to life before their eyes, and once they finish they can download the app on their smartphones/tablets and share it with friends and family. 

Apps range from simple two-liners to full-on games with graphics and sound effects. The language that kids are typing is simple Javascript/HTML5.  

The idea behind Bitsbox is that kids should actually learn how to write code. This compares to using a visual modular language such as Scratch, which teaches "coding logic" but not how to write in the coding language. 

As such it’s a partner to Scratch, or maybe next step for kids who want to get deeper into coding.

Coding logic has often been prioritised over actual coding because many educators feel that it’s too hard for young kids (aged 6-12) to learn such languages. Bitsbox disagrees. Just as young kids are better equipped to learn foreign languages or how to read music than the older students, there is no reason why the language of computers should be any different, says the company.

While it’s possible to download the digital book for a lower price, kids will get more excited and (literally) stick with the program if they receive the full $30 box each month.

STEM – Robot Mouse Activity Set

STEM – Robot Mouse Activity Set

Aimed squarely at primary school children in science, technology, engineering and maths lessons the Robot Mouse Kit is a cute way to develop coding enthusiasm and critical thinking skills from a young age.

Kids program the battery-driven mouse to find the cheese, and this can be solo or a group game. Through game play it provides a basic introduction to the concepts of coding, including Step Coding and Logic.

The flexible kit comes with 16 plastic base pieces, 22 plastic maze walls, 3 tunnel pieces, 30 double sided coding cards, 20 Sequence cards to plot and track the mouse’s path to the cheese, and a Multilingual activity guide.

There are two coding sets available; the activity set that is complete with the green track or the individual mouse, which comes with coding cards so you can use it on the floor.

ThinkFun Robot Turtles Board Game

ThinkFun Robot Turtles Board Game

Another batteries-not-required coding board game is Robot Turtles, which teaches programming fundamentals to kids ages 4 and up.

Inspired by the Logo programming language, the game lets kids write programs with playing cards. Players dictate the movements of their Robot Turtle tokens on a game board by playing basic Code Cards: Forward, Left and Right. When a player's Robot Turtle reaches a jewel they win. If they make a mistake, they can use a Bug Card to undo a move.

The game has Beginner to Advanced levels – as the players advance they encounter obstacles such as Ice Walls, and use more complex Code Cards (like lasers to melt the walls).

Two to five players can play at once and everyone who gets the Robot Jewel wins.