View on GitHub

COMP 256

Computing Abstractions - Dickinson College

COMP 256 Syllabus

Course Description

A broad examination of the role and evolution of the abstraction hierarchies that enable the construction of complex computing systems. Examples spanning the field of computer science will be used, including: machine organization and architecture, data representation, language translation, operating systems, concurrency, networks, and web application architectures.

Prerequisite Knowledge

This course assumes at least a semester of prior object-oriented programming in Java. The nominal prerequisite at Dickinson is COMP132 - Principles of Object-Oriented Design.

Course Schedule

Details including topics, assignments and due dates are indicated on the Course Home Page:

Textbook

There is no text required for this course. Reading and other materials for COMP256 will be provided via links on the course schedule, embedded in the assignments, or via Moodle.

Learning Goals

Students will:

Community and Inclusivity

All members of this class are equally valued members of our course community. The instructor aims to create an inclusive atmosphere in which we can listen and speak in ways that are respectful of each other and our diversity of heritages, identities, experiences, knowledge and views. All questions will be accepted and treated with kindness. Some topics will push us to develop new ideas and opinions about things we may not have thought about before. The instructor aims to promote a generous atmosphere. One where we listen and speak to understand. One where all are given the benefit of the doubt as they try out new and partially formed thoughts and opinions. One where we respond to and critique statements and ideas, not individuals. If you feel at any time that these ideals are not being met or have ways that our course atmosphere can be improved you are encouraged to reach out to the instructor. In cases where talking with the instructor is not comfortable please contact your advisor, the Department Chair or another trusted College official for guidance.

Communications

All communications outside of in person meetings will occur via Teams. Communication in public channels is preferred. However, sensitive conversations should be initiated as a private chat. Please do not send e-mails.

Office Hours

