Please DO Learn Coding
There’s an idea that’s been gaining ground in the tech community lately: Everyone should learn to code. But here’s the problem with that idea: Coding is not the new literacy. We…
Source: Please don’t learn to code | TechCrunch
An article has been making its way around the internet from TechCrunch, asking people to not learn to code. As the author claims to be a coder, it’s difficult to understand how he’s so wildly missed the mark. The author provides a jumbled mess of anti-coding camp sentiment, anger at random dignitaries, pessimism, and confusing learning to code with solution-focused thinking. It isn’t until mid article that his point begins to be made, which appears to be that being a software engineer is hard, where he believes it’s hard to find a job, especially for a self-educated one.
Let’s be clear: coding isn’t the same thing as being a software engineer.
Why is that such an important distinction? Because it demonstrates the fundamental misunderstanding that the author is under the impression of. Let’s take a look at coding.
What is coding?
Learning to code isn’t just about getting a job as a software engineer. It’s about having a toolset, which includes the ability to think algorithmically. This toolset can be useful in any job, in almost any field. A business owner that can handle their own website has a leg up and can save hundreds of dollars for information that they can learn for free online.
Software engineers are also not the only form of coders. There’s a great demand for web developers, which web design, in my opinion, is easier to keep up with than new programming languages, as usually each new released “language” is simply an enhancement of an older one (see the various iterations of HTML/CSS.)
This toolset has to do with truly understanding computers and other digital electronics, which permeate our entire world. There’s a reason that people have starting picking up the phrase “code literacy”, because this is a skill that’s becoming more and more useful, with projections that it will soon become a necessary skill for many jobs outside of the traditional programming paradigm.
“Code literacy is a skill that’s becoming more useful, with projections that it will soon become a necessary skill for many non-programming jobs.”
Code literacy is the concept that computers and the digital world form a new basis for language, not just new languages. With the ability to read comes the ability to write, and so the ability to use computers should come with the ability to program them. Those that are code literate have an advantage, a method of interacting with computers that transcends general user interface interaction.
Code literacy is understanding the basis of these languages, not necessarily being an elite programmer. Just as basic literacy is not measured at the standards of university level grammar classes, code literacy is also measuring basic proficiency. Nor does it mean being multilingual, just as standard literacy doesn’t. Simply gaining the understanding of how to use one computer language to create and call functions, understanding arrays, and once again – algorithmic thinking, is enough to be considered code literate. If you can write a quick tool to perform a basic task (above and beyond “Hello World”), you’re likely code literate.
Code literacy is also not that great of an investiture of time or effort. My seven year old has already begun playing with scripts, and she’s certainly not the youngest code literate person out there. The fact of the matter is that basic code literacy can be picked up by spending just an hour or so a week on completely free online courses.
Please, please DO learn to code. I don’t know what possessed the author of the original article to lash out at a well intended, justified movement with a frankly pessimistic view on both coding and life, but please don’t let it stop you from taking up code literacy.
In addition, it’s an extremely beneficial tool for children to learn. From learning to interact on a more fundamental level with the multitude of robotics toys that are coming out to having a possible future designing robotics software, coding is a skill that can follow you for life. I’ll leave you with this quote from Dan Crow:
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.