A post about the Toronto Zine Library OPAC and DIY library software

This was written by TZL volunteers Rotem and Brandon for the Toronto Zine Library’s Zine-O-File produced by the TZL Collective, but due to life we weren’t able to publish the winter 2019 issue, so we are sharing this here!

First, for those who are unfamiliar, zines are self-published booklets that can be about anything— from garlic recipe zines made of garlic paper to comic zines about socialism in Canada. The term “zine” comes from fanzine and fan magazine, rooted in sci-fi fanzines, and made popular with the rise of punk in the 1970s, queercore in the 1980s, and the feminist punk movement well into the 90s (Bikini Kill! and riot grrrl). Traditionally, zines were a way for niche communities to stay connected and share information that wasn’t picked up by mainstream media.

It may seem obvious, but zines are still being made! People still have things they are concerned about and excited about; marginalized communities are still left out of mainstream publication and censored online; communities of like-minded individuals still want to communicate with each other to share knowledge, ideas, and wisdom in a meaningful way; people still want to connect with each other, with people who have had similar experiences, and with people who have had different experiences —  you get the idea.

The beauty of zines is that anyone can make them— there are no rules. Zines do not have to be perfect, and they do not have to be pretty. Often, master copies are made by cutting and pasting images and texts by hand, mixing print media and handwriting, which are then folded in proper page order, photocopied, refolded, and hand bound or stapled. They are filled with uncensored personal experiences and perspectives and therefore differ from mainstream publication. They allow diverse communities to share their experiences, knowledge, and wisdom.

You may be wondering, how does an independent, volunteer-run zine library keep track of all these wonderful zines and share them with the public?

While we all highly valued the old paper and pencil method of record keeping, at well over 3600 zines (and growing rapidly with weekly donations!) and 200 members (also rapidly growing!) the method had become untenable. The Toronto Zine Library now has an online public access catalogue (OPAC), a searchable online catalogue which you can check out here: https://www.torontozinelibrary.org/catalogue/opac/

Rotem managed and facilitated the library science side of this project, while Brandon supported the tech side of the project — and along the way we received support from the rest of the TZL’s lovely volunteers.

We decided that this beautiful collection would best serve the public if we could afford not only  public research and access to the catalogue but also a more streamlined user management and circulation system. In librarian lingo, this means using an integrated library system (ILS). An ILS is an umbrella term for library management systems that usually, at minimum, serve the desired functions of user management, circulation, and an OPAC (Online Public Access Catalogue). For our integrated library system (ILS), we used the open source software OpenBiblio. Open Source software enables small independent organizations like the TZL to function without the monetary constraints commercial software creates. The TZL runs on Open Source already, for example we use Linux at our circulation desk and office tools like LibreOffice to manage documents. However, adapting an existing library’s collections and operating history, managed partially on paper and partially in digital, is no simple task.

The first step to moving to an ILS was the server side setup. For this, we needed to setup a MySQL database and user for OpenBiblio to use and then install the software itself. Fortunately, OpenBiblio comes with good install instructions and the setup was straightforward. At this point, we wanted to begin converting our information from one system to another. However, each preexisting system had its own caveats.

First, the membership database was entirely paper based across binders that spanned all the years of the TZL’s operations (over a decade!). Additionally, OpenBiblio requires members to be associated with barcodes, since typically libraries scan cards as a means of user identification. Our member database had never kept track of its users this way, so the first feature we added to the OpenBiblio functionality — barcode generation! We chose a simple format and made an automatic generator that would populate the barcode field in the membership form with a unique barcode. Finally, because we’d be storing user information and moving circulation to a web based platform, we needed enhanced security. Since login information over an unsecure channel can be easily “sniffed”, we needed to ensure our admin logins were secure! So we used the Let’s Encrypt Free SSL/TLS certificate service and moved the entire TZL website to Hypertext Transfer Protocol Secure (HTTPS). This means all of our communications to the OpenBiblio system, and the server in general, were now encrypted and secure! At this point, we were able to move from heavy binders to a sustainable and secure digital database thanks to the hard work of volunteer zine librarians who transferred membership information manually. We can now better track individual copies of zines and run circulation services through our library computer and remotely.

