Software Carpentry 2 day workshop: Shell/Git/Python

Audience: Academic staff, PG research, Professional staff, Research staff, Research supervisors

Date: Monday 17 June 2024 to Tuesday 18 June 2024

Times: null

Programme: Software Carpentry
Programme: GRADskills

Qualifications needed

You don't need to have any previous knowledge of the tools that will be presented at the workshop.

Course pre-work

Participants are asked to follow instructions to install the necessary software prior to the workshop. Specific objectives will depend on the outcomes of the pre-course survey.

Course information

*Please note this workshop will run over 2 days, Part 1 runs from 09.30-17.00 on 17th June 2024 and Part 2 from 09.30-17.00 on 18th June 2024*

*Please commit to Part 1 and Part 2 to gain the most benefit*

Software Carpentry teaches software skills to researchers, enabling them to get more done in less time and with less pain. The workshop will cover basic programming in Python, working with computers via the Unix Shell command-line interface and using the Git version control system to manage projects.

  • Python is a popular general-purpose, high-level programming language which is particularly widely used among academics. It is available on all platforms and is easier for novices than most programming languages.
  • The Unix Shell allows you to control a computer by typing in commands, which can be combined to automate complex workflows.
  • The use of a version control system such as Git to manage files saves time, brings peace of mind and facilitates collaboration.
The lessons will be based on the material at
The Shell lesson will be taught first, and the other lessons will build on that foundation.

Every workshop includes learners with varying levels of experience of the different subjects being taught. Learners who are more familiar with the content of a particular lesson are encouraged to help their less-experienced colleagues. No previous experience of any of the technologies being taught is required.


  • Day 1 morning:     Automating Tasks with the Unix shell
  • Day 1 afternoon:   Plotting and Programming in Python
  • Day 2 morning:     Version Control with Git
  • Day 2 afternoon:   Plotting and Programming in Python
Detailed schedule
Please see the workshop webpage for full details of the schedule:

Participants are asked to  follow instructions to install the necessary software prior to the workshop: - setup

This is very important - time spent getting computers ready during the workshop severely impacts on the time available to teach the material. If problems are encountered or assistance is otherwise required, please e-mail and one of the team will be happy to help.

Specific objectives will depend on the outcomes of a pre-course survey  which will be sent out to booked participants - please complete this before attending the workshop once your place has been confirmed.
For more information about Software Carpentry, please visit the website:


Please note, This workshop is not open to taught postgraduate students

Aims and objectives

Specific objectives will depend on the outcomes of a pre-workshop survey that will be sent out prior to the workshop.


Patrick McCann

Olexandr Konovalov


Lecture 2, Gateway

Course provider