Tree Swing Cartoon (Wikipedia)
All class-related information (including handouts, electronic readings, and assignments) should be accessed through the CS342 web portal located at:
1:: Prerequisites and AttendancePrerequisites: CS251 (Data Structures). The pre-req is non-negotiable.
The class meets Tue and Thu at 12:30pm in Lecture Hall F. Attendance is not mandatory, but might as well be: this course employs massively in-class quizzes, exercises, presentations, discussion, and critiques. Students are required to bring in their iclicker, a notepad, and a pencil/pen. Class will start right on time; being late will result in lost quiz points, which would be a pity. :-)
This course has a strict policy of no student laptops, no smartphones, no internet-enabled devices. For the duration of class, we need you to be present, alert and active. In exchange, there will be no formal midterms and exams. Don't make us regret it. :-)
Many of the class readings will be online. We will read additional articles as necessary (electronic copies will be provided for these). The two books we require for this class are:
Liz Marai, SEO 932
Email: gmarai at uic.edu
Office Hours: TuTh 1:45pm - 3pm or by appointment.
Graduate Teaching Assistants:
Lichao Sun Email: lsun29 AT uic.edu>,
He (Steve) Huang Email: hehuang AT uic.edu,
Harshit Tiwari Email: htiwar2 AT uic.edu
Office Hours: See CS 342 TAs Office Hour Calendar.
4:: Course Grade, Assignments, and Final Project
The course grade will be decided based on the following factors:
There will be a quiz each class meeting, covering the assigned reading materials. Students get 1 point for being present, and another 4 points for answering all the questions correctly. We will drop the three lowest scores of each student.
Classes will be divided among short lectures, discussions and debates,
in-class exercises, design critiques, student
presentations, and group meetings.
Many of the assignments will be done in groups. Please note that in
this course, as in real life after graduation, whom you get to work
with for several exercises is determined by us/your project manager,
not by you. When appropriate, all members of a group will earn the
same grade, barring exceptional circumstances. We will closely monitor
member contributions to the group work, as well as repeatedly ask for
Your primary grade will come from the course projects, assignments, and
quizzes. While the
class discussion and debates will not define your grade, your
performance on them can alter your grade (in particular, not paying
enough attention to them can cause you to lose a letter grade or
A program that does not compile on the TAs' machines, or at least
on the CS Lounge machines, will receive 0 points (zip, nada, nothing, end of
discussion). If a program crashes and prevents us from testing portions of
an assignment then the assignment loses points for the portion we can't
In general it's not good for a program to crash. It just makes the TAs mad
and they'll take it out on the grade.
Conversely, do some fun EC and the TAs will love you.:-)
Please keep in mind that cs342 office hours are a valuable resource dedicated to
helping students learn software design, not to teaching Java programming or data
structures. It is not the staff's job in any way to help you debug your
programs, and please do not expect them to bring up your code on the screen
and help you fix it.
Sometimes you may think that you have been graded unfairly.
Please take this up with the TA who graded your assignment. If there is
still a problem, Dr. Marai is the final word in grading and will be
happy to hear what you have to say. Also, once the grades have gone out,
you will only be given two weeks to lodge a protest.
In other courses, students have tried to get points back on all of their
assignments in the last week of class, and though we would like to
promote fair grading, we would like to dismiss malintentioned hassling.
Please be aware that if
the staff finds there are no grounds to a grade complaint (aka
malintentioned hassling), they will lower the original grade by half a
as fair penalty for abusing TA hours. Our first priority is fairness (both
to us and to you), so please do complain about grades if you don't agree
There are no incompletes in this class unless that student's current performance in class is at least a B
and they have a really good excuse, documented with the Deans. No extra work
is allowed to make up for poor performance. We have to treat
everyone equally, and we can not give extra work opportunities just to specific
Last, but not least, this edition of CS342 emphasizes teamwork and
oral communication skills, both essential componens of software design and
implementation. This emphasis is reflected in both assignments and the
class participation component of the grade. To help define successful
oral communication, we provide two grading rubrics, one for student
presentations and the other one for class discussion (see Section 9
5:: Late Policy
We will not accept late assignments. Some of the core topics we will
discuss in this course include: task scheduling, time management, and
teamwork; we fully expect students to practice these principles. The
assignments come with ample time allocation, and will sometimes
be timed to coincide with a lecture on a topic; so completing the
assignment is also crucial class preparation. The least deadlines you miss, and
the more serious the ones you make, the greater this will affect your
grade. An assignment that is more than 5 minutes late will receive 0 points.
You may not discuss the assignment with anyone outside of the
permitted group (by default, nobody else) with the sole exception of
the course staff.
7:: Academic Honesty
The University has an Academic Code that governs all our transactions.
In this course, we interpret this code as: All submitted work must be
your own. You may not submit as yours work done by a classmate, by a
friend, by someone on the internet etc. Always give proper credit. We expect
that you, as students and scholars, will abide by this faithfully and fully. Cheating in this
course will result in an F for the course.
8:: On Writing
We care about your ideas, and we also care equally deeply about the
quality of your writing. We care about spelling, capitalization,
punctuation, sentence construction, paragraphs, and so on. Avoid
passive speech except where appropriate. Extremely good ideas
expressed very poorly will earn a very poor grade.
9:: On Oral Communication and Discussion of Readings
We care equally deeply about the quality of your speech -- be it
during team communication, results
presentations, or deploying the game
for testing. We want you to be
successful, and to this end this
semester we provide grading rubrics
for class presentation and class
participation (see syllabus).
10:: Students With Disabilities
If you have a disability for which you are or may be requesting an accommodation, you are encouraged to contact both your instructor and the UIC Disability Resource Center (MC 321), 1200 West Harrison Street, 1190 SSB Chicago, IL 60607-7163 (312) 413-0886, as early as possible in the term. DRC will verify your disability and determine reasonable accommodations for this course.
11:: Recording and Copyrights