Mark As Completed Discussion

Self Teaching/Autodidactism

Doesn't everyone else start here? Most people usually decide they want to learn to code, and google search "learn to code". Then they'll find a resource and just start going for it, usually copying code samples and trying to make sense of them.

There's an abundance of free resources.

There might literally be a million free coding education resources online-- from wonderful sites like freecodecamp to Codecademy, to awesome tutorials like Michael Hartl's Rails Tutorial, to the thousands of MOOCs.

The internet has made this path very accessible. Even children are finding ways to learn to code online!

It costs nothing.

Notice the price tag: free. If you have an internet connection, and a few hours a day, you can learn to code.

The idea is that you keep working through courses and tutorials, build a nice portfolio, and just start applying to software engineering jobs. Many people have done this successfully, including some engineers I deeply respect, but a huge caveat:

If you're really determined to become a professional software engineer, this approach is the one most likely to fail.

No, I don't know you, or your personality traits, but the biggest thing this method lacks is discipline. Are you the kind of person who can create a system for themselves, who has the long-term discipline to stick with something hard even without social support or pressure? I've met very few people who have actually self taught themselves coding without any assistance, but I've often found these are some of the strongest engineers in the game. Jamie Zawinski comes to mind.

It's usually because self-taught developers continue to teach themselves well after getting their first, second, or third jobs. The ability to learn quickly and well, with discipline, is rare.

Most people want to believe they have this ability, but I sure did not. I would do a few tutorials, get stuck, give up for a few weeks, and try again. I'd try one of the online courses but never could power through for more than a few weeks at a time. So I looked into bootcamps.