By now, you’ve probably read about SirsiDynix’s “position paper” on open source, first posted on WikiLeaks. It’s kind of funny that almost exactly 11 years to the day after the first Microsoft Halloween document was leaked, SirsiDynix has provided the library systems community with a similar story. The author of Sirsi’s document, Stephen Abram, wrote a blog post in response and has been very busy answering the comments being posted to it. By the time he had posted his response, the story had already spread beyond the regular library blogs and tweets and got as far as the Linux Weekly News.
I suspect that LWN is how David Skoll found out about this issue, and what probably led him to Abram’s blogged response. David Skoll has been busting FUD against free and open source software for quite a while. While I don’t know him personally, he and I share the same hometown, the same public library system, and, for a few years, the same Linux user group (although that was a decade ago). He is (from what I hear) a super-smart programmer but not, to my knowledge, a programmer in the library systems world. So I was surprised to see him pop up in the comments on Abram’s post.
He probably doesn’t fit into SirsiDynix’s model of a “developer”. He’s actually a library patron only. One of his responses to Abram was a simple story about an issue he had with the Horizon ILS at the OPL:
I’ve written a tool (using WWW::Mechanize) to fetch my list of books due and email me about upcoming return dates. I had to use an undocumented GET parameter to get XML, and parse through the XML to get the info I needed. I’m sure that if your software were open-source, it would be far easier to integrate.
Here’s a user seeking an API to use his municipal library’s ILS, which happens to be from SirsiDynix. He’s not on code4lib, he’s not a SirsiDynix customer or developer. He just wants to access his personal patron data through an API without having to jump through silly hoops.
Further down, Abram responds, apparently not aware that Skoll is a user (i.e., a patron), and not a systems librarian (i.e., a SirsiDynix customer):
Tell me, what’s the difference between an open source ILS that alows you to write and share API’s and a proprietary ILS that let’s you write and share API’s? You might want to reserve your criticsm for the ILS’s that restrict API use.
Further down in the thread, Abram adds:
I have little patience for concerns about theoretical restrictions when requests have not been made for training or access
When Abram asks “what’s the difference between an open source ILS that alows you to write and share API’s and a proprietary ILS that let’s you write and share API?” he’s ignoring the fact that Mr. Skoll’s story gives us the answer, as he obviously had to fight through undocumented functions to get his tool to work. Ironically, Sirsi’s system doesn’t seem to fit into the two categories listed by Abram. It appears that it’s not even “a proprietary ILS that let’s [sic] you write and share API”. Does every ILS user wishing to write a simple ILS-based app, just like Mr. Skoll, have to shell out thousands of dollars for API training first? (And then not be allowed to share his work?) These restrictions wouldn’t be possible with an open source ILS.
We don’t know how many David Skolls we have amongst our patrons but savvy patrons like him do exist. What’s more, they are already accustomed to having publicly published API documentation for other online products to do all sorts of neat things with data — all without having to ask for permission to see the API documentation or paying for “training”. Why is Mr. Skoll’s initiative rewarded with such a rude brush-off? He may not be a SirsiDynix customer but he is a SirsiDynix user (and after the response he received, I’ll bet he’s not a happy one).
Finally, Skoll very explicitly explained later in the thread that he was a library patron looking for an API and, finally, Abram understood. Skoll then received the following non-answer to his query:
As for e-mail alerts, our software supports this as well as RSS when the library implements it.
It neither answered his question, nor was entirely honest (“our software” in the above sentence refers to Unicorn or Symphony, completely different products than the one Skoll’s library is currently using).
Why is it so hard for Abram to turn that answer into: “Here’s our API. Look at all the neat things that you can do with our system!” ? The result would be a happier patron, a potential new developer, and a positive story that spins itself.
As it stands, it looks like he’s just trying to dismiss a smart user trying to make better use of his local library’s ILS. That’s just plain silly and violates Ranganathan’s 4th and 5th laws.