CCC Designations: NMSC, NMLG
You are not alone. This course is specifically designed for students with no Computer Science or programming background.
We promote an engaged, inclusive classroom. That includes expectations of engagement in class, and mechanisms for engagement/help outside of class. We teach this course because we believe in the mission teaching computational thinking to everyone, not because we have to.
Understand the work rhythms. There will be weekly labs, bi-weekly problem sets, thought provoking bigger picture exercises and a project. Understand how they are weighted + how often they occur.
We have lots of support: There are casual, flexible Zoom and in-person office hours / help sessions, where you can come and ask questions. For most of the assignments you are allowed to partner up and due to COVID-19 we are more lenient with deadlines and attendance.
Make sure you understand what Academic Integrity means in CSCI - it may be slightly different than what you’re used to in other classes. We take it seriously.
Welcome to CSCI 187! This is a 100-level introduction to Computer Science primarily for students in majors outside the STEM disciplines. Using the programming framework p5.js, this course employs an exploratory, creative approach to teach fundamental computing concepts to students with no prior experience in computer science.
The goal of the course is to equip students who have had no prior programming experience, particularly non-STEM majors, with the skills to engage in creating computational artifacts rather than merely consuming them. This goal drives the choice of p5.js as the language in which students will learn and practice “computational thinking”. p5.js is a JavaScript library that starts with the original goal of processing (a programming language designed to make coding accessible for artists, designers, educators, and beginners) and reinterprets this for today’s web.
Learning outcomes
Ability to design, implement and test introductory programs (using the p5.js platform) to express oneself creatively.
Ability to manipulate specific data, such as social, historical or textual data, (using the p5.js platform) to create visual artifacts that communicate insights or inferences about the data.
Ability to identify and discuss the societal impact of computing on contemporary issues.
Ability to use core-computing principles to deepen one’s reflection on society and/or one’s individual perspectives.
Acknowledgement: This syllabus has benefitted from the ideas and practices of Darakhshan Mir, Evan Peck, Abby Flynt, Brian King, Linda Smolka, Dan Hyde and other CSCI 203 instructors, and from resources compiled by Bucknell’s Teaching & Learning Center.