CS253: Software Development with C++

Spring 2022

Syllabus

TaskCountPointsTotal
Labs15115
Quizzes13113
Homework 0111
Homework 1–77428
Midterms21428
Final exam11515
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

 MonTueWedThuFri
9:00RP RP  
10:00     
11:00WQAB AB 
12:00 AB AB 
1:00   JA 
2:00AO  JAAO
3:00AOJPAOJPAO
4:00 JPJAJP 
5:00  JASRJA 5:30–7:30
6:00 SR SRJA 5:30–7:30
7:00 RP/SR   
8:00WQRP/WQWQ  
 Green: Linux Lab       Red: online, in Teams

General

  1. Learn C++, which will partition the class into three sections:
    • Non-object-oriented C++
    • Object-oriented C++
    • Templates and the STL
  2. Learn the tools of a professional programmer, including:

Letter Grades

A+≥ 96.67B−≥ 80.00
A≥ 93.33C+≥ 76.67
A−≥ 90.00C≥ 70.00
B+≥ 86.67D≥ 60.00
B≥ 83.33F≥ 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

LabWhenWhereWho
R01Fri8:00–8:50ᴀᴍCSB 325Andrei, Alex
R02Fri9:00–9:50ᴀᴍCSB 325Ramya, Alex
R03Fri10:00–10:50ᴀᴍCSB 325Andrei, Ramya
R04Fri11:00–11:50ᴀᴍCSB 325Wen, Alex
R05Wed1:00–1:50ᴘᴍCSB 325Shalini, Jonathan
R06Wed2:00–2:50ᴘᴍCSB 325Wen, Jonathan
R07Wed3:00–3:50ᴘᴍCSB 325Andrei, Jonathan
R08Wed4:00–4:50ᴘᴍCSB 325Shalini, Jonathan
R09Wed5:00–5:50ᴘᴍCSB 325Shalini, Jonathan

Labs (alias recitations)

Programming Assignments

Getting Help

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:

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.