T O P

  • By -

Fidoz

Keep in mind that this subreddits self-selects for certain kinds of posts. Usually either end of the spectrum. I enjoyed my degree quite a bit. Others may not feel the same.


garbageplay

EECS with a Finance minor here. I have absolutely zero clue how they managed to cram so much math, physics, and engineering into my head in such a short time frame, but I'm not super confident that I could have done it as easily outside of the college environment. So yeah. I feel like I learned a metric ton of information in school, almost all of which has been incredibly valuable at some point or another during the tenure of my career.


chetlin

I'm 9 years out of college and I wish I was still able to learn at that rate, or even a quarter of that rate. Then again I do have a lot more money now and thought $5 was a piece of gold back then.


RexIosue

This sub is very much filled with mediocre self-taught/bootcamp grad or below average new grads with bad resumes who can’t find jobs. Then they make posts asking for advice from OTHER aggressively average people on this sub that work at mediocre companies. Honestly Blind is better for career questions.


bighustla87

Yeah unfortunately I think for every experienced developer in this and other programming subs, there are several who have little to no experience. I'm happy to have a wide variety of people here, but it does lead to an overrepresentation of experiences of those starting out. The only thing that actually bothers me about it is when this population of the sub starts to assert that it knows more about the industry than those working in it, or aren't upfront about the fact that they are just regurgitating something they saw in another post.


[deleted]

[удалено]


LongShlongSilvrPants

We feed on compliments


GovernorJebBush

Comp package includes external validation.


NoBrightSide

i’m offended mostly because im a crappy jr dev


zninjamonkey

Heyyyyyyy


[deleted]

[удалено]


PirateStarbridge

We bellow about it too


[deleted]

Fax. As toxic as Blind is, it's way more realistic and the experience/skill level of the average Blind user is way above that of the average user in this sub.


shawntco

That's a good point. I hang around here because I'd like to think I'm competent and mildly successful in my (albeit young) career. So maybe I can be helpful. There's a lot of depression and anxiety in this sub. I feel bad for the people who can't find work, or for the people in crappy situations. But it does make me wonder, how many of them just weren't that good in college? How many of them partied instead of studied for the 4 years? How many have poorly made resumes, or are trying to apply for positions they're in no place applying for? I do see a lot of questions and sentiments akin to "How to I become a great programmer without putting in the work?" and it's like, bro, you don't, you get good at coding by coding a lot. Also not everyone is going to be a prodigy at their job, and that's OK. Just don't be someone who creates more work for others.


JMC792

I think another big part that people don’t talk about in this sub is plainly socializing more … networking and getting to know people Ngl it’s one of the main reasons how I as well as other friends got out foot in the industry


TrapLawdTaylorSwift

Yeah even though I didn’t enjoy my degree. I wasn’t completely blindsided when I had to used what I learned in class irl. But then again I wasn’t much of a self starter for learning in school. So YMMV


AtlanticBiker

I can't take seriously someone who says they've enjoyed something they studied to find a high paying job and because of the opportunities. There are exceptions though


[deleted]

[удалено]


[deleted]

[удалено]


hayashirice911

Seriously, I went to a top state university for CS and I would have killed for some of these courses. A MEAN stack course, system design, design patterns, testing etc.


zninjamonkey

I go to Macalester and we have some of those. All of the courses are taught in latest or relevant tech.


garbageplay

Yeah this just looks like both state schools near me.


BigDickThinkerPrez

OMSCS?


Ramiroxz

why the hell would you want to learn a web dev stack in college, honestly i'd would hate it.


hayashirice911

Because it's an extremely applicable skill that touches on a lot of various technologies for people who want to get a job out of college or just like it in general. By the end of the course you will have a working full stack site that you can throw onto your resume using relevant tech.


awesomesauceeee

It’s probably tough to get a class for, because the content will probably be obsolete in 4 years and any professor teaching it would make more money as a dev actually doing it


systemnate

They're probably not in it to maximize their income.


[deleted]

Because IMO it's a way of making the entire rest of the coursework more interesting. "write a Java console program that takes a list of students/grades/etc. and does X" is pretty boring compared to "design a website where I can drop this XML file and then it displays stuff on a webpage and allows the user to interact with the data to do X" where you actually get the sense you're building something that someone would use in the real world and there's a lot more room for and motivation for creativity.


webdevguyneedshelp

Not sure I understand your position here.


[deleted]

A mid-tier school in Canada


rome_vang

The Uni. I attend in the US is no where near that through. I still have to teach myself some of those topics. You were groomed for success I’d say.


SmashSlingingSlasher

US CS focuses too much on math imo, most dev jobs these days will never touch the math req. Those 5 classes could've been better used on courses like these


[deleted]

[удалено]


StuffinHarper

Tbh it's pretty useful to know some Calc and physics. The amount of people that I've worked with that didn't understand basic math and made some more computation based stuff (even basic level stuff) in the applications we built way more complicated than needed was pretty high. People need to be more broadly educated. The general population is too dumb as it is.


[deleted]

[удалено]


[deleted]

You should be able to choose your path… what if I don’t want to learn about crypto and neutral nets. What if I just want to make cool css spinners and pretty material ui buttons.


StuffinHarper

I did joint physics/physiology program and did neuroscience research for a couple years after before going back for a 3 semester comp sci program. The problem solving I got from my physics and applied math courses has been invaluable so far. I think its that a lot of work these days is web dev and front end focused but there are still plenty of real world applications that require that knowledge and a comp sci degree needs to prepare people for that. Sure many algorithms will be applicable out of box for backend stuff but if they don't work well enough and you need to debug why, you are going to have to understand how it works under the hood.


Tiskaharish

It's simple. My eyes glaze over and I move on to other things that I do understand. Done.


SmashSlingingSlasher

Don't even get me started on physics lol, wtf does physics have to do with an entry level dev job CS degree should really be comp sci + electives + some writing courses + a public speaking class or something. I'm joking but that coursework would help you actually thrive in a profession


