4 ms·
Prof said doing CS to become a web developer is using a cannon to kill a fly
- johnny99k 3y agoI got out of web dev awhile ago and I have a CS degree. It's mostly mashed-together frameworks now. All of the CS type work is already done for you and after a certain point, it isn't challenging anymore, just tedious and mind-numbing. I suppose this happens at some point when an industry starts to mature. Technical expertise required becomes less and less over time. Designers also took over the front-end industry with the likes of things like ember.js and turned it into a fashion show with zealotry sprinkled in. Trying to disagree with someone in the community that supports these frameworks ends in an endless flame war.
- LargeTomato 3y agoI used to think like this but I leveled up and now my job is a lot of talking to people, planning things, helping, and just being present to help the org. My satisfaction with the job has gotten a lot better.
- robthebrew 3y agoAs a non-tech, a little tale: I had to study chaotic attractors in Uni Maths (I don't know why, I was a Chemistry major) in the late 80s. It was horrible, dry, loads of equations and not an image in sight. Fast forward to now and there are Mandelbrot websites! A picture is worth a thousand equations/lines of code.
- tnecniv 3y agoTwo reasons why you probably had to study those: 1. Chaos Theory was all the rage in the 80s. My dynamical systems prof said “you couldn’t go to a cocktail party without talking about it.” Clearly I’ve been going to the wrong cocktail parties. That’s also why you see it pop up in fictional works like Jurassic Park from that era. 2. Chaos gives rise to all sorts of chemistry relevant phenomena that can be modeled via statistical mechanics. The most obvious is thermodynamics but that’s because I’m not a chemist. I know people study chemical reactions from a stat mech perspective, and a lot of people doing stat mech are in the chemistry department. How you get the randomness in stat mech is by approximating a high-dimensional chaotic system with a low-dimensional one to render a problem tractable. In doing so, you lose the Markov property of the dynamics (your rates of change don’t just depend on the current state of the system but all previous states). Non-Markovian systems are very complicated, so the non-Markovian part of the dynamics gets replaced by random noise.
- snapcaster 3y agoTotally wrong, don't take advice on life from professors unless you want to be one
- dagw 3y agoThe problem with statements like these is that the term 'CS' has become so wide as to be almost meaningless. It is perfectly possible to get a 'CS' degree by taking a lot of courses focusing on software design, software project management and UX and interaction design, all of which would be very useful as a web developer. You can also get a 'CS' degree by taking a lot of math heavy theory course, or hardware and compiler courses, which would be much less useful when working as a web developer. The advice I would give is that if you know you want to do web development and you want to get a CS degree, you're best served to keep your end goal in mind when choosing what courses (or even school) you decided to go for.
- deleted 3y ago[deleted]
- mixmastamyk 3y ago> get a 'CS' degree by taking a lot of courses focusing on software design, software project management and UX and interaction design, all of which would be very useful as a web developer. Not part of the CS curriculum. As electives, sure.
- nsvd 3y agoAt my university, these classes are all part of the CS program.
- poulsbohemian 3y agoWhat country are you in? Historically for the various standards bodies (ACM comes to mind) that make US undergrad curriculum recommendations, the classes you list would have been electives. Maybe a current CS prof can weigh in on this.
- deaddodo 3y agoThey may be part of the course set, but they're probably not required or pathway classes. I know, for the UCs at least, you would need to do some solid Java or C++ classwork, along with algorithms/data structures and machine language, at minimum. Unless things have changed drastically in the past few years, there's no way you're getting a CS degree at one of those universities coasting exclusively on UX, project management, interactivity theory, etc; those are electives to broaden your knowledgebase or specialize. Edit - for instance, this is UCLA's core courseload for a CS BS: https://catalog.registrar.ucla.edu/major/2022/computersciencebs?siteYear=2022 https://catalog.registrar.ucla.edu/major/2022/computerscienc... All of the aforementioned are required, even for a project management focus.
- ActorNightly 3y agoIf doing CS = learning all the intricacies of how modern software works under the hood in college and web development = writing common patterns with a few modifications then yes, the prof is right. Modern web dev is mostly passing json around while using common patterns in frameworks like React. My cousin with zero college education was able to get an 80k a year job doing web dev after spending a year doing free bootcamps online and working a few open source projects.
- rekabis 3y agoIn terms of formal definitions, a Computer Scientist is to a Programmer in the same way that a Mechanical Engineer is to a Mechanic. In that regard, you would never ask a Mechanical Engineer to change your oil or your spark plugs in the same way you would never ask a Mechanic to design a new high-performance engine from scratch. Software development is much the same. Computer Scientists (frequently also called Software Engineers) Are concerned with the _mathematical accuracy and precision_ of the software, whereas Programmers are concerned with the _usability and functionality_ of the software. In that regard, they are broadly analogous to my metaphor. As a web developer, you are a Programmer. Your job is to make functional and usable software that meets requirements. While you can also dive into the structural and philosophical rigour of the code itself, that is not your job. Software Engineers have already trod this path by creating frameworks and patterns and broadly-applicable software development guidelines for you to leverage. Many places of higher education, however, do make the unfortunate and highly intentional step of muddying the waters and bringing pretty much everything computer-related under the umbrella of “CS”, when most of it is definitely _not_ “CS”. They do so for marketing and income purposes, and in doing so, do a disservice to the industry.
- mikecoles 3y agoI heard similar to "A computer is to computer science as a telescope is to astronomy". Dijkstra?
- px1999 3y agoMore interesting than the original statement is how many people seem to have a chip of their shoulder/take the statement as a personal insult. The professor is correct in that the majority of Web developers could get by without much theoretical/academic background (and anecdotally, do get by without using those skills/knowledge much) Maybe there's an industry-wide Dunning-Kruger effect?
- PrivateButts 3y agoIf the quality of interns I get every year is anything to go by most College CS programs are still stuck in the 2000s era of web development. We usually get one or two that never heard of git, and it's rare that any of them know what a container is. They can tell me how to use tables to format a page though! Regardless, I know it's due to a lot of reasons, mainly that some of our local colleges are basically extended training programs for the nearby defense contractor, and they don't have an interest in web developers.
- smckk 3y agoI disagree, you are future-proofing yourself as the software development industry has no relatively fixed career-path. What you are using today is very likely to evolve you need to be highly educated to adapt successfully. As we know from Moore's Law, new tech will emerge and it would most likely be based on existing tech you should have learned from school. You are going to be just as well-paid as a networking, hardware or general software engineer and it will look good on your CV. Also this forum is littered with << after all these years in tech i feel like i know nothing >> career existential angst. So learning that stuff in school would avoid that issue. Stay in school kids. ;)
- herbst 3y agoI've stopped calling myself webdev because people seem to have a specific idea of that job. Like a mix of a wordpress pro and a nodejs junkie. In reality web is just a platform I like to write software for. Not making my software less complex. Don't let yourself get confused with these phrases, just do what feels right
- RagnarD 3y agoI wonder if those who routinely get pissed about the ongoing replacement of JavaScript with high level languages compiled into WebAssembly understand that this sentiment originates precisely from the fact that JavaScript code is typically (not always) one big fat hack. But the internet and the web is fantastically important. It deserves the full power of higher level languages written by people who care about code correctness, type safety, security, and all of the things expected in a non-web application. The prof clearly doesn't get that. Unfortunately he has a lot of company.