Computer Science Degrees are Broken
Vložit
- čas přidán 5. 10. 2022
- The usefulness of studying Computer science at college is becoming more and more of a debate - computer science degrees nowadays seem to focus more on the theory rather than the practical programming aspect of CS. #shorts #computerscience #university #college #student #stem #softwareengineer #coding
Lmao DISCLAIMER because I think I've rubbed ppl the wrong way with this short:
I understand the science part of Computer Science, and am in fact currently involved in a very theoretical research project for my final year of university. The bigger point I was trying to make was that the content taught in CS degrees and the requirements for a standard software engineering job can be extremely disjoint (aside from algorithms, data structures etc - for example I'm not sure there are many jobs that use Turing Machines and First Order Logic). Furthermore, the advertising for CS degrees are very misleading for young people who are simply interested in coding/tinkering around with technology. I am not saying that Computer Science should not be taught as a whole; but rather that consideration for people simply interested in joining industry and/or learning more of the practical side should be more significant.
This is a very nuanced subject that I should probably address in a long video, but in the meanwhile can people please avoid getting triggered and saying I don't understand the science part of computer science, thank you xx
yes, we should have specific majors crafted for programming, instead of making everyone take a computer science degree, graduate, and still need to work for 1 year learning a tech stack and software development standards and skills before we are hirable. If we didn't have such a disgraceful education system with Universities just profiteering on young people and not being up to date for the labor market due to prof tenure, and certification requirements making updates to curriculum very slow.
They don’t want programmers - the coding equivalent of tradesmen (plumbers, carpenters, etc). They want the coding equivalent of engineers and physicists.
Some universities call that Computer Science, some call it Computer Engineering, and still others call it Computer Science Engineering (and in some universities those are different degrees!)
Just because you don't use something or some concept taught in computer science in your everyday industrial job there will be that one moment where you'll need that extra knowledge and that's what separates computer scientists and programmers.
You will need the knowledge behind turning machines and first order logic if you go into computer architecture and robotics (which are also a section of research and development within computer science) along with other things like parallel processing, computation theory, markov's principle etc. In short you don't do computer science to become a programmer, you do computer science to further research and development within the computer science sphere and other adjoining spheres like mathematics, physics, neuroscience, cosmology etc.
@@prasen.544 yeah not to mention proofs about undecidability. You'll probably catch a programmer in the wild trying to solve the halting problem.
Computer Science != Software Engineering
truthy
Which is a better choice currently ?
@@rukaiyanishfan8912 knowledge is power
Only someone with comp sci learning will know
@@rukaiyanishfan8912 software engineering, cs degree is for academia and research truly of you are here for money and instant work life , a bachelor's in cse is good if you want to be a researcher maybe do a ms or PhD take cs-pure that has theoretical cs
Because computer science isn't just about programming......
but everybody is getting in to it because they want to be programers :p
@@andreviniciusbezerradasilv9335 no because of salary
Also you don't need a cs degree to be a programmer, even Google hires programmers without cs degrees nowadays
@@ultimo2534 if someone wants to have big figures they should become doctors, politicians or entrepeneurs
@@andreviniciusbezerradasilv9335 politicians don't have big salaries they just steal and what's the problem if some people are willing to do work for only money.dont tell me every engineer is having interest in coding
You want a computer science degree where the computer science part is optional
Either you are not a cs engineer or you are a highschool boi who thinks cs is cool and consider a lable on it that it should be hard
You will not use toc or discrete maths in your daily work life unless you are a researcher or in academia
@@zackcarl7861 discrete mathematics is basically the foundation of computer science 😂 I hope you aren’t seriously suggesting removing that from a CS degree
@@rorymax i didn't ask to remove anything i am talking of its use on a normal sde job
@@zackcarl7861 lol a computer science degree is not only for a sde job. Most companies also value r and d, computational research and much more. You would know if you were a part of a prestigious team like deepmind or alpha ai
@@manikantansrinivasan5261 i am not and neither are 99.9% of other people in the field ,by the way i have worked at orbit , Intel ,and hope to join apple or samsung in few months though so yes i know of r&d sir , and i know what i am capable of , and my limits
Don't forget some programmers who understood automatas, compilers, distributed systems very well actually coded your easy to use languages and libraries.
people just dont want to need maths, reality is nothing would exist as it does today without all the complex shit we learn and its honestly so annoying to hear people complain about it when they do their degree
maths and theory *
Sure, but not a lot of jobs actually require this knowledge.
I can understand why an Intel or an Alphabet researcher might need a deep understanding of math and even physics.
But when companies require Bachelor's Degree in CS and sometimes even "top of the class" or an insane GPA for web-development job or a QA position it gets ridiculous.
@@taan1424 they raise the bar so they can justify whoever they reject
Electrical engineers essentially do this as just one part of their curriculum. Crazy
But..... programming is just a section of computer science, it's not computer science as a whole.
Computer science is the study of the limitations and workings of computers from a base level all the way to higher levels in form of neural networks and Quantum computing
Whereas programming is about telling a computer what to do
programming is about building programs, there are many levels/layers to it, there is a lot of design, workflow, and project management methods and skills you need to learn, and also team management. It is also about learning efficient and effective design patterns and architectures for different types of programs, and also communications etc. There is actually a lot to it, but yes I totally agree, programming is just one part of computer science, but computer science is a MASSIVE domain. You could even argue that computer science also has absorbed mathematics at this point because good luck doing much relevant modern math without computer assistance.
@@martynconkling8876 The bottom line is that programming is just a section in computer science no buts.
Well actually cs and cse are two different things it's like pure sciences and engineering science difference, if you are doing cs for a good job and salary and develop solutions then (even in ai-ml ) you only need basic highschool maths (in a real job that is)
A theoritical cs subject is only relevant if you are someone who thinks :- i am smart i will learn this deeply and do something revolutionary(maybe you actually are good keep going) , maybe you are in research , or in academia only in these 3 cases is cs maths going to be with you
Bro we study chemistry
@@Skeiba best core subjects will have importance forever
deadline induced trauma lol
As somebody who recently did a conversion course where this stuff ISNT covered extensively and mostly applied knowledge is taught I feel like I have a lot of holes within my knowledge.
It's easy to disregard this stuff after you've already learnt it.
As a an engineer whose job is 99% software (i do robotics) i use things i learned in linear algebra, algorithms, data structre and oop almost every day
ew oop 😣
Cap
Hii, I m interested I robotics, which degree did u pursue to get job in robotics?
@@mandirasingha7847 i am a mechanical engineer with a major in mechatronic but i hace a degree in applied math . Probably go to mechanical engineering or comp sci
when someone mentions computer science, i never thought of some hardcore programming subject but rather i think they learn the science behind how computer works which ofcourse alot of mathematics
Software Engineering major is a better option for people who want to be an actual programmer :v
Đúng roài =))
At my university software engineering is more math and more theory than computer science lol. It's also a whole extra year and you get less choice in the computing electives.
@@FrostedGalaxies r u software engineer?
@@FrostedGalaxies Exactly!
SE is even more bloated lol. You have to take so many useless engineering classes like physics and chemistry
The main reason I like computer science is the maths and theory...
Yea bro without math there is no meaning in science
Exactly cs isn’t only about programming
I wish there were more people like you.
Same. I like this far more than actual Software Engineering.
@@dangdrjay3011 *that beautiful
It's almost like people don't go to university for the express purpose of getting a job at a tech firm lmao
Welcome to India 💀
Welcome to Latam 😂🔥
For real, like get a programming degree if your plans are to do programming. Bro doesn't realize that computer science degrees aren't just setting you up for just programming.
Without college, I would never study software engineering, database design, tree algorithm or primitive computer vision techniques. I'm very grateful for the education my university provides me with. You don't know what you don't know, thus you can not learn all you should learn without guidance
Database design and tree algorithms are standard for every bootcamp and you won’t be getting many jobs without knowing database design. Aren’t really university only things.
Which university are you studying?
@@svetliodoychinov5580 yep. That's the point! And why would you bother teaching yourself such a boring subject? I'd make a guess that only 20-30% ppl do
@@obaidulkhan9538 Hanoi university of sciene and technology. Best one in Vietnam, but not globally renowned :)
@@tutan1997 did your university teach you this things?
They don’t require a computer science degree lol. They require experience and skills. If you have a STEM degree, particularly in engineering, it is more than enough as long as you have the relevant skills and the projects/experience to back it up. Junior positions mostly list CS degrees as u are less experienced.. as you get to senior roles, CS degrees aren’t even asked of. Doesn’t mean u shouldn’t work your ass off to learn all the concepts tho.. this ain’t an excuse to chill. Just that the door ain’t closed.
“You shouldn’t have to understand the maths and theory behind computer science. Only coding knowledge is necessary.” Awful take man.
People think that all the math is unnecessary but at the end these people won't be able to work in really hard stuff, because you won't have the answers in CZcams and you need to create the answer.
In most day-to-day coding, there is no maths or theory. Just playing around with text.
@@stevenfallinge7149 “day to day coding” is an extremely broad description. Sure depending on your career path you could be working with code that has absolutely no math involved whatsoever. However plenty of engineering jobs require maths as well as coding knowledge. There is no such thing as day to day coding without any math because everyone’s definition of day to day work is different.
@@dizoddish493 I mean less than 1% of all peoframmers user math. Almost all programmers, like web programmers or even gave programmers, do nothing more than CRUD operations. That involves knowing how things work and how to organize things, not math. Also when game programmers use math, it's geometry, not graph theory. Do you work in a programming job that involves much math? It sounds like you're not talking about a programming job, but an engineering job that happens to involve some programming.
@@stevenfallinge7149 Programmers don't need math, CS grads do. CS grads aren't programmers, they aren't just software engineers, there's a ton of job opportunities for someone with a CS degree and it goes beyond just "coding'. Take the field of cybersecurity for example, modular arithmetics and number theory is a huge part of cybersecurity. And linear algebra is extremely prominent when it comes to modelling and simulation.
Math is the backbone of programming, it's just that people like you rely on the libraries and math that others have done.
Yes, we learn a whole lot of algorithms, recurrence relations, how to calculate time complexity blah blah. In the real world, people don't take the time to implement their own merge sort. They just get a library and use their methods.
You don't need to know math because the math part is handled already by the others before for you.
Theory is not for a person who just want to find a job.
Then what’s it for cause 99% of computer scientists have a job 😂
@@nickxavier828 that’s because they’re just competent individuals in general
@@nickxavier828 from job he ment a job in industry, most ppl who work in theory and researchers and professors
@@DEBO5 yeah, competent people get degrees. That’s why companies value them
I think it’s necessary to learn the core concepts, because computer science is an academic discipline that involves maths and theory. It’s important to understand e.g. machine learning and adapt to new technologies.
In Germany we have an apprenticeship over three years that focuses on teaching you programming and practical experience, since you work in a company from day 1 on. You actually want that to be a valid option in the US to go into tech, rather than a computer science degree without the science.
Take a look on Indias education system of engg 🥲🥲🥲 80%theory and 20%practical 🙃
Doctors have to take organic chemistry and physics yet they don’t use them on the daily job site either. This is a poor take
You're getting a degree, not following a CZcams course on how to make your first game in Python.
Ah yes Who doesn’t love useless information
Well, it's a degree for research, not for programming itself really. Honestly, this is the company's fault for not finding out what the degrees actually teach.
But the python game is harder
@@Superbluekoolaidprime useless? Without all that theory our world would be different today
There is a degree like that. It’s called software engineering. These large tech companies should instead list both computer science and software engineering as desired degrees for their roles
Their postings for these jobs do say that computer science, computer engineering, or other relevant degrees such as electronic engineering is also valid.
Come over to Australia, most of the big companies here stopped caring about the degree requirement 😊
Don’t you have to put hours to study though. How long does it take to be self taught a language?
@@knowledgeiskey4087 you do have to put hours of study and practice, yes, but that's true for any job and anything you want to be good at really. For some getting a degree is just not realistic due to location/financial situation so I think it's great that companies acknowledge that instead of dismissing self-taught engineers by default.
@@knowledgeiskey4087 and to answer your question about how long it takes to learn a language: it will be different for everyone. Generally picking up new language after you know one in a given paradigm is easy, learning your first language in a new paradigm takes completing a couple of different small projects before you're comfortable. But there's much more that goes behind being able to develop software other than just knowing lanaguges. Easier to learn at uni, still possible as self-taught :)
@@KaroCodes become a monke
Same for most big tech firms in the US but a degree is always good to have
Colleges used to be a place for higher learning not a place to get a piece of paper that proves to interviewers that you might be worth interviewing.
but even cramming a bunch of theory when you are in an undergrad before you have any programming experience is questionable.
Hot take - learning fundamentals of comp sci theory and computer architecture and org as well as networking basics will serve you very well when it comes time to actually work in the field. Doesn't matter if you don't know jack fuck about the framework or language you're working in, you will be able to get up to speed very fast because you have the theoretical foundation to do so
I’m doing Computer science in Mexico and I learn both theory and programming. I have a C++ class which I enjoy a lot tbh
Mate im having such trouble with C++ simply because I don’t know how to study it. Is it simply just memorization and practice? Or should I take notes down and of what??
@@LEKSANDER01 I’ve just been practicing. I started with simple problems like addition between two numbers, etc. Practice is key. I sometimes find myself not knowing where to continue but I just move on to harder problems and use google a lot
@@Michael-zh3op okay thank you so much brother, I appreciate your response!
Those classes are what sets you apart from bootcamp graduates lol
That’s why I’m taking applied computer science.
software engineering is kinda what hes pointing at.
Tell me you are bad at math without telling me you are bad at math
I don’t think it’s the fact that computer science has too much math and not enough programming but rather the fact that big tech company put comp sci as a requirement when they don’t really know what comp sci is exactly. Like you literally do more programming and software development design in an information technology degree than a comp sci degree.
Like if you’re building a front end application you want someone with an IT degree but if you’re building a low level backend degree than you want someone with comp sci. But even then someone with an IT degree still has a a lot of knowledge about low end programming, I know in my IT degree we had to do Operating Systems Programming in C on Linux.
I don't understand why people who have very little job experience talk about stuff like this with such confidence. Don't get into computer science if you can't handle any theory
If you spend 2 to 4 years learning theory and you walk away thinking of it as “bloat” then I’ve got bad news for you.
A good degree is proof that you are willing to put effort into something boring and hard for a lon time, which is what these companies are looking for
It is because anyone can learn programming language, but it's hard to complete a computer science degree as it needs dedication. Not just one year dedication, it needs at least 22 years of dedication until finishing university
Yeah 100% but using programming for complex projects that utilise the theory being taught is something that seldom happens in a degree now; there tends to be at most 1 major project completed that often involves heavy restriction in terms of creativity, and further is generally received as a nuisance due to students being required to complete said project in parallel with copious amounts of theoretical based assignments. I definitely understand your point but I feel that degrees can still involve more practical elements whilst not being "unworthy" of the 22 years spent to get to that point, and such a change can prove to be very beneficial in regards to what many students taking these degrees actually want.
It’s actually because they can make you pay for more classes, room and board, etc
@@itisAbhi you get an internship to get those practical skills. The university course is for theory... it's like this no matter the course.
@@technolus5742 ok… so how will the theory actually affect my career?
@@ytdl It will increase the quality of your work, and the ability to work with more fundamental/complex/theoretical constructs. Those things translate into your career. Of course the knowledge acquired in a degree is a tool and it all depends on your ability to use it and on the task at hand.
People say this about a lot of degrees and what you got to remember is not everyone does the same thing with the same degree for instance I am a legal studies major, I learn a lot about legal Theory and legal history and I learned a little bit about how to do law. If I would have graduate I would get a job as a paralegal where I would do law. But I'm going to go to law school where I will learn a whole bunch about legal theory, quite a bit about procedure for criminal trials as well as for civil trials and I will learn a very tiny amount about the specific state law that I am in and I will learn an even smaller amount about my specialty. I'm going into employment and labor law, 2/3 of everything I learned is useless right? No no not at fucking all I thought I wanted to be a constitutional lawyer I learned that I don't like that as much I learned but I don't find it as interesting, and when you have to read 100 Pages a day every day for the rest of your life minimum about something and file 50 fucking forms about it a week minimum, you really need to love it. The bloat is teaching you about everything so you can know where you want to go it's also about exercising your brain and teaching you context.
I'm using speech to text so take these commas and put them where you think they should be
,,,,,,,,,,,,,............!
Love to see University of Waterloo there ❤️❤️
I mean our program added a HELL of a lot of public speaking because companies came to the university and were like hey these kids are terrible speakers.
The issue is, software engineers build everything using things mostly developed by people who got CS degrees and did a lot of theoretical stuff.
Doesn't mean that one is better than the other, just that both are necessary.
Considering this, the issue is that between "doing a lot of theoretical stuff" and "making apps, websites and bloated software", the latter is often times the most attractive to people.
Focusing only or almost only on that part would very likely lead to many people never discovering more theoretical CS subjects that are vital to the industry which they might've liked and made a very good living out of.
I'd much rather be taught CS and more advanced topics in uni, learning directly from researchers in the field, *then* learning all the frankly easier, less involved API, library or framework stuff for and on the job; the reverse order sounds like a recipe for wasting countless hours.
It's not the issue with the University teaching computer science
It's the company's demanding you to have a computer science degree despite having little to no use of it (like seriously, a random guy from 1 year of bootcamp can outperform a university student when it comes to software development)
Anyone can be a programmer, with a CS degree you can do so much more than just programming. You are an engineer not just a programmer.
Sometimes I think about this, but I will say that having strong Mathematics background (and some other theory) that you learn as part of CS helps a bunch in some areas.
it's not that the computer science degrees are broken, they are teaching what computer science is, and software engineering is simply applied computer science. and most of software engineering is not very computer sciency. that is why there are degrees called software engineering that teaches the more practical stuff, and some computer science degrees should rebrand to software engineering
At the end of the day, its a BSc, or a science subject, not necessarily an Engineering one (BEng) and so it's more the study of how computers work, than just applying concepts to directly solve software problems.
Other Engineering subjects teach theory that can be directly applied to fixing that problem. An electrical engineer doesn't study too much on how electricity works, but more on how to apply its baseline concept to solving engineering problems.
But you can say the same thing about -everything- a lot of things we learn in school, most of us won’t need all that information taught to us for our day to day life.
Not really tbh. If you don’t know what a cell is or a basic idea of how it works, if you don’t know on a basic level how gravity works or how objects move, if you don’t have a basic concept of history and know some of the things that have happened in the past, or how to do simple maths (and, indeed, it is rather simple even at the highest pre-uni level) then tbh I don’t think you are prepared for the world. It’s not just about using these skills (but is also is about using them), it’s about your understanding of the world and not being ignorant. It’s about being an educated and civilised person who has the capacity to appreciate things outside of your narrow worldview
Not to mention that what you actually learn pre-Uni isn’t the only point of school, by far not the only point
@@redandblue1013 I think you took too much emphasis on the world ‘everything’ from what I said, guaranteed I could have worded it a bit better but even then those points you’ve stated above I’m pretty sure there are many adults out there with minimal knowledge of all those concepts and still have decent paying jobs but I’m not saying we shouldn’t know those things, we obviously should. My statement is just that in general for an average Tom, Dick and Harry, we won’t need more or less 90% of what we learn in schools (even teachers have told me that) and yes it does fluctuate on the type of career you have but for most people out there who are mainly doing basic office jobs, they wont need or use most of what they learn in school and a lot will eventually forget them and moreover it’s not like they’ll get unemployed if they don’t know what a cell is. Furthermore, say suppose you learn calculus in school such as differentiation and integration but you go to uni and get an English or a law degree, all that maths you’ve learned in school you won’t need it for your job or probably for the rest of your life.
Edit: For people reading this, don’t get twisted from what I said and think I’m against school or anything. I’m a big advocate for school. My argument is just that we won’t use most of what we’re taught in school but we still need to learn all those subjects and concepts so that we can choose what type of career we can streamline into from the type of subject we enjoy.
Those underlying theories set you up with the ultimate foundation for anything related to computing. I’ve seen it first hand, people with CS degrees always have a much easier time learning anything tech related than those who are “self-taught”. There’s no shortcuts, and to really make it to a high level in this field you need to understand the theory and mathematics behind it all.
I’m sorry but that second part is such BS. People who are self-taught are just as capable if not more capable than those with a degree. Going to college doesn’t mean you are any more capable than someone that decided to teach themselves. I do, however, agree with the last part. There are no shortcuts-whether you go for a degree or teach yourself.
Lol what about the "self taught people" who have taught themselves computer science?
I think the problem is companies saying you need comsci degree when all they do in their job is copy code, unless you are in NSA/Academia/CERN working into some breakthrough sht.
best software education in the internet is the 01-education because 1. it uses a self learning meathod 2. you need to write code that could pass the test 3.there are helpful videos that show the function that u are about to use and how it works
At my university, computer science and software engineering are two different majors.
I think they should just make a separate applied CS degree
And then everyone would go for that one lol
@@pepperdayjackpac4521 Not really. Some of the best paid jobs like Data Science and AI/ML research wouldn't be suitable for applied CS grads.
@@Beyondarmonia oh that is true
@Exyss ;-;
@@Beyondarmonia I don’t think academic AI research pays well at all. Or did you mean industry?
If you want less abstract concepts do software engineering. Computer Science is for those who would prefer a more academic career and want to create new algorithms and computer architecture models which can actually contribute to keeping a computer job once you're 10 years in your career. There's a huge difference between a simple developper and a computer scientist.
This is so true. Its literally in the name computer “science” youre learning how to become a scientist not a programmer
I'm a senior student about to graduate with a degree in computer science, and I'm finally going to this realization.
I initially joined because I thought I was gonna be taught how to make facebook, and instagram clones, lol.
Everything I've learned has pretty much been nailed down to HOW a machine stores its data that is fed into it, at the end of the day it's just binary(0,1).
Data structures teach you how to store this data efficiently. Along the way the assignments you are suppose to implement some of the most basic structures that do this, e.g. a self balancing binary tree in C++, which makes it a struggle because of segfaults, pointers, and memory leaks which could tank your grades.
Not once have we been taught how to make a website or an iOS app. You're expected to do it yourself.
@@jag849 Yeah if you want to do apps and websites, software engineering is better
@@jag849so is it good?
It’s like why Elon or meta asked swe for screenshots of their recent code and laid ppl off if they had least code. Even tho that is not indicative of an swe’s value, it is a filter they use to narrow down the list of candidates in a somewhat-justifiable way that is quick and easy
oh naur isn't less code better because you're not repeating yourself?
That stuff shouldn't be remove. If it isn't important, the companies have to change, and ask for something different.
Most of these companies accept people without degree... This guy wants to turn university degrees into bootcamps lmao
You don't need a degree to program. you can still start small and work your way up from associate to developer and then senior roles too, no degree needed
What he wants: "a degree where you are not required to learn the material in the course"... makes no sense
It's even worse because half of the time, you have to complete "general education" courses if it's in America.
Basically it's 2 years of bullshit like philosophy/ethics before you even get to degree relevant subjects.
Ah yes I have heard abt this 😂 sounds rough
I promise you ethics are important and relevant to technology
I’m taking CS in Canada. Have this exact thing happening. We call them “liberal education” classes at my university.
No that’s not true. You take your general classes along side your classes for the major.
Same here in Europe. Whole first year spent on philosophy and similar bs.
This guy never fails to show he doesn’t understand computer science
I have to take math courses with dyscalculia from my ADHD and autism.. CS is my favorite subject but I’m so shit at math it should be made optional. I can do abstract thinking and what not; its why I can code. But man, this major is not easy with my disabilities.
How do you think i felt having to take maths for my MUSIC degree 🤦♀️ at least most of my professors understood dyscalculia and would mark my answers correct if i had the math right, but just transposed numbers. After college i ended up in software engineering instead of music 😅
this is my first year at BSCS and I can already feel the pressure.
A lot of useless information being taught
@@nickxavier828 disagreed. whatever u call useful is just a result of theory. there is literally no point in studying stuff without knowing the theory behind it
As mentioned, jobs as software Dev/engineers only really need you to understand coding languages, tools, and development workflows like agile. All of which can be learnt for free and through on-the-job training. The idea that you need theory to code is complete false.
However anything in the realm of research, data science, networking, algorithm analysis and optimisation, hardware engineering, anything which would consider you to be a scientist in the field of math, physics and computer science, would require a solid understanding of theory.
I agree. Despite my strong liking to theoretical CS and Computer Systems, I find that most of CS is useless to what firm want, and requiring it seems absolutely wreck of process that the corporates have created. Most of my classmates don't give a shit to class other than scores
Pov you don't know that Computer science (CS) and Computer science engineering (CSE) are two different thing.
Passing through the generalized Theory of a CS degree proves that you are able to absorb information to excel in the workplace where tools and processes are often industry specific.
Not every good programmer needs a degree, but I’d wager that everyone with a CS degree has the capacity to be a good programmer.
About that last sentence, I'm almost done with my CS degree and some people legit still have trouble remembering to put semicolons and don't understand the difference between compiling and working. You can get the degree while being completely useless as a programmer just because you're able to get the theory right.
@@uwirl4338 the people who are not are even worse off
Non-fun fact: Actually working and interviews require different skills.
You can get a programming job without a computer science degree but the ones that demand it pay according to it and they need the skills from that degree. Firstly, a degree teaches you much more than its contents: truly understand hard problems by yourself and solving some, dealing with extreme pressure, finding your interests, working scientifically and writing solid proofs,...
Furthermore, many of the theoretical stuff is important. Understanding how the os handles interrupts, multithreads and multiprocesses, cpu caches like arrays benefit from them and linked lists not, how writing to disk get cached and what that means when the system crashes and so on. This all affects your program and its performance.
Turing machines, the different types of grammar, P!=NP, pseudopolynomial problems, relative and absolute approximations, how you transform a problem into 3SAT help your understanding of problems and algorithms and give you the tools to prove that your new problem can't be solved in P and therefore finding an algorithm for that is pointless (under the assumption P!=NP complete). or it shows you that trivial things aren't trivial like context free grammars aren't closed under compliment or intersection.
It's called computer SCIENCE for a reason and programming isn't it main focus
There is a reason why they call it Computer SCIENCE rather than software ENGINEERING. But I understood what you wanted to say
Some one finally said it online ,😂
Theory is extremely important
The whole point of Computer Science is literally the theory behind computing. This video reminds me of people that complain about the Mathematics in Computer Science, there is a massive difference in coding something; and programming something. Us computer scientists are taught to program, which in turn, involves a lot of Mathematics and Theory.
It’s not bloat, theory is very important. Coding is only necessary once you understand theory a lot programmers are that just programmers. Software Engineers understand the theory and utilize it to design systems and only once all of it is designed do they code. Now, I do think there should be more elective focused branches like software engineer, ML, … etc.
I'm a computer science Education major and yep CS is like the holy grail
This is such Junior dev talk. Get to high enough level and you would need this. People who invent real technology need all of this information to build stuff. Tiny brained app makers don't.
As a software engineer who skipped college and went to a bootcamp instead, I find there is some benefit to a CS degree, but nothing that a couple years experience can't make up.
You are mixing computer science with computer engineering. There’s a huge difference
It's all about how much you can relate what is being taught in those theory classes to the real world.
cs students when they have to learn computer science: 🤯😱😭😡
Yes. I have a masters in software engineering and it’s shit.
I also went to bachelors for computer science and quickly realized it’s all theory and teaches you nothing practical so I switched to IT and made projects on my own time.
I don’t have a job yet but I know a lot and nothing came from my degree. It all came from self study and self practice. Maybe 10% came from the degree. It’s so shit
You get a CS degree to become a computer scientist or engineer. In big techs you are not implementing others algorithm you are creating you own
I feel like those who have a degree have almost always had a stronger grip of the fundamentals than those that are self taught.
Not trying to say that you can’t have a strong foundation without a degree but hard to bash the ones who do have a degree.
On the same note, almost all tech firms DON’T “require” a degree. If you have comparable achievements, they are willing to overlook you not having a degree. It says there in the eligibility criteria of most tech companies.
In my college the degree's on Information Technology and we are taught both computer science (computer organization & OS's, networking, math, algorithm analysis, data structures, databases, etc.) and software engineering (SDLC, Agile, OOP, web development, etc.) at the same time!
Just go to a college that focuses on application of the degree rather than theory. My school, MSOE, has freshman hit the ground running coding from day one. I may not be a CS student, but as a CE I still take CS classes such as software development and datastructures. Just look at the school's program and academic track and you can tell if they do applied learning or not.
People forget that computer science falls under most colleges engineering departments… it’s an engineering degree… which uses lots of maths and theory
Yea but then again math in cs is nothing like math you learn in school..
@@cugloo4281 I think we need to separate programming and computer science. Programming is computer science, but computer science isn't strictly programming.
In my university its in the science department, with pure math, physics, chemistry, I fk love that
Yeah man I agree, sitting through a class about algorithms and logic trying not to rip my eyes out the sockets rn.
Because the programming part can easily be learned on the side. The theory influences the way you approach things. Coders without theory are often deficient in their approach.
Totally. Things you should learn: Using Git, building a crosscompile environment, creating an installer and a bulk deployment tool, debugging using gdb, using docker, writing cmakefiles, and way more integration and build environment tasks instead of drilling algorithms you'll likely never need.
Universities are marketing CS degrees as a career starter for Software Engineering, when the latter is really just a subset of the larger discipline.
Learning calculus, linear Algebra, combinatorics, and even data pipelines doesn't actually do anything to get you a job.
yeah I totally want people who don't even understand vectors to be working on the software within my computer
@@beachwave5705 I've been coding professionally for 4 years, I've never once used a vector. Try again.
@@nickboy7919v[10]? v= 5i+4j-3k?
gru's enemy? what kind of vector we talking about?
I havent really had to do any theory stuff within my degree, weird
engineering jobs require physics and math the same way software engineering jobs require computer science
Keep the theory in CS it's computer SCIENCE. Make programming into a trade and be done with it
Yeah you think this until an intern pulls e entire database tables putting each entry into their respective list then for each item in one list they iterate one by one through the other lists to combine the objects.
Me:"Uh... hey man... do you know what a hash map is?"
Intern:"no"
Lol crazy how I understand a bit of that code you flashed for a sec
Google literally say that they don’t care about degrees. They’ll hire anyone who can complete their interviews.
Edit: It’s Google, Apple and IBM 💀💀
Not here, and they say they don't need degree, but instead experience, now where tf should we get experience if no other companies hire. There are still many ways but most of them are a lot tough than with a degree
@@sripranav you get an internship first, it's really easy afterwards.
@@rumertey bro you need to be in college to get an internship lmao
@@davidlaidbiggestfan212 I didn’t
Lmao what, every job listing I've come across from apple and Google very clearly state they require at least a bachelor's degree in computer Science or an equivalent field
I work as a software engineer and have been doing so for the past three years, I do not make much use of my algorithms classes much, as most complex algorithms have actually been implemented in much better ways than I ever could, given the time I have to do it. However my theoretical background allows me to look at specific problems with more insight (performance, compiling, optimisations, data structures, feasibility) and is actually what makes me valuable to the company I work for. There is a good reason why big tech hires computer scientists as SEs.
Can anyone get a job without any degree?
This video is really depreciating the education system. The reason why a lot of theories are taught in university is to make u understand the subject of matter, so when u fully comprehend it, u are able to re apply it and possibly improve or generate new knowledge... which is research...
Core subjects are needed no matter what
A degree is not about being good at the theory. It’s about showing that you have the necessary discipline
Here in the U.K. most graduate jobs for software engineering, data science etc basically just require any STEM degree and also ask that you’re fairly okay with a coding language or two.
They place you onto a program of their own that could last upto 2/3 years that teaches you the rest.
My uni offers a degree called combined STEM and you can choose any STEM module you like.
A person's degrees (or lack thereof) never tends to come up when doing tech mergers and acquisitions.
Theory is important, your a cs not software engineer
Yeah. I'm an engineer but I barely learned anything useful and when I did learn there was so much crap in such a short time with too many things at once that i barely remember any of it.
Well idk i have see those self learned programmers who dont have any concept of code complexity different algorithms and write just bad code.
Because high level coding doesn't just mean that you are able to create some variables and modify them and also some lopps, but there is sometimes needed to understand code complexity.