nano is a basic editor and the default that instructors use in the workshop. It is installed along with Git.
Feb 10-11, 2026
Feb 10: 9:00 am - 1:00 pm GMT, Feb 11: 1:00 pm - 5:00 pm GMT
Instructors: Christine Stawitz
Helpers: Christopher Shave
The Carpentries project comprises the Software Carpentry, Data Carpentry, and Library Carpentry communities of Instructors, Trainers, Maintainers, helpers, and supporters who share a mission to teach foundational computational and data science skills to researchers.
Want to learn more and stay engaged with The Carpentries? Carpentries Clippings is The Carpentries' biweekly newsletter, where we share community news, community job postings, and more. Sign up to receive future editions and read our full archive: https://carpentries.org/newsletter/
Software Carpentry aims to help researchers get their work done in less time and with less pain by teaching them basic research computing skills. This hands-on workshop will cover basic concepts and tools, including program design, version control, data management, and task automation. Participants will be encouraged to help one another and to apply what they have learned to their own research problems.
For more information on what we teach and why, please see our paper "Best Practices for Scientific Computing".
Who: The course is aimed at graduate students and other researchers. You don't need to have any previous knowledge of the tools that will be presented at the workshop.
Where: Murray Learning Centre LG13, R28, University of Birmingham, Birmingham B15 2FG. Get directions with OpenStreetMap or Google Maps.
When: Feb 10-11, 2026; Feb 10: 9:00 am - 1:00 pm GMT, Feb 11: 1:00 pm - 5:00 pm GMT Add to your Google Calendar.
Requirements: Participants must bring a laptop with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed below).
Accessibility: We are committed to making this workshop accessible to everybody. The workshop organizers have checked that:
We are dedicated to providing a positive and accessible learning environment for all. We do not require participants to provide documentation of disabilities or disclose any unnecessary personal information. However, we do want to help create an inclusive, accessible experience for all participants. We encourage you to share any information that would be helpful to make your Carpentries experience accessible. To request an accommodation for this workshop, please fill out the accommodation request form. If you have questions or need assistance with the accommodation form please email us.
Glosario is a multilingual glossary for computing and data science terms. The glossary helps learners attend workshops and use our lessons to make sense of computational and programming jargon written in English by offering it in their native language. Translating data science terms also provides a teaching tool for Carpentries Instructors to reduce barriers for their learners.
Workshop Recordings: Carpentries workshops are designed to be interactive rather than lecture-based, with lessons that build upon one another. To foster a positive online learning environment, we strongly recommend that participants join in real time. As a result, workshop recordings are not recommended and may not be available to learners.
Contact: Please email c.c.stawitz@bham.ac.uk or c.shave@bham.ac.uk for more information.
Roles: To learn more about the roles at the workshop (who will be doing what), refer to our Workshop FAQ.
Everyone who participates in Carpentries activities is required to conform to the Code of Conduct. This document also outlines how to report an incident if needed.
We will use this collaborative document for chatting, taking notes, and sharing URLs and bits of code.
Please be sure to complete these surveys before and after the workshop.
| Before | Pre-workshop survey |
| 09:00 | Good practices |
| 10:30 | Code readability |
| 11:00 | Morning break |
| 11:15 | Code readability (continued) |
| 12:15 | Code structure |
| 12:45 | Wrap up |
| 13:00 | END |
| 12:00 | Code structure (continued) |
| 13:30 | Coffee break |
| 14:00 | Code documentation |
| 15:30 | Code correctness |
| 16:30 | Reproducible development environment |
| 16:30 | Post-workshop Survey |
| 17:00 | END |
To participate in a Software Carpentry workshop, you will need access to software as described below. In addition, you will need an up-to-date web browser.
We maintain a list of common issues that occur during installation as a reference for instructors that may be useful on the Configuration Problems and Solutions wiki page.
When you're writing code, it's nice to have a text editor that is optimized for writing code, with features like automatic color-coding of key words. The default text editor on macOS and Linux is usually set to Vim, which is not famous for being intuitive. If you accidentally find yourself stuck in it, hit the Esc key, followed by :+q+! (colon, lower-case 'q', exclamation mark), then hitting Return to return to the shell.
nano is a basic editor and the default that instructors use in the workshop. It is installed along with Git.
nano is a basic editor and the default that instructors use in the workshop. See the Git installation video tutorial for an example on how to open nano. It should be pre-installed.
nano is a basic editor and the default that instructors use in the workshop. It should be pre-installed.
R is a programming language that is especially powerful for data exploration, visualization, and statistical analysis. To interact with R in our lessons, we typically use RStudio.
Install R by:
Install R by:
Install R by:
# at the start of each line, as this indicates a comment and is not part of the command.
# update indices
sudo apt update -qq
# install two helper packages we need
sudo apt install --no-install-recommends software-properties-common dirmngr
# add the signing key for these repos
wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
# add the repo from CRAN
sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/"
# install R itself
sudo apt install --no-install-recommends r-base
# install dependencies
sudo apt install -y r-base-core r-recommended r-base-dev gdebi-core build-essential libcurl4-gnutls-dev libxml2-dev libssl-dev
sudo apt install --no-install-recommends gdebi-core
# cd ~/Downloads
# download the latest RStudio Server .deb file
wget https://download2.rstudio.org/server/jammy/amd64/rstudio-server-2025.05.1-513-amd64.deb
# install the .deb file
sudo gdebi rstudio-server-2025.05.1-513-amd64.deb
# start the RStudio Server
sudo systemctl start rstudio-server
# enable RStudio Server to start on boot
sudo systemctl enable rstudio-server
http://localhost:8787.If you are using Windows and WSL2, the full in-depth instructions for installing R on WSL2 can be found in this POSIT article.