Hi, I'm Darryl Hamilton, new contributor to Mahara. I work for Catalyst IT in New Zealand, where I started in late 2009.
I've been writing PHP code since 1999, dabbled in a variety of other languages like Python and C# over the years. In 2007 I got the chance to work on Ruby on Rails projects.
I started contributing to Mahara around mid April 2011.
Improved the Leap2a import artefact fixer methods
LaunchPad Bug: https://bugs.launchpad.net/mahara/+bug/675730
The Leap2A import had some code that matched up external artefacts with ones already imported, and updated the links accordingly. Unfortunately this code required the attributes of the links to be in a specific order and ignored links where the order was different. I spent a bit of time rewriting this to use PHP's DOMDocument system (SimpleXML turned out to be too simple) so the order of the attributes was irrelevant.
LaunchPad Bug: https://bugs.launchpad.net/mahara/+bug/793815 Commits: https://gitorious.org/mahara/mahara/commit/af0e933f391011a0e5f600f703be77b1c9ed23c0 and https://gitorious.org/mahara/mahara/commit/379d1c8b45d1e17bde315d59340d1eb2b100beb3
I was asked to write code to generate a sitemap for Mahara installations, using the sitemaps.org protocol. There was a lot of learning how SimpleXML worked, and when that proved unable to do all that was required (specifically around namespaced attributes), switching to DOMDocument, and learning how that worked.
Institution level control of public view creation
LaunchPad Bug: https://bugs.launchpad.net/mahara/+bug/794385
This one allowed me to get quite deep into the core of Mahara, working a lot with the custom Pieforms element ViewACL. Quite a few patchsets went into this one, with lots of comments and improvements.
Some of the other bugs I've fixed or contributed to are:
- https://bugs.launchpad.net/mahara/+bug/633273 (Changing username for external authentication does not change Mahara username)
- https://bugs.launchpad.net/mahara/+bug/744591 (Theme directory name and unrecoverable WSOD)
- https://bugs.launchpad.net/mahara/+bug/772976 (LEAP2A import artefact fixer uses the wrong namespace)
- https://bugs.launchpad.net/mahara/+bug/749863 (Export hangs when files are missing on disk)