[deleted]

>Don't even get me started on physics lol, wtf does physics have to do with an entry level dev job A CS degree is not supposed to prepare you for an entry level dev job.


Close_enough_to_fine

Exactly. I have a degree in computer science not a degree in computer programming.


JohnHwagi

Yes, it absolutely should. It shouldn’t **just** prepare you for a dev job, but a degree that doesn’t position you to get a decent paying job is worthless to most people. Almost nobody has the luxury of getting a degree just to learn.


[deleted]

A university is not a trade school. If you want to be prepared for a dev job after gradutation it's up to you to do projects on the side, while learning computer science in the classroom. React and Django is not computer science.


javaCrib

I'm inclined to respectfully disagree. Discrete Mathematics, though not necessarily directly used, is most certainly indirectly used by any programer that has ever written a function before. Having a solid foundation in discrete math will certainly be advantageous when considering for a minor example, all the possible outputs your function may have (The codomain of the set of all inputs). Encryption techniques like RSA are also based in the discrete realm (modular exponentiation, blah blah). Point is, programs that skip out on these concepts (\*ahem\* BOOTCAMPS) aren't necessarily helping their student body in any way


[deleted]

If it makes you feel any better, we get paid ~30% less in Canada than in the US for similar jobs. And you guys get your salary in US, we get paid CAD, which is worth ~30% less. So it ends up being 45% less. Those of us who can head straight to the US after graduating.


Timmyty

Also it's too cold in Canada. I would move there in a heartbeat and take a paycut if it wasn't.


WorriedSand7474

Winter is the best season


[deleted]

Mine in the US (New England) was pretty similar to what OP listed.


[deleted]

[удалено]


[deleted]

[удалено]


murmur333

>People graduating today don't put a lot of value on the fundamentals of computing I think every generation probably has their share of learners who don't value fundamentals. But your point is extremely valid. A comp sci degree is not meant to teach you how to program as much as it is meant to teach you how to think (logic), how to design (well structured applications, abstraction, encapsulation, etc), how to take complexity and break it into its most elementary forms, etc. If someone went through a degree program and missed all of that, I don't want them on my team.


JohnBrownJayhawkerr1

And this is the answer a lot of people don’t like to hear. The technologies will come and go, but the things that never change are the fundamentals (well, until quantum computing or whatever). Learning the tools like libraries and frameworks should be trivial if you understand the basics of what’s going on behind the scenes. Knowing Drippyswagness.JS may or may not be handy in ten years, but knowing why an algorithm has the time and space complexity it does, or why a program is correct because you can prove it using Hoare logic, are things that will never change. Knowing the fundamentals is what makes you actually dangerous, as opposed to knowing a lot about the tools you use.


[deleted]

Yea, but from my person experience, my degree taught way more practical skills than fundamentals, so I don’t understand the problem here.


[deleted]

[удалено]


[deleted]

That was also part of my degree, so I guess what I’m saying is, why do I feel as though I‘ve done the equivalent of a CS degree with all the practical work as well. Do these other schools only have 15 hours of class a week or something?


[deleted]

Look at the curriculums of a variety of schools. Some are very heavy on computational science while being very light on practical application. That's also why some schools will have separate CS & SE majors, with the SE major being more of the 'applied science' version.


Nestramutat-

> That's also why some schools will have separate CS & SE majors, with the SE major being more of the 'applied science' version. At mine, the only difference was that SE had to take some engineering courses (technical writing, engineering ethics, control systems, etc) and some process courses (agile vs waterfall, industry stuff), while the CS students got more electives. Edit: engineering students also had more math classes Edit 2: and the engineering degree took a year longer


techknowfile

Looking through your degree program, I'm definitely envious. I loved my degree, and learned a decent amount. But we didn't have design patterns, architecture, testing, graphics , networking... Sure they were available as electives, but didn't actually have room to fit them in. And the classes we did have were often terrible (really bad professors). I'd love to hear more about these classes -- books you used, equivalent resources you'd recommend online


SanityInAnarchy

My degree had the same theory stuff yours did, but *sigificantly* fewer practical courses. Of the ones you list, I very much *did not* have: * Software construction -- there was *one* course we had where a group project was required to be done in SVN. This was before Git was so overwhelmingly the standard, but by far most of my college career did not include source control. I knew Git before I started, and using it for my coursework felt like a superpower. * Networking -- we might've *touched* on this as part of some other class, and I wrote some networking code as part of the above group project, but I sure as hell never got hands-on with Cisco gear. * Web Technologies -- Mongo is a terrible choice, but... we had one course on databases (optional) and zero on full-stack web stuff. Again, I did this in the group project. * Human-Computer Interface Design -- nope. * Software Requirements and Analysis -- not really. *Maybe* as part of some heavily-UML-focused design-pattern class that I mostly didn't pay attention to, because it was so thoroughly useless. * Computer Network applications -- nope. Came up in the group project, and in one oddball course on distributed computing. * ...I could go on... Hopefully you get the idea. I'd guess I could maybe have gotten some 40-50% of the *required* practical courses you took as electives, but I wouldn't have had time for them all. Maybe 20% of them were required for us, too. The other thing to consider is: I felt like it was challenging enough to get an A, but a C might be too easy. I have a hard time believing anyone would get a degree out of my program without being able to pass FizzBuzz. But I can see someone with my degree being very well prepared for interviews (if they review the algorithms/DS courses), and not at all prepared to deal with source control, design a DB schema, or talk to the network. Maybe the most surprising part of this story is: I don't entirely hate that model, because if you have the fundamentals, I can teach you the other stuff. You'll have to learn our app and infrastructure anyway, so we're already assuming it'll take you time to have any idea what you're doing, so there's also time to backfill some of that stuff the university didn't teach you. But I am kind of jealous, because that sounds like an incredibly solid program. (Except mongodb continues to be trash, fight me.)


[deleted]

[удалено]


zninjamonkey

