• Share

Program or Perish: Why Everyone Should Learn to Code

By:  Richard Sine Mar 13, 2014
Code

An explosion in web and mobile technology—combined with a tight job market—has led to a surge of interest in learning to program. At the forefront of this movement is Codecademy, which says “many millions” of students have tried out its free online courses.

Founded in 2011 by two college students, Codecademy attracted $10 million in venture funding when it was just 10 months old. Here, Codecademy co-founder Zach Sims explains why everyone—not just professional programmers—should learn to code.

Each page of your website states your mission, 'teaching the world to code.' Why is that important?

When we started the company in 2011, my co-founder and I were both students at Columbia. We noticed a lot of people who were graduating were struggling to find jobs. There were a rapidly shifting set of skills required for people to be prepared in the 21st century economy, and there was really no educational institution fulfilling those needs. So we thought that teaching people relevant skills that could help anyone get employed was one of the most important things we could do.

Who has been taking Codecademy courses, and why?

Many millions of people, and we’ve had students from pretty much every country in the world. Some are looking to become fluent in programming, or understanding what the technology is—we call that technical literacy. Some are looking for a job, and others have a project in mind they’re looking to build. Each of these groups are a separate demographic we try to serve. More than 65 percent of them are not in the U.S. It’s much more diverse than you would expect as compared to a college-level computer science class. In colleges across the U.S., about 18 percent of computer science grads are female; our students are 36 percent female. We’ve been trying to make coding access to everyone, and that is changing the typical profile of the population that’s learning to program.

Man using computer

A Cadecademy employee at the company's New York office.

There’s a big demand for programmers. How can someone know if they have an aptitude for coding?

We think anyone is capable of programming. One thing that has blocked its popularity in past is people assume you have to be really good in science or math, but that’s not necessarily true. We encourage people just to try and get basic experience in order to figure out if it’s for them, instead of assuming programmers to fit a certain profile.

What about people who don’t plan to become programmers? Should they also learn to code?

Programming is changing the way almost every industry works. Look at farming, for example. Farmers are using algorithms to determine when and where to plant crops and water crops. Look at publishing. Editors are using algorithms to help decide what news articles should appear on the cover of a magazine or homepage of a website. And finance has become much more algorithm-driven as well. We’re preparing people for a rapidly changing world, one in which nearly everything is affected by technology.

When you say technology is transforming industries, are you talking about the impact of companies like Apple, Amazon and Netflix? Industries such as publishing, entertainment and retail are being shaken up not by people who were trained in these fields, but by people who know how to build new technological platforms for delivering goods and services.

Zach Sims

Zach Sims, Codecademy co-founder

Exactly. Every industry is changing based on technology—whether they like it or not.


But learning to code is such hard work. If you want to build a website, app or game, there are tools that allow you to do it now without writing a line of code.

Beyond creating things, coding is about algorithms and algorithmic thinking. It’s a different way to think, and it adds to the way you can solve problems. There were some studies done awhile ago at MIT that found that kids who learned to program became better spellers.

So coding can help non-coders do better at their jobs?

You can use programming skills to benefit anything you’re working on. There are plenty of examples of this in the case study section of our site. Scientists are using coding to analyze data sets, for example. And take journalism: Journalists are using code to analyze data and to build scripts to pull data from the internet. As interactive features like The New York TimesSnow Fall become more popular, papers are having a hard time finding journalists who are able to work with developers on stories like this. Stories are gaining more visual flair, they have to work on different platforms, so it’s more important for people how to build these kinds of stories.

What’s the best language to start with?

We suggest that people start with things that are visual, so they can see what they’ve done. HTML, CSS, JavaScript, you can use these languages to build simple websites. Then you can branch out to languages that let you do more complex tasks such as making apps and games. But what language you learn will also depend on your situation. If you’re a scientist, for example, you might learn a statistical language like SPSS or R. If you want to process data or explore databases, there’s Ruby and Python. There are a lot of concepts that are similar across languages, such as loops and variables.

Your courses are self-paced. How do you help students stick with them?

We designed the courses so there is continuous reinforcement. You can see what you’re building as you build it, and at the end there is something you can share with others. It’s about building something, learning through discovery and experimentation. Within a couple of hours you can build a simple project like a website.

You dropped out of Columbia your junior year to focus on Codecademy. Now you’re 23. Any regrets?

No. It’s pretty hard to argue with changing the world for millions of people.