Should You Learn to Code?

We’re at an interesting crossroads in the Learn to Code movement. On one hand, we have huge endeavors like the CS4All initiative, which wants “all NYC public school students (to) learn computer science”. On the other,  the rise of No Code tools like Webflow and AirTable allow non-programmers to build fully-featured applications, tools, and websites without any coding knowledge.

Is programming the new literacy? Or is all the money, energy, and legislative time spent on this a huge waste? Most pro arguments here boil down to economic data, high developer salaries, and access to opportunity in an quickly changing world, versus the con side’s fears of commoditization and developer over-saturation. At the end of the day, the numbers here don’t matter, and I’ll spare you the specifics, because they miss the point.

You should learn to program, because programming fundamentally changes the way you’ll approach and attack problems, regardless of the domain. Whether it’s a web application, a complicated travel plan, or a full-blown life crisis, programming will help you effectively tackle problems big and small.

Why? At it’s core, programming is about taking problems, breaking them down into smaller pieces, and continuing to break them down until they become solvable. Take the Fitbit integration we built as part of Healthie (the startup I work on). It’s a relatively complex feature that involves regularly authenticating with Fitbit, pulling down a wide range of data, and converting it into the data format we use at Healthie. This feature, when broken down, goes from a wide-ranging description into a couple dozen simple functions, that someone with a few days of programming experience could probably understand.

This is a calming way to go through life. The same way of thinking suddenly makes big, scary problems simpler and more approachable. What used to sound overwhelming and impossible becomes an organized path with individual steps and clear progress points.

The hard (and valuable) part of programming isn’t the art of writing lines of code, but the art of breaking problems down. Writing lines of code is one way to do it, but likely not the only way, and maybe not even the best way. As this becomes clearer to educators and legislators, I expect teaching basic HTML to go away, in favor of a more wholistic focus on problem solving, even if it doesn’t involve a computer.

Thoughts or Comments? Let me know on Twitter

If you’d like to get my future posts, right in your inbox, please subscribe at this link