Task | Count | Points | Total |
Labs | 15 | 1 | 15 |
Quizzes | 13 | 1 | 13 |
Homework 0 | 1 | 1 | 1 |
Homework 1–7 | 7 | 4 | 28 |
Midterms | 2 | 14 | 28 |
Final exam | 1 | 15 | 15 |
- Class
-
CS253: Software Development with C++
- Lecture
- noon–12:50ᴘᴍ
MT Mon/Wed/Fri;
campus: BSB A101,
online: Echo360
- Labs
-
Weekly labs (alias recitations):
campus: CSB 325,
online: Media Gallery CSUO
- Semester
-
January 19 – May 6, 2022
- Optional Text
-
C++ for Java Programmers
Mark Allen Weiss, ISBN 013919424X
(beware of another book with the same title)
Staff & Office Hours
| Mon | Tue | Wed | Thu | Fri |
9:00 | RP | | RP | | |
10:00 | | | | | |
11:00 | WQ | AB | | AB | |
12:00 | | AB | | AB | |
1:00 | | | | JA | |
2:00 | AO | | | JA | AO |
3:00 | AO | JP | AO | JP | AO |
4:00 | | JP | JA | JP | |
5:00 | | | JA | SR | JA 5:30–7:30 |
6:00 | | SR | | SR | JA 5:30–7:30 |
7:00 | | RP/SR | | | |
8:00 | WQ | RP/WQ | WQ | | |
| Green: Linux Lab Red: online, in Teams |
- Instructor has office hours on Teams:
-
📧
Jack Applin:
Wed 4:00–6:00ᴘᴍ, Thu 1:00–3:00ᴘᴍ, Fri 5:30–7:30ᴘᴍ MT
- or by request, online or in person
- GTAs
have office hours in the Linux Lab:
-
📧 -> mailto:Andrei [period] Bachinin [snail] ColoState [period] Edu
Andrei Bachinin: Tue 11ᴀᴍ–1ᴘᴍ, Thu 11ᴀᴍ–1ᴘᴍ MT
-
📧 -> mailto:RamyaSree [period] Patchava [snail] ColoState [period] Edu
Ramya Patchava: Mon 9–10ᴀᴍ, Tue 7–9ᴘᴍ, Wed 9–10ᴀᴍ MT
-
📧 -> mailto:Wen [period] Qin [snail] ColoState [period] Edu
Wen Qin: Mon 11ᴀᴍ–noon 8–9ᴘᴍ, Tue 8–9ᴘᴍ, Wed 8–9ᴘᴍ MT
-
📧 -> mailto:Shalini [period] Royyuru [snail] ColoState [period] Edu
Shalini Royyuru: Tue 6–8ᴘᴍ, Thu 5–7ᴘᴍ MT
- UTAs
have office hours on Teams:
-
📧 -> mailto:Alex [period] OHara [snail] ColoState [period] Edu
Alex O’Hara: Mon 2–4ᴘᴍ, Wed 3–4ᴘᴍ, Fri 2–4ᴘᴍ MT
-
📧 -> mailto:Jonathan [period] Pfoff [snail] Rams [period] ColoState [period] Edu
Jonathan Pfoff: Tue 3–5ᴘᴍ, Thu 3–5ᴘᴍ MT
General
- The class is in three places:
- https://cs.colostate.edu/~cs253 for viewing homework assignments, schedule, syllabus, etc.
- Canvas, CSU’s LMS,
for turning in homework & labs,
taking quizzes & tests,
viewing recorded lectures,
viewing lab introductions,
and seeing your scores.
- Microsoft Teams for discussions and some office hours.
- Log in to Microsoft Teams with your CSU address
(eid
@ColoState.Edu
)
and eID password, not a personal account.
- The purpose of this class is twofold:
- Learn C++, which will partition the class into three sections:
- Non-object-oriented C++
- Object-oriented C++
- Templates and the STL
- Learn the tools of a professional programmer, including:
Letter Grades
A+ | ≥ 96.67 | B− | ≥ 80.00 |
A | ≥ 93.33 | C+ | ≥ 76.67 |
A− | ≥ 90.00 | C | ≥ 70.00 |
B+ | ≥ 86.67 | D | ≥ 60.00 |
B | ≥ 83.33 | F | ≥ 00.00 |
Letter grades are computed per the table, right. There’s no rounding.
89.99 points is a B+, not an A−.
The labs & weekly quizzes are worth a lot of points—don’t throw them
away and miss a letter grade by quarter point. There is no extra credit.
Quizzes & Tests
- Weekly quizzes, the midterms, and the final exam,
are all on Canvas.
- As shown in the schedule,
quizzes are due 11:59ᴘᴍ MT Saturday, with a five-day late period.
- Quizzes & tests are weighed according to the table above.
- Quizzes are not curved, only the midterms and the final exam are.
- Contact the instructor to review a Canvas test.
Lab | When | Where | Who |
R01 | Fri | 8:00–8:50ᴀᴍ | CSB 325 | Andrei, Alex |
R02 | Fri | 9:00–9:50ᴀᴍ | CSB 325 | Ramya, Alex |
R03 | Fri | 10:00–10:50ᴀᴍ | CSB 325 | Andrei, Ramya |
R04 | Fri | 11:00–11:50ᴀᴍ | CSB 325 | Wen, Alex |
R05 | Wed | 1:00–1:50ᴘᴍ | CSB 325 | Shalini, Jonathan |
R06 | Wed | 2:00–2:50ᴘᴍ | CSB 325 | Wen, Jonathan |
R07 | Wed | 3:00–3:50ᴘᴍ | CSB 325 | Andrei, Jonathan |
R08 | Wed | 4:00–4:50ᴘᴍ | CSB 325 | Shalini, Jonathan |
R09 | Wed | 5:00–5:50ᴘᴍ | CSB 325 | Shalini, Jonathan |
Labs (alias recitations)
- For on-campus students, labs are in person.
Go to your assigned room at the assigned time.
A GTA will introduce the lab. The GTA and a UTA will be available to help.
- For online (section 801) students, video introductions for
the labs are available in Canvas under
Media Gallery CSUO.
- Do the lab on your own. This is not a group project.
- Get it right. The correctness of your solution matters. Trying is
not good enough. Treat a lab as a small programming assignment:
no copying, and it must unpack & compile.
- Turn in your lab work via Canvas.
Do not show it to the TA for points—turn it in for grading.
- As shown in the schedule, they’re due 11:59ᴘᴍ MT Saturday, with a five-day late period.
- The GTAs grade the labs. If you don’t like your score, talk with
the GTA who graded your lab first,
then to the instructor if you still disagree.
Programming Assignments
- Turn in programming assignments (HW0, HW1, HW2, …)
via Canvas.
- Writeups are available in the schedule.
- As shown in the schedule,
they’re due 11:59ᴘᴍ MT Saturday (but not every week), with a five-day late period.
- A GTA grades the homework. If you don’t like your score, talk with
that GTA first, then to the instructor if you still disagree.
Getting Help
- See Connect for how to connect to a CS Dept. Computer,
and Connect with MobaXterm for a specific guide using MobaXterm on
Windows.
- The GTAs have office hours in the Linux Lab
in CSB 120, as listed above.
- The Instructor & UTAs have office hours on Teams,
as listed above. Start with text chat, upgrade to audio or video.
- For general discussions, use the Teams
bulletin board / message board / forum.
- Send email using the staff addresses, above.
- Avoid Canvas messages—nobody reads those. I wish I could disable them.
- Canvas submission comments are similarly ignored.
Making up Work
If illness prevents you from doing homework or taking a quiz/test, get a
note from Hartshorn, a doctor, an
emergency room, etc. It is not good enough to diagnose yourself.
Similarly, if you suffer a family tragedy, your apartment catches fire,
you’re called up for military service, etc., then provide documentation
for the event. Concerts and ski trips are not unexpected.
Don’t ask the TAs to let you turn in work late, or to let you make up
work. They don’t have the power to permit that—only the instructor
does.
If the instructor allows make-up or late work, they will simply change
your Canvas due date. Don’t email it—just check it in to Canvas.
Time Zones
All dates & times mentioned are Mountain Time
(currently 7:25PM MST November 21, 2024),
the time zone used at CSU.
Your time zone does not determine deadlines;
CSU’s time zone (Mountain Time) does.
Closures
I will announce cancellations on Teams.
However, I don’t decide when to cancel classes—CSU does. If the weather
looks interesting, go to https://safety.colostate.edu. If that site
says that CSU is closed, then classes, labs, office hours, etc., are
cancelled. If it doesn’t, then they’re not.
Conduct in Class
Don’t distract the students. I can’t force you to learn, but you
must allow others to do so. This means:
- Do not distract others with conversation.
- Do not distract others with your phone.
- Do not distract others by using your laptop in front of the class.
- If you snore, I will wake you up.
Students often believe that they can efficiently multitask.
Some believe that they can surf the web, catch up on social networking,
and absorb the lecture at the same time. They are incorrect. Studies
consistently show that we are all miserable at multitasking.
Cheating
A student copies
but they have cheated themself
and so fails the class
Exams and projects will be done individually and grades assigned on an
individual basis. Further, students not already familiar with the
CSU Honor Pledge
should review this clear and simple pledge and always adhere to it.
Policies on cheating, plagiarism, incomplete grades, attendance,
discrimination, sexual harassment, and student grievances are described in the
Student Information Guide.
All other matters follow the policies set in the current
CSU General Catalog,
the
Student Conduct Code,
and in the
CS Dept. Code of Conduct.
You may not copy or use, all or in part, someone else’s work. You may
not give your work, all or in part, to someone else for any reason. It
is your responsibility to keep your work private from all others. You
may not collaborate to produce one product turned in multiple times. You
may not use work done in a previous semester by someone else. You may
not post assignments on the internet. Paying for homework will result
in dire consequences. Acting surprised will not help you.
The use of online “homework helper” sites including, but not limited to,
Chegg, NoteHall, Quizlet, and Koofers is not permitted in this course.
Please reach out to your instructor to discuss if a specific service you
are thinking about using for this course is acceptable. Use of these
types of resources will be considered receiving unauthorized assistance
and, therefore, a violation of the student conduct code. Using them may
result, at the discretion of the instructor, in an F for the course or a
negative value for the assignment, quiz, or exam. All incidents of this
type will be referred to the CSU Student Resolution Center and may be
subject to additional University disciplinary action.
You may discuss assignments but the work you turn in must be your
own. You have crossed the line if you start comparing someone else’s
work to your own (or vice versa). You have crossed the line if you
cannot explain/understand the work you submit. “I copied it from the
internet” is not an explanation.
Writing a program comprises two phases: design and
implementation. You must do both on your own. It is
unacceptable to have joint design but separate implementations.