Course overview, policies
|
Instructor: Prof. Mona Diab
Time/place: o Class:
Tuesdays/Thursdays (TR) 2:20-3:35pm, Tompkins Hall 411 o Lab: Wednesdays,
11:10-1:00pm (Section 30) Tompkins Hall 411 o Lab: Mondays,
9:00-10:50 (Section 31), Tompkins Hall 410
Office Hours: Wednesdays
3pm-5pm, Staughton Hall, rm
102 (and by appointment)
Lab TA: Tianyi Song (tianyi AT
gwmail.gwu.edu)
Grader
TA: Hanan AlDarmaki
(aldarmaki AT gwu.edu)
LTA Office
Hours/Location: Wed 1:00-3:00pm, 2033 K St NW, rm 340M
GTA Office
Hours/Location: Thurs 12:00-2:00pm, Staughton Hall, rm 103 Prerequisites: CS 1111 (CS 53) or equivalent (See undergraduate curriculum). Course description:
This is your second course using programming, the focus of this class is purely on Java as the language for applying the concepts learned in class. I will not be teaching you Java per se, my focus will be on the data structures and algorithms aspects. You will learn fundamental data structures such as linked lists, stacks and queues, and a little about trees (more of which will be covered in CS-2113). We will also spend some time with arrays, even though you might have covered some in CS 1111. You will learn about problem-solving, especially recursion. You will get better and more confident in Java while learning a little about objects, software development and debugging. Textbook: I will use the following textbook as a recommended reference, however all the lecture material will be available to you on this site.
Data Structures and Other Objects Using Java. 4th edition, 2012. Michael Main (Addison-Wesley). Supplemental material:
Each module is accompanied by supplemental material. Most of
this additional material is meant for reading.
You will see variations of examples presented in class, along with a few
small exercises. By reading the variations you will both developing your
code-reading skills and will learn alternative ways of accomplishing the same
tasks. I will also be recommending sections from the book for you to read,
these are also considered supplemental materials.
Course mechanics:
This format of this class is fairly experimental. You will
read the assigned lecture material before each class. At the beginning of each class, I will introduce you to some
concept and I will also write a number of tasks on the board that you are to perform in class. I will guide you
through completion of the tasks. You are responsible for the following:
o You must read the lecture material
before class. Your
performance on the in-class tasks depends on your prior/advance knowledge of
the material. Do not think that you can read the material as you perform the
in-class assignments; this may work sometimes but will not work every time. o You must attend the lectures. Yes,
I understand that you're a great programmer and can do the in-class tasks out
of class. If you don't attend the lectures, we'll lose track of each other. o You must submit
your in-class assignments exactly within one hour and a half of the
start of the class time. You will use the classroom computers for doing the
in class exercises. You can collaborate with one other student on the
in-class assignments.
Coursework
and grading: o 30 points: in-class
exercises (15 points) and participation (5
points for in class, 5 points for class attendance, 5 points for lab
attendance) o 40 points: out-of-class
exercises/homework (15 points for Lab
participation, 25 points for Homework Assignments) o 30 points: two in-class
exams, Midterm, Final, 15 points each.
Assignment submission and late work
policy: o All assignments will be
submitted via your unix accounts or BlackBoard. Follow these
instructions when submitting work. o No late in-class
assignment submissions will be accepted. o The out-of-class
assignments may be submitted late, but points will be taken off: 20 percent
for each 24-hour period after the due-date. These points will not be
pro-rated hourly. Thus, if an assignment is due 5pm Oct 19th, a submission at
5.05pm Oct 19th loses 20 percent. o The submission time
will be determined by the file-date of your crypt file. Hardcopy late
submissions must be initialed with the submission time by one of the
secretarial staff, or TAs, if I am not available. o If you're seeking an
extension because you've been ill and have a letter from a doctor, come by
and see me about it. You
can send email to my GW email address. I will answer most class email during
specific times set aside during the week for this purpose - so do not expect
an instantaneous response. You may not
perform "debugging by email". That is, do not send me code snippets
and ask me to identify the problem. If you want me to look at your code, you have
to stop by in person during office hours and bring along hardcopy. Email is
typically used for clarification regarding coursework. You should try to
email the TAs coding and assignment-related questions before emailing me.
Academic Integrity policy: o In this course, you
will be expected to work on all assigned coursework by yourself,
unless otherwise specified by instructions on this page. If you have any
questions whatsoever regarding these policies, see me during office hours. o You may not, without
permission from the instructor, exchange course-related code with anyone
(including anyone not registered in the course), or download code for use in
your coursework, or use material from books other than the textbook.
Likewise, you may not look at anyone else's code or show your code to anyone
else. Protect your work: for example, be careful not to leave your printouts
around. o If using a tutor, you
may not show your CS1112-related code to your tutor nor
use code shown or written by your tutor. All
tutors for this class need to first register with me, by meeting me during
office hours. o If you use material in
your assignments that is from outside the course material, then you should be
prepared to explain that material. The instructor and TAs reserve the right
to question you on your use of extraneous material. Failure to answer such
questions might be viewed as grounds for an integrity violation. o The Academic Integrity
Code will apply to this course. Please read through the code carefully. o Penalties for violating
the code or the policies described here include failing this course, and are
elaborated in the Academic Integrity Code.
If
you have a disability that may affect your participation in this course and
wish to discuss academic accommodations, please contact me as soon as
possible.
Coding standards: o We will be a little
fastidious about proper indentation in this course. Points may be taken off
if you don't stick to a consistent and standardized indentation style. o You will need to
document/comment all your code. Again, we might take off points if your
comments are too sparse. o You need to test your
code. Generally, you should address the question "What did you do to
ensure that your code works?"
Majority of course material is courtesy of Professors Rahul Simha, Evan Drumwright, Abdelghani Bellachia. |
|
|