Course Analytics

for Oregon State University's Computer Science Post-Bacc Program

Upper Division

Core Class

CS 344

Operating Systems I

Data Summary





Hours per Week


/ 5.0 Difficulty

Common Pairings

CS 361:

30 times

CS 362:

18 times

CS 372:

18 times

Tips from Students

Page 1 of 11

WI 202413-18 hours/week5 / 5 CS 362

This course is brutal. Came in with studying VIM and C basics during the break but that didn't do anything for me. The homework doesn't match up with what you learn in the module, you'll have to do a lot of studying outside just to understand how to get started on the homework. I prefer not starting assignments asap so others can ask questions on Ed and Discord, to help shine some 'path' to help us even get started. Smallsh was brutal; Gradescope's test didn't match the assignment requirements. At some point are we really learning about OS concepts or learning how to program to figure out what the grader is looking for? Smallsh was just extremely frustrating even with asking a bunch of people for advice and going to office hours and constantly scanning Ed/discord. We're super blessed to have more starter code during this course which I cannot imagine how previous quarters supposedly did without it. The first 2 assignments (base 64 and tree) will get you 'comfortable' with C programming and using the CLI to run tests. The last 3 assignments really are about core OS concepts (smallsh, MTP, OTP). The TA's are super helpful in this class (shoutout to the ones who answer questions outside of office hours). In terms of homework grading, it's going to take a lot of effort to hit the D mark (around 60%), then it takes less effort to get to around C/B mark (60-85). Depending on how your debugging skills are, it might take just a little more (or a lot) to get to the A mark. I highly recommend going to office hours and just lurking if you don't have any particular question (you'll get pointers and get assistance just by listening to others talk and ask questions)

Submitted Sun Mar 31 2024

WI 202413-18 hours/week4 / 5 CS 361

This class is actually really cool! The modules aren't spectacular or anything, but they're not useless like others have suggested. Ryan Gambord is also actually a good instructor in my opinion. I could see how he may have rubbed people the wrong way in the past; he is very particular about things that nerds have strong opinions about, but he is very communicative, understanding, and contributes a lot of extra material/help on Ed that is not included in the modules. Maybe he saw all the negative feedback and changed in response to it, but I really don't have a bad thing to say about the guy. I don't think he has permission to completely change the course modules at this point, but it seems like he's done a lot to make this course better. It was a challenging class, but I think it was fair and very rewarding overall. If you've read other reviews of this course, you know you need to start early and attend office hours as necessary. The assignments are submitted with Gradescope, and your score is exactly what the autograder gives you. You're even provided a copy of the testfiles, so everything is completely transparent. That's really all there is to this course. Everything is doable, it's just difficult if you're unfamiliar with C and/or system programming. I honestly don't know what more people want -- you really do just need to read the modules and refer to man pages and then think critically and use your programming skills to solve problems. The man pages aren't hieroglyphics; if you've referred to documentation while coding before and you've read the modules, it shouldn't be too difficult to get the hang of using them. The final exam seems to have finally been tuned to the point where almost everyone seemed to think it was fair. If the program didn't have at least one class this technical and challenging, it wouldn't really be much of a CS degree! I would say, if you've gotten this far in the program, you definitely have what it takes to pass this class, though you might have to dig a little deeper than you have before to get through. One final piece of advice - if you're reading this and you're very early on in the program, don't take the easiest option at every point in your courses. The more you do that, the harder a time you'll have in this class.

Submitted Sun Mar 31 2024

WI 202418+ hours/week5 / 5 CS 372

The easiest part of this class for me was the final. I found it very representative of the content and all the answers could be found in the modules (not word for word, of course, but the content was all there). I really screwed up on smallsh, but was able to salvage my grade. Overall, start the assignments early. Go to office hours. READ THE ED DISCUSSIONS. And don't give up. If I can get a 30% on smallsh and still pass, then so can you :)

Submitted Wed Mar 20 2024

WI 20246-12 hours/week3 / 5

