8 and 10 February, 15-16 February, 22-23 February, 1-2 March 2022
13:00 - 16:00 , GMT (UTC + 0)
Course leads: Steve Crouch, James Graham, Lars Lynne Hansen, Aleksandra Nenadic
Helpers: Albert Bogdanowicz, Matthew Bluteau, Sam Mangham, Daniel Roythorne, Vijay Vammi
This is a pilot workshop for the Intermediate Research Software Development Skills course delivered by the Software Sustainability Institute for AstraZeneca. The workshop will be led by instructors but will be largely in self-learning format - this means particiants will go though the materials on their own or in groups aided by insturctors and a group of helpers and then there will be group discussions and Q&A sessions.
This course aims to teach a core set of established, intermediate-level Python best practice and software development skills for working as part of a team in a research environment. A typical learner for this course may be someone who is working in research who has at least six months experience in software development. Now their software development-related projects are becoming larger and involving more stakeholders, introducing challenges that require additional software engineering skills to help them design more robust software code, automate the process of testing and verification of correctness, and support collaborations with others.
The workshop will be run online on Tuesdays and Wednesdays (13:00 - 16:00 GMT (UTC + 0)) each week repeated over 4 weeks:
Connection details for the workshop will be shared via email to registered participants.
This is a closed event for AstraZeneca staff and registration is handled internally.
All participants, instructors, helpers and observers are required to abide by the Code of Conduct.
Please email gabriella.rustici@astrazeneca.com for more information.
Software setup
Participants must have a laptop/PC with a Mac, Linux, or Windows operating system and a few software tools installed ahead of the workshop.
Prerequisite knowledge
This is an intermediate software skills course so in order to attend it you should have some prerequisite knowledge and meet the following criteria:
Git
- You are familiar with the concept of version control
- You have experience configuring Git for the first time and creating a local repository
- You have experience using Git to create and clone a repository and add/commit changes to it and to push to/pull from a remote repository
- Optionally, you have experience comparing various versions of tracked files or ignoring specific files
Python
- You have a basic knowledge of programming in Python (using variables, lists, conditional statements, functions and importing external libraries)
- You have previously written Python scripts or iPython/Jupyter notebooks to accomplish tasks in your domain of work
Shell
- You have experience using a command line interface, such as Bash, to navigate a UNIX-style file system and run commands with arguments
- Optionally, you have experience redirecting inputs and outputs from a command
The course material to be covered at the workshop is available online and is split into four sections that will be covered in four weeks according to the schedule below.
Material for week 1: Environment For Collaborative Code Development
8 February
13:00 - 14:00 Workshop and week 1 introduction
14:00 - 15:30 Self-learning with helpers
15:30 - 16:00 Q&A and day wrap-up
10 February
13:00 - 13:05 Day kick-off
14:00 - 15:00 Continued self-learning with helpers
15:00 - 16:00 Putting it all in AstraZeneca context, Q&A and week wrap-up
Material for week 2: Ensuring Correctness of Software at Scale
15 February
13:00 - 13:15 Week 2 introduction
14:00 - 15:30 Self-learning with helpers
15:30 - 16:00 Q&A and day wrap-up
16 February
13:00 - 13:05 Day kick-off
14:00 - 15:00 Continued self-learning with helpers
15:00 - 16:00 Putting it all in AstraZeneca context, Q&A and week wrap-up
Material for week 3: Collaborative Software Design and Development for Reuse
22 February
13:00 - 13:15 Week 3 introduction
14:00 - 15:30 Self-learning with helpers
15:30 - 16:00 Q&A and day wrap-up
23 February
13:00 - 13:05 Day kick-off
14:00 - 15:00 Continued self-learning with helpers
15:00 - 16:00 Putting it all in AstraZeneca context, Q&A and week wrap-up
Material for week 4: Improving and Managing Software Over its Lifetime
1 March
13:00 - 13:15 Week 4 introduction
14:00 - 15:30 Self-learning with helpers
15:30 - 16:00 Q&A and day wrap-up
2 March
13:00 - 13:05 Day kick-off
14:00 - 15:00 Continued self-learning with helpers
15:00 - 16:00 Putting it all in AstraZeneca context, Q&A and workshop wrap-up