Read, Write, Code — Why Computer Science Should be Required in High School
By Jeremy Keeshin, co-founder CodeHS
Do you use a computer?
I think now the question isn’t if you use a computer—but rather, how many computers you use. The computer or phone you are reading this on, the computer you use for work, or school, the computers in your car, the computers that go into making your favorite movie, or favorite website, or the computers used in a hospital or medical research. Computers are just a part of everyday life now.
Coding is the new Foundational Skill
We expect students to graduate high school and know how to read and write — those are some of the staples of a good education. Reading and writing are skills you use every day, and they are foundational skills. By foundational skills I mean that these are skills that enable lots of other things to be done. You learn to read and write—not to become a professional reader or professional writer necessarily—but because you use reading and writing every day. In 2014 the same is true of coding. We use computers and technology every day, we need to use the problem solving and logical processes that you learn when you learn coding. Coding lets you be a creator in a technological world — it’s the first stepping stone to make your own website, or app, or company.
Coding Should Not Be a Skill For the Elite
Rewind just a few hundred years, and reading and writing were skills for the elite. Literacy was a privilege reserved for the few, but the inventions of the printing press and later the Industrial Revolution made paper and books more affordable and helped increase literacy. Literacy was—and still is—a skill that opens many doors, but lack of access made these opportunities unavailable to most people.
The parallels to coding education today are uncanny. A major problem in computer science education today is access. Access has several components, including access to the technology, access to the resources, and access to the instruction and support. The new technological revolution has made computers and the internet more affordable and will help increase technological literacy.
Affordable and increased access to paper and books paved the way for reading and writing literacy, and today affordable and increased access to the computers and the internet are paving the way for a revolution in coding literacy.
The internet and computers are the paper
and books of the coming revolution in coding literacy.
If you look at which high schools offer computer science classes, you’ll find they are the top schools. And there is a reason top schools that don’t have computer science are rushing to create those courses: they are seeing the future.
Take a look at literacy rates by country. There’s a strong correlation between educational opportunity and quality of life. Taking away educational access has been a technique used to stifle the development of countries. Coding literacy is the next frontier. We’ll see greater development and more opportunity for countries that embrace coding literacy.
There’s many reasons that political leaders and celebrities are on the move for computer science education. State by state we are seeing unheard of bipartisan support to change legislation around computer science education. Arkansas even required all high schools to teach computer science.  Here are some of the main reasons.
Coding Applies Everywhere
Advocating computer science education as a foundational skill does not mean everyone should be a professional programmer. In the same vein, advocating reading and writing literacy does not mean you need to be a professional reader—but it means you’ll need to know how to read and write whether that is responding to emails or working with clients. Take a look at any industry and you’ll find how it is being revolutionized by computers. Computers are enabling communications, research and advances that simply wouldn’t be possible without them. I hear an astounding application of technology daily. There’s software for whatever you might be doing, and we’ll be writing a lot more software and using more software in the future. Coding lets NASA send a rover to Mars. Coding lets us build self-driving cars. Coding lets us draw that first down line in football games. Coding lets us make amazing Pixar movies. The list goes on and on across every industry you can imagine.
Coding is Problem Solving
One of the most critical skills you learn when you learn to code is how to debug. Debugging is a step by step process that you go through to discover and fix problems in your code. It requires creating hypotheses, testing hypotheses, and using logical thinking to fix something that is broken. This is a skill that won’t go out of date and is now more useful than ever. Learning coding and learning debugging moves you from thinking “This is broken,” to “How can I fix that?” Debugging and programming demystify technology — you can now reason about how things are built or how you might build them.
Coding Lets You Make Things
With just a computer and the ability create software you can build projects that apply to your interest. The barrier to entry is low. Computer science is the definition of a skill that is both theoretical and applied. No longer is the question, “How can I use this?” as students walk out of a classroom building a game, app, or website that they envisioned. The question is rather, “How can I build this?” Coding can help reinvigorate other subjects as schools and teachers are finding creative ways to use coding as an additional medium to teach math, science, and art. Students can run biology or chemistry simulations, apply algebra concepts, or creatively express themselves.
Coding Enables Creativity
While programming is a skill that promotes and encourages logical thinking, it also encourages creativity. The analogy of a blank canvas is apropos here — you have a blank code editor and with just a few commands you can create, build and share art. You can manipulate sounds, images, and create new interactive experiences.
Access to Coding is Access to Jobs, and Access to the Future
The future will be written in code.
The future will be written in code. It will. If you look at the current state of things and the trends you’ll see that computer science is only growing in importance.
There will soon be 1,000,000 jobs in computer science and related fields in the United States that can’t be filled, since we aren’t educating our students enough. You can add to that that computer science is the highest paid college degree, but it’s such an appealing skillset that you can get a great job even without the degree.
Contrast that with the status quo—most schools just don’t have computer science education. The latest stats are that 5% of US high schools taught the AP Computer Science class and there is a 20x difference in students taking AP Computer Science and AP US History. In most states, most students don’t have access to these classes. In 2014, 27 states had 6 or fewer black students taking the AP Computer Science exam.
Most Students Who Take a Coding Class Will Take it in School
You heard it here first. Or if it wasn’t here first, you’re hearing another source of that prediction. When I talk about the future of education and online education, I like to say: If education was as easy as building free curriculum tools, then it would all be solved already. There’s so much great material online to help teach you anything. But most students aren’t going there.
This means if we want students to get a computer science education in high schools we should make a shift in our thinking and require it. The legislation is moving, states are starting to count computer science for credit, and the President endorsed computer science education. Arkansas just required it. And if Arkansas just required it, why isn’t your state requiring it?
If Arkansas just required it, why isn’t your state requiring it?
I want to make it happen. What can I do?
If you’re inspired to learn yourself head over to CodeHS and you can sign up and learn. If you are a teacher or student you can contact us at email@example.com to help bring a class to your school. We offer web-based curriculum for intro CS and AP Java courses, as well as great teacher tools and teacher training.
Jeremy Keeshin is the co-founder of CodeHS, a program for teaching coding to beginners with a focus on working with high schools. You can get started today or sign up your school at codehs.com.