4 Paths to Start Learning Programming

Software development has been one of the most in demand jobs for the last years and will continue to be for the next years. A lot of people are joining the revolution on jumping into tech-related jobs whether in trying to shift careers or taking computer-related courses as they move to college. Often, we receive a lot of questions regarding the best path to learn - self-paced online courses or going back to the university or attending a bootcamp. And all of these are valid routes you just need to find out what fits best with how you learn, your capacity and your goal.

1. Taking a computer science or engineering related course in college

If you’re entering college and keen to get a software engineering related job, take up courses related to it. You’ve got the obvious ones such as computer science and computer engineering. And then there are the other courses that has programming as part of their curriculum such as electronics engineering, library and information science and many more. Study the curriculum, ask questions to your university administration and talk to graduates from these courses in order to make an educated decision. 

If you’re shifting careers and you have the time and resources to spend 3-5 years in full time learning, you can consider this route. University education touches on a lot of other general education topics and provides a wide community of learners and educators in various fields. 

2. Self-learning with free tutorials

The internet has all of the resources that you’ll need. If you know where to start, have a path or a curriculum that you can follow, access to good related resources, have people that you can seek guidance from, is well-disciplined and has high confidence that you can hold yourself accountable on self-learning - this route is for you.

You’ll have the flexibility and freedom to learn on your own pace and drive the direction of your learning to wherever you like with no cost. However, with great freedom comes great responsibility. In order to be successful in learning through this route you would have to have that unstoppable burning self discipline to keep on going consistently. You’ll also need a mentor that will support and help you when you’re stuck. A learning buddy will be fun to have too.

3. Self-pace recorded courses 

There are a plethora of them - Udemy, Treehouse, FrontendMasters etc. These programs have various curriculum that you can choose from based on your goal eg. Algorithms, MERN stack, web development, etc. The course consists of curated materials of recorded lecture and code along sessions, code repositories and additional reading materials that you can consume on your own pace. And as with all self-paced routes, you have the flexibility and freedom. You’ll want to find a mentor, learning buddy and/or community to get help from too.

This route fits you if you are flooded with all the materials available on the internet and do not know where to start, has the discipline for self-paced learning and the resources. Or if you’re still unsure if programming is for you and just want to first try learning it. Many developers use this route as well to up skill themselves or learn a new language. This works for them as they know how to navigate themselves around and find help if needed. The price and models of these programs are at a range, there are per course and per month subscription models.

4. Coding camps

If you need help on the learning path, a community of co-learners, consistent and dedicated mentors and want to reach your goal and get results within 4-6 months, coding camps are a great place to be in. All the materials and support will be provided to you. You can choose to go with a full time or part time program. Part time programs are fit for individuals juggling with other commitments eg. work, business, etc. Full time programs are perfect for individuals who would want to focus all their energy and time to learning programming.

In choosing a bootcamp, study their curriculum, read about the team behind, testimonials from other students and take note of all the support that they offer. Find one that will truly set you up for success.

In summary

There are multiple ways to start learning programming with different demands on time, commitment, cost and self-discipline. Here are questions that you can ask yourself to help you decide:

- What’s your goal?
- Are you fully committed to challenge yourself to learn how to code?
- Are you willing to keep learning and coding even outside of normal hours?
- Are you able to get unstuck on problems without the help of a mentor? 
- Are you motivated enough to never give up on difficulties?
- Are you self-disciplined enough to push yourself even if you don't feel like to?
- Do you know where to start? And can you navigate through all the resources available in the internet?

And to always remember - on any of the routes that you will take, continuous learning is important. Even after graduating or finishing a program or even if you already have a job, we all need to constantly learn and innovate ourselves. Four to six months is not enough, 5 years of education is not enough. The technology landscape is quickly evolving and so must we all.