CSCI 131
    Techniques of Programming
    College of the Holy Cross, Spring 2014

    Home | | Schedule | | Assignments | | Lectures | | Resources


    Course description
    In this course we will explore some fundamental concepts in Computer Science, including problem solving, algorithms and programming in the high level programming language, C++. The course will also cover debugging, some simple data structures and the fundamentals of program style.


    Instructor
    Constance Royden
    Office: Haberlin 308
    Extension: 2472
    Email: croyden@cs.holycross.edu
    Office Hours: Tues: 10 - 11 a.m., Wed 1 - 4 p.m., or by appointment.


    Lecture times

      MWF 10:00 - 10:50 a.m.

    Lab times

      Mon 2:00 - 4:00 p.m.
    You must be registered for both the lecture section and the lab section.


    Textbook
    Required: Programming in C++, 3rd edition, by Nell Dale, Chip Weems and Mark Headington, Jones and Bartlett, 2005.

    Laboratory Manual
    Required: Computer Science 131, Techniques of Programming Laboratory Manual, Spring 2014, by L.A.S. King, R.E. Noonan, R. Prosl, et al.


    Course Requirements
    1. Laboratory Assignments
    Laboratories will be held weekly on Monday afternoon. Attendance at the lab sections is mandatory. There will be 12 laboratory assignments. Each will be due at the end of the lab section.

    2. Programming Projects
    There will be 5 or 6 individual programming projects and one group project during the semester. You will have one to three weeks to complete each one. Please consult the schedule for due dates.


    Exams
    There will be two midterm exams held in the evening on the following dates from 6:00 - 8:00 p.m.:

      Exam 1: Thursday, February 27
      Exam 2: Thursday, April 10

    Mark your calendars now!

    Final Exam
    The final exam will be held at the scheduled time during exam week

      Friday, May 9, 8:00 - 10:30 a.m.


    Final Grade
    The final grade will be computed as follows:

      Laboratory Assignments10%
      Programming projects30%
      Midterm Exams40% (20% each)
      Final Exam20%


    Late Policy

    1. Lab assignments
    Lab assignments should be turned in at the end of each lab. However, generally the final due date for the labs will be at the beginning of class on Wednesday following the lab. Please refer to the assignment schedule for a list of lab due dates.

    2. Programming Projects
    Programming projects are due at the beginning of class on the dates specified on the assignment schedule. You have ample time to complete these projects, so you should plan to have your project finished several days in advance so that a last minute illness or computer crash does not interfere with the due date.

    3. Penalties for late work Projects or labs submitted within 24 hours of the time when they were due will be penalized 10%. Penalties will accumulate for each day late, losing 10% per day late. The late penalty is determined by the time of the electronic submission and the time when the assignment is physically transferred to the instructor or "signed in" by any Math/CS faculty member or the departmental secretary (whichever is later), so turning in an assignment in the wee hours will be difficult. Once an assignment/project is returned to the class, no late work will be accepted.


    Collaboration Policy
    In doing any work in this course (e.g. assignments/programming projects/tests) it is expected that the work you turn in is your own work. The amount of collaboration allowed differs between laboratory assignments and programming projects, so please read the following guidelines carefully. If you are in doubt, be sure to ask the course instructor.

    Please read the Math and CS Department Statement on Academic Integrity.

    Laboratory assignments
    Collaboration is allowed on lab assignments.

    • You may refer to your texts, your class notes and your course instructor for help.
    • You may talk to your TA's, instructors, and fellow students about how to go about solving the various problems presented.
    • You must write and type in your own code.
    • If you receive help from some source, e.g. a book, an instructor, or a fellow student, please acknowledge that collaboration in your discussion log.

    Programming projects
    Collaboration on assignments is acceptable, although you must write the code for your programs entirely by yourself. You must also acknowledge the people you worked with on an assignment. If your program includes code that you obtained from another source, please acknowledge it. Specifically:

    • You must compose your own solution to each assignment. You may discuss strategies for approaching the programming assignments with your classmates and you may receive general debugging advice from them, but you must write all your own code.
    • You may not write a program together and turn in two copies of the same code.
    • You may not copy another student's code.
    • If you work with another student, you must acknowledge that student on your assignment.
    • You may borrow code from textbooks or from lecture material, as long as you cite your sources.
    • You must turn in a discussion log indicating who you worked with, what you discussed, and when, with every assignment.


    Discussion Logs

    For each assignment, you must keep a log detailing every collaboration you had with someone else and every source you consulted when completing the assignment. Each log entry must include: the date, the source, the length of time spent talking or reading, and a summary of discussion or material read. You don't need to include the course textbook, the lab manual, the lab assistants, or the instructor, since it is assumed you will consult these sources. Here is an example—you should use a similar format:

    • discussion-battleship.txt

    Even if you did not discuss anything with anybody and never consulted any other sources, you must still submit a discussion log that says just that, like so:

    • discussion-ascii.txt

    Because time is limited during labs, your lab discussion log can be brief—just keep a list of students you collaborate with and/or web sites you consult, and then write brief mention of what topic you were discussing or reading about. For programming projects, be more detailed. Here is a lab example:

    • discussion-lab.txt


    Home | | Schedule | | Assignments | | Lectures | | Resources


    Constance Royden--croyden@mathcs.holycross.edu
    Computer Science 131
    Last Modified: January 20, 2014
    Page Expires: August 10, 2014