Here's a few projects I've worked on over the years...
GitHub repository: mmap_backed_arrays
A library to allow people to use MMAP backing for their Python datatypes with an Array like interface. 2 main use cases for this support for low level interactions with the memory:
- Interprocess communications, useful when considering the limitations of concurrency with some Python implementations.
- Lower level operations with memory that can be needed with embedded devices due to not having higher level interfaces.
See this blog post about getting the mmap array library on PyPi.
GitHub repository: Programmable quizzes
A Python framework to let people program quiz materials. This package came about as a response to the frustrations I had with maintaining the multiple different versions of similar assessment materials found when I was teaching Calculus at Melbourne University.
By creating data types that allow you to represent the concepts that are present in quizzes you gain a lot of power. This lets you do things like automate small changes to questions, for example changing numbers/dates/names/etc and bigger things like creating dynamic questions along with their answers in marking sheets.
It also lets you create templates that have the styling you want with your assessment materials and then keeps that separate from the population of the questions. This is a popular technique in the web development world and I thought it was very applicable to this domain as well.
Footbag instructional site
Currently inactive/unmaintained, please contact me if you would like to maintain this!
Site: Footbag encyclopedia
GitHub repository: footbag-db.
An old hobby of mine is footbag, this was an attempt at putting together the first online footbag instructional encyclopedia with ease of finding relevant information as a main priority. The goal was to make it as easy as possible for people to find the information about the techniques they wanted, even if they didn't know the exact names or nicknames of the techniques, all you needed to know was how to describe the components of a technique to search.