The Ultimate Programming Debate: Self-Taught vs Degree

There is no argument digital literacy is a necessary skill for the majority of jobs in today’s economy. Photoshop, social media and a knowledge of HTML are becoming staples of the modern workplace in the same way Microsoft Office and email have been for the past two decades. However, it remains to be seen as to whether computer programming skills will join the ranks of Word, Excel and Twitter as required competencies. Many argue programming or coding skills are on their way to becoming the new literacy.

Before jumping into research on computer science classes at your local university or signing up for an online resource, it’s important to consider the end goal of your training. Are you looking to get a basic understanding of programming or proficiency to pursue a career in the field? Additionally, time available, passion for the subject and your preferred learning environment all factor into the decision to follow a do-it-yourself curriculum or seek a computer science degree.

Teaching Yourself Programming: Pros and Cons

The strongest argument for self-taught programs is the freedom and flexibility to learn on your own time and pursue topics that interest you. If you are currently employed, it can be difficult to leave your job and take classes full-time. Evening classes can help accommodate 9-to-5ers but can drag out program completion over several years. If you need or want to develop programming skills fast, do-it-yourself programs are the way to go. Some sites even claim they can teach you to code in a month. In addition to the scheduling flexibility, teaching yourself programming is much cheaper than paying for a college program. There are a number of resources available for free or low-cost to make learning to code fit within your budget. Lastly, programming is an fast-changing field. Taking the self-taught approach means you are already familiar with the resources and networks that will help keep your skills current.

Teaching yourself computer science is not for everyone. Without the pressure of a grade or the supervisory nature of professors, many on the self-taught path will lack the discipline to complete their training.

The self-taught programmer sometimes skips the necessary foundational study of math, engineering and computer science that comes with a degree program. There are pros and cons of studying computer science theory if your focus is on developing programming skills, but taking the time to study the math and engineering skills from the beginning will help you acquire understanding of other concepts and skills more quickly.

Key Takeaway: If you plan to take the do-it-yourself approach, reflect on your level of commitment and passion for learning programming. Avoid focusing on only a specific language, instead integrating multiple languages, math and engineering lessons into your training. Take part in online certification programs to help prove knowledge and skill level, as well as participate in open source projects or startups to develop your portfolio of work.

Pursuing a Programming Degree: Pros and Cons

Degree programs are great for individuals looking for additional support from a learning community. Unless it is an online degree program, you’ll be taking classes with other students who can answer questions as well as offer encouragement. College courses also provide ongoing documentation and feedback on your skill level. And for those who struggle with self-discipline, a degree program can force you to complete your goal of computer programming proficiency on schedule.

The downside of enrolling in a degree program is the curriculum is often slower to adapt and cumbersome. Computer programming courses may be teaching outdated information or focusing on languages no longer in demand. Unlike a do-it-yourself program, you may be required to take courses in topics that don’t interest you or apply to your desired career path. And of course, a degree program can take upwards of four years and cost several thousand dollars.

Key Takeaway: Contact companies you are interested in working for or look up current employees of those companies on LinkedIn to determine what they are looking for in an educational background. Research popular programming languages and which have the highest level of longevity. Also, see if your degree program has outside resources available, such as meet-ups, outside speakers or applied projects.

Ultimately choosing to become a self-taught developer or to pursue a computer science degree depends on you. Regardless of your choice, make sure you are passionate about learning the subject and take every opportunity to practice your skills.


Katie Hurst is the Marketing Manager for OpenSesame, the world's largest marketplace for buying and selling online training courses. Follow me on Google+ or LinkedIn.