OT: EECS 280

Submitted by Killewis on

Hey, hopefully this isn't too OT (or maybe you'll be relieved to get a break from all the Jimsanity), but I'm currently a sophomore and I've been fidgeting around with my schedule for next semester.

As of now, I'm a declared statistics major, but as part of the major requirements, I took EECS 183 this semester. (For anyone that's confused, 183 and 280 are both coding classes at the university). I went in to 183 having no coding experience of any kind, but in taking the class, I sorta realized I might actually like coding. The next class in the sequence for a CS minor would be EECS 280 (along with Discrete Math (203), but I would hold off on that class for now).

The one thing I'm concerned about though is that I've heard mixed reviews of the class, with half of them people saying it was one of the hardest classes they ever took and having to put in hours and hours of work just to pass.

Basically, I'm just wondering if anyone on the board has had any experience with the class and can help me make a decision. I'm also taking MATH 217 (Linear Algebra), STATS 426, and a Spanish class, so while that might not be the hardest load ever taken, I'm still concerned I don't want to overwhelm myself if I take 280. Thanks.

EDIT: Thanks for all of the input. After tonight, I would say I'm probably leaning towards holding off a semester so I don't have to take it at the same time as 217. I think I could probably do well in the class as long as I put in a lot of work, but I already have a decent load this year, and I don't want to take 280 without knowing I'll be able to fully commit. The minor is only four classes (203, 280, 281 and an elective) so I'd definitely have time even if I wait til next year to take 280. 

qbwaggle

December 18th, 2014 at 8:06 AM ^

I took EECS 280 way back in 2002.

I got a C in the class.

If my memory is correct there were 6 "projects", 1 mid-term exam, and 1 final exam.

Both my mid-term and final exam scores were at or above 95%. And I still got a C in the class. That tells you the importance of the coding projects.

