How to Become a Programmer Without College Degree for $300

I went to college to become a programmer and graduated in 2001 with a BS in Computer Science.   I knew then that there was a bright future in information technology (IT).  I've been in this career for 15 years now and it has opened many doors for me and provided me with a good source of income.  I am thankful that I am a veteran and I had the GI Bill available for me which means that I didn't pay any money out of pocket for my degree.  I went to a local university and I'd be lying if I said the amount that it actually cost to get my degree. The truth is that I don't even remember but if I had to guess it was likely around $5000/year.

If you have been keeping up with college costs you know that college is quite expensive.  According to the college board, one year of tuition runs around $9,000 per year for 2014-2015 (in-state public University).  When you add that and the fact that college tuition goes up every year you are looking at around $40,000 dollars for a bachelor's degree.

The cool thing about today is that you can learn all the skills that will get you the same job as that college graduate without spending more than $300 and I am going to reveal to you how.  If you follow the plan that I lay out for you in this post and master the courses that I lay out I guarantee that with a bit of searching and applying you can land job and eventually a career as a software programmer.

If I were getting started today and I knew what I know now and college was not an option, these are the steps that I would take to get started in this career.

As a pre-requisite I must tell you that you will need a Windows PC.  Nowadays you can get one for around two to three hundred dollars. I've seen some at pawnshops that would meet the needs for this plan for as low as $150.00.  Today's PCs are pretty powerful and they have all the necessary specs for starting this plan.

If you are completely new to programming and have never heard what programming is, I will do my best to give you a quick introduction.

Programming a computer is basically creating the instructions to tell the computer what to do.  Those instructions are packaged into what we call software.

Software comes in many forms and flavors. In fact whatever device you are reading this blog post on whether it's your phone, PC or Mac you are using some software to read this post.  Examples of software are web browsers such as Google Chrome, Internet Explorer, video games, business software such as Microsoft Office.  Software can be very simple, such as an app, or very sophisticated such as Microsoft Word or Excel.  In the end the instructions look the same for the most part.

In order to write the instructions for the software you need to use a programming language and a code editor. There are many programming languages.  Java is probably the most popular language since it's used for billions of devices.  C# is another language and since it is widely used, my plan is targeted towards using C#.

Step 1 - Learn programming basics

The first thing you must do in programming is to learn a programming language.   This is first so that you will find out right away if programming is for you or not.  Chances are that, in your career you will get to work with many different languages but for this plan we will stick with one; C#.

Writing instructions for the computer consists of some basic programming concepts.  You can learn all the basic programming concepts in the course I have outlined for you here.  You can get a subscription to for $30 or $50 per month. I recommend getting the $50/month account because it provides you with the files to follow along in the practical exercises.  Pluralsight has thousands of courses available but our aim in this is to strictly follow this outline.  Don't get side tracked on plural sight. You can always do after you have started your career.

You can take the course C# (Pronounced C Sharp) from scratch and learn all the basics for programming. I have not taken the course myself so I don't know if it will ask you to use a paid version of Visual Studio. If it doesn't, don't panic you can get a free version of C# Express and still follow along. C# Express is a free version that you can use instead of paying top dollars.

Step 2 - Learn About Version Control

Version control is all about saving your work and keeping backups. A version control system allows you work with your source code locally and back it up to a remote repository. Version control also allows you to track all changes made to your source code. As such, it also allows you to revert to an earlier version of your code. Say for example you write something that breaks your program, well you can always refer to an earlier version and start where you left off.  Version control does an excellent job when working in teams but it is also very beneficial even when working individually.

Coding without version control is a recipe for disaster. Programs break, bugs get introduced and it's a real life saver to be able to revert to an earlier version.

The most popular version control software on the market is Git.  As such you should take the course on using Git.  Git can seem intimidating at first since it is all command line (there are GUI applications that allow you to use a GUI for leveraging Git) but in the end you will likely only use a few of the commands and since you are working solo initially you won't have to worry about some of the more advanced features.

Plural sigh has a couple of courses that I recommend for this step:

Git Fundamentals

Github for Windows Developers

Github is a website that can host your source code for free.  It uses Git as the source control system, hence the name.  In the free accounts your source repositories are public. If you are creating the next big top secret thing and want to make your repositories private you will need to pay $7/month in order to make your repositories private.  By storing your source code on the cloud you will always have access to it whenever you need it from any computer.  As a big plus it will be there if your computer ever crashes, gets lost or stolen.

