I was recently asked the following on Quora:

I’m 25 and wish to learn programming. Am I to old to become successful? The media portrays successful programmers who are worth millions to have started coding from a very young age.

Here’s my answer:

It’s definitely not too late to start coding. A few years ago I was 25 and had just finished law school. I’d completed my 7th straight year of schooling (undergraduate in Economics before the 3 years of law school), and I was certain that I didn’t want to work in a traditional law firm setting. I set out on an entrepreneurial venture, and out of necessity, I was forced to build my own website.To be fair, I’d built websites in the late 90s and 2000s, but things had changed quite a lot since then. It took me three weeks, and I’m sure my code was atrocious, but I taught myself enough HTML and CSS to build my own website.

Coding was enjoyable, and within six months I’d retaught myself enough to land several freelance jobs building sites for others. Once I’d polished my JavaScript skills and built a small portfolio of work, I began applying for full-time employment as a developer. I landed a job as a front-end developer for a computer software company roughly one year after that first website (I had just turned 26).

If you’re striving to be a successful programmer, you need to maintain a voracious appetite for learning. If you read something you don’t understand, look it up. If you hear about a new framework or library, look it up. If you get stuck on something, stare at Stack Overflow for hours and hours until you figure it out. If you are still stuck and leave your work for the following day, it should nag you during the evening and the next morning when you wake up. The best programmers I’ve met are mildly obsessive and will not give up on a problem until it is solved.

There’s no easy way to learn programming (see this: The 11 Phases of a Web Developer’s Career (As Illustrated by Memes) – Tuts+ Code Article). It can be extremely frustrating at times, and there are moments when you’ll feel like you’ve made no progress. Codecademy, TeamTreehouse, Codeschool, and other online resources helped get me started, but those are nowhere near as helpful as putting yourself out there and making something from scratch. I can honestly say that I learned more in my first 2 years as a developer than in the 7 years of formal education prior. That’s because I find this work far more interesting, and it’s a better career fit for me.

While developers are handsomely paid, the job will wear you out fast if you don’t enjoy this sort of work. If you’re just wanting to learn to program to get rich, then I’d suggest finding a different career… you will end up being miserable. Your success will largely be defined by your passion and work ethic. If you love technology, are self motivated, and are someone who constantly enjoys learning, then this could be the perfect career for you. At 25, you’re certainly not too late to start!