Table of Contents
What is Software Carpentry?
Software Carpentry workshops are free, hands-on, two-day events that cover the core computational research skills needed to be productive as an individual scientist or in small research teams. No previous experience is needed and each workshop is taught by experienced researchers who use these tools in their own work. Participants will learn how to automate tasks using the Unix shell, will be introduced to structured programming language like Python or R, and will gain experience using Git and Github for version control.
Upcoming Workshops
This spring, we will be holding five online, subject-specific Software Carpentry workshops on computational research tools and best practices. Additional Spring 2021 workshops will be posted here as scheduled. If you have specific questions about any of these topics and how to incorporate them into your digital scholarship, write us at dash@umn.edu or sign up for consultation with an expert through our monthly Programming & Pizza event.
Space is limited and priority will be given to University of Minnesota students, faculty and staff. Please only register for these workshops if you will actually be able to attend!
Unix Shell
Wednesday, February 3; 9:30 – 11:45am
Thursday, February 4; 9:30 – 11:45am
This two-day lesson guides you through the basics of file systems and the Unix shell. The shell is a tool that allows you to do complex things with just a few keystrokes. More importantly, it helps you to combine existing programs in new ways and automate repetitive tasks. Use of the shell is fundamental to using a wide range of other powerful tools and computing resources (including “high-performance computing” supercomputers). These lessons will start you on a path towards using these resources effectively.
Programming with Python
Monday, February 8; 1:00 – 3:30pm
Tuesday, February 9; 1:00 – 3:30pm
Wednesday, February 10; 1:00 – 3:30pm
This three-day lesson is an introduction to programming in Python for people with little or no previous programming experience, and is built around a common scientific task: data analysis. Learn about Python data types, variables, visualizing tabular data, for loops, Python lists, and functions, while using Python packages numpy and matplotlib.
What is taught?
• Automating tasks using the Unix shell
• Structured programming in Python, R, or MATLAB
• Version control using Git or Mercurial
Why Software Carpentry?
• Enables computational research that couldn’t be done otherwise
• Improves reproducibility and rigor by automating repetitive tasks and allowing sharing and auditing of data collection, processing, and analysis scripts
• Helps improve the quality of shared research data and code
Who is the Target Audience?
• Graduate Students
• Faculty
• Staff who do research
U of M Software Carpentry Instructors
• Elena Auer, PhD student, Psychology
• Caitlin Bakker, Health Sciences Librarian, University Libraries
• Nick Dunn, Scientific Computing Consultant, Minnesota Supercomputing Institute
• Shawn Golley, Developer, College of Science and Engineering – IT
• Cody Hennesy, Journalism & Digital Media Librarian, University Libraries
• Yectli Huerta, HPC System Administrator, Minnesota Supercomputing Institute
• Chaeochih Liu, PhD student, Plant & Microbial Biology
• Wanda Marsolek, Engineering Liason and Data Curation Librarian, University Libraries
• David Naughton, Developer, University Liobraries
• Jeff Shi, Scientific Computing Consultant, Minnesota Supercomputing Institute