Can you code? No, but you can learn it

Want to work as an engineer? Grit and passion are better than a Stanford degree.

Kevin Dewalt
4 min readSep 16, 2016

This morning I asked Mika for an inspiring career story. She suggested What Happened After I Left the Best Job in the World to Become an Engineer? by Preethi Kasireddy. Despite having no coding background Preethi left Andreessen Horowitz to become a full time programmer.

I appreciated her story because her motivation is clear:

My primary goal when I started coding was to learn enough to “go pro” as quickly as possible.

IOW, she wasn’t learning to program … to do a side project … or learn a new skill … or get a raise. She wanted to change careers — and she did it through sheer determination.

I’ve helped a friends and prospective founders get started programming. Here are a few tips:

Aptitude + Determination = Success

I can’t say it any better than Stephen Lloyd: Coding’s hard; learning to code is really hard.

Sure, coding takes aptitude like anything else. How much? I don’t know how, but I think programmers need intelligence and logical thinking like lawyers, doctors, and writers.

But I do know coding is hard — in that learning how to do it takes a long time. Why do people think they can’t program? Because they never tried.

It takes 3–6 months of full-time work to get started

If you’ve done some programming it takes about 3 months of full-time work to learn a modern web stack like Ruby on Rails. If you don’t know what a control structure is it will take you 6 months.

You’ll need to build something — in other words, programming isn’t something you can learn from books and exercises. Sure, they’ll help you get started but you’ll need to pick a project and do it if you want to progress.

You won’t be a great — or even a good — programmer by this point. And that’s why people think they can’t program — they give up too soon.

They expect to be as good as professional programmers after a few months.

The long, slow plateau to proficiency

Some people keep going … keep learning and get some basic skills after 3–6 months.

Then they get stuck. Frustrated. Bored. Sometimes at stupid stuff. A few years ago I spent an entire weekend just trying to get Ruby running on my Mac. Not to build something — just to get the environment running. “Just stick with it” sounds a lot easier when you haven’t been sitting at your desk for 13 hours Googling error messages.

But the only way to get better it so plow through these walls. In time you’ll build a network of programmers who can help you and you’ll learn how to troubleshoot.

10 years to become a good programmer

I can’t say it any better than Peter Norvig’s classic Teach Yourself Programming in 10 years.

My response to common objections

“I need a degree to become a programmer”

No, you don’t. You just need to go after it with the same determination as Preethi.

Not having a degree can be a bonus — you’ll get fewer spammy emails from recruiters who just scrape you LinkedIn profile.

“I don’t have the mind for programming”

That’s ok, I don’t have a mind for playing the piano. Why? I NEVER TRIED.

Oh sure, I’ve sat down at the keyboard banged on it. There sure seemed to be a lot of keys and some of them are black. I don’t know if I would be any good at it, but until I try my best for a year I’ll never know.

“I won’t use my existing degree/skills”

Tech is a SOCIAL skill. The most valuable programmers are great communicators who solve problems collaboratively.

Your skills as a writer, leader, or negotiator will be invaluable when you need to work in teams.

“I’m too old”

No, you’re not. I did almost no programming after college and started again in middle age. My life skills and experience made it much easier to learn.

A skill with no beginning — and no end

When you can’t code you may see the world as divided into 2 types people:

  • People who know how to program
  • People who don’t

With yourself in latter group. Once you learn how to program you realize the distinction isn’t about “knowing” but “ability to learn/do.” Great programmers don’t know everything — they know how to learn faster.

And that’s the only attitude you need when try to learn something new. Can you code?

No, but you can learn it.

Originally published at ScribbleIQ Blog.

--

--

Kevin Dewalt

Founder of Prolego. Building the next generation of Enterprise AGI.