3 min read
Learning a programming language is one of the best ways to potentially increase your income. Programmers get paid above-average salaries and the market opportunities are enormous for people who know how to write decent code.
In my day job as a data scientist, I write code every day. The main programming language I use is called R. It has a steep learning curve and can be intimidating at first glance, but it has a huge payoff. It’s the reason I was able to land a job that pays $80,000 at age 23.
I want to share my firsthand experience with learning R to prove that you don’t have to be naturally gifted to learn how to write code.
When I started my job last summer, I knew just enough R to get hired. I was by no means an expert. I had dabbled in it at my previous job and had used it in some of my college stats courses.
During the first few months, I had to learn fast because I had to generate and deliver reports that relied completely on R code. This was a stressful time. I would show up to the office around 8:30am and literally keep my head down for three hours straight, constantly asking google for help and copy/pasting chunks of code I found online into my own programs.
I would take a break for lunch, then return to my laptop and grind it out for another four hours or so.
My entire process of learning was:
Be presented with some problem.
Attempt to write a solution in R.
Realize that I don’t even know where to begin.
Google “How to do [some task] in R”
Copy and paste code I found online into my own program.
Modify the code to fit my needs.
Send the code to whoever needed it.
Do a code review with a senior coworker. Find out where I could have written it more succinctly.
This was my life for the first three to four months at this job.
I felt like a complete idiot most days.
Over time, though, I recognized a pattern: with each new project or request, I became just a little more comfortable with R. I actually knew where to begin when I started a project.
I still had to google “How to do blah blah blah in R” constantly, but my google queries were becoming more advanced. The basics of R had finally sunk in. It was the hard stuff that I needed help with.
I have come to realize that the fastest way to make progress with learning a new language is to attempt to build something using that language.
Forget about coding bootcamps and taking courses or reading textbooks. Just try to build something using the language and you’ll find out quickly what you do and don’t know. You’ll learn by necessity.
Google is Your Best Friend
While it can be helpful to have someone sit down with you and show you the ropes of coding, ultimately Google is the best resource for learning as fast as possible.
In particular, most google queries will lead you to a site called Stack Overflow where you can find answers to literally any programming question you may have.
Angela Duckworth says the biggest predictor of success is not inherent talent, but grit. Grit is synonymous with perseverance. And when learning a programming language, grit is incredibly important.
A major part of learning how to write code is simply banging your head against the wall over and over until you find the right solution.
You will likely fail on your first attempt.
Things won’t make sense at first.
Knowledge won’t stick initially.
You just have to keep googling, keep learning a little more each day, and stick with a task until you find the solution.
Learning a programming language can help boost your salary.
Best of all, you don’t necessarily need a programming background to land a high-paying job that requires programming skills.
In my previous job, I worked with people who had degrees in philosophy, agriculture, psychology, and other obscure fields. The common denominator is that they all taught themselves how to write code, which is how they got hired.
There are many professions you can pursue if you know how to write code. I chose to become a data scientist, which according to PayScale has an average salary in the U.S. of just over $90,000:
Keep in mind this number varies based on region, industry, and experience.
As technology continues to advance, the demand for programming skills will continue to increase along with the salaries offered.
Consider learning a programming language if you’re looking to boost your income.
Zach is the author behind Four Pillar Freedom, a blog that teaches you how to build wealth and gain freedom in life.
Zach's favorite free financial tool he's been using since 2015 to manage his net worth is Personal Capital. Each month he uses their free Investment Checkup tool and Retirement Planner to track his investments and ensure that he's on the fast track to financial freedom.
His favorite investment platform is M1 Finance, a site that allows him to build a custom portfolio of stocks for free, has no trading or maintenance fees, and even allows him to set up automated target-allocated investments.
His favorite way to save money each month on his recurring bills is by using Trim, a free financial app that negotiates lower cable, internet, and phone bills with any provider on your behalf.
His favorite micro-investing app is Acorns, a free financial app that takes just 5 minutes to set up and allows you to invest your spare change in a diversified portfolio.
His favorite place to find new personal finance articles to read is Collecting Wisdom, a site that collects the best personal finance articles floating around the web on a daily basis.
Full Disclosure: Nothing on this site should ever be considered to be advice, research or an invitation to buy or sell any securities, please see my Terms & Conditions page for a full disclaimer.