Skip to content

Instantly share code, notes, and snippets.

@elskwid
Last active August 29, 2015 14:05
Show Gist options
  • Save elskwid/ad244b5b68ed351e232f to your computer and use it in GitHub Desktop.
Save elskwid/ad244b5b68ed351e232f to your computer and use it in GitHub Desktop.
Why Programming?

An article I was asked to write for the UNR Extended Studies newletter in support of this class: Introduction to Programming

Why Programming?

Why programming? Why learn programming?

"They say that in Thailand there is a different Pad Thai recipe for every cook." — Alton Brown[1]

Like Pad Thai recipes, every programmer has their own answer to "why programming?" and that answer changes over time. I've always enjoyed solving problems. The rush that comes with the solution is hard to beat. The more challenging the problem, the bigger the reward. Take a gnarly issue, break it down, work it through, repeat for days, and then figure it out. Do you feel that? Cheer! Dance!

Years ago I would have said that programming is "a way to make a decent living". That still holds true, perhaps even more now. The jobs in this field pay well relative to other industries. The median annual income for programmers in 2012 was $74,280 compared to $34,750 for all workers[2]. Anecdotally, I know of several unfilled positions in our area right now. Unfilled because the programmers in Washoe County that could do the job are already spoken for — and happy. Did you catch that? Well paid, busy, and happy. Rough life, right?

If we had discussed programming during the middle years of my career-to-date, I'd probably mention that programming "gives me lots of problems to solve". Again, a statement that was true then and true today. There's no shortage of computer-related problems that need a solution (see the unfilled jobs I mentioned above). Even if you never wrote a line of code outside your job, the knowledge and efficiency you gain is invaluable.

Much of your world is programmed. Douglas Rushkoff has this to say in the introduction to Program or be Programmed: "In the emerging, highly programmed landscape ahead, you will either create the software or you will be the software. It's really that simple: Program, or be programmed. Choose the former, and you gain access to the control panel of civilization. Choose the latter, and it could be the last real choice you get to make."[3]

When I talk to young students about the role programming has in their lives, I ask them to list the things they used today. The list includes things like a cell phone, Facebook, car, bus, computer/laptop, shoes, and microwave. We check computer off right away. Cell phones are the next to go. All those apps on your phone? Programmed by someone somewhere. Then Facebook, it's programmed to encourage you to like a post, share a photo, come back to the site, stay on the site, and come back some more.

The rest of the list is where the lights come on. A car and a bus? Most don't realize how much computing power is in a modern car. Programmed to monitor the engine, control the brakes, play your music, and help you navigate from point A to point B. A microwave, even the older models have timers and preset modes. Then, the shoes. There are some seriously advanced materials in even simple shoes. Computers, and therefore programming, had a hand in designing and fabricating their favorite kicks.

Just knowing that programming is everywhere can help you understand the world around you.

As for my answer to "why programming?" today? The job and skills are morphing into something more. I find myself asking questions like:

  • Did I use the language as well as I can?
  • Do I have the right tools in my toolbox?
  • Am I getting better every day? What about the people around me?
  • Can I use practice and learning to help us all improve?

It's a pursuit. An art. A craft.

It's difficult to imagine my life without programming. I see the world through that lens. Type instructions to a computer and it will do exactly what it's told to do. No arcane magic. No incantations. No waving hands. Simple input and output.


Footnotes:

[1] "Your Pad Thai or Mine." Good Eats Season 9.

[2] http://www.bls.gov/ooh/computer-and-information-technology/computer-programmers.htm

[3] Rushkoff, Douglas (2010-11-01). Program or Be Programmed (Kindle Locations 70-72). OR Books. Kindle Edition.

@phlipper
Copy link

phlipper commented Sep 2, 2014

Anecdottaly ➡️ Anecdotally

@phlipper
Copy link

phlipper commented Sep 2, 2014

unfilled positions in our area right now ...

@phlipper
Copy link

phlipper commented Sep 2, 2014

If caught in the middle years of my career (so far)

This seems incomplete.

@phlipper
Copy link

phlipper commented Sep 2, 2014

Program or be Programmed ...

@elskwid
Copy link
Author

elskwid commented Sep 2, 2014

updated ...

@elskwid
Copy link
Author

elskwid commented Sep 2, 2014

Thank you for looking at this @phlipper.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment