Skip to content
Swizec Teller - a geek with a hatswizec.com

Everyone should learn [about] programming

What use have an artist, a baker, a winemaker, a firefighter and a brewer with programming? None.

A brewer

Yet.

An article surfaced on HackerNews yesterday arguing that Programming is the new High School Diploma, the main argument being two facts:

  1. Computers are everywhere
  2. Automation is pushing out middle-tier jobs

The basic idea is really simple - in the not very distant future programming will and should be as important as basic literacy is today. Not just basic computer literacy, but programming in the sense of combining and extending apps in novel ways to fit your problem area.

There are a lot of professions for which automation is almost impossible to imagine - an artist, a firefighter, a winemaker, brewer, baker; the list goes on and on. In fact this was the top voted rebuttal of the whole story. A lot of professions need so much human touch it is inconceivable they would ever need programming.

Someone else can do the coding

And if parts of their jobs do become automated, they still won't need programming because there will be special people to program special tools for these professions and just show them how they're used.

Washington, D.C. firefighter

All well and good, but that's missing the point entirely.

There is no need for an artist, or a baker, or anyone working in meatspace to be a good programmer. They have no need for pointer arithmetic, functional programming, P=NP or knowing javascript and python's list comprehensions.

They just don't.

Somebody else can do all that stuff - an actual expert. But how much does a programmer sitting at home, watching code and cat pictures all day, know about the problems of a baker or an artist? Or about fighting fires?

Problem areas

You can't solve problems you don't know exist!

Someone with problems who doesn't know of a whole field of solutions can't ask for help either.

And so we reach an impasse. On the one hand you have an industry full of people so hungry for problems they create better and better ways to share ever more boring stuff, and on the other hand you have ... the other ~70% of the population drowning in real, hard, solvable problems.

While you can check foursquare to see where your friends are, there are firefighters who would (probably?) love nothing more than a real-time map of where all their buddies are in a building. And what are the best and brightest of the world doing? Nothing much, I heard there's a meme making rounds about something or another.

High school is about broadness and giving pupils a little bit of everything. Some history to understand the problems with large-scale ethnicism, a little bit of biology to help you talk to the doctor, a dash of this and that. All in all, none of us become experts in every field we study in high school, but studying them gives us a better understanding of the world.

A chef

And yet high school deprives us of even the simplest knowledge of a field touching everything in our lives.

To innovate, to even begin to really use this amazing tool, we need to give the general populace the ability to begin the process of automation - that spark of Hey, this is kind of repetitive, I wonder if a computer could do it.

Chances are it could.

In fact, we know a computer can solve any problem we consider solvable ... even subsets of those that aren't solvable. But you first need someone who knows how to actually solve a problem.

That's why most problems programmers solve are those other programmers have. It's like an echo chamber out there, nothing but better and quicker ways to make development easier. These are then used to make development even easier and suddenly it's become impossible to keep up with the world of computing.

Most other industries innovate much more slowly. Most of them can't solve their own problems and they don't even realize a solution exists because they don't realize they have a problem. The greatest handbrake on innovation is a worker with too narrow a worldview to understand their job could be made better.

What you can do?

Because changing how high school works is hard, I have a suggestion for something you can do right now! Only needs three steps too

  1. Find a nonprogrammer friend
  2. Take them out for a beer
  3. Teach them about programming

Give them the bug of automation. Do it with passion. Do it well. When they start looking at the world in terms of Hmm ... I wonder how this could be made better, easier, more interesting. _They will start coming back with real problems. Problems out of their solution scope, but something _you can work on.

And hey, startup opportunity! You now have somebody with a real problem looking for a real solution! Hooray.

Enhanced by Zemanta

Did you enjoy this article?

Published on February 1st, 2012 in Uncategorized

Learned something new?
Want to become a high value JavaScript expert?

Here's how it works 👇

Leave your email and I'll send you an Interactive Modern JavaScript Cheatsheet 📖right away. After that you'll get thoughtfully written emails every week about React, JavaScript, and your career. Lessons learned over my 20 years in the industry working with companies ranging from tiny startups to Fortune5 behemoths.

Start with an interactive cheatsheet 📖

Then get thoughtful letters 💌 on mindsets, tactics, and technical skills for your career.

"Man, love your simple writing! Yours is the only email I open from marketers and only blog that I give a fuck to read & scroll till the end. And wow always take away lessons with me. Inspiring! And very relatable. 👌"

~ Ashish Kumar

Join over 10,000 engineers just like you already improving their careers with my letters, workshops, courses, and talks. ✌️

Have a burning question that you think I can answer? I don't have all of the answers, but I have some! Hit me up on twitter or book a 30min ama for in-depth help.

Ready to Stop copy pasting D3 examples and create data visualizations of your own?  Learn how to build scalable dataviz components your whole team can understand with React for Data Visualization

Curious about Serverless and the modern backend? Check out Serverless Handbook, modern backend for the frontend engineer.

Ready to learn how it all fits together and build a modern webapp from scratch? Learn how to launch a webapp and make your first 💰 on the side with ServerlessReact.Dev

Want to brush up on your modern JavaScript syntax? Check out my interactive cheatsheet: es6cheatsheet.com

By the way, just in case no one has told you it yet today: I love and appreciate you for who you are ❤️