Goodbye learning 2017, hello learning 2018

1 January 2018

I learned a hell of a lot last year.

1. Tech stuff


This year at MPOW we migrated our library management system to Koha and I had to simultaneously learn how Koha works and teach other people. It was a pretty crazy time, but it's been an amazing experience and I just want to keep learning more.


An unexpected part of learning how Koha works was that I had to learn a lot more about MARC. All of our cataloguing workflows were written for Amlib, and whilst Koha's cataloguing tools are extremely flexible and pretty sophisticated, the flipside is that with great power comes great responsibility. You can create complex MARC modification rules for importing files, but to do that you have to know what to modify, how, and why. I probably have more of an appreciation of just how much information is packed into MARC records now, though my fundamental position is still that it's an outdated standard that needs to be replaced a lot faster than we all seem to be moving.


I've been meaning to learn how to write SQL queries for years now, but somehow I always got away with not knowing how. Moving to Koha gave me the final push to learn, and it turns out it's not as complicated as I expected.


It's bothered me for quite a while that we've been effectively forcing newCardigan mailing list recipients and cardiParty attendees to sign up to third party platforms to participate. In December we finally completed our migration to CiviCRM on WordPress, bringing our mailing list, events, podcasting, website management and potential fundraising and membership 'in-house' into one system managed by us. Setting this up meant having to learn how CiviCRM works, and to be honest I'm pretty impressed by it. This is the same CRM used by EFA and The Greens and it's both powerful and reasonably easy to set up.

WordPress theme development

I didn't really want to move the newCardigan website to WordPress - everyone had learned how to use Ghost and I find it much easier to manage. Unfortunately, moving to CiviCRM required that we use one of the big three PHP-based platforms: WordPress, Joomla! or Drupal. Setting up a Drupal site seemed like it might be overkill, and WordPress is familiar to everyone on the newCardigan committee, so we went with that. Unfortunately that meant making our own theme in WordPress and I discovered to my surprise that the official WordPress docs are terrible. For a system that powers somewhere between 20% and 25% of the web, this was a bit of a shock, and it made me more appreciative of what the Ghost team have done with docs and guides, given how much smaller and less mature the project is. Anyway, I managed to work things out eventually and whilst I definitely wouldn't say I'm now a "WordPress theme developer" I learned how to hack something together.

CSS grid

I'd seen Jen Simmons and Rachel Andrew talking excitedly about CSS Grid on Twitter over the course of 2017. I didn't quite understand why it was so exciting, but it sounded interesting, so I watch some of Andrew's Grid by example videos and spent quite a few minutes staring at the screen say "wow". grid suddenly makes everything so much easier. A few lines and you can make a responsive, sensible and more interesting site, and spend time making things interesting and pretty instead of spending time just making sure it all lines up properly. With grid and flex, even n00bs like me should be able to quickly knock up something that looks sensible in any modern browser on any screen.

Using package.json and npm install for nodejs

Part of the move from Ghost to WordPress was exporting our old website posts from the Ghost site and importing them into WordPress. The Ghost team created a great tool for moving from WordPress to Ghost, but I couldn't find anything that worked moving in the other direction. So I wrote a nodejs script to do the job. When I was looking at how to make it simple to use with any filename, I finally realised why package.json is useful, and how npm install and npm start work.. I'll definitely be using all three again.


I'm not sure I'll ever really understand Docker, but I learned a lot more this year. As part of some server housekeeping, I moved all my projects (bots, meteor apps, etc) to Docker. This makes them all a lot easier to maintain and, if necessary, move again in future.

When there's a problem with something you've installed on a web server, it's probably a permissions error.

I learned this the hard way.

2. I can make things happen

In December 2016 I launched GLAM Blog Club without really knowing what would happen. Twelve months later and it seems to have mostly been a success. We'll publish some stats soon, but generally speaking we've maintained a regular group of GLAM bloggers, and an ok level of diversity, and I think it's reasonable to claim that more Australian GLAM professionals have blogged more regularly than would be the case if GLAM Blog Club didn't exist.

In July VALA Tech Camp happened. The genesis of Tech Camp was long and complicated, but I had a leading role in finally making it happen. I'm proud of what we accomplished, and if nothing else it proves that there is a mostly untapped market in Australia for reasonably priced GLAM conferences that don't imvolve vendor halls, keynote speakers or overpriced dinners.

Finally, in November, MPOW migrated to Koha ILS after pretty much two and a half years of work to get us to that point. To be honest, I never thought I would actually be able to get a large Australian public library service to move to an open source library management system, so the whole experience has been a little surreal. It's not perfect, but I'm now working with a system that we can improve either directly (writing the code ourselves) or indirectly (paying for development) as part of a collaborative international project. I'm excited about the possibilities for the (near) future.

3. Nobody knows what the hell they're doing

I already knew this but I had to learn it again. Hearing people I respect deeply say "I don't know", or "I'm not sure what to do" is slightly disconcerting, but in some ways a relief. We're all just humans doing the best we can, and it's good to remember that every now and again.

4. We have to smash the patriarchy

I already knew this one too but last year made it unbearably, unavoidably, shouting-in-my-face clear. Toxic masculinity is ruining everything for everyone and men need to take the lead to kill it. Which will often mean ...not taking the lead. Inevitably I'll keep failing at this, but I'll try to notice more when things are not ok, and actually do something about it.

5. I actually quite like my job

I sure didn't think so for a lot of this year. In hindsight, I think this was mostly a reaction to the many times I found myself uncertain about what I should be doing, and fearing the consequences if I messed things up. Looking at it more rationally, I am incredibly lucky to be in the job I have. I love that I oversee both IT systems and the general collections. I work with great people, my boss trusts me, and the community we serve is diverse, interesting and appreciative. I also got the chance to be Acting Manager for five weeks which was great because I defintely know that I never want to do that job permanently...

What I want to learn this year

  1. Koha templating and themes - to get the most out of the system.
  2. More mySQL - to get some nifty collection management reports out.
  3. Perl - this might sound weird, but Koha is written in Perl.
  4. Unit testing - I know why it's important but I still don't really understand how it works.
  5. How to cook bagels - because they are delicious.
  6. To read long texts immersively again - this will probably require less Twitter.
  7. Remembering names better - because I'm really, really, embarrassingly bad at this.

Thanks for reading my overshare. Happy New Learning Year!