The Future of Computer Science

Computer Science graduates and what went wrong.

The Future of Computer Science
do {} while 1

Computer Science is currently a massive topic of choice when it comes to people going into college. Whether it's the massive payrolls that are promised or the thrill of learning something new, there's always people coming into it. Sadly, this new influx of people has caused a problematic issue with the current state of Computer Science (CS) and the job market.

What is a Programmer

Programming to me, is more than just "coding" or "scripting". While by definition these words can be used interchangeably or synonymously, there is quite a stark difference in my eyes. When I think of scripting, I think of simple tasks that require little to no effort in regards to syntax or standard. A great example of comparison is between C and Python. While this comparison is unfair, it's important to highlight that unfairness to show the difference between scripting and programming.

Coding is where I believe most current and future CS graduates will fall-under. It's a less shallow understanding of what makes C and Python different while still keeping the lack of knowledge that could let you differentiate them without error. To some, this isn't a problem but to me it's a massive disappointment. Imagine you're watching one of your colleges misuse and abuse C without any know-how on what they're doing except for the LLM beside their IDE.

A programmer contrasts both of these by a large margin having a truly deeper understanding of what the process of compilation or interpretation entails. These people are the ones who have a true passion for their work and don't sit waiting for the next paycheck. They're the coworkers you hope to have, the ones who get work done. Sadly, it seems many graduates lack this understanding.

What Went Wrong

When you're young, you don't really know what you're planning on doing for the rest of your life as a source of income. For me, I clearly saw myself heading straight into the software development workforce. I have been scripting, coding, and eventually programming which I only truly believe I achieved in 2022. It took me 7 years to become a "programmer" with me spending a majority of my free time dedicating myself to it.

Nevertheless, to a workforce I am not experienced. Despite having a resume detailing plenty of awards and test scores, I am nothing without a degree and experience. The people freshly graduating as scripters and possibly coders have a higher probability of getting past the initial AI screening than I do. There are examples upon examples of this being true, yet the workforce doesn't care.

Rat Race of Deployment Speed

One of the biggest things companies want in this age of technology is being able to achieve the fastest possible deployment speed. This has caused plenty of issues that go beyond the paradigm of scripter, coder, and programming. Even the best of the best have issues with balancing optimization with deployment speed.

Sadly, this deployment speed hurdle has caused many people to enjoy slow, unsafe practices that cause many of the issues you're plagued with in the modern web and even gaming. Ever wanted to play your favorite new game but realized your GPU which can smoothly run games of equal or even better graphical quality can't play it? Welcome to the rat race. I think an amazing comparison is the Doom series and Kerbal Space Program 2 (KSP2).

Despite KSP2 still looking like Sims 2, it requires top of the line hardware to run and even then you might have to be using DLSS. Doom 2016 is a beautiful game with stunning visuals and it requires relatively modest hardware to run. It is in a playable state on a Nintendo Switch.

Optimistic Future

The future of CS can be brought into a renaissance if the professors and students start understanding the reality of what software development entails and how major their actions are no matter what operation is. AI should be banned entirely from programming and left to the people as a learning resource rather than a problem solver.