#CSforWebDev 🚀 #FlySwatterOrCannon 🎯
Hey there! 🌟 So the professor said that doing CS just to become a web developer is like using a cannon to kill a fly. It’s an intriguing analogy, don’t you think? Let’s dive right into it and explore if we agree with that. 😄
💭 To be honest, becoming a web developer doesn’t necessarily require an in-depth knowledge of computer science. You can learn the necessary programming languages, frameworks, and tools through various online resources, bootcamps, or self-study. 💻✨
But hold on! 🛑 That doesn’t mean pursuing a computer science degree is pointless if web development is your goal. It actually opens doors to a range of exciting and innovative career paths! Let me give you a few examples to showcase the true potential: 🚀
1️⃣ Artificial Intelligence & Machine Learning: With CS knowledge, you can build advanced algorithms and models that power AI systems, revolutionizing industries like healthcare, finance, and robotics. 🤖💡
2️⃣ Data Science & Analytics: Computer scientists play a vital role in extracting valuable insights from massive data sets. You could dive into analyzing trends, developing predictive models, or even creating impactful visualizations. 📊🔬
3️⃣ Cybersecurity & Cryptography: In an ever-connected world, CS professionals protect sensitive information, safeguard networks, and develop encryption algorithms to ensure online privacy. 🛡️🔒
4️⃣ Software Engineering & Systems Architect: Building scalable and efficient software systems requires a solid foundation in CS principles. From designing high-performance applications to optimizing code, engineers master the art of crafting robust solutions. 🖥️🔧
These are just a few examples! The field of computer science continues to evolve rapidly, offering diverse opportunities for those who hold a CS degree. It’s like having a whole arsenal of tools, ready for anything that comes your way! 💪⚙️
Ultimately, the decision is yours. If web development is your passion, you can definitely pursue it without dedicating years to a CS degree. However, if you have a deep fascination for the fundamental aspects of computing, a computer science degree will open doors to a myriad of exciting possibilities! 🌈✨
So, fly hunter or cannon wielder? The choice is yours, my friend! 🪰💥
That depends a lot on how broad or narrow you define “web development”. A lot of people with a pure front-end or UX focus tend to come from more design-oriented educations for example. So if you’d define it that way, it does make some sense.
But I’m a back-end dev working on a complex system that’s still part of “a website”, so in that sense I’d disagree with them.
So, it depends on the context.
CS is theory, SWE is practice, Web Dev is a subset of SWE. Industry standard is a CS degree because SWE evolves too fast and becomes outdated whereas a strong background in CS DSA is always relevant.
Your professor like most don’t know what they’re talking about.
Ehh. I do full stack, and these days, the frontend stuff I’m doing isn’t any less complex than the backend stuff.
In my experience, professional academics’ opinions on stuff like this tend to be pretty out of touch cause they’re so far from industry. Your professor probably has never worked professionally on a web application.
Modern frontend is quite complex. React and Angular have an underlying model/state and are continuously updating the page and rerendering it so to speak. You have to think differently. It’s not simple at all. It’s definitely not just HTML and CSS like the old days.
They’re really just different kinds of knowledge—like, yeah, it’s rare to use CS research skills as a professional SWE, but it’s not like CS researchers are spending tons of time learning and developing abstracts for some specific business domain or framework. Your prof’s metaphor is coming from the perspective that web dev is easier than CS, but it’s really just a different thing.
He has no idea what he’s talking about. Guaranteed he never worked on a large web app.
He’s stuck in the times when web development was simple and most could be completed in a day. CS degree isn’t necessary to become a good developer, but it’s helpful, and definitely not overkill
This is an outdated view. The front end used to be the fluffy easy bit. This hasn’t been true for ten years or more. In most cases now, the front end is the bulk of the app.
Web dev is not easy, but it certainly uses almost none of what you learn for a typical CS degree.
His mental model is stuck in turn of the millennium Tripod sites and basic flash intros. Even so, a CS degree would’ve been very helpful even in those days because of Java applets, for instance.
I mean, getting a college degree in any field is like using an expensive cannon to kill a fly. College is not an efficient way to prepare for a job.
Depends, a simple CRUD app with a frontend. Yes his statement is very much true.
Working with a complex distributed backend, I think you will very much benefit from CS.
There’s a broad range of frontend development.
The classic http website stuff – really out of scope for CS.
But even for a lot of backend work very little of what you learn in CS is actually used by the bulk of developers.
While you can leverage CS knowledge for both FE and BE, the bulk of what many developers do day-to-day does not need any fancy CS knowledge.
Once you start optimising things and going very customised in what you actually do that extra knowledge starts becoming useful.
You might have a few Devs on your team that does the hardcore stuff and then the rest just fleshes out APIs and polishes up the UI for the more trivial bits.
That is a large part of why Bootcamps became popular.
Websites these days, if they are not static, are effectively desktop applications that run the browser. Notice how we see less and less native desktop apps these days. I’m sure he’s old and is stuck in his day where websites were totally static, built with only HTML and CSS. Netflix and Youtube are not the same as Aunt May’s bakery website which exists solely to convey information like the menu and location.
An arrogant out of touch academic?
You don’t say?
CS can only help, not worsen your Web Development skills. That said, I became a SWE without a CS degree so 🤷♂️
I mean if you’re knocking together WordPress templates for simple company landing pages then sure, other than the UX modules on some courses you’ve probably got a lot of knowledge and skills going to waste
But the modern web is basically an app portal. You’re probably not just building something that serves static pages or fulfilling basic crud requests
not really because a cs / is degree is pretty much the prereq to become a web developer
Meanwhile my CS prof says sure you can get a 2 year Java developer degree at a local college that will be way easier and less rigorous than what you’re learning right now, but that’s all you’ll be in your career.
Tell your professor your CS degree is your training to be the perfect assassin. You could be sent out there to kill enemies in armored vehicles or you could be sent out there to kill mere insects like flies. You don’t know yet. Sometimes that’s an overkill sometimes it’s not. But remind him there’s also insects like the mosquito who kill millions of people. Just because he’s unaware of other existing challenges doesn’t mean your assassin training won’t come in handy. F him.
What your professor said is true*. What most in this thread are saying is also true. The reality is that it’s an extremely diverse industry where job titles and descriptions often don’t accurately portray the work you’ll be doing.
*It depends on what they actually meant by saying that.
MOST early career / junior dev positions usually do not need everything that a CS degree contains. With that regard it’s definitely overkill.
A CS degree will provide you with the fundamentals that will help you in whatever role you land and will take you far in the field. However, it’s not always necessary, especially in the early career. There’s a reason the industry is known for having boot camp grads and self-starters. With a bit of grit and determination, learning the basics to get started doesn’t take too long. Once you’ve landed a role you can start figuring out what the job needs and learning it as you go along. IMO this should be the more normalized way, get a job, then decide if you need to go to school to get a degree, nowadays though that’s what people do with a masters degree instead.
To a certain extent, I agree. For example, in my uni’s CS program, students had to learn how to write a floppy disk driver in assembly. While I’m sure that gives folks a deep understanding of how software works near the bare metal, that context won’t help much if at all when you’re building a CRUD web app.
That said, a bit of data structures knowledge, and the ability to think about algorithmic complexity, will help most any engineer in most any domain.
Lots of anti-elitism and class hate ITT.
Yes, I agree. The right place to go with CS, esp. if you enjoy theoretical side of IT, is to go to some prestigious places like MS Research, Google, Intel etc. Web Dev is the lowest tier of development carrier, (sorry to offend the feelings of Web Devs) and should not be the target of someone good at pure CS.
There are very few “computer scientists” out there and the ones that are there are mostly in academia like your professor.
So it’s strictly true that you don’t need a CS degree to be a competent web or software developer but at the same time it’s not inherently bad that education goals and professional ones don’t always perfectly align (that’s part of the degree inflation/student loan mess we’re in today but a different conversation).
​
So in the same way that you don’t need an English Degree to be a good writer or a marketing degree to be good in sales your professor has a point but it’s not like you’re doing too much for trying to understand more about the world than what you’d focus on in the working world.
If that was the case then I would have never gotten my current job because I don’t have a specific degree in “Gitlab CI/CD pipelines” which is the bulk of my work for the past few months.
Same way I was talking with my lead with a lot more experience than me and they mentioned how their career has just gone in a way that they really haven’t had to think about databases since college. Obviously we do a lot of work day to day with databases but in a huge org like we’re in it has its own teams and so lots of the raw technical stuff we don’t have to worry about.
Just remember your professors are decades out of the industry.
this the one time a professor is somewhat right. theres a reason majority of bootcamp grads are entering the webdev area
If ‘web developer’ is a wordpress jockey, then maybe.
Modern web development is fucking hard, man.
Any computer scientist job would probably require computer science knowledge
Highly depends but nowadays most people are Fullstack devs, at least in my experience. You work on complex back end structures and web APIs that are actually or can be extremely complex manipulation of data on the client, which some people consider front end work, is/can also be very complex.
Those who can’t do, teach.
This is too broad of a statement. If you’re going to be building CRUd apps, then no you do not need a CS degree to build CRUD apps. But most web development is not simply building CRUD apps.
Most web development you see now is firms building enterprise scale applications which the end users interact with through a web browser.
Don’t be too hard on your professor. Academia tends to lag about 5 years behind industry standards.
I don’t trust academia’s opinions unless they’re an adjunct professor who has worked in the actual industry.
In my experience, the folks who have a CS background tend to be better web developers versus the folks who came from another discipline (or bootcamp).
Adventure, I guess your prof is not held down a computer job in approximately 20 years? Because that’s the last time that would have been a valid statement.
He’s underestimating how complicated the modern web stack has become, but there is some truth that large portions of a CS degree aren’t relevant to web development.
Most CS grads couldn’t even build and deploy a simple website the day after graduation.
Some cannon.
To be honest, that’s most of corporate SWE. Jira and Agile have turned software into a chain-gang job where the individual subtasks hardly require any thought and could probably be done by ChatGPT. All the interesting work gets farmed out to consultants (such as professors) or is done by whoever your boss thinks is the smartest person on the team, who may not actually be.
Jobs where you’ll use actual computer science are rare and almost always require a graduate degree.
I agree with your professor. Web development is dead simple. If that’s your end goal then a quick boot camp should be enough to hit the ground running. With that being said, because the barrier to entry is so low, the industry is flush with web devs and it’s incredibly competitive.
Computer science is focused on studying how everything works under the hood. What are the compilers doing and how can they become efficient? How can you take an algorithm and improve its performance? Calculating Big O notation and understanding it’s implications and how to improve it. How an operating system is designed and what each piece of the OS is responsible for. Understanding the design of various languages; not necessarily how to write hello world a bunch of times, but functional vs imperative languages, complexity when translated to machine code, compiled vs interpreted, etc. How to design AI and machine learning algorithms. Understanding the ethics behind what the output of those algorithms can mean. On top of also learning to code.
It’s entirely possible to pursue a career as a software engineer with a CS degree. After all, it’s what I did. But a CS is degree is going to give you a much broader understanding of the tools you’re using and how to utilize them to the fullest. Could you become a web dev if that’s truly your passion? Sure, but you’d take the long road for no reason. You would have a more lucrative career doing something in the back end. The less flashy stuff. If it’s a website, not working on the UI, but the payment processor. The actual API calls to the credit card company for approval and charging. Maintaining the inventory to ensure accurate levels and so someone doesn’t buy something that’s out of stock. How to scale the back end to optimize cost and ensure there’s no downtime for the end user. Achieving 99.999% reliability and uptime so users have faith in your website. Security in maintaining the application. Automated test suites to ensure the application is bulletproof. Moving to infrastructure as code so the app can be more easily maintained. Maybe if not the backend of an application, you could do data engineering and focus on how to process hundreds of millions of records in seconds and in a performative manner.
With that being said, maybe by web development you meant full stack development? In that case, a CS degree can be more applicable and less of a cannon to kill a fly.
Your professor had never worked.in the industry a day in his life.
I think it’s location dependant. If you’re trying to get into the top technical companies. You need that cs degree, it will help tremendously.
Now for the average developer and dev jobs. I’m with the professor . It’s not needed imo.
Want to make a website? You don’t need a degree or even HS diploma.
You want to work on a team that manages a web application that manages 100,000 financial transactions per hour over 10,000 world-wide servers, ensure uptime, optimization, site reliability, functionality, security, etc., then you need a degree.
You don’t really need a CS degree – physics, math, engineering, accounting, management – these can all be beneficial.