UMBC CMSC201, Computer Science I, Spring 1996
Section 0201 and 0202
Questions and Answers
This page will be updated frequently with questions
and comments from the students via email.
Names have been withheld to protect the innocent.
- Prof. Chang,
I am in your 10:00 am class and I am confused . I previously took pascal
at a University in [...]. I am a cmsc major and hope this class
doesn't break me.
Dazed and confused
- Dear Dazed and Confused,
Hey, I'm not surprised if you are confused after today's lecture (9/27/94).
We covered some difficult material. If you don't understand something,
you must ask questions in class, even if it's just to say, "Can you
explain this part again? perhaps differently?" If you don't ask
questions during lecture, we will zip along and finish the entire
book before Thanksgiving. Also, rest assured that you are not
the only one who's confused.
- Prof. Chang,
I appreciate your knowledge.. however just like Dazzled and
Confused.. I feel like I am lost! What exactly do you expect
from us for the exams and such? How do you suggest I study for
the course so that I get the most out of it and get a
successful grade? Thanks for any help you can give me.
- Dear Also Dazzled and Confused,
It is OK to feel a bit lost in the beginning of the course.
We are covering lots of material, and it may not make complete
sense until we get through Chapter 8. Then, some of the
earlier material will become clearer. I will encourage you
to hang in there.
As for what is covered in Quizzes and Exams. You can
browse through last semester's quizzes and exams (available
on WWW) to look at the format and material covered in those exams.
The best advice I can give about getting a good grade
is to learn as much as you can from the projects. They
help you focus on material covered in class. It really helps
to do your projects a little at a time. If you rush to
finish your projects in the last minute, you won't gain
much from the experience.
- Prof. Chang,
What if you submit your program and then find a small mistake. If you
have submitted early, may you amend your program and resubmit, or is it
a done deal?
- Signed: Just sick about it.
- Dear Just sick about it,
Yes, you can turn in the project up to 12 midnight on the due date.
We will simply grade the final version, but please check your program
before you submit. It gets confusing to have 5 versions of everyone's
program lying around.
- Prof. Chang,
I am a freshman and I am wondering if the lab sessions are
manditory. They seen to be repetative, and I was wondering if I will
loose points if I do not attend.
- Dear Fresh Truant,
I will not force people to go to recitation, so you will not lose points.
HOWEVER (in big ugly bold lettering), a lot of people in class
need to go to recitation, because they didn't understand the material
from lecture. We will also return quizzes and do reviews for the
exams in recitation. So, if you choose not to go, you will miss some
- Prof. Chang,
I am getting really impatient waiting for the grader to finish
grading our projects. We are working on project 3, and we still
haven't gotten project 1 back yet. I think it is unfair because none
of us know how we are doing on the projects. I am going to be really
annoyed if, when I finally get the projects back, the grader takes off
points for the same mistake on every program. If we could get some
feedback about how we are doing, we wouldn't have this problem.
I have no way of correcting my mistakes on this program if I don't
know that I made these mistakes in the first or second program. It's
not my fault that you can't find a reliable grader. I feel that it
is your responsibility to your students to return the projects in a
timely manner. Most professors at umbc make sure that old
assignments are returned before new assignments are given. We had a
deadline to finish them, and I don't see why the grader shouldn't
have a deadline to finish grading them. After all, you are paying
him/her. Please return our papers.
- Dear Really Impatient,
I agree with you completely that the projects should be returned
as soon as possible.
However, it is also the case that $5/hour is not worth enough
to ask someone to jeopardize his grades. I don't want the grader's
academic performance to suffer because he is grading for our class.
Our grader is reliable. He didn't say that he would have Project 1
back to me right away. He said he had exams right away. I said fine.
So, I want you to know that I am aware that this is not the
ideal situation for grading.
- Prof. Chang,
Why are we using a "watered down" version of C??
I take my projects home in hopes of working on them over the weekends,
but we only have C++ at home and a lot of the functions I need are
missing from C++. I understand that an easier version is more
convenient for a first-semester course, but isn't it more difficult
to have to re-learn the language than just to learn the "real"
language the first time?? Don't get me wrong, I enjoy using some of
Mr. Roberts' functions, but we won't always have them. Is there a
particular reason we use this version?
Sleepless in Severna Park
- Dear Sleepless,
I've been waiting for someone to ask this question.
There are a few points I want to make:
- We are not using a "watered down" version of C.
We are using a souped up version.
- If you are taking your work home, why by all means
take the course library with you too. The complete
source code for the library adapted for various operating
systems are in the standard place ~chang/pub/cs201/.
There are versions for xwindows (UNIX), Macintosh,
Microsoft DOS, Microsoft Windows and a generic version.
You have to find the right version for your computer
and compile it on your machine.
The course library is compatible with ANSI-C.
There is nothing special about it.
Of course, if something breaks on your system, it's
- It is not accurate to say that you will be re-learning
the language, because you would not have "learned" in the
first place. For example, if we used scanf
instead of GetInteger you would not have understood
how scanf works, because you would have to
know about pointers and parameter passing by reference.
- Another point: the features of the functions in the course
library are features that you want to implement.
For example, GetInteger badgers the user until
he/she enters an honest-to-goodness integer. To do this
with scanf is not trivial. If we had you use
scanf from the beginning, you would not be
able to implement the features provided in GetInteger
until the end of the semester. By that time, you would
have gotten the bad habit of writing code using scanf
that does not check the user's input and does not recover
from errors. This is a bad habit.
The summary of my argument is the following. It is better to
use the advanced (not watered down) features of the course library
from the beginning and learn that these are desirable and convenient
features. By the end of the semester, you should have learned
enough about the C language to implement these functions yourself.
The alternative is to have you use low-level and cumbersome functions
like scanf and develop bad programming habits. Then at the
end of the semester we could hope that you will want to write additional
lines of code to implement the nicer more advanced feature. Yeah right.
Since you say that you like using the Roberts' Library, I consider
our plan a success!
Fri Dec 2 17:17:01 EST 1994
Richard Chang, email@example.com