So you want to learn to code? The recent explosion in venture funding has created a surplus of computer programming-related jobs and skyrocketing developer salaries. The usual path most developers take is to enroll at their local university for computer science. While this is a great path for many, there has been an emergence in recent years of more self-taught programmers.
[Find inspiration in the story of a 50+ computer bootcamp graduate.]
With a plethora of online resources, it is now easier than ever to study computer programming. While the self-taught route is very attractive path for many, most will fail or give up. The reason most people fail at learning to code is because it is hard. If it was easy there would not be a shortage of tech jobs, and Silicon Valley programmers would not be receiving 100k and up salaries. So where do you start?
Choosing a discipline
There are thousands of different disciplines and directions one can take in the programming world. What interests you most about computer programming? Are you interested in building iPhone apps? Maybe you want to develop web applications or even build the underlying software of the computer you are reading this from. The key to becoming a self-taught developer is to find something you want to build and build it. Finding a project you are passionate about will help you survive the steep learning curve of programming.
[Search the LearningAdvisor online course database for more computer and technology courses.]
Learning the Material
There are a plethora of online resources that help aid others in learning to code. The key is to find the one that bests suits your learning style and to use that alongside the project you are building.
One of my favorite resources while learning to code was Codeacademy. Code Academy gives you programming lessons and allows you to interactively code solutions to problems. It is a great starting point for beginners. If you learn better through reading then I recommend going through Y Combinators curated list of best books for a self-taught developer. If you are more of visual learner than one of the many screencasting websites might be a great fit. These websites record real world programming examples and give you the opportunity to go through the project at your own pace.
Throughout your computer programming career you will come to love Stack Overflow. Stack Overflow is a question and answer website similar to Quora or Yahoo answers except that it is specifically targeted at programmers. You will be able to find answers to almost any programming question you have through Stack Overflow. I would try to get very familiar with their search functionality as you will be using it a lot.
If you can’t find an answer to one of your questions or you prefer to learn from an actual person, I recommend you look into finding a mentor. This can be as simple as asking a friend or someone from your community that knows how to code. If you cannot find someone from either of these groups you can try codementor or Thinkful. They allow you to find a mentor specific to your niche. While there are many different ways to go about the actual learning, I have found the best approach is to utilize all the methods available to you.
[Have you considered earning an online degree in information technology?]
Getting a job as a self-taught developer
Getting a job as a self-taught developer can be tough. You are going against students who have been taking classes for 4 + years and who were forced to learn things you might have missed because you were never interested in them.
To compensate for this it is essential that you have a strong portfolio or GitHub account. GitHub is code collaboration and code management tool which allows you to easily host your projects for free as long as they are public. Before getting a job, there will be a couple of areas you most likely need to brush up in before your interview. If you haven’t studied data structures or algorithms, then I recommend taking a course or reading through different tutorials on each. Data structures and algorithms are where a lot of self-taught developer’s lack skills.
[Are you thinking about starting our own business? Explore online courses in entrepreneurship.]
Hopefully you now have better understanding of the necessary steps it takes to become a self-taught developer. With the right attitude and determination, you will be coding your own applications in no time at all. As a developer, learning is a lifelong commitment. There will always be new technologies and languages emerging. The most essential skill for any developer is the ability and passion to always want to learn more. If you are passionate enough about becoming a programmer, the rest will come. Happy Coding!
Matt Lenhard is a Co-Founder and CTO at LendEDU. LendEDU is a marketplace for student loans and student loan refinance. LendEDU works to make a more transparent student loan market. LendEDU also focuses on creating great resources and guides for students!