They are (or were, I'm talking about 12 yrs ago) very time consuming. The auto-grader [shudder] was very unforgiving. I spent more time on EECS 280 that semester than any other class. So... much... debugging....

I ended up in ME.

(For reference my workload that semester was EECS 280, CALC III, Physics II lecture+lab, and 3rd semester Spanish)

bronxblue

December 18th, 2014 at 7:19 AM ^

I was a TA for 280 back in the early 00's and all I can say is put the work in and you'll be okay. The biggest mistake I saw was students who didn't come to office hours or open lab starting the projects with a couple days to go and being lost.

It's a slog, but so are most courses. You will learn a bunch of fundamentals, though, which will help you both in other classes as well as your career.

MGoBender

December 18th, 2014 at 10:46 AM ^

Definitely, any programming class becomes exponentially easier if you do two things, in this order:

1. Start project as soon as released

2. Reach out to profs and TAs as much as needed (not for finding bugs, but for overall understanding of the project and how to complete it).

drettbrake

December 18th, 2014 at 8:15 AM ^

I'm a senior who could technically graduate now, but am considering staying for an extra year to pick up a CS degree. I took 280 this semester. Hadn't taken ENG101 or EECs183 here cause I took it at a community college over the summer. I didn't think the material was inherently too difficult, but I didn't like the layout of the class.

5 projects/2 exams are your main workload. The projects require a LOT of time. And if you eff anything up, you get zero feedback to learn from since they use an autograder and want to reuse the projects every semester, Basically, they grade you harshly then don't explain what you did wrong because they don't want to come up with new projects. Honestly, I think it's kinda ridiculous that you can eff up one line of code and get an awful grade cause it changes the output just ever so slightly. I guess you could argue that a company doesn't care how close to being correct your code is if it doesn't 100% work. But still, this is an intro course. Cut some slack.

I went to office hours a couple times for the projects and both times I ended up waiting for 2 hours for help because there were so many kids there. First time I figured out what I was doing wrong within the 2 hours, and the second time I ended up receiving help from a dude who, by his words, "hadn't looked at C++ in months." It's a big class, so unless you go to one of the very early office hours on the weekends, don't expect too much individual help.

Exams are pretty standard for a weeder course. If the avg is too high on the first one, they'll make the second one really tough. I don't think they should be too bad if you knew how to do the projects.

Overall though, I don't think it was a good class. Zero feedback on anything, and it's tough to get any individual help. Maybe I'm bitter cause I got a C+ and it was my worst grade since I was a frosh, but still, I def think there are some issues.

drettbrake

December 18th, 2014 at 8:15 AM ^

I'm a senior who could technically graduate now, but am considering staying for an extra year to pick up a CS degree. I took 280 this semester. Hadn't taken ENG101 or EECs183 here cause I took it at a community college over the summer. I didn't think the material was inherently too difficult, but I didn't like the layout of the class.

5 projects/2 exams are your main workload. The projects require a LOT of time. And if you eff anything up, you get zero feedback to learn from since they use an autograder and want to reuse the projects every semester, Basically, they grade you harshly then don't explain what you did wrong because they don't want to come up with new projects. Honestly, I think it's kinda ridiculous that you can eff up one line of code and get an awful grade cause it changes the output just ever so slightly. I guess you could argue that a company doesn't care how close to being correct your code is if it doesn't 100% work. But still, this is an intro course. Cut some slack.

I went to office hours a couple times for the projects and both times I ended up waiting for 2 hours for help because there were so many kids there. First time I figured out what I was doing wrong within the 2 hours, and the second time I ended up receiving help from a dude who, by his words, "hadn't looked at C++ in months." It's a big class, so unless you go to one of the very early office hours on the weekends, don't expect too much individual help.

Exams are pretty standard for a weeder course. If the avg is too high on the first one, they'll make the second one really tough. I don't think they should be too bad if you knew how to do the projects.

Overall though, I don't think it was a good class. Zero feedback on anything, and it's tough to get any individual help. Maybe I'm bitter cause I got a C+ and it was my worst grade since I was a frosh, but still, I def think there are some issues.

drettbrake

December 18th, 2014 at 8:15 AM ^

I'm a senior who could technically graduate now, but am considering staying for an extra year to pick up a CS degree. I took 280 this semester. Hadn't taken ENG101 or EECs183 here cause I took it at a community college over the summer. I didn't think the material was inherently too difficult, but I didn't like the layout of the class.

5 projects/2 exams are your main workload. The projects require a LOT of time. And if you eff anything up, you get zero feedback to learn from since they use an autograder and want to reuse the projects every semester, Basically, they grade you harshly then don't explain what you did wrong because they don't want to come up with new projects. Honestly, I think it's kinda ridiculous that you can eff up one line of code and get an awful grade cause it changes the output just ever so slightly. I guess you could argue that a company doesn't care how close to being correct your code is if it doesn't 100% work. But still, this is an intro course. Cut some slack.

I went to office hours a couple times for the projects and both times I ended up waiting for 2 hours for help because there were so many kids there. First time I figured out what I was doing wrong within the 2 hours, and the second time I ended up receiving help from a dude who, by his words, "hadn't looked at C++ in months." It's a big class, so unless you go to one of the very early office hours on the weekends, don't expect too much individual help.

Exams are pretty standard for a weeder course. If the avg is too high on the first one, they'll make the second one really tough. I don't think they should be too bad if you knew how to do the projects.

Overall though, I don't think it was a good class. Zero feedback on anything, and it's tough to get any individual help. Maybe I'm bitter cause I got a C+ and it was my worst grade since I was a frosh, but still, I def think there are some issues.

JamieH

December 18th, 2014 at 8:29 AM ^

This is 20 year old info but I found EECS 280 pretty easy.  Of course, as a EE major who hated EE but actually loved to code, 280 was the beginning of my realization that all of my CS classes were basically my automatic A classes buried among the onslaught of EE stuff that drove me nuts.  I should have been a CS major--but I wanted to be an engineer and CS wasn't officially part of the engineering school when I was there.  Dunno if that has changed--it should have.

 

Long story short--I never changed my major, but stuffed as many CS classes into my EE degree as I possibly could and have spent my entire career as a programmer. 

 

 

MaizeNBlu628

December 18th, 2014 at 8:40 AM ^

IOE = In an Out Easy. But only I can say that since that was my major! In truth, it most likely is the "easiest" based on engineering classes, but it mostly depends on which electives you take because it allows you a lot of freedom outside of the IOE core classes. I chose it because it let me take a lot of B-school classes. I was originally torn between applying for B-school or staying in Wngineering.

sadeto

December 18th, 2014 at 9:27 AM ^

I know nothing about EECS, but I have hired several statisticians in my career. If you are interested in applied statistics, look for courses that have you use SAS, R, or Stata to analyze social science data. Probably more interesting than EECS and you'll probably have a job offer before you graduate.

grossag

December 18th, 2014 at 10:44 AM ^

Lots of comments from people so mine will probably be buried but I figured I would respond anyway.  I majored in Computer Science Engineering at Michigan (graduated 2006).  280 was not all that difficult for me because I had already been exposed to all of the concepts but I understand why it would be difficult for non-majors.

That said, I never took 183 (I passed out of Engin 101 due to passing the Computer Science AP exam) so I can't attest to how good they are at preparing people for 280, but I woud say that 280 would be okay for you if you have some C/C++ programming experience on your own time or have taken an introductory C/C++ class like Engin 101.  When I took it, 280 was an introduction to data structures (EECS 381 was the really intense data structures + STL class that is really only useful for software devs) and wasn't too intense if you had some experience and understanding of data structures already.  Hope this helps, if you have more questions or need any help you can reach me at my username at gmail.  I will be at the career fair in January representing my company if you wanted to stop by and talk more.

pescadero

December 18th, 2014 at 10:53 AM ^

I took it one billion years ago....

 

I graduated in 1998 with a degree in Computer Engineering with a strong emphasis on hardware.

 

When I took 280... it wasn't an especially difficulty class if you were a good programmer, but it was easy to get a less than stellar grade. The projects weren't difficult, and I had little issue with them. The exams were horrendous and counted for WAY too much of your grade in the class.

My worst score on a project? 95%. My grade in the class? C

My grade in EECS380? A+

 

Most difficult EECS classes I took? 427, 470, 478

 

 

 

MGoBender

December 18th, 2014 at 11:42 AM ^

The grading breakdown makes sense. 

If you spend the time, you should get 100% on every programming project.  You don't even need to have a full comprehension of the concepts that the projects are based on to hack your way to a 95+% on the autograder.  Therefore, you have to expect difficult exams to create some differentiation.  It's a pretty common practice throughout CS classes, IIRC.  Though, the weight might be more heavily in favor of exams in the weeder classes.

pescadero

December 18th, 2014 at 2:40 PM ^

If your goal is to test folks ability to program - then giving out written paper tests which account for 70% of the grade seems rather counter productive IMO....especially when the test largely devolved into correcting syntax errors and missing pointer reference/dereferences.

 

I mean it's be one thing to have people correct syntax on a computer... but on code typed on paper?

 

 

notetoself

December 18th, 2014 at 11:37 AM ^

was anyone else on here in EECS 280 for Winter '00? brian - i'm looking at you. (and yes, i literally just went on waccess to verify the semester).

it was rumored that like 70% of the class failed. i just remember the dungeon game project with all the different types you had to create and i barely slept for 2 weeks and got an 86/100 whereas most people i talked to got a 0. ah, memories. and i agree with most posters above from my era - 373 was worse.

 

MGoBender

December 18th, 2014 at 11:41 AM ^

Dungeon game - wasn't that 281?  I dropped 281 after the drop deadline because of that first insane project.  Luckily when I took the class next semester, they did away with the ridiculous "3 huge and difficult projects" and went to more, but easier projects.

notetoself

December 18th, 2014 at 1:18 PM ^

just double checked wolverine access - i never took EECS 281, so i doubt it - unless they changed 280 after that legendary semseter, and bumped that project work to 281? when did you take 281?

also, as a weird side note - i took EECS 380 in Fall '00 and my prof (actually, 1 of 3 for some reason) was none other than martha pollack, current provost.

 

ableeda

December 18th, 2014 at 1:00 PM ^

Learning the basics of programming is useful to most careers in engineering! Graduating CS-E definitely came close to killing me, but I am better off for it. 

Thrillhouse

December 18th, 2014 at 1:02 PM ^

i took eecs 280 in winter '02 w/ jim eng and mary lou dorf. my gsi was some dude from kentucky named jeremy, i think.

it you like programming, take it. also, take 281. i'm an EE who ended up becoming a software engineer and have always regretted not taking 281.

Setshot

December 18th, 2014 at 1:45 PM ^

This is what I would have to say. The material and computational work in 217 was really easy and I understood the class, but that only accounts for maybe 20% of the course. It is nearly all proof based, and since I had never taken a proof based course before, the class was very difficult and time consuming. The average on our first exam was like a 90% (it was mostly computations), and then the 2nd exam and final had averages in the 30s. They were all proof based and graded very tough. The class was difficult, but it was curved enough to where it would have been difficult to not pass. 

When it comes to 426, I lucked out with my professor. Our class had it very easy compared to other people I knew taking the class with different professors. But at the same time, the material in 426 is also proof based. So if you struggle with proofs, taking 426 and 217 together is going to make for a very long semester. If you don't mind doing proofs and are good at them, getting good grades in both of those classes will be likely since most people seem to struggle with them. I took 183, but had no interest in going on and doing 280, so I can't offer any insight on whether it's difficult or not, but definitely be prepared for a long semester of difficult homeworks and exams with 217 and 426. I split up 217 and 426, took 217 winter term sophomore year, and took 426 fall term junior year, and still thought the classes were tough. 

For me personally, there is no way I would have taken a programming class the same semester as 217 and 426. Those two classes during the same semester would have been a handful for me. 

Side note, when you get into your concentration requirements, I strongly recommend STATS 415. I believe it is in a category where you are required to take one or two courses out of three or four, but STATS 415 was the most worthwhile course I took at the university. Data mining is very important and getting more and more important every day. I really enjoyed the course, learned a lot, and got a good grade. I was skeptical of taking it because I was told it was one of the hardest stats classes you can take, but I didn't think it was bad at all. 

FanNamedOzzy

December 18th, 2014 at 1:56 PM ^

I'm a senior graduating May 2015 with CSE, and 280 is a FUN class. I think my grade ended up being a B-, however, that's due to the exams. Pretty much got 95s or above on all the projects, the exams were rough. However, the material you learn from doing the projects is what makes the class AWESOME. If you truly love programming, you won't have a problem starting the projects early. The projects are pretty fun already, so that helps.

281 is the true weeder class. If you can get through 281 you will get your minor/major. Everything past that besides 381/482 isn't that crazy. That being said, your schedule seems pretty full, so be ready to have a busy semester.

My worst semester? EECS 281, EECS 280, EECS 376, MATH 215, and some anthro class. 18 credits of never again right there. Good luck OP!