Yes, you can. Because this is the first course in the Computer Science curriculum, previous programming experience is not a prerequisite for this class. However, you should know that many of your classmates have some sort of programming experience. The official policy is that people with programming experience are ahead and that people without programming experience are supposed to learn programming in CMSC201.
If you do not have any programming experience, you should plan on spending plenty of time in the computer labs in the beginning of the semester. You should get acquainted with the UNIX system, the editor and electronic mail before the first assignment. As far as grades are concerned, you will be graded according to an absolute standard. So, if you do well in this class you will get an "A"; no matter how many other students do better than you.
If you have never used any sort of computer before, you might consider taking CMSC104 before taking CMSC201. This course will familiarize you with a computer system, an editor and some rudimentary programming. CMSC104 is being offered both in the summer and the fall this year.
That depends. If you already had a good programming course in C, you should move on to the next course: CMSC202. A good C course should have covered: functions, arrays, pointers, strings and perhaps even memory allocation and recursion. You should consult your instructor and Mrs. Beth Currie before making this decision.
If you had a similar course in PASCAL, you should take CMSC106 before taking CMSC202. The CMSC106 class teaches C to people who have already taken a programming course in PASCAL. BASIC, COBOL, and FORTRAN are sufficiently different from C that I would suggest that you take the normal CMSC201 and CMSC202 sequence.
If you already know how to program but want to take this course anyway, the first few weeks of this class could be repetitive. However, you should pay close attention to the material being covered in the lectures. Once we start to cover material that is new to you, you cannot afford to miss the lectures. It is difficult to play catch up in this class because we move on to new material every lecture. Review takes place in the discussion sections.
Yes, CMSC201 is required. However, requirements can be waived. If you have credit in another college or university, you should have the credits transferred. If you are a top notch programmer and you feel that you should skip CMSC201, you can substitute CMSC201 with a higher level course. If you want the CMSC201 requirement waived, you should see Mrs. Beth Currie.
There is no such thing as an easy "A" for this course. Even if you already know how to program in C, you still have to do all the projects and take all the exams. This can be difficult if the course is too easy for you because you become bored and lose the motivation to attend the lectures and do the projects. In the past, people have made the mistake of assuming that all the projects are as easy as Project 1. When Project 4 comes along, they find that they have not budgeted enough time for this course and end up with a low grade.
Warning: You cannot retake CMSC201 for credit if you have already taken CMSC202 for credit. Even if you are officially enrolled in CMSC201 now, you will not receive credit for it and your previous grade for CMSC201 (if any) will stand.
Students enrolled in CMSC201H can count this course towards the requirements for UMBC's Honors College. Currently, the Computer Science Department does not offer an honors degree for computer science majors. The students in CMSC201H attend the same lectures as students in the other sections, but have a different discussion section. Instead of reviewing the lectures in the discussion, they will explore new topics. Also, one of the projects will contain extra work for the students in CMSC201H.
Enrollment in CMSC201H is limited to 16 students.
Sue Bogar, firstname.lastname@example.org