Does anyone else go to a mediocre CS school? How is it?

OK so this is a bit of rant/weird post, but hear me out.

I go to a small liberal arts school that happens to offer B.S. in Computer Science. I don’t go to a “bad” school—we’re ranked 58 in USNWR, Our campus graduates like 20 people each year with CS degrees. I’m OK with a small program, but my major is… too easy. I don’t feel like I am learning anything but I have a 3.9 GPA. I am far from smart.

I always hear about how tough CS classes are or how stressed some students are but I rarely have homework and I do all my labs in about an hour or two (I am a junior so it’s way past the basics). I always hear how people with a CS degree joke about getting no sleep/not much time for fun.

Here are some examples:

  • My CS1 (C++) class stopped at structures.
  • My CS2 class was the same as CS1 with very basic OOP at the end.
  • Most classes are almost always taught by Chinese professors who are good people but truly don't care about teaching. Our midterms are a joke—one friend's midterm was hello world! Not joking! Most are just memorizing the slides. All these people were just former IBM employees who were "hired" to teach for some reason.
  • I am taking data structures, supposedly a hard class... but our midterm was just book questions... and we are stopping at queues and stacks. No trees or graphs. Supposedly we do that in another class, though. We only have 4 projects the whole semester and they are just slight modifications of classroom examples.
  • No math is required for our major. Yeah we take a "discrete structures" class... just stuff like sets and truth tables. I've supplemented this by taking Discrete Math and Calc II as electives, and they've actually helped.

Most disheartening are the other students. Almost no one here has any interest in programming outside of class or even just reading the book to understand things better, and the ones that do just do it for the grade. Definitely a case of “I am going to do CS so I can get a job!” I wonder how they will do in interviews! Most cringey is our “programming club” who seems to be more interested in calling everyone a ‘hacker’ or ‘coder’ and posting ‘programming memes’ than doing anything.

The only cool class I’ve taken is my Java class. We’re doing MVC applications and more complex stuff than just printing out numbers like in my other classes. Not a fan of Java, but I appreciate the practicality and the challenge.

Thankfully, I want to do web development (front and back end) as a career. Ironically, it’s the CS career path that requires the least formal education, so I will be OK with my personal projects and own self studying, which I do with the loads of extra time my major gives me. But I worry about my colleagues!

OK so sorry for the rant. I was wondering if anyone here is in a similar situation, or if this just happens here.

I’m curious…when you chose your school, did you know you would major in computer science?

Yes. This was the only school I could afford to go to at the time.

I actually like it here and I’m happy (definitely love having a lot of free time), just the major could be a lot better. I don’t like having to teach myself algorithms and data structures when I know a course could teach me that well enough.

Yeah, this CS program doesn’t even sound “mediocre”. I’m a freshman CS student who has self taught myself a bit more, and we have done most of this already for sure. Graphs and Trees were introduced in the intro class first semester. We haven’t had algorithms yet but have already been exposed to many popular ones. We’ve already done discrete, program proofs for validity, functional programming languages and object oriented ones. And my program isn’t even on the rankings map for CS.

That said, it seems like you know what you’re doing and can teach yourself a good deal, hopefully that will serve you well enough. Your classmates do sound like they are in for a big surprise though!

Is it possible that the school has a CS department just so that it can list a CS major in its catalog, but does not expect serious or strong CS students to enroll, so that the courses and curriculum are made to a low standard?

You can compare with the content of courses at a well respected CS department (and use the materials for self-education if you like):
http://www-inst.eecs.berkeley.edu/classes-eecs.html

10: for non-majors or others with no programming experience
61A, 61B, 61C: introductory sequence for CS majors
70: discrete math and probability theory
1xx: junior/senior level CS courses
2xx: graduate level CS courses