Carnegie Mellon University

The Piper

CMU Community News

Piper Logo
March 01, 2019

Building a Skillset with Software Carpentry

By Shannon Riffe

If you’re looking to nail down your computer programming skills, Software Carpentry can give you the tools you need.

Software Carpentry is a non-profit organization that teaches basic computing skills to researchers. Workshops are designed to teach foundational computing skills, including automation of workflows, version control of code and files, and basic programming in Python or R. The workshops are hands-on and interactive, with an emphasis on building practical skills and confidence to learn more programming.

University Libraries became institutional members of the Carpentries last September, which allows Libraries employees to organize workshops with instructors from across the country and provide an opportunity for faculty and staff to participate in instructor training. 

In January, about 40 graduate students, postdocs and staff attended a workshop on Python. Colleen Schneider, a doctoral candidate in psychology, jumped at the opportunity to participate after hearing about it from Ana Van Gulick, librarian and program director, Open Science.

“Programming skills are becoming so important in many fields, but learning those languages can be overwhelming if you are not a computer scientist,” Schneider said. “The Software Carpentry class was a great way to learn the ropes and also learn about more resources for further programming success.”

“The Software Carpentry class was a great way to learn the ropes and also learn about more resources for further programming success.” — Colleen Schneider

Librarian Melanie Gainey said Software Carpentry is providing a valuable resource to the university community.

“Many researchers on campus that have an interest in improving the efficiency or reproducibility of their work may have a hard time finding the time or resources for learning programming,” Gainey said. “Others might feel intimidated by it. The workshops are a great way to start the process of learning how to program and thinking programmatically.”

The accessibility is what appealed to Cheryl Rozinski, a master’s degree candidate in public policy and management.

“The workshop provided an opportunity to dive into new programs at a pace that is comfortable in a low stakes environment,” Rozinski said. “For me, learning software in a masters class setting was very stressful as teachers often skip steps or do not fully explain the why. This setting is not only safe, affirmative, and enjoyable, but you leave with new skills that can apply to your everyday work.”

Rozinski plans to apply the skills she learned at the workshop to her work at CMU — she is using GitHub for file sharing — and after she earns her degree.

“After graduation, I will become a consultant for state and local government,” she said. “I will use R Studio to find sophisticated solutions to complex challenges, and present my findings using R's data visualization packages.”   

Offering software and data carpentry workshops is one way the Libraries are expanding their support for Open Science and Research Data at CMU. A team of more than 10 data experts in the Libraries is focused on expending research support through digital tools, web resources, trainings and consultations, and offering core computing skills to the CMU community through Software and Data Carpentry is key to that mission.

Van Gulick said about 15 members of the University Libraries staff plan to be trained to become certified Software Carpentry instructors, who then can conduct workshops for the campus community.  

The next Software Carpentry workshop, Intro to Python, Open Refine, and SQL, will be held March 12 - 13 in Hunt Library, IDeATe Studio A. Register online.