Formal Education or self thought developer?

You want to become a developer but cant decide if you should pursue a computer science degree or teach yourself?

Lets talk about the pros and cons of each option.

Formal Education


A good formal education will teach you everything there is to know. You will follow a highly efficient curriculum. Compared to self though developers you will have smaller “knowledge gaps”.

A degree will greatly improve your chances on the job market

You have a group of peers to work with and help each other out.


To study full-time for three to four years can be a big financial burden.

Studying is very time consuming. You have to follow a fixed curriculum and cant work at your own pace.

It takes a lot of time and depending on your situation you maybe are not able to finish your degree.

Become a self thought developer


You can study on your own schedule at your own pace.

Depending on your goals you can continue to work while studying on nights and weekends.

You can study the things that interesst you.

Beeing a self-thought developer shows great passion and work-ethic to a potential employer.

You can design your own curriculum.

There are a lot of free resources out there that can teach you the fundamentals.


Without a degree its harder to get a job. You have to do mork to convince employers that you are a good hire.

Becoming a self thought developer might be a very lonley challenge, try to find mentors or peers which whom you can study together.

When designing your own curriculum the chance of “knowledge gaps” might be bigger as you dont know what you dont know.


Pursuing formal education is a safer choice in most cases then trying to get a job as a self thought developer. But often personal situations or circumstances wont allow the time and financial commitment of a three to four year degree, in this cases going self-thought is the better option.

After all its a highly personal choice that has to be choosen wisely.