Second, we had been cataloguing the zines using a small custom made app and database for years. It was mostly textual and in a straightforward format that captured the organization of the catalogue. However, OpenBiblio uses the MARC 21 format internally. MARC 21 is a format for machine-readable bibliographic information developed by the Library of Congress. On one hand, this system codifies the storage of bibliographic information and is used broadly in the library community. On the other hand, the system encodes certain assumptions about the medium being catalogued and these assumptions are not necessarily commensurate with zines and zine culture. The first step to this process was understanding the structure of the database in use and getting the preexisting information out in a usable format. To facilitate this we used the SQLite DB Explorer to dump the entire database out into a tab delimited text file. The next step was getting the information into a format for OpenBiblio, this means MARC data, since, fortunately, OpenBiblio has a MARC data importer. To do this we used MARCEdit, a MARC editing and authoring tool made by Terry Reese, a librarian at The Ohio State University. In MARCEdit we were able to map the fields in our custom database to MARC fields we thought would serve them well. For example, we mapped genre to 650$a (650 => Subject Added Entry-Topical Term, $a => Topical term or geographic name entry element), and zine format to 300$b (300 => Physical Description, $b => Other physical details). At this point we were able to export the database as MARC and import it into OpenBiblio. The one caveat here is that OpenBiblio requires call numbers, which the TZL does not use.  To handle this, we were able to simply remove the requirement by commenting out a few lines of code (a hack, yes, but it works!). The very last step is to create an actual copy entry for each item imported, since the bibliographic information and the copies are separate. This is a straightforward process outlined on the OpenBiblio website and requires a little bit of SQL (fortunately copy/paste will do here). Now we had 3400+ entries and a fully functioning OPAC and circulation system!

Third, we wanted to ensure that the medium of zines was captured as best as possible online so our members could do their research and see what they were getting in to. We decided early on that, since OpenBiblio did not already have the feature, that we needed pictures! This led to the second addition to the OpenBiblio feature set. The first task was to understand the inner working of OpenBiblio — we needed to go under the hood for this one! Fortunately, a past contributor had made a patch for an earlier version of this feature. Using this, decoding the inner workings became much more straightforward and made the transition from OpenBiblio user to OpenBiblio developer much more easy. Since it was for an earlier version and didn’t quite have all the features we wanted, we still had our work cut out! This involved several steps: using an experimental MARC field in the 900s to store the image location; adding support to render the image in the bibliographic searches and individual entries; and adding support to upload the image using some fancy jQuery ajax client-side and a dollop of php server-side; and finally building out a thumbnail system so the entire thing was efficient. This year, we held a fundraiser to raise money for a scanner for the library (and for other projects), and since then, we have started the process of scanning zine covers.

All these adjustments and the shift to the new library software in general has improved the way we are able to catalogue zines and the accessibility of the collection. Cataloguing zines is difficult because zine librarians have to choose one out of several categories to organize zines into— but we desperately want to choose multiple. For the TZL, these categories traditionally include: Perzine, Fanzine, Litzine, Humour, Culture, Miscellaneous, Gender/Queer, Politics, Comics, Art (and many subcategories to choose from). Since zines can often fit into multiple categories, we read each zine carefully and cautiously choose what we hope will be its best home. Now we can also add comprehensive keywords to make the catalogue more accessible and showcase how diverse the collection is.

The other great thing about DIY library software is we can avoid the outdated vocabulary, racism, sexism, and other problematic bias that is built into other standard  library taxonomies such as Library of Congress Classification and Dewey. As mentioned, we also have the ability to alter MARC fields in OpenBiblio to match the needs of zine library taxonomies, which are still a work in progress (for us) to be honest. The other great thing about DIY library software is that we can incorporate feedback from zinesters and library visitors to improve the catalogue. For example, we can update tags to reflect current cultural language, from self-determination within marginalized communities to vocabulary within niche communities that we just do not have expertise on.

Limiting zines to one category might prevent someone from stumbling across a zine that they might be searching for (or not know they needed), maybe for research, interest, or other personal reasons. For example, a zine maker’s personal story of surviving a traumatic experience that deals with mental health struggles might be narrated in comic medium and catalogued in the Comics section— but it could just as easily have been shelved in Perzines (personal zines), or maybe Gender/Sexuality. As a result, someone going through a difficult experience and searching for zines relating to trauma and depression, might miss out on this narrative if they only search the Perzine section. Our hope is that by adding keywords to all zines, we can provide library visitors and staff with better information to locate and discover the right zines. The example scenario above (Comics vs. Perzines etc.) can be avoided because zines from any section can now be linked to terms such as: mental health, trauma, survival, grief, self care, personal stories, body positivity, feminism, diary, and so on — which makes us zine librarians very happy.

Also, anyone can now search the collection from their homes or anywhere else with wifi. Since, regrettably, the TZL’s physical library space is not as accessible as we would like (second floor, no elevator), the ability to search the catalogue remotely enables more people to see the scope of the collection and engage with zine resources. For example, a wheelchair user can now email us, ask us to pull zines from our collection that they have found in our online catalogue, and we can then deliver these zines to them on the more accessible main floor of the building.

Please contact the TZL if you have suggestions for improving community-specific or intersectional keywords, or other ways to improve the language in the catalogue: torontozinelibrary@gmail.com

Below is a list of zines Rotem prepared for the TZL fundraiser in 2018 to showcase catalogue records with zine covers and keywords added, to show the potential of what the catalogue can grow to look like in the future.

This entry was posted in DIY, libraries, Uncategorized, zines. Bookmark the permalink.