OPF Hackathon 2023
The 2023 Hackathon will be our longest online hack event to date! We hope that this allows participants more flexibility to attend when convenient. It also allows us to spend more time reviewing and helping with your contributions. This is an opportunity for you to learn some new skills as well as make a meaningful contribution to open-source digital preservation software.
We have abandoned the ‘challenge’ format often associated with a hackathon and ask our participants to contribute to OPF software and supporting resources. To facilitate this, OPF helps people to acquire the knowledge and skills required to contribute as part of the hackathon.
Over the course of these next ten weeks, our hackathon is open to everyone! We have split the event into four streams with various tasks, so everyone should be able to find something they can work on given the time, knowledge, and skills available to them. We are very grateful for whatever time you can volunteer.
Streams
We’ll be running four loosely-themed tracks at the Hackathon. These reflect the things we believe will be of most value to the community and the things we’re interested in improving. The tracks are:
Documentation
We will start with a focus on this gentle stream where the most people can contribute. This is your chance to help us to help the community. Documentation is never finished and requires regular “gardening” to remain accurate and current. Find out how anybody can suggest or contribute improvements. We will also work on the error message Wikis for JHOVE and veraPDF to offer better explanations for problems reported by JHOVE and veraPDF.
Tool Hacking
This is the track for those who want to get their hands dirty with the OPF tools. We’ll primarily work on the JHOVE issue list for the next release later this year. If you’re an experienced developer who’d like to give a little back to the community or a novice who’d like to learn more about software development, this is the track for you.
Extensibility
In this track, we’ll look at ways to extend the functionality of OPF’s tools. veraPDF supports the addition of custom policy checks via XML Schematron rules. It’s also possible to write veraPDF plugins to run other tools on content found in PDFs, for example, fonts and images. JHOVE supports the addition of custom modules to handle new file formats. We’ll be looking at how to write these and how to share them with the community.
Packaging Standards & Containerisation
This track will focus on how OPF packages and distributes its software. We’ll be working to make it easier for people and organisations to install and use our tools. We’ll be looking at using Docker and other containerisation technologies to package our tools and their dependencies.
How will it work?
If you are already an active OPF contributor, or you’ve taken part in one of our previous Hackathons, you know that we will be using GitHub to manage and review contributions.
We will also be using a community forum! You can access this here. Please create a log-in, and you’re good to go!
We hope this Hackathon will act as a friendly practice space for beginners, so share your best entry coding tips and tricks in our ‘learning to code’ thread. For those with more interest in the community than the tech, please review our ‘getting started’ thread as the resources build. We hope to help build a well-rounded, community-led resource to get involved with digital preservation to its fullest.
Via GitHub, a selection of triaged issues and pull requests will be available for JHOVE. These will be labelled to separate documentation tasks from software development ones. We have also selected issues that we believe are most suitable for less experienced developers who don’t usually contribute to open source projects.
To begin, we just ask that you look at the available JHOVE issues and FIDO issues on GitHub. If you see something you’d like to work on, then please add a comment to the issue to that effect. The OPF team will then get in touch as we assign work to contributors. If you’d like to work on something that isn’t listed, please contact us, and we’ll see what we can do. These will be available for the super-keen from Wednesday 21st July.
If you don’t already have a GitHub account, you’ll need to create one. You can do this at [https://github.com/join](https://github.com/join). For complete novices, we will be running introductory webinars covering registration, please see below for the dates.
Once you have a GitHub account, you’ll need to let us know your username so that we can add you to the OPF organisation. You can do this by emailing [email protected].
Help! I’m a beginner …
We know that GitHub can feel intimidating, so we’re running some introductory sessions to get people started with the basics.
- The first session on June 23rd, ‘Getting Started with GitHub’, will cover the basics of getting to grips with GitHub. Carl will cover how to raise issues, how to create an account, and why you need to use it.
- The second session on June 30th, ‘Writing Documentation with GitHub Pages’, covers using Github to host websites and create documentation.
- Thirdly, on July 14th ‘Getting Started with Automation on GitHub’ will show you how to run some automated quality assurance and publication tasks for documentation on GitHub.
- Our fourth session on 21 July, ‘Intro. to Digital Preservation Terminology + Existing Standards’, will present a review of existing standards used in the community and basic digital preservation terminologies.
Please see our blog introducing the 2023 Hackathon, and share this event with your friends and colleagues! We’ll be using the hashtag #OPFHackathon. Please share your working-photos + thoughts with us throughout the summer!
Dates
June 19 – September 1 2023
We will be ‘soft-launching’ the streams, and a community forum we have built on the opening week, June 19th-Friday 23rd to give everyone a chance to get to grips with things.