Why every child should learn to code
Will every job involve programming? No. But it is crucial we equip future generations to think about the world in a new way
Students learn to write computer code in Royal Society of Arts at the launch of the ‘Year of Code’ campaign. Photograph: Oli Scarff/Getty Images
Next week my daughters turn five. They are growing up in a radically different world to the one I knew when I was a kid. I was one of the generation inspired by the first wave of home computers: I taught myself to program on a ZX81, then a BBC Micro. Those early computers were glacially slow, had almost no storage and you had to write code to get them to do even the simplest task.
Today, I have a computer in my pocket that is more than 100,000 times faster and has 10,000,000 times more memory than a ZX81. It is connected to every other computer on the planet and can access virtually every piece of human knowledge ever created, nearly instantaneously. The pace of change in computing is extraordinary.
Britain has a proud history of excellence in computing. All modern computers are based on the theoretical and practical work of Alan Turing, one of the true geniuses of the 20th century. The home-computer boom of the 1980s set many of us on a course that would see Brits helping run major technology companies across the world. The world wide web was created by Sir Tim Berners-Lee.
Somewhere in the mid 1990s, we lost our way. The education system largely ignored the explosive growth of computing and the internet, instead focusing on teaching students how to write Word documents. Instead of a nation of builders and entrepreneurs, we were content for our children to become also-rans on the technology stage.
We at the Year of Code are going to help change that. The new computing curriculum starts this September, and it puts coding at the heart of IT education. Coding is the art of telling a computer how to perform complex tasks. Once you know how to code, you can create virtual worlds within the computer where the only limit on what is possible is your imagination. We want to put this power into the hands and hearts of every child in Britain.
Anyone can learn to code. In a few hours you can pick up the basic skills and in a few weeks you will be able to build useful applications and websites.
In the last few years, the UK has finally woken up to the importance of coding. Organisations like Young Rewired State, Code Club and Code Academy have led the way, helping young people learn these key skills.
Why is it so vital that we teach our children to code? We are already living in a world dominated by software. Your telephone calls go over software-controlled networks; your television is delivered over the internet; people don’t buy maps anymore, they use the web; we all shop online. The next generation’s world will be even more online and digital. Soon, your house will be controlled with software, some of your medical care will be delivered over the web and your car may even drive itself.
Software is the language of our world
Software is becoming a critical layer of all our lives. It is the language of our world. In the future, not knowing the language of computers will be as challenging as being illiterate or innumerate are today.
Will every job in the future involve programming? No. But it is still crucial that every child learns to code.
This is not primarily about equipping the next generation to work as software engineers, it is about promoting computational thinking. Computational thinking is how software engineers solve problems. It combines mathematics, logic and algorithms, and teaches you a new way to think about the world.
Computational thinking teaches you how to tackle large problems by breaking them down into a sequence of smaller, more manageable problems. It allows you to tackle complex problems in efficient ways that operate at huge scale. It involves creating models of the real world with a suitable level of abstraction, and focus on the most pertinent aspects. It helps you go from specific solutions to general ones.
The applications of this approach stretch beyond writing software. Fields as diverse as mechanical engineering, fluid mechanics, physics, biology, archeology and music are applying the computational approach. In business we are beginning to understand that markets often follow rules that can be discerned using computational analysis.
Computational thinking is a skill that everyone should learn. Even if you never become a professional software engineer, you will benefit from knowing how to think this way. It will help you understand and master technology of all sorts and solve problems in almost any discipline.
UK coding culture on the rise
The Year of Code is an amazing initiative and one I am very proud to be supporting. It brings together computer scientists, entrepreneurs, business leaders and political thinkers to promote the education of our children for the world to come. The aim is to ensure that every British school child learns to code; not in a decade from now, but next school year. The charity will help train teachers on the new curriculum and promote the growth of a coding culture in the UK.
The diversity of the project’s leadership and supporters is a great strength. The technology entrepreneur community strongly supports this effort as you can see from the list of advisers on the website. We are people with decades of deep technical experience, who understand the challenge involved in learning a new approach. We have members who have been pushing for coding in schools for years as well as new converts to the cause. This breadth stands us in good stead to accomplish a huge amount this year.
We will help teach coding to every school child in the land. We will be teaching coding to anyone, of any age, who wants to learn. We are investing in Britain’s future. Will you join us?
Dr Dan Crow is chief technology officer of Songkick, visiting professor of computer science at Leeds University and adviser to the Year of Code
© 2014 Guardian News and Media Limited or its affiliated companies. All rights reserved.