During the first week of December, I participated in OCLC’s second Developer House with nine other academic librarians and library IT staff. We spent the week working with OCLC APIs, especially WorldCat Discovery API which is still in beta.
Our group of developers ranged in experience and technologies that complemented each other well for the various projects that we worked on. In addition, several OCLC staff spent the week with Dev House, offering support and knowledge whenever possible and many others were on call as needed. This provided us with the opportunity to dig into the projects and even create working demos with some functionality by the end of the week. Even with a team, it is a tough feat to pull off but fun none-the-less.
My team’s project searched the Discovery API information with third party information to generate relevant content that the library already owned. Our idea was to create a quick display of library material based on a particular topic, person, or place. After considering many third party sources, we selected DBpedia for its organized data and easy-of-use, then based the information on a date in history. This gave us a good amount of results and flexibility since dates are associated with many topics in a multitude of ways (birthdays, commemorations, releases, publications, etc.). Our group has a guest post on the OCLC Developer Network, if you’re interested to know more details and watch a short video demo of our project.
Trying to list off all of the things that I learned would make this post much too long, so let’s stick with the top three. First and foremost is SPARQL, an RDF query language that searches for and manipulates data and is customizable to allow for getting back desired information in a specific way. While learning and then mastering SPARQL queries well enough to use them took some time, figuring out what information was available and how we wanted the data was the main focus. Thankfully, OCLC has an SPARQL expert who helped us with this, which meant that we had the chance to create and hone several different queries to use in our application. Apache Jena is a good SPARQL tutorial and the SPARQL Explorer is great for trying out queries.
Second is GitHub, a website for sharing and collaborating on code. Before Dev House, I had signed up and looked at some of the tutorials to get started but it helped having a project with a time restriction to put GitHub to use. There are multiple ways to use GitHub for whichever you prefer: online on the website, through the client, or in a terminal. It reminds me of DropBox in that it keeps everyone’s code updated but it is more complex and offers much more functionality along with the ability to fork, or branch, a project.
Finally, there is an engaged community of library coders and it was exciting to spend a week with several of them. Even though we all are at different institutions, librarians still find to stay connected wether it be through OCLC Developer Network or Code4Lib Annual or Regional conferences, or other outlets. If you want to be involved more with coding and technology, just jump in. And there is bound to be another awesome OCLC DevHouse around the corner to apply for.