Syllabus: CS 1581 Honors Computer Science I
Course Content and Objectives
This course is an introduction to computer science, focusing on the
disciplines of procedural, data, and machine abstraction. It is intended for higher
ability students, but it does not require experience with any particular kind
of computer or programming language. It does require a certain level of
mathematical sophistication. The course satisfies the
Liberal Education requirement Language and Reasoning Skills: Logic and Quantitative Reasoning.
This course is designed to be an introduction to the science of
problem solving through the writing of computer programs. Students will
become familiar with multiple computer programming paradigms, including
functional, imperative, and object-oriented programming.
Ten weeks of the course will be taught
using the powerful, elegant, and high-level language Scheme. (The
version of Scheme we will use is called Racket.)
Scheme is simple to learn and helps students understand the principles of
procedural and data abstraction that they will carry throughout their
programming careers.
The last five weeks of the course will introduce the concept of machine
abstraction, first through the use of a simulated assembly language.
The course will conclude by applying the abstraction
principles learned to the object-oriented programming language C++.
This course addresses
these Student
Learning Outcomes (campus-wide):
- Think critically and creatively in seeking solutions to practical
and theoretical problems (SLO 3)
This courses addresses these UMD Liberal Education Logic and Quantitative
Reasoning outcomes (LQ-SLOs):
- LQ-SLO 1: Students will appropriately translate problems to symbolic
systems (Scheme, Assembly Language, and C++ programs)
- LQ-SLO 2: Students will apply mathematical or logical reasoning to
identify potential solutions using appropriate computer science design
techniques
- LQ-SLO 3: Students will demonstrate ability to test solution
strategies to verify their correctness
This course also addresses outcomes in
computer science education
specified by the UMD Department of Computer Science and
aligned with the standards put forth by the
ABET accrediting board.
Grading Basis
Grades will be based on the total points earned on
exams, programming assignments, and lab activities. These points
are broken down as follows:
item
| number
| points each
| total
|
Exam
| 3
| 75
| 225
|
Individual Assignment
| 4
| 25
| 100
|
Lab Exercise
| 9
| 10
| 90
|
Extended Lab Exercise
| 5
| 15
| 75
|
Grand Total
|
|
| 490
|
The final grades will be based on the 490 point total. Generally:
90% guarantees an A
80% guarantees a B
70% guarantees a C
60% guarantees a D
These grade cutoffs will never be raised; but they may be lowered.
Your grades will always be available through the
CS 1581 Course Canvas site
.
Course Organization
We will meet in lecture on Mon-Tue-Wed-Fri, when new material will be
presented.
We will meet in lab on Thursdays, where you will
perform lab exercises and/or work on individual assignments.
All times, locations, and reading assignments are on
the term
schedule.
Labs and Assignments
It is expected that you will read through the lab exercises
and perhaps get a start on them before the lab hour begins.
For the first 8 labs, you will have
until 10:00 p.m. on the day of the lab to submit your exercise.
The last 4 labs are extended exercises and are due the day after the lab by
10:00 p.m. Due dates and times are given on the
CS 1581 Course Canvas site
.
The individual assignments will be more involved than the lab exercises, and
you are expected to work on them on your own time, although we will take
questions concerning them during labs and discussions.
All labs and assignments
will be posted on the term schedule and
must be submitted through the
CS 1581 Course Canvas site
.
Late Submissions
Lab exercises and assignments must be turned in by the due date and time
given on the course Canvas site. Ample time is given to complete these
projects, and the only reason
for being late will be poor time management.
Late submissions are subject to the following penalties:
- One day late: 20% of the total value of the assignment or lab will be deducted
- Two days late: 40%
- More than two days: 50%
In calculating late penalties, weekends will be considered one day. For
example, if an assignment has a deadline on Friday and it is submitted before
the same deadline Sunday, it will be considered one day late.
Late submissions will be accepted through Friday of the last day of the
regular semester; they will not be accepted during finals week.
Exams
Exams will cover all lecture and reading material.
Exam dates, coverage, and topics are also given on the term schedule.
Exams must
be taken on the hour they are scheduled. They will not be given
early, and can be made up only if documented evidence of medical
emergency or death in the family is presented before the time of the
exam.
Development Environment
The development environment assumed by labs and assignments will be
DrRacket (formerly DrScheme).
This environment will be available on lab PCs, but you may also
install it on your own machines. The environment is free and open source.
Collaboration and Academic Dishonesty
There are no team projects in this course. All lab exercises, assignments,
and exam takings are individual undertakings.
You may
discuss an assignment and general approaches to a problem with your
professor, your lab instructor, lab consultants, or your classmates, but
you must design your program and write the code yourself. You may
consult with others about your design or seek help in debugging, but you may
not collaborate with anyone on the writing of your code.
Any such collaboration will be regarded as
academic dishonesty, a serious offense.
Inappropriate Use of Technology in the Classroom
You must refrain from using cell phones,
text-messaging, watching videos, playing computer games, doing email,
or surfing the Internet on your computer for uses other than
instructor-sanctioned activities.
Etc.
- Student Success Roadmap
- UMD Tutoring Center
- As instructor I shall make every attempt to treat all students
equally, without regard to race, religion, color, sex, handicap, age,
veteran status, or sexual orientation. To inquire
further about the University's policy on cultural diversity, see the
Office of Cultural Diversity.
-
If you have any disability (either permanent or temporary) that might
affect your ability to perform in this class, please contact Disability Resources, and
inform me at the
start of the semester.
Last Word
All excellent things are as difficult as they are rare. -- Benedict Spinoza
Page URL: http://www.d.umn.edu
/~tcolburn/cs1581/syllabus.html
Page Author: Tim Colburn
Last Modified: Tuesday, 12-Nov-2019 11:15:39 CST
Comments to: tcolburn@d.umn.edu