School of Engineering and Applied Science
Department of Computer Science
CSci 53 -- Introduction to Software Development
http://www.seas.gwu.edu/~csci53/spring03
Prof. Michael B. Feldman
mfeldman@gwu.edu

FREQUENTLY ASKED QUESTIONS (FAQ)

last update January 4, 2003


This page may be updated during the semester as more questions arise. You should check this location frequently to see if the page has been updated since your last visit.

General Overview and Grading Issues
Readings, Lectures, and Labs
Examinations
Software Projects
Using a home computer in the course
Withdrawals and Incompletes
Finally...

General Overview and Grading Issues

What is this course about?

This course is an introduction to software development. Computer programming is one aspect of software development, but there are other aspects that are just as important. Three of these are a systematic approach to problem solving, systematic software testing, careful and structured use of English.

I have no previous experience in programming or software development. Am I going to be OK in this course?

You've come to the right place! This course requires no previous background in programming or software development. We do assume you have some basic skills in using a computer: some use of a word processor, some experience using an Internet browser, and so on.

You are in good company. Generally, at least 50% of the students in this class have had no experience. Most of them have done well; you can, too!

HELP! This course uses UNIX. I am clueless about UNIX!

You've come to the right place! You're in good company -- very few students in this class know UNIX. No problem -- that's part of what you learn here!

Is this a "filter course" designed to weed out students?

Absolutely not! Our goal in this course is that every student should succeed here, and we are here to help you do so.

Is this a difficult course?

It's not intended to be difficult. Any course, in any subject, is easier for some students than for others.

Does this course have a heavy workload?

CSci 53 is not intended to be a very heavy course. On the other hand, technical courses like this usually require somewhat more of your time than liberal-arts "reading" courses. For every in-class hour in this course, you should expect to spend 2-3 hours outside of class. Including 3 hour of lecture and 2 hours of lab each week, that’s 10 ? 15 hours of work outside of class each week. You must plan on doing roughly this amount of work every week!

How is grading done?

Your semester grade will be calculated as follows:

Do you grade "on a curve"?

Sort of. I keep grade records strictly "by the numbers"; at the end of the semester, I compute a final average for each student. I then assign a grade that represents my experienced judgment as to how much you got out of the course. I have no predetermined cutoff points for A's, B's, C's, etc. If every student does well, every student gets a high grade. I do not give D's. A student who cannot earn a C- or better in 53 is simply not prepared to proceed to 133, and should therefore repeat 53. Therefore I will give such a student an F.


Readings, Lectures, and Labs

Do I have to do the readings?

The textbook and other handouts are an integral part of the course, not just background material. You are expected to come to class prepared; you must read each week's assigned material before you come to lab and lecture on Tuesday.

What about the reading quizzes?

There will be several short, unannounced reading quizzes. Expect one a week. They will cover information from that week’s reading assignment. They will be very short and are not comprehension based. The idea is to assess whether or not students are reading the book. Part of this introductory class is to help students with their study skills. Reading before lecture often helps students understand the material. Even if you do not understand the information the first time around, the second or third time it should become more clear. Reading quizzes will also be the way I take attendance, so even if you haven’t read, put your name on a quiz and I will know you were here.

Do I have to go to lecture?

GW university policy is that class attendance is required. You are expected to be there; you cannot do well in this course if you skip class. Lectures and reading quizzes together count 10% of your grade. Some days attendance is taken even if there is no quiz; other days it isn't. There is, in general, no "excused absence"; you are there or you are not. If you must miss a lecture, you are still responsible for all work covered.

Do I have to go to lab?

Lab work counts 10% of your grade. Each week's lab session will require you to do a small assignment that helps you learn that week's material. If you go to the lab and work productively on the assignment, you get credit for that lab; if you don't, you don't. If you miss a lab, you can make up the work on your own time, but you cannot get credit for the lab unless you are physically there. It is OK if you occasionally go to a different section of the lab (space permitting), but then you must make sure the lab instructor knows you are there!

What if I miss a lecture or lab, and therefore don't get a copy of a handout?

Each handout will be distributed in class once. All handouts are on the class web site, http://www.seas.gwu.edu/~csci53/spring03. If you miss a handout -- or lose one -- just visit the web site and get a copy there.

Do you give out lecture notes or post them on the web?

Only sometimes; don't count on it. Occasionally, lecture notes will be posted on the class website.

Examinations

Tell me about examinations, please.

There will be two one-hour midterms and a two-hour final exam, both strictly timed. These will be open-book, open-notes exams. If you are coming to class regularly, and keeping up with the reading and the projects, you should not need to "cram" for the exams. Exams will require a mixture of reading and interpreting short program segments, writing short program segments, and short "essay" questions. If you do poorly in one of the midterms, you may choose to replace its grade with your grade on the final exam. Since you must, however, make this choice before the final exam, you are risking a "double or nothing" result--this grade will stand even if it hurts your final grade.