This course is challenging and time-consuming, but doable. Knowing a small amount of C (from a course taken years ago, so it wasn't very fresh knowledge) definitely helped. Use the resources available to you in the class - Ed Discussion, office hours, Discord, etc. Respect the class, but don't be afraid of it! You can do it!

Submitted Tue Mar 19 2024

WI 202413-18 hours/week5 / 5 CS 361

Like everyone has always said, this class takes a lot of time. You have to start each assignment right away and spend time just understanding what you need to do as well as any started code you've been given. Once you have that down, you code and debug, go to office hours, discuss on discord... until you either pass gradescope or run out of time.

Submitted Sat Mar 16 2024

Winter 202418+ hours/week5 / 5

I'm amazed this course is still allowed to go on in it's current state. Knowing C is a prerequisite for this course. What they mean is 3 courses of C: 101, 102, and Data Structures. That is the level of skill and knowledge this class was designed for, and it hasn't changed. I would take 101, 102, and DS at an institution that offers them in C so that you are prepared. And then go ahead and take CS 344 at another institution, too, because there is no good reason to take it here. This is not an "Operating Systems" course where you read 3 Easy Pieces. This is a Systems Programming course and there are some OS1 concepts sprinkled in. Some people say "take this class by itself". What they mean is "this should be the only thing you are spending 12 hours of your day doing. If you are working, put $4000 into your account since you're going to need to take it twice.

Submitted Tue Mar 12 2024

FA 202318+ hours/week4 / 5

Go into this knowing it's a "weed-out" class; only a few students in each section are supposed to pass it. Nearly all of us would've flunked the final had Prof. Gambord not curved the grades. I don't think there's much difference between CS 374, the course I took, and the legacy CS 344. I started the term with genuine interest in the subject, and that hasn't vanished entirely, but I feel discouraged from taking a further course in it. I scraped out a passing grade by parking myself in the TA's office hours every day, reading the discussions on Discord, reviewing flashcards I'd made of the module content, watching Brewster's video lectures on YouTube, and working on the assignments two hours every day. It's frustrating that a course with so many important fundamentals on the syllabus is so indifferent to teaching them to novices.

Submitted Sun Jan 14 2024

FA 202318+ hours/week5 / 5 CS 450

This is the most difficult class I have taken in the OSU post bacc program so far. It was very difficult and extremely time consuming. There are 5 total projects and 1 final. The final is really difficult, so try your best to get 100% on all the projects. The projects are all different and have different weights. The first and last ironically I thought were the easiest. The absolute hardest is the 3rd project called smallsh. It is the most difficult project I have done so far. I gave myself a little over a week and was still scrambling on sunday and did not finish the whole thing. If you can time manage, you should be able to give yourselves 2-3 weeks to work on it and you'll need all that time. The good news is there were a lot of TAs and they held office hours all day. So there is a ton of help available. You also get whatever score gradescope gives you and you can submit as many times as you want. That was really helpful in testing the code just by submitting into gradescope. The whole course is in C and you have to use VIM on lynx. Atleast that is what I had to do. I learned a lot, but it isn't a fun course. I did get an A- though.

Submitted Tue Dec 19 2023

FA 202318+ hours/week4 / 5 CS 361

Easily my worst academic experience. Just trash. The assignments are what takes up everyone's time, as everyone else says. Here's my feedback on each assignment: base64 is a crapshoot because the modules don’t prepare you for it. It’s a common thing tho so there’s good YouTube videos on it. Start early but if you really get stuck module 3 should help you out tree imo is the easiest of the quarter. Make sure you know generally what the code does and really really pay attention to the helper functions. Most of it is just a bit of code and using the helpful functions smallsh sucks but it’s mainly a time game so start early and you’ll get there mtp is a nightmare if you’re not careful about it so test the shit out of every step before adding anything. Also about 3 days in the prof posted the megathread with a wayyyyy easier method of doing it so don’t start this one until the megathread goes up. I’m serious it will save you so much time otp is actually kind similar to mtp. I actually think it was the easiest second to tree. Like mtp, just be able to test with every single new thing you add to it, and definitely stream each character, don’t try to push everything through with buffers

Submitted Thu Nov 30 2023

SU 202313-18 hours/week3 / 5

Start every assignment as early as you can. Expect to spend about 3-5 hours to understand the project that's being assigned and what to review before writing your first line of code. Create a task list and incrementally go through them as each assignment is large and can be a lot to take in at once.

Submitted Tue Jun 13 2023

Page 1 of 11


Course Analytics was developed for students of Oregon State University's online Computer Science program. The data on difficulty, time commitments, course pairings, and tips have been submitted by real students using this survey. Feel free to add your own reviews if you are a current student! The data is scraped from this spreadsheet.

Course Analytics is an open source project by Nic Nolan.
View the repository on GitHub