-
Notifications
You must be signed in to change notification settings - Fork 22
Developer Workshop 2021
This document contains the agenda for the 2021 Mantid Developer Workshop. Due to the ongoing Covid-19 pandemic the meeting is organized as a remote workshop with everyone attending via Zoom.
Organizers: Technical Working Group (twg(AT)mantidproject.org)
Dates: 2nd/3rd December 2021
Times:
- Grenwich Mean Time (GMT): 13:30 - 16:30
- Central European Time (CET): 14:30 - 17:30
- Eastern Standard Time (EST): 08:30 - 11:30
- China Stanadard Time (CST): 21:30 - 00:30
- Australian Eastern Daylight Time (AEDT): 00:30 - 03:30
As this is a limited workshop due to time constraints of remote working across multiple timezones we would like to focus on:
- Meeting developers from other facilities
- Sharing best practice and new developments
- Tackling issues that frustrate developers in mantid
-
During the workshop we will be trying to code so please come with a machine capable of doing this.
-
By way of introduction we would like each attendee to prepare a slide about themselves so that we can get to know each other. We will collate the slides into a single deck before the meeting to avoid having to switch screen shares constantly. Please create a single page PDF with the following content, an example can be seen here:
- A photo
- Name
- Facility affiliation
- Expertise
- Current work/projects
- Hobby/Non-work interests
Once you have created the PDF slide, please include your name in the file name, create a pull request into the developer-workshops/2021-12/developer-intro-slides directory into this repository. This can all be done entirely on the GitHub interface as follows:
- fork this repository by clicking "Fork" on the top right of this page and select your GitHub username
- you will be redirected the forked copy automatically
- click through the to the
technical-working-group/workshops/developer-workshop-2021-12/intro-slides
directory - click "Add file->Upload files"
- drag the pdf into the square as shown on the page and click commit.
- navigate to the "Pull Requests" tab and create a new pull request into the base "mantidproject/workshops" repository
Please have this uploaded in the above location by the end of the day in the US on Tuesday 30th November.
- The second day is a code-camp session where we will aim to tackle issues that we think can improve the lives for developers. Please have a think about topics that we can tackle.
Timings are approximate.
- 13:30 - 13:35: Introduction to Developer Workshop (Martyn Gigg)
- 13:35 - 14:00: Developer introduction lightning talks (All)
- 14:00 - 14:10: An overview of Ensemble Programming (Gemma Guest)
- 14:10 - 15:10: Group coding exercise: the idea is to get those who don't work together to tackle some exercises together. (All) We'll split the whole group into smaller groups (3-4) and each group can have a got at tackling the problems defined in last year's Advent of Code. Kudos will got to those who get the furthest in the hour. We will try using PyCharm Pro and the coding-sharing features. Only 1 member of each team will need a pro licence and we'll try and organize this beforehand.
- 15:10 - 15:30: Break. Tea/coffee not provided :(
- 15:30 - 15:40: xapi: An idea for a new api based around experiments/dask (Gagik Vardanyan)
- 15:40 - 15:50: CppCheck and What It Can Do For You: It's not just a pain! (Tom Hampson)
-
16:00 - 16:30: Conda: An introduction & how will it work with Mantid. Including motivational elements. A talk plus the chance to get setup with a mantid conda development environment while we are all together so we can work out the kinks (if any!) (Tom Hampson & Sam Jones)
- Flexible end time depending on how much people want to play with Conda and ask questions
Timings are approximate.
- 13:30 - 13:45: Introduction to the day.
- 13:30 - 13:45: Jenkins/CI: Walk through of setup. What do I do if something fails? etc (David)
-
13:45-13:50: Code camp to work on improvements to Mantid (Martyn)
- Gather gripes/ideas for improvements to work on in small groups
- Split into small groups (3-4)
- 13:45 - 14:45: Work in small groups on tasks
- 14:45 - 15:00: Break. Tea/coffee not provided :(
- 15:00 - 15:15: Feedback from first set of tasks. Are you finished?
- 15:15 - 15:20: Assign new tasks or teams can continue on with previous
- 15:20 - 16:20: Work in small groups on tasks
- 16:20 - 16:30: Feedback and close out
We'd very much like the team to drive what is covered here.
Issues to tackle:
To be determined on day 2
Suggestions from the TWG:
- Discussion of improvements to current review mechanism, including aspects such as code owners
- Reviewing/fixing unreliable tests
- Reviewing/fixing slow tests. Generate list using script.
- Driving down CppCheck warnings to zero
- Folding system tests into
ctest
- Investigate using links rather than copying Test Data Files on Windows
- Labelling "core" algorithms