How long should it take to learn to code?
Since sharing this tweet, I've gotten this question a lot!
I can only share my personal experience and anecdotal evidence I've heard from others. If you're interested in a broader data set, Stack Overflow provides an incredibly detailed report each year.
I'm someone like you. Not a guru. Not an influencer. (the last thing i posted on Instagram was a hamburger like 6 years ago). In 2012, I was under a mountain of debt and making minimum wage as a shuttle driver. I was totally stuck. I can only share my experience with learning to code and want to remind people that this is a long-term journey... While the ability to code pretty much guarantees some level of job security, it is NOT a quick way to get rich. It is a long way to get rich, and it can make you VERY rich. But you have to be thinking long term.
I'm so damn tired of all the gurus on Twitter selling these six-figure side hustle eCourse gimmicks. These guys are preying on thoughtful people who genuinely want to better themselves and their financial health. You need to realize that there is no course or eBook that's gonna get your there. It's also unrealistic to set expectations of massive financial results with a 1-2 year time horizon.
Ever wonder how Amazon took over the world? Jeff Bezos is working a 20 year master plan.
☝️Consider his quote from a few years ago. What would happen if you shifted your thinking to be longer term?
People overestimate what they can accomplish in a year and underestimate what they can accomplish in a decade.
Timeline for Learning and Income
This is a rough translation of my experience since starting my journey in 2012.
Within 3 t0 6 months
You'll be able to create a website or a basic app. You won't be able to build anything too complex, but keep working on little projects and building out a portfolio. Later on, you'll want to show off what you've made to help land freelance gigs, an internship or a full-time position.
In 6 to 12 months
You should've amassed a decent little portfolio of websites, some simple applications, and maybe a few non-trivial ones.
Around this time, you can start picking up work or maybe a salaried dev job if that's what you want. It would be an entry-level junior developer position, but you could easily earn $40k-$50k year. If you're hungry, you could also take on part-time freelance work billing $30/hr or so. As a side hustle of 10 hrs per week, that's an extra $15,000+ per year! This can be exhausting, but the extra money is extremely rewarding AND those extra nights and weekends of side work helped me level up faster.
After 1 t0 2 years
You'll be just as proficient (maybe more) in writing software than most CS grads. They might run circles around you when it comes to data structures, theory, and algorithms, but you will dominate when it comes time to put your knowledge to use and build something.
Worth pointing out - you'll have zero debt and didn't have to give up 4 years of your life to get here.
By now you have a high likelihood of landing a good salaried dev job (if that's what you want). As a borderline junior to intermediate developer you could earn between $50k-$70k depending on your market and chose language. If you want to freelance, you could bill $40-$55/hr. As a side hustle of 10 hrs per week, that's almost $30,000 in additional income per year - a livable income if you're a digital nomad living in Asia.
After 2 to 3 years
You'll have intermediate skills and doors really start to open. You should be able to build pretty much anything in the language of your choice. Every friend with an idea with reach out to you for help.
If you choose to focus entirely on freelancing, you can bill $80/hr - $100/hr and easily earn 6 figures per year. If you're inclined to seek a salaried job, you should expect a little less, but you'll probably gross 6 figures in total comp when you consider benefits.
At the 4 year mark
If you've been learning constantly for four years and have used nights and weekends to relentlessly hone your craft, you're probably ready to be considered a senior developer level. You'll have most certainly hit the 10,000 hour mark.
At this stage, $200k is within your reach as a freelancer (50 weeks @40hrs). You can bill $100 per hour, possibly more depending on programming language (mobile development and other specialities could push this higher) and whether you've cultivated any specialty or niche (ex/ HIPAA compliance) over the last few years.
Once you hit 5 years
You'll have tons of options and will probably want to shut down your LinkedIn account due to all the DMs blowing you up. If you're someone who prefers a more predictable income, you'll easily command a salary of $150k + benefits.
If you choose to freelance, you'll have the flexibility to live wherever and choose your working hours while still clearing $100k-$200k. You'll be earning enough to freelance part time, and spend the rest of your working hours building a passive income SaaS business. This is where ultimate freedom starts to kick in... when you stop having to trade your time for money and can build something that generates income in a passive manner.
I've learned a lot over the years and if I had to do it over again, I could speed up my learning curve by avoiding certain pitfalls and mistakes. Some things aren't worth learning at all, while other areas are foundational and I should've focused on them earlier. If you're interested in taking this journey, be sure to subscribe to Bootstacker and follow along.