A list of my office hours and availability is provided on my home page (https://users.dickinson.edu/~braught/). If you have conflicts with my regularly scheduled office hours or would like to schedule a separate meeting please message me on Teams. Please do not send e-mails.

Course Elements

Attendance & Engagement

While attendance will not be recorded, your presence and engagement in class are important elements of learning. Engagement includes attentiveness, active listening, responding to questions, participating in small group activities and asking questions. The material in this class builds very intentionally from one class meeting to the next. Thus, missing a class or an assignment can have a significant impact on how prepared you are to connect with the material in subsequent class meetings.

Homework Activities

Homework activities start from the introductory material seen in the class meeting but will also contain additional videos/readings and will guide you through the learning of new material that adds depth and/or extends the introductory material.

Each activity will typically be due at the start of the next class meeting. Within a unit of the course, each class builds on the prior one. So, having completed an activity from one class meeting provides the foundation necessary to be prepared for the next. Please allocate enough time in your schedule so that you can complete each activity before the next class meeting.

You should expect that each activity will require 2-3 hours of work. This is consistent with Dickinson’s standard that “at least three hours of study accompany each class period”. If you find the activities are taking significantly longer than the expected time, please reach out to your instructor to discuss strategies for reducing the time required.

Homework Grading

Each homework activity will be reviewed by the TAs and selected questions will receive comments and will be marked using the following rubric:

Homework Question Rubric. Check+ - Correct answer; Presents sufficient detail to be fully convincing; Uses complete sentences when appropriate; Organized and neatly formatted. Check - Minor errors or misconceptions; Detail given is insufficient to be fully convincing; Answers are not complete sentences when appropriate. Check- - Significant errors or misconceptions; Little to no detail given to support answer; Very messy or disorganized. X - No answer given; Answer seems to be unrelated to question asked.

The instructor will then review the marks and comments provided by the TA and assign a score of 0-3 for the assignment using the following rubric:

Homework Assignment Rubric. 3 - On time; Complete; Demonstrates a strong understanding of all material and thoughtful engagement; Uses complete sentences; Neat and organized. 2 - On time or max for a late/resubmission; Complete or nearly complete; Demonstrates a sufficient understanding of nearly all essential material; Some answers may contain minor errors, not fully address the question, be unclear, be insufficiently explained, use incomplete sentences, and/or be messy/disorganized. 1 - Insufficiently complete; Fails to demonstrate acceptable level of understanding essential material. Sufficiently messy/disorganized to make review difficult. 0 - Not submitted or largely incomplete.

Any homework activity receiving a score of 0 or 1 may be resubmitted within 1 week of the assignment being returned to the class. Resubmitted or late assignments may will receive a maximum score of 2.

Lab Activities

The labs provide in-depth hands-on experience with the topics covered in the course. The number and frequency of labs will vary by unit throughout the course. Labs are designed to be nearly completable during the two hour lab period. However, to allow additional time as necessary, they will be due at the start of the following lab period.

Labs in this course will be completed in pairs and/or small groups at the instructor’s discretion. All work on the lab must be completed in collaboration with your partner(s). Collaboration between pairs/groups is not permitted and no individual work is permitted on labs without prior approval from the instructor. The instructor will assign pairs/groups and they will change regularly throughout the semester. Changing pairs/groups exposes you to a wider variety of ways of thinking and allows knowledge and techniques to spread throughout the class in an organic way. I highly encourage you to share ideas and techniques with your lab partners.

Lab activities will be graded using the same approach as described above for Homework Activities.

Mid-Term Exams

All written exams are strictly individual work. They will be time-limited, hand written and given during a class or lab session. These exams will be closed notes and closed book. However, you will be permitted one 8.5” x 11” sheet of paper (single sided) of hand written notes that can be read with the naked eye. Because of the inherently cumulative nature of this course, each exam will necessarily rely on content from previous exams. However, the emphasis of each exam will be on the material introduced since the previous exam.

Mid-Term exams will be graded on a 100% scale with partial credit given on individual questions.

Final Exam

The final is strictly individual work. It will be timed (3 hours), hand written and given in the classroom. This exam will be closed notes and closed book. However, you will be permitted three 8.5” x 11” sheets of paper (single sided) of hand written notes that can be read with the naked eye.

The final exam will be graded on a 100% scale with partial credit given on individual questions.

Course Grades

Final course grades will be assigned based on homework, lab and exam scores as described in this section.

  1. A weighted average of your homework and lab scores will be computed using the following weights:

    Component Weight
    Homework 60%
    Labs 40%
  2. That weighted average will be used to compute a base grade percentage for the course using the scale below:

    Graph of conversion scale from weighted average to base grade percentage.

    The precise formula for the conversion from a weighted average (WA) to a base grade percentage (BGP) is:

    Formula for converting weighted average to base percentage.

    The instructor reserves the option to adjust the above scale and formula such that grades are increased, but not decreased. If adjustments are made they will be announced to the class.

  3. Your base grade percentage will be rounded to the nearest whole number and converted to a base grade using a standard grading scale as follows:

    Base Grade
    Percentage
    Base
    Grade
    >= 93% A
    >= 90% and < 93% A-
    >= 88% and < 90% B+
    >= 83% and < 88% B
    >= 80% and < 83% B-
    >= 78% and < 80% C+
    >= 73% and < 78% C
    >= 70% and < 73% C-
    >= 68% and < 70% D+
    >= 63% and < 68% D
    >= 60% and < 63% D-
    < 60% F
  4. Your base grade is then adjusted up or down based on your exam scores to determine your course grade. A weighted exam average will be computed with each midterm having a weight of 30% and the final exam having a weight of 40%. This weighted exam average is used to adjust your base grade up or down as follows:

    Weighted
    Exam Average
    Base Grade Adjustment
    >92% Move up one full letter grade (e.g. base grade of B becomes corse grade of A)
    >85% Move up one half letter grade (e.g. base grade of B becomes course grade of B+)
    <73% Move down one half letter grade (e.g. base grade of B becomes course grade of B-)
    <68% Move down one full letter grade (e.g. base grade of B becomes course grade of C)

    The instructor reserves the option to modify the above base grade adjustments such that grades are increased, but not decreased. If modifications are made they will be announced to the class.

Writing in the Discipline (WiD)

This course is part of the WiD thread in the Computer Science Major. Students completing the Computer Science Major satisfy the WiD graduation requirement by maintaining a portfolio of assignments from the courses on the WiD Thread. Several Lab and/or homework assignments in this course will be dedicated to this writing assignment and must be completed with a score of at least 2 to count toward the WiD credit.

Learning Support

There are a number of learning support options available to help with your progress in this course. If you are finding challenges in completing a homework or a lab, or are having difficulty with a skill or concept from the course you should make use of the following resources:

Academic Integrity

Please take the time to read the Academic Misconduct section of Dickinson’s Community Standards. Violations of this policy are considered serious transgressions, so you should be especially certain that you understand your rights and responsibilities under it. Students suspected of academic dishonesty will be subject to the process outlined in the Student Conduct pages. The specific collaboration policies for each component of this course are detailed in the assignments. If you are unsure about whether or not certain kinds of collaboration are permissible on an assignment or in this course, ask your instructor

Intellectual Property Rights

Audio or video recording of class meetings, lectures or discussions is prohibited without explicit permission of the instructor. Photographic records of whiteboards, projected slides or other visual media is also prohibited without explicit permission of the instructor. In any case where permission is given for audio/video/photographic records to be made they are for personal use only. They may not be shared or redistributed and must be destroyed at the end of their usefulness or within one week following the termination of this course, whichever comes first. Similarly, redistribution of homework solution sets (if provided) is prohibited. All other materials used in the course (activities/labs/readings/tutorials/videos/etc) are governed by their own licensing agreements.

Accommodations for Disabilities

Dickinson values diverse types of learners and is committed to ensuring that each student is afforded equitable access to participate in all learning experiences. If you have (or think you may have) a learning difference or a disability – including a mental health, medical, or physical impairment – that would hinder your access to learning or demonstrating knowledge in this class, please contact Access and Disability Services (ADS). They will confidentially explain the accommodation request process and the type of documentation that Dean and Director Marni Jones will need to determine your eligibility for reasonable accommodations. To learn more about available supports, go to www.dickinson.edu/ADS, email access@dickinson.edu, call (717) 245-1734, or go to the ADS office in Room 005 of Old West, Lower Level (aka “the OWLL”).

If you’ve already been granted accommodations at Dickinson, please follow the guidance at www.dickinson.edu/AccessPlan for disclosing the accommodations for which you are eligible and scheduling a meeting with me as soon as possible so that we can discuss your accommodations and finalize your Access Plan. If test proctoring will be needed from ADS, remember that we will need to complete your Access Plan in time to give them at least one week’s advance notice.

“Our classroom / My office is located on the second floor of Tome Hall, which has an elevator, located to the left of the main entrance. If you require the use of an elevator to access the second floor, please let me know. If there is ever a malfunction with the elevator please let me know (e.g. via Teams or e-mail). I will if necessary relocate or hold class virtually. Similarly, if you are ever unable to reach my office for office hours or a meeting I will be happy to move the meeting to an accessible location or hold it virtually.

Life Happens:

Sometimes stuff just happens, even more so in the challenging situations in we currently find ourselves. Sometimes it is an unexpected sudden event such as an illness or family emergency. Other times it may be an ongoing issue or concern or an accumulation of smaller issues. Any of these things may affect your (or my) ability to focus or perform up to your (or my) potential through no shortcoming or fault of your (my) own. Dickinson is a kind and caring community and we want to see you achieve at your full potential. So, if you are experiencing life events that are affecting your performance please don’t hesitate to talk to your instructor, your advisor or your class Dean. They will all be willing to talk with you, help to formulate a plan and/or connect you with others that may be able to assist. If I am experiencing such events, I will communicate them to you as well. In all cases we will make reasonable adaptations.


Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License All textual materials used in this course are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

GPL V3 or Later All executable code used in this course is licensed under the GNU General Public License Version 3 or later