From Research to Reproducibility

CMU Libraries Teaches Sustainable Coding Practices Across Disciplines

students at a GitHub workshop

This spring, Carnegie Mellon University Libraries introduced a new workshop series designed to help researchers write better, more sustainable code — not by turning them into software engineers, but by giving them practical tools to make their research more reproducible and maintainable.

Led by Evidence Synthesis Postdoctoral Associate Erin Higgins, the five-part series introduced attendees to research software engineering practices. Participants came from a range of disciplines, including chemistry, materials science, and electrical engineering, each bringing different levels of coding experience and unique research needs.

For Higgins, the workshops addressed a growing gap in academia: many researchers rely heavily on software but have little formal training in how to develop it collaboratively or sustainably.

“As a researcher, you don’t need to be able to do everything that a software engineer can do,” Higgins explained. “But understanding a few core tools and best practices can make research software much easier to maintain and share. If your code is unreadable or difficult to run, it becomes much harder for other people to reproduce the work, build from it, or even continue it when students leave a lab.”

Erin Higgins
Erin Higgins

That challenge is especially important in academic environments where graduate students, postdoctoral researchers, and staff regularly transition in and out of research groups. Higgins designed the series to help participants think about continuity from the beginning of a project rather than treating documentation and organization as an afterthought.

Sessions covered topics like pre-project planning, writing clean and reproducible code, collaborative workflows, testing and peer feedback, and performance scalability and maintenance. Higgins emphasized that researchers do not need to adopt every industry software engineering practice at once. Instead, the workshops focused on making manageable improvements that could have a significant impact over time.

“The goal is to share practical, achievable changes that are useful for an academic setting,” Higgins said. “We talked about making smaller changes instead of trying to redesign an entire code base overnight — things like adding comments, organizing functions more clearly, and writing code in a more modular way to make it easier to follow.”

Participants said the workshops provided valuable guidance rarely included in traditional graduate training.

“I think the workshops were great and helpful,” said College of Engineering Ph.D. student Yihan Ruan. “I chose to attend because I wanted to learn techniques for writing code that is easier to read and more reproducible. The workshops introduced me to many tools and tricks that I wasn’t aware of before.”

Lilianna Gutierrez, a Mellon College of Science doctoral candidate, said the workshops filled an important educational gap.

“As a chemical engineering Ph.D. candidate, I consider myself self-taught when it comes to coding,” Gutierrez said. “These workshops were really valuable because they covered often overlooked concepts that can greatly influence my impact as a researcher and software developer.”

Gutierrez also noted that the in-person structure created a collaborative environment that differed from online technical tutorials or webinars.

“The in-person sessions gave me a sense of accountability, which is something I don’t feel in online webinars and presentations,” she said. “I appreciated how interactive the sessions were and look forward to others in the future.”

The workshops reflect the Libraries’ broader role in supporting open science and cross-campus research collaboration. Higgins, whose background is in a highly technical field, sees reproducible and accessible software practices as closely connected to the goals of open scholarship.

“Open science is a key way we can accelerate scientific discovery and increase the impact our researchers have across fields. The Libraries is proud to offer support in that area,” Higgins said. “It’s also important not just for reproducibility, but for new students entering projects and trying to understand what came before them.”

As the evidence synthesis postdoctoral associate, Higgins also discussed making code reproducible in an encapsulated environment so that future researchers could recreate results. She explained that this practice would increase the likelihood that their work would be considered high quality and reproducible enough to be included in evidence synthesis work used to direct their fields.

Because the Libraries serves researchers across every school and department at Carnegie Mellon, Higgins believes it is uniquely positioned to host programming that brings together learners with different technical backgrounds in an approachable environment.

“Across disciplines, so many people are trying to code in some way,” Higgins said. “The Libraries can serve as a community-oriented place where people come to learn these skills without feeling nervous that they’re not computer scientists.”

Higgins plans to offer the workshop series again in the fall, expanding interactive activities and tailoring sessions to participants’ research backgrounds and coding experience. As researchers across disciplines increasingly rely on software, she hopes the workshops can continue building a campus community around sustainable, reproducible research practices.

Keep an eye on the Libraries workshop calendar for more information about future sessions.