Computer Science Degrees — Reasons to Ignore Them
Computer Science is the combination of amazing technology and intellectualism. Both have brought great advances, so it is surprising that combining the two hasn’t lived up to its early promise. Alongside the wonderful new programming languages, search algorithms and so on, CS theories are seldom needed or used in real world situations.
For that reason many organizations look beyond a simple CS degree to hire employees who are more focused on specifics like math or physics because ultimately they just want the machines to work well. Computer Science degrees are not a bad thing, but more and more they are falling short of providing the answers to the problems we need to solve.
Here are some of the reasons why organizations may look beyond CS:
Theory Can Distract or Confuse
Most CS graduates are more interested in proving something works mathematically than delivering results. A successful computer science graduate will be able to learn the theories and then apply them to the needs of the organization.
Academic Languages Have Little Practical Use
Academia often produces a sense of elitism and CS is no exception. Many of the more obscure languages that CS graduates learn are very rarely used and having someone incorporate this into a system can cause a lot of confusion.
The Professors Who Teach CS Are Rarely Programmers
Most professors of CS are mathematicians and cannot program a computer. Although they are successful at giving lectures they are often way behind on the practicalities a graduate will need in the real world.
Core Subjects Are Not Used
A good example of obsolete knowledge being taught in CS programs is data structures. There are many standard libraries available now so people don’t have to worry about data structures at all. In fact, many organizations forbid their programmers to touch data structures because of the real risk of mistakes being made.
Mathematical Models Are Cumbersome
Although it is good to learn database theory, in real life a developer will reduce the amount of commands simply to make things run more quickly. This is another case where practice can be a lot different from theory.
Academia Can Breed Arrogance and Delay Progress
Academic degrees encourage graduates to argue for their own opinion. This is not necessarily a bad thing but when academic language is used to belittle or knock down others on a team it can poison a working environment.
Academia often studies something for decades when productivity depends on working with the tools already available, and then using developments like AI and Machine Learning when they become widely available.
Professors with tenure are often many years out of date with current thinking and development and have little to offer in terms of insight for modern students. Sitting around discussing technical theory is fine as long as it is combined with something practical. Sadly this is often not the case on a CS degree program.
CS Degrees Can Ignore Modern Skills
CS degrees focus on core fundamentals and ignore modern programs, yet 99% of programmers need to be able to cope with all the latest challenges in their day to day working life. In fact, someone who knows one modern program well could be a more valuable asset in an organization than a CS graduate.