Adapted from materials courtesy of Profs. Amy Csizmar Dalal & Eric Alexander.
Instructor: Jean Salac (she/her)
Classroom: Weitz 235
Time: 2a (Mondays & Wednesdays 9:50-11am; Fridays 9:40-10:40am)
Course Schedule: You can find the course schedule and important deadlines here.
Required Course Materials:
I recognize the potential financial burden of additional course materials. If you need assistance to cover course expenses, please reach out to me by Friday of Week 1.
Student Drop-In Hours (also known as Office Hours):
There is not a single person on earth that is not impacted by technology, either directly (as consumers or
producers) or indirectly (as targets, as victims). Technology can make life better: by making
our daily tasks easier and more efficient, by connecting us to people literally all over the globe, by hastening
breakthrough discoveries. Technology can also increase our annoyance, waste our time, and make us feel stupid.
Technology can make life considerably brutal: by amplifying bias, by exploiting resources and workers,
by hastening climate change.
Humans, and the human experience, are at the center of technology. Yet in computer science, we often focus on everything but the human: the code, the algorithm, the tools, the speed, the wow factor. In this course, we center the people in the technical loop, examining how people interact with technology and how technology can (and cannot) enhance humanity and society.
My main goal for you in this course is to become more discerning creators and consumers of technology, by better understanding how we shape technology and how technology shapes us.There are five high-level learning goals in this course:
In addition, because this is an academic civic engagement (ACE) course, it has the following learning goals:
Moodle: All course related materials, assignments, projects, readings, and resources will be posted here.
GitHub: You will be developing a personal portfolio website hosted on GitHub Pages. Most of your individual assignments will be turned in as a page on this website.
Languages and Tools: HTML, CSS, Javascript for front-end development, R for behavioral statistics, Figma for front-end prototyping.
IDE: VSCode for HTML, CSS, and Javascript; RStudio for R
Default environment: I will default to Mac OSX in class for development.
I am committed to the principle of universal learning. This means that our physical and virtual spaces, our practices, and our interactions should be as inclusive as possible. Mutual respect, civility, and the ability to listen and observe others carefully are crucial to universal learning.
I strive to create an inclusive and respectful classroom that values diversity. Our individual differences enrich and enhance our understanding of one another and of the world around us. This class welcomes the perspectives of all ethnicities, genders, religions, ages, sexual orientations, disabilities, socioeconomic backgrounds, regions, and nationalities.
Attendance: Attendance in class is expected. A quarter-long team project makes up the most of this class, and much of classtime will be spent working on deliverables that contribute to your team project. If you miss class, you will miss out on that opportunity.
Communication: I expect you to check Moodle every day for updates on activities and assignments. All out-of-class written communication will happen via the class announcement forum. Please make sure you are checking it regularly and/or have email or push notifications setup. Each class day will have preparation assignments for you to complete before class. All materials will be released at least 48 hours before they are due.
Technical Issues: If you experience significant technological problems that limit your ability to participate, please contact the ITS Helpdesk at 507-222-5999 or helpdesk@carleton.edu. For announcements of known technical issues, visit the Helpdesk portal.
Extenuating Circumstances: If your personal situation (due to COVID-19 illness or other circumstances) begins to impact your ability to engage with the course, please let me know and contact the Dean of Students Office.
Student Drop-In Hours: Student drop-in hours are a great time to clear up any lingering confusion you may have about certain concepts, ask about the daily readings and assignments, work through ideas, or just talk about something in the course or in computer science generally or in life that’s piqued your interest. These time slots are for you, so use them! If for whatever reason you cannot make it to my student drop-in hours, feel free to make an appointment to see me (info at the top of this page).
Lab Assistant Hours: Lab assistant hours are another opportunity to clear up any confusion or get help with debugging your code. Lab assistant hours are held in Olin 310 and you can get help for this class whenever there is a lab assistant who is comfortable with helping with CS344 material. The lab assistant schedule, along with the classes they can help with, is posted on the doors of Olin 310 and will be posted on the Moodle site for this class once available.
Quantitative Resource Center: We will be learning some behavioral statistics in this class to make sense of numerical data you may get from user studies. The Quantitative Resource Center offers statistics and R support through drop-in hours and appointments.
Accommodations for Students with Disabilities: Carleton College is committed to providing equitable access to learning opportunities for all students. The Office of Accessibility Resources (Henry House, 107 Union Street) is the campus office that collaborates with students who have disabilities to provide and/or arrange reasonable accommodations. If you have, or think you may have, a disability (e.g., mental health, attentional, learning, autism spectrum disorders, chronic health, traumatic brain injury and concussions, vision, hearing, mobility, or speech impairments), please contact OAR@carleton.edu or call Sam Thayer (’10), Director of the Office of Accessibility Resources (x4464), to arrange a confidential discussion regarding equitable access and reasonable accommodations.
Assistive Technologies: The Assistive Technologies program brings together academic and technological resources to complement student classroom and computing needs, particularly in support of students with physical or learning disabilities. Accessibility features include text-to-speech (Kurzweil), speech-to-text (Dragon) software, and audio recording Smartpens. If you would like to know more, contact aztechs@carleton.edu or visit go.carleton.edu/aztech.
One of my goals for you in this course is for you to continue to grow as an independent developer and designer. I’m much more interested in what skills and understanding you have mastered by the end of the course than the exact pace at which you master them. However, it isn’t healthy for you or me if you leave everything to the last minute. It also isn’t fair to your team if you haven’t prepared as much as they have. Therefore, my goal with the following evaluation metrics is to balance providing you flexibility to learn at your own pace while also making sure to spread your learning out over the entire term.
Towards that end, your performance in this class will be evaluated in three different ways according to the learning goals for the course:
Each deliverable that you turn in will be evaluated against a checklist of specifications related to one or more of the course learning objectives. I will distribute the checklists I’ll use to assess each deliverable so that you know exactly what constitutes each of these levels. I will rank each learning objective, and the overall submission, according to a four-level scale:
In this course, we need to balance flexibility for individuals with structure for teams and the class as a whole. I also want to help you avoid procrastinating to the point that you can’t get everything submitted by the end of the term. Therefore, the late work/extension policy varies depending on the type of work.
All deliverables have a 1-hour grace period after their posted due date and time to account for slight technical delays in submission while allowing evaluation of submissions to start soon after the due date.
Preparation assignments are due 10 minutes after the start of the class meeting to account for slight delays in submission while enabling you to be prepared for the class it is associated with.
Late days: If you need to turn in a deliverable past the 1-hour grace period, you may use a late day. Each student in the class will get four (4) late days. Late days are used in 24-hour increments, so if you turn in a deliverable >1 and <=24 hours after the deadline, you would use 1 late day, if you turn in a deliverable >24 and <= 48 hours after the deadline, you would use 2 late days, etc. Since individual and team deliverables build on each other, you may use a maximum of two (2) late days per deliverable to ensure that you don't fall too far behind. If you need to turn in a team deliverable late, every teammate must have a sufficient number of late days and a late day will be deducted from the late day balance of every teammate, e.g. if each teammate has a balance of 3 late days and turn in a team deliverable >1 and <=24 hours after the deadline, each teammate will now have a balance of 2 late days. Late days can only be used on deliverables, not preparation assignments. Late days cannot be used on the final presentation and report, so that college-wide end-of-term deadlines can be met.
If you’re staring down a deadline that you know you can’t meet, or if you’ve fallen behind, get in touch with me immediately and we’ll make arrangements. While I need to put boundaries in place for my own health and wellness, and for fairness to everyone in the class, I also want to make sure you are progressing in your learning.
Per Carleton policy, all extensions for end of term work need to go through your class dean.
Only use AI assistance if the assigned work explicitly calls for it or allows it, and follow specific guidelines to disclose how you used it.
Computer Science is a collaborative discipline, & people who apply computer science concepts and skills both shape and are shaped by social, political, & cultural environments beyond themselves. You are encouraged to collaborate with your classmates to learn, but collaboration comes with additional repsonsibilities:
# Method to decide how much financial aid students should receive
# I used this StackOverflow post to refresh on the syntax for writing conditional statements in Python: https://stackoverflow.com/link-to-post
Per Carleton policy, I am required to report cases of suspected academic dishonesty to the Dean's office.