Step 3 - Learn Web Technologies

Much of today's software resides on the web in the form of web applications.  Websites are very common for doing business today so it would be a shame if I didn't recommend that you learn the technologies involved in that realm.  Web technologies consist of three different languages HTML, JavaScript and Cascading Style Sheets (CSS).

The course Web Development Intro  should provide you with all the introductory information that you need to learn.

Step 4 - Learn More Programming

Programming is a craft that actually takes years to master. However you don't have to wait that long to be good and productive in it. However, you do need to learn a few more advanced concepts related to programming.  For that reason I recommend the following two courses that are also available at  These two courses will give you the skills you need to write more efficient code.

C# From Scratch Part 2
C# Collections

Step 5 - Learn Database Basics

No road plan would be complete without having some basic understanding of database design.  Data storage is a big deal since it holds the state between sessions of the application.  This is how you can see the data in between sessions.  There is a science behind storing that data in a structured format and the most popular approach is through the use of Relational Database Design.
This course is available on plural sight.

Step 6 - Create Something Cool

If you have completed steps 1 through 5 you now know the basics of writing code, storing it safely and sharing it. So go out and create a few cool applications.  As long as they are cool to you and you can show them off.  Showing them off, is one of the reasons that I got you started on Github early so that you can share your code.  By sharing your code you are showing to your future employer what you can do. You are showing that you can code. This is critical if you want to get employment without a college degree and without any professional experience.

Step 7 - Apply Apply Apply

There are many employers that due to contrat requirements, amongst other things, will not hire an individual without a degree. The good news is that for every employer that does not hire a programmer without a degree, there are many that will.  Let's face it there is a shortage for programmers and that void has to be filled somehow.

These days even boot camps are preparing non-college graduates with great success. Yes the training in those bootcamps is likely better but these boot camps are expensive.  They can run you $15,000 for 12 weeks of training.  That's a lot of money. If you have the discipline to do it on your own you will be saving yourself a lot of money in the process.  The reason that these bootcamps are so successful is because there is a high demand for programmers.

The main thing that you have to show is that you have the passion and aptitude for being a good programmer.  Another caveat is that you will not start out making a high salary but you make a decent salary for an entry level position.  Once you become established you will eventually make the big bucks if you continue to apply hard work and dedication.  I have many friends that don't have IT degrees and very successful in their programming careers.  If you have a hard time getting an entry level position take an internship position. Many employers are willing to take on interns and the best part about it is that those positions are paid positions.

In this step you really have to roll up your sleeves and do your work. No one is going to come knocking down your door to hire you. You have to go and knock down theirs.  Join user groups.  Sign up for LinkedIn and join the programmer's groups.  Read blog posts and make good comment on them. Start your own blog.  Read some good books on technical interviews. It may take some work and a little bit of time but you will get the job sooner rather than later.  How quickly you land a job is entirely up to you.

What's next

The plan that I've outlined for you does not replace or cover everything that you would learn in college. There are many other topics that college covers such as math, algorithms, advanced database design, LAN and WAN networks, etc, not to mention the academic topics such as English, History etc.  This however prepares you just as much as a person coming in with a degree because let's be honest, just because a student takes the course does not mean they soak and retain all that knowledge.  You should however continue to learn and grow in your career. That means learning all those other things that you missed out on, once you start your career.

You should be able to complete all the steps in this plan within six months. At $50/month that is $300.   You simply can't beat that for the quality that you get on I've taken many courses on plural sight and I can tell you that they are top quality. Sometimes even better than what you would get at a university.

Good luck and if you decide to embark on this journey please let me know by commenting below.


Domepeace said…
Good article. I think you're right. This is for those that have an ear to hear. With the information highway, why not take advantage of learning how to program on a 'dime'. Please, continue to share the knowledge.
Fernando Zamora said…
You are right Domepeace. We have so much available today that it would such a shame not to take advantage of it. Those opportunities were not available 15 or twenty years ago. I'm glad you liked it.

Popular posts from this blog

Simple Example of Using Pipes with C#

Difference Between Adapter and Bridge Design Patterns

IoC Container Vs. Service Locator