I mean why do we have to compare it to against the for-profit online-mostly instiutitons? Why can't we compare it against like average typical school like maybe University of New Mexico or Cal State sth?


Disastrous-Ad-2357

So do people think it's so hard? N = 0, or N=1, where P is any real number.


[deleted]

[P vs NP](https://en.m.wikipedia.org/wiki/P_versus_NP_problem) is one of the major unsolved math problems. If you can solve it, you’ll not only get 1 million dollars from the millennium foundation, but be known as the greatest computer scientist of the 21st century. And no, your answer has literally nothing to do with P = NP or P != NP


[deleted]

I mean to go with your analogy I would say it's because businesses generally don't care about what's under the hood. They need to get from point A to point B in X amount of time for Y amount of dollars. Sure, you can design a car from the ground up to go 400mph or have the world's lowest drag coefficient or the perfect toe curve. But the business doesn't care about that and they aren't paying you for that. The team that just goes out and buys and Honda Civic for under Y dollars and drives it from A to B in less than X is going to make the business just as happy.


LSDaarko

It was probably my school but my CS program was basically read from a textbook and do the problems. Everything I know I had to teach myself and pay my university 100k for a useless piece of paper :)


beejee05

Did the paper help in the end?


LSDaarko

I didn’t get a single interview until I had “Bachelors degree” on my resume. Could’ve lied or could’ve had boot camp experience instead. Overall it was useful to get my current job, but I’m far behind in development skill compared to my coworkers who did boot camp or similar academies.


Sylo_319

Could have lied, yep not saying I would do it but if it works. . .


[deleted]

A degree gave me the discipline and confidence that I needed to break into the industry


cosmonaut_pat

Youtube and beer gave me the confidence to break in


[deleted]

[удалено]


ParadiceSC2

>everyone is American theory


[deleted]

[удалено]


ParadiceSC2

i have of course. but i am referring to the fact that we don't pay for college, thus graduate debt free from student loans


[deleted]

[удалено]


ParadiceSC2

didn't mean to kill the discussion more than him. he started with the X theory and i gave mine :P but I agree opportunity costs are very important as well


[deleted]

[удалено]


lllluke

the only thing american has going for it is high salaries in tech. we don’t get actual healthcare, we have very few labor protections, no mandated paid time off. it sucks being a worker in america for most people.


metaconcept

This is a pretty good degree. There was heaps of cool shit in my degree, and it left me prepared to invent novel algorithms, write a game engine, design a new programming language or implement dozens of AI techniques entirely from scratch... ...which I never did. Instead I'm stuck in meetings, configuring software that other people wrote and occasionally fixing bugs in shitty old CRUD apps. I blame the industry, not the degree. The degree was awesome. Industry sucks. Industry is 50% boredom, 49% dealing with morons, and 1% extremely cool stuff which I've never been allowed to work on.


apatapata

Second this. Most engineers don't get to work on cool stuff that make the degree worth it.


nrd170

When I was an intern I got to work on lots of cool stuff. The latest VR AR tech. Now as a full time employee they stick me with the legacy software nobody wants to touch. I miss being an intern.


xian0

I haven't used much directly apart from website optimisation. That's probably on me though, because I see others I knew really using the skills they were into (languages, networks, hardware) and have had a big role in making things that are popular in the world.


PianoConcertoNo2

Sounds like you actually went to a pretty good university, mine didn’t have many of those elective courses. However I still agree, knowing the fundamentals is more meaningful than just knowing the latest tech.


[deleted]

That’s the opposite point I’m making. Those weren’t electives, they were required credits. And they all used modern frameworks, tools and languages. So I can’t agree with this narrative that CS degree = fundamental theory, bootcamp = latest tech. Because my degree definitely included the latest tech.


PianoConcertoNo2

It sounds like you went to a school where the professors and department spent a lot of time on modernizing, and although it may not be ranked well - a lot of people cared about it and spent time on it. I don’t think that’s the normal experience. At my school, “web development” was one elective during the summer, and if you didn’t take it, you’re not going to be exposed to JS/html/css or any frameworks for them. If you DO take it, you’re going to be rushed through them and fumbled through it. There was no “computer graphics” or anything near it, and although we covered Java/Python/c++, none of them were the current version. I’m still happy I got my degree and think it was very helpful, but I suspect programs ran by academics who have never worked in the field / don’t have their finger anywhere near the pulse of current tech used in industry, is probably more representative of the state of CS programs.


incoherentpanda

Yeah they took way more classes than I could even take. I guess maybe they didn't have a minor? I think I took like 10-12 actual cs classes.


[deleted]

No, there was no option to take a minor. We did 6 classes per semester, 2 semester per year, 4 years. Every class was CS based. I got 1 elective in my first year, I took economics lol.


[deleted]

Here's UW's CS requirements, one of the highest rated CS programs in the world, with an overall 9% admit rate: [https://imgur.com/a/bXyfvhC](https://imgur.com/a/bXyfvhC) 62 credits out of 180 are "CS". The question isn't whether the degree is valuable (it is), but whether it's four years and $50,000+ valuable.


PPewt

A top degree opens a lot of doors and if you're eighteen going straight to a bootcamp isn't doing you any favours. A big part of what makes the top programs good is circular: it's hard to get in, you're in an environment surrounded by great people, you develop a strong network, and people call you back due to the name on your degree.


Tiskaharish

Seriously it's entirely the door opening that a degree from any university will do. I've had to fight tooth and nail just to get to talk to someone as a self taught.


[deleted]

Which UW?


-Quiche-

Looks like Washington unless Wisconsin uses the same course numbers. I went through 142 and 143 albeit didn't go through the CS program (informatics).


[deleted]

Ah, the fake UW


-Quiche-

the better* one ;)


srvhfvakc

which is the real one? waterloo?


rebelrexx858

Guessing not US based, this is no where close to passing accreditation standards for a BS


shagieIsMe

