<p>I'm currently a senior, I'm considering changing my major to computer science. Since I'm a senior and all, I would like to be get through the CS major faster. EECS 280 doesn't have any prerequisites but I know that most people take 183 beforehand. Is it possible to learn enough C++ in a few weeks to prepare myself for 280? I was thinking maybe I could learn some syntax through online tutorials or a book. I've never done any programming before. But I have been doing some python exercises on codeacademy.</p>
<p>Yes, you can. But do make sure you actually do, because if you end up in 280 without knowing any programming it will be very hard.</p>
<p>most people in eecs 280 has engin 101 background, so it’s probably safe to say that everyone will have a headstart before you. However, that shouldn’t discourage you from taking it if you are so inclined. </p>
<p>You’re a senior in college? wow, mind telling me your story?</p>
<p>It depends on how much of a knack you initially have at programming. When I first took it, it was so alien and unfamilar I had an extremely tough time the first time I tried it. It was not pleasant. So unless you’re like one of those guys who were born to program, I don’t know if a few weeks of C++ would be enough to get you through 280.</p>
<p>Square,</p>
<p>I’m an econ major, and I think that econ is just a bunch of bs. I also don’t have any interest working in fields related to econ like finance, consulting, etc. I want to pursue a degree in CS because I’m interested in careers in CS. I feel that CS jobs let you work with your creativity. On the other hand I feel that people in finance are just robots and play with excel and powerpoint all day. I just feel like I wouldn’t be satisfied with a career in finance/consulting.</p>
<p>Vladenschlutte,</p>
<p>Could you tell me what are the most important functions/concepts to know before taking 280? Should I try to write basic programs to prepare myself for 280?</p>
<p>Everyone who took 151/183 learned pointers and while we didn’t learn it in 101 it still would be very helpful. </p>
<p>Really, just the main syntax. If you get to OOP don’t worry about it because they teach that in 280. All the basic stuff you’d learn up until then is what you should learn. </p>
<p>Just make sure you’re comfortable making simple programs and that you can read in from a file and stuff like that. It would be very helpful to learn about pointers but it’s technically not necessary because they go over it in 280.</p>
<p>I’m not 100 percent committing to CS by the way. I’m gonna try 2 classes next semester. Either 183 or 280 (still not sure yet), and 203. If I like it, I will stay to finish out the degree.</p>
<p>This is my plan for finishing the degree in 5 semesters (which would let me graduate by winter 2014, 1.5 years late =/ ) Also this is assuming I decided to do 183 before 280. Do you guys think this is do-able? I talked with an LSA-CS adviser said it was possible but he said that my Fall 2013 semester will be tough.</p>
<p>Winter 2013
EECS 183
EECS 203</p>
<p>Spring 2013
EECS 280
Math 116</p>
<p>Fall 2013
EECS 281
EECS 370
EECS 376</p>
<p>Winter 2014
12 EECS electives</p>
<p>Fall 2014
4 EECS electives
1 MDE course</p>
<p>This is what my schedule would look like if I just start with 280, I can finish the degree in 4 semesters, but I would still graduate the same time. The only difference is that I won’t have to do a spring semster this year.</p>
<p>Winter 2013
EECS 280
EECS 203
Calc 2</p>
<p>Fall 2013
EECS 370
EECS 376
EECS 281</p>
<p>Winter 2014
12 EECS electives</p>
<p>Fall 2014
4 EECS electives
1 MDE course</p>
<p>Do you need Calc 3, EECS 496, or any of the TechComms? If not, you should be good. That Fall '13 isn’t so bad, none of that is bad. You look good to go if that covers everything you need to take.</p>
<p>Vladenschlutte, </p>
<p>Nope I won’t need those since I’m doing the degree through LSA. I also have to squeeze in a 400 level econ class either Fall 2013 or Winter 2014.</p>
<p>Could you tell me which semester should be lighter?</p>
<p>Also do you find calc 3 or linear algebra to be useful for CS? I’ve read that linear algebra has many applications in CS. It’s not required for me, but I make take it, if it’s important.</p>
<p>It depends on which classes you take in 2014… Do you have any idea which ones you may want to take? Linear Algebra is always good to take, but how useful to CS it is will really depend on what you want to do. Between it and an additional EECS class though, the additional EECS class is probably more useful.</p>
<p>As someone who tried just that this semester, I would recommend against it.</p>
<p>I did some tutorials on codeacademy and read the first chapter of the book we were using for a month before the semester started and it wasn’t enough to prepare me. I found the first project very challenging, I didn’t complete all of the second project, and withdrew by the midterm. I lost a lot of time and money.</p>
<p>I think what was so challenging about the course was that you’re expected to have some background in programming and on top of that, you’re supposed to be able to manipulate the concepts you learn in class in order to complete the projects. The projects involve a lot of problem-solving (meaning, a lot of what would be useful information is omitted), which I would believe is to get you to think like a computer scientist or engineer. It’s not simply “knowing code.” People I talked to and worked with who did take EECS 183 still found the projects very challenging.</p>
<p>Between learning C++ syntax and trying to understand and implement the principles talked about in class, I was doing what felt like double the work of a single class, at least. And as I mentioned, I still wasn’t able succeed in the end. Keep in mind, the midterm has you programming off the top of your head and writing down the solution without being able to test it.</p>
<p>I came from a humanities background and so the concept of intense problem-solving and the way the exams are structured was a real eye-opener for me. If you are of the engineering mindset, maybe you’d have less trouble than I did. But in light of everything I experienced, I’d take 183 first.</p>
<p>I’ve heard that EECS 280 generates more Honor Code violations than all the other CoE classes combined. My ENGR 101 professor claimed he had once found 1/3 of his EECS 280 class to be in violation of the honor code. So yes it is a tough course. I would really recommend a prior programming course beforehand. You will be expected to hit the ground running in EECS 280 without slowing down. This isn’t firsthand advice, but rather word of mouth from my EECS friends. EECS courses are notoriously difficult and EECS 280 is one of the hardest.</p>
<p>If I were you I might have sat in on ENGR 101 all semester to get a feel for programming. The classes are large enough that nobody would have noticed someone peeping in on the lectures. You might not have been able to do the projects but it still would have been a worthwhile thing to do.</p>
<p>280 is big on Honor Code violations, as well as its bigger and more evil brother, 281. (In 281, my prof once said that he saw that people were posting problem set questions and code on forums outside of school). </p>
<p>When I took 280, I felt that the class was extremely skewed towards people who had experience with programming before college. The programming projects are large and prone to bugs, because they want you to gain experience reading from specs and debugging your programs. (Debugging is a very useful skill to have) The exams usually contain a question or two that I can best describe as a “mini-project,” like coding up a function. (harder than it sounds for some) I highly recommend taking 183 before taking 280, though you may find Dorf to be a difficult person to deal with. </p>
<p>Also, taking 281, 370, and 376 all in one semester is just asking for trouble, unless CS comes naturally to you. (There are people who exit those classes with all As) 281 and 370 often have overlapping project and problem set deadlines, and 281 is an exceptionally harsh class. I will note that 376 will be the lightest in workload, but many people complain about the last half/third of the class, because that’s when the concepts in 376 become really abstract and difficult to grasp.</p>
<p>Also, the grading curves in 280 and, in some semesters, 281 are not too forgiving. I think the official stats is a B/B- average with 15% to 25% of people getting As or A-s, which is lower in comparison to the econ weeder classes.</p>
<p>I’m not saying that your course planning is impossible, but be prepared for a challenge. Study effectively and manage your time well.</p>
<p>
</p>
<p>From what I understand, mostly false positives that aren’t punished or penalized in any way because everyone knows 280 has lots of false positives. It’s really stupid. Because of the level of false positives actual blatant honor code violations probably go unpunished. I hope they reform that because it’s really dumb. </p>
<p>For reference, they do some statistical test to determine if code written for a project in the past is too similar to code you write in the class. This goes back pretty far and the projects don’t chance much, so there are a lot of cases where two people independently wrote similar code for the project. </p>
<p>I disagree with ab2013. 281, 370, and 376 should be fine if that’s all your doing (it’s 12 credits so you can just take those and still be full time) or if you just have 1 other easy class. Don’t take another EECS class with it. And don’t do it if Yaoyun is teaching 376. Your plan of just those three in that semester is fine, assuming Yaoyun isn’t teaching 376 (and he probably won’t be). If he is, there’s probably some upper level that you can take without 281 (475, 478, maybe another class don’t require 281) to switch with 376. </p>
<p>280 and 281 do have really bad curves though. You can put a tremendous amount of effort into the class, doesn’t mean you’ll get an A. But it’s okay, plenty of successful people don’t.</p>
<p>
</p>
<p>I did note that some people can take all 3, depending on how natural EECS classes come to you, and some actually take all 3 at once and pull through with all As despite the unfavorable grading curve in 281. However, a large fraction of CSE majors cannot handle that workload, and you absolutely do not need to take so many core classes at once. There are people who take 281 and miscellaneous easy classes and still have to drop 281.</p>
<p>Thank you all for your replies.</p>
<p>I have decided to take 183 next semester. As for Fall 2013, I did plan on taking one more class, probably my last econ elective. I’ll see how my next 2 semesters go, and then I’ll plan for Fall 2013. I’m already a senior now, so I’m trying to finish with as few semesters as possible.</p>
<p>m77,</p>
<p>Are you gonna try CS again next semester?</p>