How I Failed, Failed, and Finally Succeeded at Learning How to Code

More

The programming website Project Euler provides a plan for how to learn anything in fun, discrete steps

SomersCode-Post.jpg

When Colin Hughes was about eleven years old his parents brought home a rather strange toy. It wasn't colorful or cartoonish; it didn't seem to have any lasers or wheels or flashing lights; the box it came in was decorated, not with the bust of a supervillain or gleaming protagonist, but bulleted text and a picture of a QWERTY keyboard. It called itself the "ORIC-1 Micro Computer." The package included two cassette tapes, a few cords and a 130-page programming manual.

On the whole it looked like a pretty crappy gift for a young boy. But his parents insisted he take it for a spin, not least because they had just bought the thing for more than £129. And so he did. And so, he says, "I was sucked into a hole from which I would never escape."

It's not hard to see why. Although this was 1983, and the ORIC-1 had about the same raw computing power as a modern alarm clock, there was something oddly compelling about it. When you turned it on all you saw was the word "Ready," and beneath that, a blinking cursor. It was an open invitation: type something, see what happens.

In less than an hour, the ORIC-1 manual took you from printing the word "hello" to writing short programs in BASIC -- the Beginner's All-Purpose Symbolic Instruction Code -- that played digital music and drew wildly interesting pictures on the screen. Just when you got the urge to try something more complicated, the manual showed you how.

In a way, the ORIC-1 was so mesmerizing because it stripped computing down to its most basic form: you typed some instructions; it did something cool. This was the computer's essential magic laid bare. Somehow ten or twenty lines of code became shapes and sounds; somehow the machine breathed life into a block of text.

No wonder Colin got hooked. The ORIC-1 wasn't really a toy, but a toy maker. All it asked for was a special kind of blueprint.

Once he learned the language, it wasn't long before he was writing his own simple computer games, and, soon after, teaching himself trigonometry, calculus and Newtonian mechanics to make them better. He learned how to model gravity, friction and viscosity. He learned how to make intelligent enemies.

More than all that, though, he learned how to teach. Without quite knowing it, Colin had absorbed from his early days with the ORIC-1 and other such microcomputers a sense for how the right mix of accessibility and complexity, of constraints and open-endedness, could take a student from total ignorance to near mastery quicker than anyone -- including his own teachers -- thought possible.

It was a sense that would come in handy, years later, when he gave birth to Project Euler, a peculiar website that has trained tens of thousands of new programmers, and that is in its own modest way the emblem of a nascent revolution in education.

oric-1 screenshot.png

* * *

Sometime between middle and high school, in the early 2000s, I got a hankering to write code. It was very much a "monkey see, monkey do" sort of impulse. I had been watching a lot of TechTV -- an obscure but much-loved cable channel focused on computing, gadgets, gaming and the Web -- and Hackers, the 1995 cult classic starring Angelina Jolie in which teenaged computer whizzes, accused of cybercrimes they didn't commit, have to hack their way to the truth.

I wanted in. So I did what you might expect an over-enthusiastic suburban nitwit to do, and asked my mom to drive me to the mall to buy Ivor Horton's 1,181-page, 4.6-pound Beginning Visual C++ 6. I imagined myself working montage-like through the book, smoothly accruing expertise one chapter at a time.

What happened instead is that I burned out after a week. The text itself was dense and unsmiling; the exercises were difficult. It was quite possibly the least fun I've ever had with a book, or, for that matter, with anything at all. I dropped it as quickly as I had picked it up.

Remarkably I went through this cycle several times: I saw people programming and thought it looked cool, resolved myself to learn, sought out a book and crashed the moment it got hard.

For a while I thought I didn't have the right kind of brain for programming. Maybe I needed to be better at math. Maybe I needed to be smarter.

But it turns out that the people trying to teach me were just doing a bad job. Those books that dragged me through a series of structured principles were just bad books. I should have ignored them. I should have just played.

Jump to comments

James Somers is a developer at Pivotal Labs. Find him online at jsomers.net.

Get Today's Top Stories in Your Inbox (preview)


Elsewhere on the web

Join the Discussion

After you comment, click Post. If you’re not already logged in you will be asked to log in or register. blog comments powered by Disqus

Video

Miami: The Next Big Start-Up City?

How the city became a center for innovation

Video

Video

A Brief History of Romantic Comedies

From The Atlantic's Chris Orr

Video

Life in 'the New Arctic'

A moving portrait of a fading landscape

Video

Video

The Rise of New York City

A fascinating look at Manhattan in the 1940s

Video

What Is Methane Hydrate?

"Flaming ice" is a vast natural energy source

Video

NASA's Time-Lapse of the Sun

Now with epic dubstep music

Video

Shaken Not Tuned: Cocktail Experiments

Can a tuning fork improve a cocktail?

Video

Video

Is He Cheating? A 1950s Guide

'That little blonde secretary from the office?’

Video

New Yorkers: Vintage Vacuum-Tube Amps

Risking electric shock to restore old amplifiers

Video

The DIY Piano-Bicycle

Everybody needs a hobby

Video

What Does It Take to Make Real Craft Gin?

Tour the Green Hat Gin distillery

Video

Letter From the Editor

The June 2013 issue

Video

What Straights Can Learn From Same-Sex Couples

New insight from decades of research

Video

The End of the Mall Rat

A tribute to that pillar of teen culture

Writers

Up
Down

More in Technology

In Focus

Picking up the Pieces After the Tornado in Moore, Oklahoma

Just In