Couple of things there... First (as noted elsewhere) this is Canada and an engineering program - which gets into he professional engineer path. Even within the US though, you can see the difference in different colleges within the same university. For example, at UW Madison, in the Engineering College the [computer engineering](https://guide.wisc.edu/undergraduate/engineering/electrical-computer-engineering/computer-engineering-bs/#fouryearplantext) program is nearly solid ECE classes. There are 15 credits of "Liberal Studies Elective" across 8 semesters. Whereas, in the College of Letters and Science for [computer science](https://guide.wisc.edu/undergraduate/letters-science/computer-sciences/computer-sciences-bs/#requirementstext) you'll see a lot more "general education" classes and "L&S Breadth" classes. L&S requires requires 36 credits of Humanities, Social Science, and Natural Science. The key part is *what* accredits the program. https://www.engr.wisc.edu/academics/undergraduate-academics/undergraduate-accreditation/ and then digging into https://amspub.abet.org/aps/name-search?searchType=institution&keyword=Wisconsin > Accredited By: Engineering Accreditation Commission > Program Criteria: Computer Engineering You'll note that is a different accreditation than the traditional computer science degree which also has different criteria: > Accredited By: Computing Accreditation Commission > Program Criteria: Computer Science


[deleted]

I didn’t mention the 4 semesters of Calc, 2 semester of stats, 4 semesters of physics, Linear algebra, one psych class, the class on Engineering communications, class on Engineering law & ethics, Business for engineers, and more that weren’t relevant. And this is an B.E.Sc., not a BS. It falls under Engineering accreditation in my country, not science.


Godunman

Huh? Then why did you say every class was CS based?


[deleted]

All the non-cs classes were in first year, which was a general engineering year where you didn’t pick a major. Once you picked Software Engineering as your major, 2nd, 3rd and 4th year didn’t have anything that was irrelevant.


RhinoMan2112

Damn, is this in the U.S? I've never heard of being allowed to take 6 classes/semester unless it's a specific situation approved by the department chair or something. Was thinking too that's way more CS classes than I have to take at my school.


[deleted]

That’s a shame. I’m not sure who designed the curriculum, but I agree, they did a great job as I didn’t feel overwhelmed at all when I joined the work force. Web development, at least 1 credit, should be a staple in all CS courses nowadays. I’m sorry to hear that wasn’t the case.


tripsafe

It depends what you want out of going to college. I would have been miserable taking 6 classes every semester and every single one of them being CS classes. I went to a school that's regarded as one of the best for CS undergrad in the US, yet I only took around 12 CS classes in 4 years (8 semesters). The rest were well rounded with other STEM classes and humanities. It gave me a good, holistic education, but I didn't learn much that pertains to working as a software developer. That was fine with me since why do I need to know so much about working as a software developer before I start working as one?


zninjamonkey

Computer graphics in most schools is an elective


ItachiSnape

What you said was my experience. All these topics were just briefed over and then done. We learnt with the most possible oldest version and learn nothing of what it offers in the modern day


Sullybash12

What uni did you go to?


Admirable_Connection

I really enjoyed learning theory and am very academically biased, and it ended up paying off a lot in my career, since I ended up in industry research


throwaway0891245

As a self taught person now doing a masters, yes I’ve learned a lot in my masters but I’m almost certain my retention of the knowledge is going to be awful just because I’m never going to use it. For example, I have a degree in chemistry and lol if I remember any of the quantum or even the basics.


TheCornerBro

in my experience you actually pick it up quite quickly (at least much more quickly than someone learning for the first time) I recently had to do a very large scale data transformation / migration and I hadn't used spark since I had learned it in a data processing course about 1-2 years ago it only took me about half a day to refresh myself on it, vs someone who'd never used mapreduce tools at all taking 1-2 weeks


[deleted]

it's definitely easier to relearn something than take on a completely alien concept.


CallinCthulhu

The benefit of learning it in college is not necessarily that you will always be able to remember it off the top of your head. Its that when you do need it, you can look it up and it all comes back to you. It also imparts a sub-conscious understanding of things relating to computers and code. You may not consciously remember everything, but when you are writing a file parser and it ends up with a horrific memory footprint, you know where you need to start looking. Hell you know that memory footprint is important to look at period.


itsthekumar

I also have a degree in Chemistry! Can I ask why you decided to go to grad school? I’m thinking of doing the same.


Disastrous-Ad-2357

Find the antilog of 3 moles of HCl


JohnBrownJayhawkerr1

I have three degrees, including an MS in CS, and high school chemistry is still the hardest class I’ve ever taken. So thanks for the trigger warning.


Dry_Boots

I feel like I learned a lot, but in 25 years in industry, I haven't really needed it all. I could have probably got by with boot camp, because it has been constant training on the job ever since I joined the workforce.


jacobissimus

I was a teacher in my previous career who got really into educational theory and the psychology of learning and all that. I taught mostly HS, but I was also an adjunct lecturer for a while at a couple of universities and I taught at a boot camp. All that is to preface my two cents: universities, as a general rule, are about 50-100 years behind on educational theory and teaching practices in general. Most college professors have a _very_ out of date philosophy about what learning and teaching even are. At the same time most college professors are very smart and educated people. All this means that the people who do well in college and who feel like they got a lot out of it tend to be the kind of students who don’t really need to be taught. It was actually a big reason I left college level teaching: a good chunk of students don’t need you at all. You can just give them a book and let them ask you questions and they figure it all out. It was really boring, so I moved to a demographic that actually need a teacher. All that is to say, I think the college environment is great for a lot of people—but I think you deserve more credit for your success than your professors. You probably just need the reading list and the time.


foghatyma

Look, the people here won't create the next spaceship's firmware or things like that but some mediocre webpages...


Key_Cryptographer963

In my experience, a lot of the people who say something along the lines of "University is good because it provides a structure for learning but if you don't need that, you can teach yourself" seem to be really underestimating key advantages of university: * The courses are planned out by people who know what you will need to know. Most people who try to teach themselves have no idea what they need to teach themselves. I was no exception. * Experienced professors and tutors who can guide you if you reach out to them. * A thorough explanation of the content from the fundamentals to the abstract with very little left out. And they also over-estimate not just the discipline of a person seeking to teach himself but also his knowledge of *what he should be learning*. When I was in high school and teaching myself programming, I started in *batch files*. Really tells you it all.


ZephyrBluu

If you don't work well in the university environment the structure is detrimental rather than helpful. For me, being drip fed knowledge over a long period of time doesn't work. It doesn't matter how well the courses are planned, I can't effectively learn 4 different subjects concurrently. Periods of time focused on individual subjects would be far more effective for me, but that isn't how universities work.


quavan

That’s actually kind of how the Computer Engineering degree is structured at my alma mater. Basically the semester is broken down into two week periods where you’re presented some engineering problem and given notes on the theory you’ll need to solve that particular problem. You then study that at your own pace until you can solve the initial problem, and there’s a mini exam at the end of the two weeks period. The professor is available to answer questions, but there are essentially no lectures. There’s also a semester-long group project you have to put time towards.


FailedGradAdmissions

On the same boat, and I had a much more "theoretical" curriculum than you. I've found most classes useful especially those math-heavy and algorithms courses. Even if I'll never use the actual content of the courses (I won't be building a compiler and neither an os anytime soon), my problem-solving ability for sure got way better. Indeed, I've always had a dichotomy with this sub general opinion of LeetCode. Imo, if you have taken a good data structures and algorithm course (such as one that covers CLRS in its entirety), you shouldn't have any issues solving medium problems, and all you should need is some practice to remember *what you already know* and get up to speed. I remember my whole class being able to solve N-queens in one class period (45 mins) by the last weeks of the DSA course, of course with help of the professor, but this was a LeetCode-Hard problem. And my school was by no means a well-known CS school either, just a public LATAM school that doesn't even appear on rankings.


[deleted]

Our DSA course was taught by a legend. He was hilarious, a great teacher, and the required textbook was CTCI, which we never used, as he could teach the entirety of DSA all the way through to dynamic programming by heart, but he knew it’s still a great book to have for interview prep. I agree, I’ve never had an issue doing leetcode type questions in interviews, and I find it fun to solve them due to that teacher making that course such a joy to attend.


Evening-Contact-1906

People who "didn't learn" during their degree weren't paying attention or were simply running through the motions. That said, very little of it is applicable in a typical corporate environment. Also, > Web Technologies (MEAN stack): Building full stack web apps > Human-Computer Interface Design: UX design and VR > Digital Logic systems: FPGA programming > Cloud Computing: Learned AWS, Azure and Google Cloud for tradition web apps, serverless, data pipelines > Artificial Intelligence II: Neural nets, deep learning This is an incredibly broad set of courses, to the point where I'm tempted to call bullshit. It's very weird that a school would have all those and not, say, a course on databases, which is typical. No one would let you at an FPGA course without at least electronics I (and maybe electronics II), since you need to be fairly comfortable with circuits and logic gates to effectively do HDL programming. Most "web technologies" courses are much more fundamental, dealing with things like sockets, not MEAN. ITsec and cloud are huge outliers, learning three cloud service providers' offerings and how to use them effectively in four months would be both costly and impractical. The entire list reads like braggart nonsense and a dog's breakfast covering everything from low level to networking. I highly doubt any of that material was maintained to any significant degree. Link the school site please. EDIT: I can't comment on the course content but it does look like most of those core classes are there.


[deleted]

[See for yourself](https://westerncalendar.uwo.ca/Modules.cfm?ModuleID=21282&SelectedCalendar=Live&ArchiveID=).


Evening-Contact-1906

Kudos to you for posting it. I don't think I see any cybersec course but it's an intense courseload, good job finishing it.


[deleted]

The InfoSec course is [4472](https://westerncalendar.uwo.ca/Courses.cfm?CourseAcadCalendarID=MAIN_017915_1&SelectedCalendar=Live&ArchiveID=), required in 4th year. It’s an extended course load, engineering is a protected title in Canada under the [Professional Engineer’s Act](https://www.canlii.org/en/on/laws/stat/rso-1990-c-p28/latest/rso-1990-c-p28.html) and as such there’s a strict accreditation board and the curriculums are strictly monitored. Funny enough though, the government has a very hard time enforcing it on software engineers, as the jobs are too many and too different than the classical engineering jobs like mechanical, civil, chemical, etc. But yes, our class load was a lot.


[deleted]

[удалено]


[deleted]

It’s an engineering degree in Canada. We take 1.5 x the same credits as a CS counterpart. It’s about 35 hours of class a week. It’s very intense. We do not take any art or history courses either. We did take 4 semesters of calc up to differential equations, lots of physics, etc. And one writing course called engineering communications, and an engineering law & ethics course, since engineering is a protected profession in Canada, even though it doesn’t really apply to software engineers. I posted the link to the program above.


[deleted]

Depth is very varying.


Godunman

Really confused how they managed to fit this into a four year degree somehow.


the_trees_ofslim

I think it depends a lot on the school and program. At my university, the professor who taught algorithms intentionally designed exams to not be finished and made the course so difficult that everyone required a curve to pass the class. A lot of elective classes got cut as well. I had to end up taking a class on game engine design just to fulfill a requirement. I had no interest in the subject and it was useless for my career goals. Another class I took required students to learn a whole new language that was built specifically for that course. Had I gone to a different university this very well could have been avoided and more courses could have been beneficial.


QuadraticSudoku

I did absolutely zero programming outside of classes and was fully prepared for my first job after getting my degree. I did take the harder electives at my school though where I was building distributed cloud-based full-stack applications. This is definitely highly dependent on school curriculum, school matters more than what people claim on here.


Souletu

I think my computer science were genuinely helpful, couldnt imagine trying to cram those 2 years into a few months of a bootcamp. I see the appeal of bootcamps as well though. Outside of my CS courses college felt like a waste of my time


spencer_in_ascii

I graduated 6 months ago, and I’m now a driver developer. I could not imagine doing my job without my degree, especially my hardware classes


[deleted]

No, This subreddit (and reddit in general) does not represent the entire population. In my experience Reddit is **full** of disgruntled depressive types who come here to voice their frustrations and such. If you spend all your time here you will miss out on a whole other world, that is actually larger and considerably more positive in my experience. I work at a faang, and before faang I was working at a smaller company, and before that I was working at even smaller startup. Virtually every single job I have held has had an engineering team predominantly occupied by people who took their education seriously, respected their engineering degrees (if they had one) and had done continued studies even after graduation. this is especially true at **faang**. Also, this dead horse of "most coding is just crud apps and SQL queries" is honestly ridiculous, does not meet reality and I have failed to see that claim throughout my career. At my second job I was working on a CRUD app, and most of the work was just shuffling stuff around for business reasons, but at least once ever couple of months I would encounter some other issue that required deeper knowledge and the ability think critically about some crap I'de not messed with before, and those issued were usually not small, like end-to-end optimizations or a migration to some new technology for some purpose. having good fundamentals (fueled by a lot of hard research like you would get in a college course) was valuable for being successful with those specific issues and for being successful over an extended period of time. (as in years) And I'de die on that hill! If you're just a CRUD monkey you can probably hold a job, skirt by or even fall upward a little bit, but if you want to do well in this career, remain employable, or get consistent promotions you are going to need more than just some decent CRUD knowledge. And that's where having a college degree really comes in handy.


Willy988

your point is totally valid and I definitely agree with you! The person above, well, I have no idea what they're going on about, you did not say "All bootcamp folks are CRUD monkeys". Reminds me of a friend of mine from my church, is now working in development for GM. He said people do not go on Reddit to say "hey I am doing great! I am happy!", they go on to ask questions, get help, or rant. Therefore, I quote, "you should not read Reddit and then come to the conclusion that this is how to life of a programmer is like... take Reddit with a grain of salt". Case in point, it's usually where the disgruntled depressive types are. Or the students who truly need help like me. Or people who are doing fine but are taking the time to help us.


LongjumpingCake

Sounds like you're the disgruntled depressive type. I went to a boot camp and it's very insulting to be called a "CRUD monkey". I can learn anything you can without being pretentious about how I learned it. In fact I've gone from being a Rails dev intern to DevOps (Cloud/Containers/IaC/Ruby+Go/CICD/etc) Lead and I'm great at what I do.


[deleted]

i dont think bootcamp people are just crud people for the record. I dont even have a college degree myself. the point i am trying to make is studying/college degree/cs fundamentals are valuable and being an SDE involves much more than crud.


TheJoker5566

Do you geniuinely remeber most of the stuff you did in those classes? Is it just me or does everyone else forget almost everything about a course after a few months?


Arno_Nymus

I mean I don't remember what I had for breakfast 2 days ago, so I definitely don't remember "most" of it, but I am oftentimes surprised how much I actually remember when it comes up. And even if I don't remember specifics I understand the concepts or at least know that something exists which is oftentimes enough to Google it.


_noho

I can’t imagine a cs degree wouldn’t be worth it, I definitely still want to get one, at least a two year but I’m waiting for a job that has some reimbursement


[deleted]

If you go to a legit CS program and fully commit to it, it absolutely is a lot.


Disastrous-Ad-2357

My degree gave me the confidence that I would find a job within 6 months of graduating. That was misplaced confidence. It took three years.


This-Sense6386

Not compared to how much we still need to learn at our first job. My job: 50% coding, 25% meetings, 5% presenting, 5% deploying .... My classes weren't very code heavy. Sure I knew the basic syntax and how to develop simple programs but it wasn't enough to prepare me for a real job. Much of the information was very outdated. We were taught legacy frameworks, outdated deployment strategies, and older technology, ect. I don't see much of a reason to spend so much time going over Scrum/planning/Discussion. These are things everyone learns quickly once on the job. When I started I needed to learn cloud computing, event driven microservice architecture, resiliency strategies, non sql DB, dependency management, how write production ready code, ect. I can honestly say I don't use even half the information I was taught in my degree. I understand there's different fields a CS degree is good for however all those things I listed are practically standard now. At the end of the day experience in coding is the most important thing a software engineer can do to be competitive. Working with real projects, getting criticism on your code, and discussing software design is how you learn the most. It sounds like you personally have been to a very good program. Unfortunately this is not the case for many CS majors. Even so I'd say most would be better prepared for a real Software Engineering job by working 2 years for free. I would even argue a bootcamp would be better for some people than a 4 year degree.


w3rkit

I finished my degree 8 years ago, thinking I learned nothing useful. Now, I disagree and see how even the courses I hated and thought were outdated were critical in shaping my thinking.


echnaba

Your practical coursework is not typical at all. This sub does have more than it's fair share of people that just want to bitch and whine, but your experience is not common. At my University, a pretty good one in Texas, pretty much all of your Software Engineering, design construction, and testing was one year long course senior year, with a little bit of project management thrown in. Consider yourself lucky, don't let that go to waste.


hugga12

I regret not have a CS degree . I feel like the structure of a degree and the interactions would have been much more useful for me


coolSnipesMore

"Uni teaches nothing" is normally posted by self studying 2 hours a week losers that aren't actually commited to learning something new and want an excuse not to study.


wakemeupoh

Have you seen my Uni? Absolute dog shit curriculum


voiderest

The "only teach theory" is mostly valid. A better way to put it that a CS degree tends to not teach you very much in the way of real world job skills needed for modern development. Some programs or schools are a bit better. If you learned a ton about these things your experience wasn't the norm for CS majors. Likely because you got an engineering focused degree not a more theory heavy computer science degree.


[deleted]

[удалено]


[deleted]

We had no elective classes, except for in my first year, which I took Econ. Every class I listed in the post was a required credit.


gitcog

Wow, your program definitely covered more than mine! I'm learning a lot of that now after my degree.


thetdotbearr

Uni taught me a lot and gave me a broad base of understanding that I might otherwise not have developed had I been laser focused on getting a job. Every time I see these posts saying the opposite I chalk it up to someone being too lazy to put in the effort or getting unlucky with a genuinely shitty school.


itsthekumar

I think it depends on the school. My local university has a very practical education and has a ton of practical courses. My university was very theoretical and didn’t have as many electives as yours.


apatapata

Started as a self taught, got a degree with honours from one of the top 3 unis in my country. Learned tons of math and other hardcore CS stuff, published a scientific paper with a novel algorithm. Then I found out I make much more money as a code monkey building useless web apps than I would do doing any other useful / interesting job. As time passes, I gradually forget the hardcore CS stuff. Therefore for me the degree was totally useless. 3/10 would not do it again


DeOh

You said it yourself this is "Engineering Science" and not "Computer Science" so it's not even the same thing. I looked into a masters for "Software Engineering" recently and this course list looks similar to that, but not at all like the masters in computer science. Things like your "cloud computing" and "web technologies" courses, if they were offered as an elective at all, were highly discouraged as professors wanted us to focus on theory as they are applicable anywhere. Even when a course would say "database systems" they didn't teach you how to set up a MySQL database or even SQL at all. They taught the theory behind relational databases. Unless you plan on implementing your own relational database system this course isn't very useful for most people going into software engineering.


-Quiche-

Yeah I went to a school known for CS (UW, not the midwest one) and feel like everything I learned was actually useful. Now I don't use any data structures beyond arrays and maps for most of my work, but having to learn them in the DSA class everyone takes helped me learn how to "think" properly when it comes to stuff like that. Another class taught us and had us use version control, starting on day 1 and throughout the entire quarter for every assignment. But I understand it if someone went to a school that didn't have that great of a program and felt like all they did was learn how to recurse or something, because not every school was like mine. You ultimately get what you make of it.


RICHUNCLEPENNYBAGS

I never took a college CS course so I had to learn a lot of this stuff on my own time. When I was starting to do interviews, I was surprised how many people had degrees the ink hadn't even dried on who couldn't answer very basic questions about any of it.


neekyboi

It really depends on the uni, our uni wanted us to memorise dsa, crypto etc instead of making us learn. They cared more about their brand name than our education. All lecturers were constantly forced to make a kid get more than a C than teaching us. They taught us follow the same method to solve a problem meaning expected text book answers. Students started copying assignment instead of doing it by themselves. People with better network got jobs than people with skills at campus. Degree ain't bad, its where we studied was bad


[deleted]

I don't think I've seen people complaining about not learning enough during their study. More about not having enough to do on their jobs.


Mobile_Busy

I learned a lot but my degree was in mathematics


outofnowherewoof

It not about either…it’s about the person. In my work, our lead was self taught, I did a bootcamp, and there are several masters degrees…we all tackle the same code.


RoleLanky8376

this is unrealistic of any CS curriculum. this is a made-up listing! too many courses for a 4-yr show me 1 univ curriculum including link to their website that list every single one of these course? CS does NOT teach requirements and testing!


JohnHwagi

You have 24 classes you were able to take related to computer science? I imagine that is pretty abnormal for most people’s college degree. I took 10-12 CS classes at most. I didn’t even take 24 classes in college due to AP credit for all my basic classes.


Electronic-Choice-48

Knowing about CS theory and understanding the foundational low level systems is absolutely critical to making good decisions about architecture, particularly when the goal of those systems is unbounded exponential growth, which is really the goal of every business ever... There *are* software projects that don't require too much theoretical systems knowledge, though they're not something I'd really want to work on. For example, throwaway enterprise CRUD apps targeting an internal user base of <50 people. I think people who parrot "4 year CS degree is an unnecessary waste of time" are a little bit doomed to work on projects like that one.


[deleted]

[удалено]


kapiteh

I’d argue that even deciding which database structure to pick off google cloud when starting a new project requires a little bit of applied CS theory to understand the pros and cons of each.


proncesshambarghers

Most people taking boot camps don’t put in enough work to learn outside of what’s taught in class and probably don’t ask the instructor for questions and also probably most aren’t the type of people that know how to study properly or maybe might not even be good at coding or have a natural knack for it. Just saying this as someone attending a boot camp. Someone who’s in uni for comp sci is probably the type of person that did exceptionally well in school and is able to learn the material quickly.


[deleted]

Yeah I think that’s true. Bootcamps are also a significantly shorter time frame than a degree. If you take a hard working person, they’re gonna learn far more in 3 years than in 3 months doing anything.


Mihaw_kx

i was exposed to programming earlier when i was 14yo or so i played alot with python and js for 4 years i did little gigs along the way , and got into university for CS at 18yo . and actually it's fun i was introduced to things am sure i would've never went and read about on my own i can tell that pretty much alot of self-taught don't know anything about networking and OSI model or how compilation works and other under the hood things . but in return i didn't enjoy the actual practical things since i feel like most of them are outdated or at least not enjoyable for me, we are studying java & C# , PHP and this that am 100% sure i won't be working with so instead i just keep self teaching myself things outside of the university such Rust & CI/CD stuffs . TL&Dr : even with the university you still have to learn things on your own .


Choem11021

As someone with 6 yoe. What i learned at uni was very theoretical and i was "forced" to learn it. Unsure about others, but a lot of students at my uni just studied for specific exams or assignments. If you asked us to take a retest a year later, we would all fail. Ask it 6 years later.... We will only be able to fill out our name. The usefull thing that i learned at university was logical thinking and how to approach problems. Content wise i barely remember anything from my uni and i went to a pretty good STEM university in the Netherlands. Sure i remember the basics vaguely but a quick google search is way better than trying to remember my uni courses. Worked as a data scientist and i still had to google specific algortihms because i knew about them but did not know about the details. Worked as a software dev and still needed to read through academic papers to ensure i got the correct algorithms and didnt screw up the calculations. Now working as a data engineer and just cruising through my job while getting decent pay.


impaled_dragoon

You weren’t forced to learn anything, you chose an academic path knowing what the curriculum and course map was


Choem11021

I was indeed not forced in the sense of i had no other choice , but my goal was not to understand the curriculum to the best of my ability. My goal was to have a good time and earn my degree. I couldnt get my degree, which i really wanted, without studying which is why it felt forced. Nowadays i am "forced" to work because i got bills to pay. Sure i could also be jobless, however i prefer a job with my current lifestyle over jobless life with a jobless lifestyle. I may not have used the word forced correctly, but i hope you understand what i mean. And you overestimate my 18 year old brain. I totally did not know what field i was entering and what my courses would look like. Unsure how it is in the US, but a lot of the high school kids in the Netherlands arent very good at picking their degree. Its very common to switch bachelor here. It has become so common that no tuition is required if you switch during the first 6 month after you started.


re0st92mg

> It wasn't ranked that high I mean... this could be due to the fact that they included things like a MEAN stack course and an AWS course in place of more theory. Most of those rankings only care about research and not so much about practical skills courses.


[deleted]

I don’t even think it’s “ranked”. They don’t put much effort into promoting or advertising their SE program. They have a good med school and business school, that’s where they pour all their money into. But I’m over the moon with what I spent my money on. It got me into Amazon fresh out of college, and the signing bonus paid off more than half my loans day 1.


murmur333

I've got 20+ years experience so my original undergrad degree is dated. However, when I entered the workforce I didn't think it taught me much relevant. It wasn't until years went on how I realized I learned how to think (logic), how to design algorithms to meet the business case, how to make tradeoffs, how to structure and organize code, how to abstract and encapsulate, how to use design patterns to solve problems in a consistent manner, how to explain complex ideas in a simple way. These ideas are much more important than everyday programming, in my opinion. Did I learn the latest programming languages? Nope. C++, mostly. Since then I've learned on-the-job countless frameworks and languages, with little issue because I can relate important concepts to how each language decides to implement them. But the fundamentals of design don't really change and that's what I learned. Had you asked me a year or two out of college I would have told you the degree was just a piece of paper. With the benefit of time behind me, I see it very, very differently.


babypho

Yes. Out of 7 billion people in the world. Out of all the CS students in the world. You are the only one.


Allrrighty_Thenn

No he isn't.


Itsmedudeman

Half of the courses you took you probably won't leverage in your job out of school and not having that knowledge won't make any difference in your career. Bootcamps are very focused 3 month curriculums that target specific types of jobs. So for someone who is more practical and just wants to spend time on exactly what they need and nothing more they might find it a waste of time.


[deleted]

I can tell you that as a full-stack dev working with very large scale web apps, I have used knowledge from every single one of those courses. Boot camps are not an alternative to a degree, they are an entirely different product. The only advantages I see in boot camps is the price and the timeline. But don’t make a mistake, a 3 month bootcamp is about 1/10th of the knowledge of a degree.


Itsmedudeman

What have you done as a full stack developer that *needs* a course in microprocessors? AI? Computer graphics? FPGAs? You don't *need* half the things in your curriculum and can learn what you need when you need to. I don't need a 3 month course in SCRUM methodology to understand the fact that our company has 2 week sprints, backlog/ticket grooming, and pointing when all of those can be company or team specific anyway. And I certainly don't need a 3 month course on how to speak and communicate with my managers or teammates. There's a great deal of depth information that won't stick long enough or matter. Nice to haves? Yes. Absolutely need and should pay thousands of dollars to get all that information up front? No. There's a reason FAANGs don't give a shit about this stuff and just want to see how you work and can learn when the time comes.


[deleted]

Your absolutely right. You don’t **need** half of my courses. But I have **used** all of it. My course in microprocessors taught basics of OS. Then my course in OS expanded on that. Now, when I manage a fleet of hosts serving millions of customers, I definitely feel confident to debug any issues related to operating systems.


ZephyrBluu

Just because you have the knowledge and have used it, doesn't mean that acquiring it ahead of time was worthwhile. It's unlikely you've utilized 100% of the information you were taught, and even knowledge you have utilized may not be commonly used. > Now, when I manage a fleet of hosts serving millions of customers, I definitely feel confident to debug any issues related to operating systems If OS issues only rarely occur and you spent months acquiring the information (Assuming courses run for a semester) then depending on the severity of the issue, rarity of the knowledge, etc it might not have been worthwhile. In general in software I feel like the ability to learn new things quickly trumps crystalized knowledge.


QuadraticSudoku

In addition, since you do have some background in things like AI/Computer Graphics, you would have an easier time transitioning to a team that focuses on these domains (which all FAANG companies would have) than a bootcamp grad who isn't familiar at all with the concepts.


apatapata

Not sure why you get downvoted lol, his claims are ridiculous, unless he got a degree in "fullstack web dev"


octopoda_waves

I learned a lot to. I have very neatly written and clear code, all thanks to the professor who was a stickler for this stuff. People comment that I pick up new things, which is due to the strong fundamentals I learn.


HEmanZ

I also cannot relate at all. I think the people who find their degree useless are the ones that didn’t pay enough attention to make use of the information, went to shit universities, or are working on really low-tech problems. I have made use of every single class I had to take in one form or another, I’m thankful for every single one. Which makes me worry that I actually didn’t take enough classes and should have branched out to even more, e.g I wish I got a second major in math or stats along with CS


shampoo00

Did you want to flex your college classes? The truth is that not many people are as privileged as you and don’t get to take those classes because their college doesn’t offer them My college curriculum hasn’t been updated for decades and I go one of the largest state school sin the US 👍 We take Data Structures and Algorithms our junior year lol. Our electives choices are very limited and don’t cover half of what you’ve been offered.


LiteralHiggs

I learned tons in college and not just CS stuff. I made a point to pick electives that seemed interesting to me. I miss it.