A New Elective Leverages CS Skills to Explore Creativity and Making

Share story

A new course at Harvey Mudd exposes students to the idea that a CS degree has many potential—even creative—career applications. Julie Medero, department associate chair and associate professor, developed the Making Computer Science course and taught it for the first time in fall 2023. Medero explains the course and her motivation in creating it.  

What, exactly, is “making CS?”

“Making” is a broad term but, in the context of this course, it’s hands-on creating of physical artifacts. That’s something you wouldn’t typically expect to do in a CS course, which is often thought of as taking place in a computer lab immersed in a world of bits and pixels. A big part of the Making CS course is getting students to apply their CS knowledge toward hands-on projects. We spend most of our time in the makerspace using machinery like 3D printers, laser and waterjet cutters, embroidery machines, a digital jacquard loom, a printing press, soldering irons and some of the tools in the wood and machine shops.

How did you come up with the idea for the course?

I’m not the first person to put the idea together. There’s a long history in CS outreach of bringing making and CS together. It’s not an application of CS skills you would normally think of, but someone must have done the coding for a sewing machine or performed CS research in computational art. There are so many very real and practical possibilities in maker and creative applications of the CS degree and skillset students acquire from Harvey Mudd. I want CS students to know that if they’re not interested in the same career outlook as others around them, there’s a place for everyone.

During the pandemic, the College makerspace opened its doors. I took a sabbatical when the pandemic ended and returned a year later to experience this great space for the first time. I wanted Harvey Mudd CS students to see and experience it also, so I pitched the making/CS course idea to chair Jim Boerkoel and our associate chair at the time who were both supportive of it. I spent the spring and summer designing what the course would look like, with student input so they could own the learning with me. It was important to me that I created an environment where students felt comfortable taking risks.

What does the course cover?

The course is structured into three units and an open-ended final project. In one unit, we examine the historical and modern connections between CS and making. In another unit, computational art, students use laser cutters, spray painting and CS skills to make a creative product. And in the third unit, CS and coding, students create artistic CS products like libraries, tools and software—for example, developing a set of weaving patterns, learning about electronics through soldering and then designing a wireless charger, or exploring the printing press, typesetting and creating original typography. For the final project, students create a product that combines their CS skills with the maker skills they’ve acquired during the course. All students are required to keep a physical or online journal to document their process, and we share and celebrate successes and find ways to regroup after failures, together. Students are graded based on effort, engagement and whether they met our agreed-upon expectations for goal-setting, achieving those goals and their reflections on those goals.

For the current course, in 2024, I’m co-teaching with Casey Baden, who is a textile artist, so the whole semester is focused on fiber arts and CS. We’re looking at sewing, embroidery, weaving, knitting, and crochet, alongside circuits, programming, software, and data visualization. We’re exploring historical and modern connections between computer science and textiles. We split our time between our classroom and the HMC Makerspace, learning about the relationships between CS ideas and textile techniques, including the historical connections between weaving and computing; sewing and soft circuits; and the mathematical and computational underpinnings of embroidery, knitting and crochet. A significant component of the course will be a project that uses one or more of the tools introduced in the course to create a new model, demonstration, or piece of art related to a computer science concept. 

What real-world challenges do you see the skills taught in the course addressing?

The course really builds on meta skills of working with uncertainty, taking risks and collaborating, skills that will apply in their future. Students set their own goals, break them down and choose their learning path based on their interests. They ask for help. They learn to roll with uncertainty and learn that things aren’t always as intimidating as they initially seem. Sometimes a project scope needs adjusting to reach goals and sometimes the goals need shifting. They learn the significance of working together and supporting each other: some students enter the course with CS or maker skills other students don’t have, and those other students have CS and maker skills that yet other students don’t have. We have the opportunity to learn from each other. And the hands-on skills are immensely relevant to the modern world: The machinery in the makerspace is all makeware applicable to our modern world that can be combined with CS to produce creative artifacts.

What has the student response been?

The students and I were very happy with what they were able to accomplish through the course. I loved seeing them make decisions and take ownership of their learning, and I got to be in a spot where I could facilitate that happening. I enjoy watching them build their confidence over the course of the semester by giving themselves permission to be uncomfortable. The students echoed to me how empowered they felt stepping out of their comfort zones within the space created by the course.

In the makerspace, there are machines that can seem intimidating at first, and we had to run with the unexpected more than I imagined: things break, and you have to pivot and shift gears. Students embraced the pivots and became more comfortable with the machinery over time and what they were able to create with it. In 2023, when we had our final project showcase and invited the campus in, they enjoyed being able to explain the process and outcome to faculty, staff, President Nembhard and their fellow students.

Are all Harvey Mudd students allowed to take the course?

Making CS is open to all Harvey Mudd students who’ve taken the necessary course prerequisites. Because those required courses are often part of the CS curriculum, the course may end up as a collective of CS majors. Any student who takes the course should have a strong background in CS to leverage skills gained from previous courses and add to them in this application of CS to creative making. Regardless of the breadth of their CS skills, all students need to come into the course with an openness to try new things and a willingness to explore outside of their comfort zones.

     For students interested in taking the course in the future, the best thing to do is ensure students have the course prerequisites met, check the course offerings for each semester as soon as they’re available and register early. And, students should consider joining Makerspace workshops and student clubs that focus on creative making projects.