Saturday, July 12, 2014

Programer's degree - is it really needed?

When I started programing, I thought that's all there is to it. However, when I first time began programing it wasn't really a programing at all...And I only realized that when I began my studies. Some people will say for a degree "not needed at all" and from my point of view I think that can depend on what you plan to do, what is your passion and what do you want to know. On the other hand, people who do have a degree they can't tell you its not needed because they know the difference between, what they went through and what it takes to have a good software instead of people who are programmers and how they are putting the puzzle piece's together.

How can a degree help me to make software applications better?

Once I went trough all the programing subjects on my university, like C, C#, Java, PHP, OOP, SQL, HTML, CSS, ASP.NET, WPF I thought those subjects were the most important. They probably are, meaning that you have to see the differences between them languages in order to know what are the differences between languages in syntax and class libraries and what can you expect to be different when switching to any other language that I did not mention above. But when it comes to make a software application or any program to be very good software, there are a lot of side factors that make a software good and it doesn't include programing language at all.

For example, many programmers believe that when they develop a web page, or design it as well, that graphically that webpage has to be pretty, silky and nice. But what if I told you that graphical part doesn't have to do anything with the usefulness of the web page? This might sound to some people like " Well duh! " But I sometimes get shocked when I see what people are doing for some webpages with all the amazing effects, 3D things that truly look fascinating, but when it comes to me interacting with the page, there isn't a single thing I would want to click on that page, because the info I need is no where to be seen. Or people who make web pages useful, but so ugly that you can't force your brain to bother with what's going on on that page. You might wonder now, "what is this on about?" but my point is that programers and those people who create pages like those, obviously do not know those side factors that make a web page have its purpose, usefulness and most important visitors that come back to the page and stay there to read the info they need. Shortly said "great content".

In order to make that content be great, one has to take into consideration: social media, will the content be shareable, the needs and wants of an owner who has specific reasons why something on the page or in software application will take a lot of his work, software reliability and the list goes on. There are just many things that make a great software stand out from the rest. And in most cases it can be done always with a group of people rather than individual. Sure, there are softwares individuals who can work on, but it can never be the same as with the ones who are doing it as a team.

And that's what, in my opinion degree stands for. It not only shows that you know how to develop and program, but shows that you know other things aside programing which makes you think about software's a bit more expanded. Also, as it was the case on my university, you are kind of thought to work in a team. I know there are examples of people who do wonders by working alone, and they just simply can't work in a team, but even those people when working alone are probably doing some side of project/software. And that is why I wanted to finish university, not only that I wanted to know to program and develop, I wanted to know all the bits and pieces that go with it.

Now, that was my reason, there are actually many other reason's why I wanted to finish university, but that one is the main one. I know guys who just wanted to learn programing, and they are doing pretty fine with it, but the same guys don't have interest in much else. For them programing is everything, they enjoy it so much (don't get me wrong, I do too) and have quite nice payments from it, but because they are so stuck with programing they cannot see much wider than that. I am not saying they are shallow or unable, it's simply how it works. If Usain Bolt trains running 100m in less than 10 seconds, I am not sure if he has same interest in swimming 800m freestyle.

Why a degree has an important role when it comes to getting hired?

It is important in a way that companies want to hire someone who looks reliable. Having a degree does NOT have to mean that. There are many factors why a company decides to hire specific candidate. When it comes to choosing a candidate who will work for a company, most companies want someone who will not slow down their workflow process down. It is a risk for a company to pick someone up who just says "I am a programmer" who, later on, seems out to make trouble for other co-workers, makes them suffer while working, taking away everyone's time, business resources and eventually money as well. 

No good company wants that. In fact, every good company should take care of their workers having a pleasure time working, because a lot of researches showed that company who takes care of its business workforce will always produce more than the company who doesn't. So having a degree is probably a huge help when it comes to find a job, because it says in some way "I am ready to dedicate time on long terms in order to achieve something." at least that is what I think of it. However, I say again, the degree and CV, are not the only thing that will guarantee you a safe spot in getting hired. There are a lot of reasons why companies hire or not hire specific candidates. Either experience, a perfect match for company's business surroundings, expertise, level of a degree, behavior etc.


I hope I managed to point out some things to show the difference between degrees and how it can work for some people and how for some people it doesn't mean to be the best option. I always stay open minded in whatever blog post I make and I am always looking forward to see what other people think. What is your experience with a degree? Do you know someone who had a better time as a self-learner? What do you think about self programers? And what about the degree programers?