Roboforbes

Junfeng Yang

Computer Science · Columbia University

Courses Junfeng Yang teaches

What students said

COMS W4152 · Spring 2024 · 4/5

This is definitely a lighter class for padding your GPA. Junfeng is extremely kind, but his lectures are mundane and mediocre. In fact, all of his slides are copied verbatim from an edX course by UC Berkeley. The same applies for the programming assignments on Codio. Junfeng says you can qualify for extra credit that can bump you to an A+ if you attend class, but this wasn't worth it for most people. Since the class was at 8:40, the classroom was usually a ghost town after the first month. The lectures are recorded, but they're very loosely related to the assignments. The only value comes from the semester long group project, where the class breaks off into teams of 4 to develop a SaaS solution using Ruby on Rails. It's imperative that you find competent teammates ASAP. Don't be afraid to sell yourself on the Ed discussion board—if you have prior internship/work experience at FAANG/M7/HFT or any other prestigious firm, then leverage the hell out of it! Unless you already have friends in the class, this is the only way to ensure that you'll find likeminded teammates. The project is 50% of your grade and you'll be stuck with your team for the whole time, so choose wisely. Overall, I'd recommend if you need an easy class to fill a COMS 41xx requirement. If you just want to learn Ruby on Rails, you might as well go through the edX course on your own time.

COMS W4118 · Spring 2014 · 3/5

Hard but not as hard as everyone says. Not very enjoyable but I've had worse classes. If you are a strong programmer with experience in C you will probably do well. If you are a weak or inexperienced programmer you are going to have a bad time. The class could be greatly improved if they reduced the focus on android hacking and emphasized concepts more. The good, mediocre and bad: ---The good: - Professor Yang is well-intentioned and prepares for lecture - All class notes and materials are easily available on the website - Expectations are clear - Problem set portions of HW are pretty straightforward - Very fast Piazza response - Midterm and final are reasonable and open book - Exposes students to research (via required paper reading referenced in both lectures and tests, and via frequent observations by Prof Yang during lecture about what are current research topics and how previous topics were explored over time) -QEMU/vx6 combo is clear and good to learn from (unfortunately only used in 1 of 6 HWs) ---The mediocre: - Modern Operating Systems textbook is a bit out of date and loaded with thinly veiled opinions, although it's not bad - Lectures try to pack way too much material in. Luckily they aren't very relevant, since you can pretty much learn from the slides (and watch portions on CVN if needed) so you don't need to actually go in order to get decent grades on midterm an…

COMS W4152 · Spring 2023 · 4/5

I concur with everything the review posted on December 13th, 2022 stated. The class is pretty easy and pretty much straightforward as it goes. The grading and late policies are generous. Lecture doesn't really connect/isn't necessary to complete the assignments and thus very very sparsely attended. TAs are all pretty helpful. Definite GPA boost as it is very easy to make an A or an A+ in the class. Would recommend to anyone who wants a bit of exposure to Agile development and just having a technical project on your resume.

COMS W4118 · Spring 2010 · 2/5

OS is an essential course and you could learn a lot about kernel programming. However, personally speaking, Prof. Yang's classroom delivery is the worst that I've ever seen at Columbia. The first several classes, it turned out to have 50-70 attendance. Then, this number continued to drop and after Spring Break, we've only had 10 people or so in the classroom. It seems people prefer reading textbook. A lot of errors in his slides. He's a nice person tho. Some TAs in this course are really bad, in contrast, some are really good. I agree with the previous review. One TA had a serious attitude problem and he looked down upon on the students. And it seems that there's few communication and discussions among the TAs, so that they have different criteria when grading. A lot of grading errors. It's totally unprofessional.

COMS W4152 · Fall 2022 · 3/5

Covers software engineering principles, agile, testing, lifecycle, could be useful if you haven't had a technical internship yet, or want to learn more about software as a service. Lectures are pretty dry - he basically reads off the slides and aren't super relevant to what you need for the homework. Class was offered at 8:40 am this semester and towards the end of the semester there would only be 5-10 people in the class (about 200 enrolled) which was kind of sad, but lectures were also on zoom and recorded (but again didn't need lecture material to complete homework).

COMS W4118 · Spring 2010 · 3/5

This is not a "mad hard" course, but a few bad policies unnecessarily make it more painful. Despite repeated pleas Prof. Yang did not post the slides before lecture, his reasoning being that this would force everyone to take notes. This voodoo pedagogy ended up discouraging me from taking notes. Please take a look at this: Kimberley A. Babb, Craig Ross, The timing of online lecture slide availability and its effect on attendance, participation, and exam performance, Computers & Education. His slides are pretty incomprehensible/garbled in most places and too verbose in others. Prof. Yang is pretty earnest, so it may be a matter of N-iterations. The TAs for this course were not the best. They're perfectly OK with the grading but their mannerisms, politeness and preparedness leave a lot to be desired. Also getting the TAs to grade parts of the exam is ridiculous. Spring break gives you a breather, so if at all possible take OS in the spring. Prof. Yang will have asides on topics like Files Systems, Concurrency, Testing etc. whereas Prof. Nieh (Fall) talks about other OSes like Android. Other than that the two offerings are almost the same. The Linux kernel is written with *excellent* C programming practices. Some of the constructs are delightfully concise yet ridiculously extensible and performance tuned. Doing the first assignment to its completion will get your C programming up…

COMS W4152 · Spring 2024

5 CHIPS Programming Assignments on Codio - 50% Project Proposal - 10% Project Iteration 1 - 10% Project Iteration 2 - 10% Project Demo - 10% Final Project Submission - 10% You should be able to score 100 on all the CHIPS assignments because you're given the autograder and the exact test cases beforehand. The project grades can fluctuate based on your assigned TAs, which is why it's important to choose serious teammates to mitigate any room for error. The class isn't curved, but grades are assigned using the following conversion chart: 100% <= A+ 90% <= A < 100% 80% <= B < 90% 70% <= C < 80% 60% <= D < 70% 0% <= F < 60%

COMS W4118 · Spring 2010 · 3/5

Operating systems is a mad hard course. The assignment take forever. If you don't need to take OS you should avoid it altogether. Its a very painful course, having left me sitting in that smelly CS lounge staring in front of ugly terminals displaying kernel bug and panic messages on warm spring weekends while everyone else plays with frisbees or what ever the youth plays with these days. However the skills learned from this class could come in handy; it helped me net a sweet job so the pain was worth it for me. The theory behind the class isn't too bad but the assignments involve changing the actual linux kernel to do new things. The kernel is very confusing and has many program practices which would normally be considered bad, such as extensive use of macros, but is justified for efficiency. There are a ton of underscores everywhere which annoys me (I prefer the Java capping style but oh well). Also since its the kernel debugging is a lot harder. Make sure you thoroughly understand C before this course.

COMS W4152 · Spring 2024

Concur with everything the review posted on Dec 13th 2022 stated.

COMS W4118 · Spring 2014

Heavy although I think the reputation is worse than the reality. 6 HWs (50%), lowest score dropped, with both problems and code in each HW. Problem set portions are medium-easy. Code difficulty varies from medium-easy to very hard. HW4 (scheduling) and HW6 (file systems) by far the hardest, especially HW4. Most code portions are frustrating regardless of difficulty. Open book midterm (20%) and final (30%) aren't too hard.

Other Computer Science professors

Plan your semester on Roboforbes — free