Software Projects

What about these software projects?

I will assign a project roughly every week, which will be due the following week. Each project will build on the work done in previous projects, so it is in your interest to keep up with the project work. There will probably be 8 projects.
Each project will be graded on a 0-20 point basis. An incomplete submission is better than none; you will get credit where credit is due. I will accept late projects, subject to a "late fee" of 4 points per week of lateness. Each project is due at the start of the class on the due date; projects submitted after the lecture has begun will be counted as one week late.

Is there extra credit?

Yes. The extra cedit assignment is designed to help you gain perspecive on your academic life and does not require any programming. It is worth up to 10 project points and will be due on the day of the second midterm.

Do you drop the lowest project grade?

I will eliminate the lowest project grade for each student, under the following conditions:
The idea behind this is that you cannot simply skip a project. You must make some effort, and in a timely fashion. I will not drop any grades from the last two projects. These projects tend to be larger and more complicated, and are critical to your successfully learning the material of this course. It is important that they you do them.

Can I work with a friend on the projects?

Projects must represent the results of your own work. I cannot prevent your speaking with friends to sketch out a solution. But if you collaborate on the detailed design or coding, or copy a program from an acquaintance, and then submit the results as your own work, I will charge you with plagiarism, and I will win. Please read the handout on Plagiarism and Collaboration, which spells out the course rules for getting help from others. If you ever have any question about whether you’re following the rules, ASK meor your lab instructor. Do not guess! Do not rely on other students'opinions!


It is also essential to read Academic Integrity in Computer Science and the GW Code of Academic Integrity.

How do I get help with projects?

The lab instructors and I are ready, willing, and able to help you.Speak to us after class or at our office hours.
We will also help you by e-mail; we try to answer promptly.

If you have trouble interpreting compiler messages in your listing (.lis) file, you are not alone! The compiler has its own way of communicating with you, and this will seem strange at first. For help in understanding the compiler's messages, send the .lis file by e-mail to me or your lab instructor. Here's how:

We assume the .lis file is in your hobbes account, because that's where the compiler put it. Suppose the file is called project1.lis. E-mail the file by typing

elm mfeldman <project1.lis

Do not forget the < symbol!

DO NOT USE PINE TO SEND IT! DO NOT SEND "ATTACHMENTS"! We get too much mail to deal with these. The listing must be immediately legible in the e-mail note.

SEND THE ENTIRE FILE, not just the part with the error message! Cutting and pasting parts of a listing will maker it much harder for us to help, as we need to see all your code, not just a small piece of it.


Using a home computer in the course

I have my own computer. Can I use it in this course?

Yes, but the main location of all the programs you will need is on the SEASCF server called "hobbes". The best way to use your computer is as a terminal, to log into hobbes over the Internet, just as we do in the labs.

How do I get to hobbes from my home computer?

First, read the web page at http://www.seas.gwu.edu/~seascf/access/remote.shtml, which discusses how to make your basic connection from GW or an off-campus location. Once you can connect, you need a program that proves a "secure shell client" (SSH2) on hobbes.

If you have a Mac running System X, the Terminal tool supports SSH2 so you just need to start that program and type
ssh hobbes.seas.gwu.edu
If you have a Mac running System 9, see Prof. Feldman.

If you have a Windows computer, you can download a free SSH2 client from ftp://ftp.ssh.com. This is the same program used in the lab PCs to get to hobbes. Once you install the program, you can connect to hobbes.seas.gwu.edu.


Withdrawals and Incompletes

At GW, an incomplete is completely different from a withdrawal, so it is important that you read the next two questions carefully.

How do I withdraw from the course?

Under University and SEAS regulations, here are the rules for withdrawing from courses:

Do you give Incompletes?

Under University regulations, and my own policies, here are the rules for Incomplete grades:
An Incomplete grade is undesirable. Under GW rules, you are required to remove the I by completing the work of the course. Taking the course a second time does not (NOT!) remove the original I. Under SEAS rules, an Incomplete not removed within one year becomes an F. At GW, an Incomplete is not the same as a withdrawal!

Finally...

I’m having trouble in this course. Where can I go for help?

There are many people interested in helping you succeed in this course. Please see your lab TAs and me for help. If you need help beyond what we are giving you, contact Brendan Lynch (blynch@gwu.edu) in Tompkins Hall. He is in charge of SEAS Student Support and he would be happy to help find a tutor.

I am the director and lecturer in this course; I am also the advisor of the 2002 entering class; I am very devoted to undergraduates and will do my best to give you any help you need. You can trust me to keep your situation confidential. If you still feel you can't discuss it with me, the CS department chair, Prof. Dianne Martin (who's also the lecturer in CSci 41) is a good next stop for you.

Remember, my objective, and the objective of this department, is that our students should succeed!