CS253: Software Development with C++

Spring 2018


Recit week 1–151
Homework 01
Homework 1–44
Homework 5–75
Quiz 1–35
Midterm 1–213
Final exam13
It doesn’t add up to 100. Who says it has to?
A≥ 90
B≥ 80
C≥ 70
D≥ 60
F< 60
(no +/- grades)
CS253: Software Development with C++
Clark A 101, January 17 – May 4, 2018, MWF 3:00–3:50ᴘᴍ
Last Drop
January 31, 2018
Last Withdraw
March 19, 2018
Required Text
C++ for Java Programmers Mark Allen Weiss, ISBN 013919424X (beware of another book with the same title)
Jack Applin <aAapapalaian> (email tips)
Office Hours
CSB 246: Mon 2:10–2:50ᴘᴍ, Wed noon–12:45ᴘᴍ, Thu 1:30–2:30ᴘᴍ, and by appointment
Anurag Kumar <aAanauaraaaga.aKauamaaar>
Office Hours
Linux Lab: Wed 4:00–7:00ᴘᴍ, Fri 4:00–5:00ᴘᴍ
Minzhuo Jin <aMaianazahauaoa.aJaian>
Office Hours
Linux Lab: Wed 11:00ᴀᴍ–noon, Wed 1:00–3:00ᴘᴍ, Thu 10:00–11:00ᴀᴍ
Tutor schedule


R01CSB 325Thu4:00–4:50ᴘᴍAnurag
R02CSB 325Fri9:00–9:50ᴀᴍAnurag
R03CSB 325Fri10:00–10:50ᴀᴍAnurag
R04CSB 325Fri11:00–11:50ᴀᴍAnurag
R05CSB 325Frinoon–12:50ᴘᴍMinzhuo
R06CSB 325Fri1:00–1:50ᴘᴍMinzhuo
R07CSB 325Fri2:00–2:50ᴘᴍMinzhuo


The purpose of this class is twofold:

  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:
    • make
    • debuggers
    • valgrind
    • efence
    • programming styles (imperative, event-driven, object-oriented)
    • source control systems
    • coding standards


Homework, quizzes, and tests are weighed according to the tables on the right. Use ~cs253/bin/grade to see all of your scores, or ~cs253/bin/grade HW3 for detailed feedback on homework #3. Quizzes and tests are curved, homework is not, so, for example, you will see both Q2 (quiz #2) and a Q2-curved (quiz #2, curved) versions. There is no extra credit.

The TAs grade everything. If you don’t like your score, talk with them first, then to the instructor if you still disagree.

Homework is submitted & graded online, with ~cs253/bin/checkin and ~cs253/bin/grade. Quizzes are returned in class. Tests are not returned, but you can schedule time with the instructor to review them.

The Unexpected

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.


Students often believe that they can efficiently multitask. Specifically, they 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.

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:


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, 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.

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.

User: Guest

Edit History Source

Modified: 2018-02-14T14:43

Apply to CSU | Contact CSU | Disclaimer | Equal Opportunity
Colorado State University, Fort Collins, CO 80523 USA
© 2018 Colorado State University
CS Building