Sushi in alma

A couple of years back, I posted about how I had been working on my own SUSHI client. It seemed like a sensible project at the time, but even back then I knew that getting SUSHI functionality set up in Alma would obviate the need for my own client. Now, a couple of years later, I’m finally setting it up in Alma, and I am much happier with the new workflow.

Perhaps the SUSHI ecosystem has gotten better in the past few years, with more vendors figuring out how to reliably offer SUSHI endpoints, but I suspect that most of the improvement in the workflow comes from not having to maintain my own client anymore. Alma’s SUSHI interface is passable, and really that’s all we need. If the data is in Alma, we can access it in Alma Analytics for ACRL/IPEDS, and the central Office of Library Services can access it for their purposes too. Win/win.

Right now, I’m in the process of getting all the endpoints wired up so that data can be gathered with a couple of clicks. While that’s time consuming for this year’s harvesting, I am optimistic that it will be much faster next year, once it’s almost entirely automated.

Posted in alma, sushi | Comments closed

Overwork

Sometimes it seems like there’s way too much work to do. I know this is a bit of a platitude, but it’s such a common experience in so many workplaces, it bears looking into. In my specific workplace, as a former colleague explained, the problem is that tasks are sticky. Once you do something once you will be stuck with it permanently.

It’s possible to lose track of the occasional joys of librarianship when your to-do list is too long and overbearing. You miss out on working on things you want to work on because there is too much other stuff weighing on you. This happened to me this week when I missed a conference proposal deadline because I simply did not have the spoons. I would have loved to go give a talk, but nope, it’s ACRL/IPEDS season, my friends.

I don’t have any solutions to these problems, but writing posts like this helps. It’s a small catharsis that briefly improves things in small ways.

Posted in workload | Comments closed

Could it run somewhere other than libguides?

As a thought experiment, I was wondering if we could easily get our library homepage up and running on a platform other than LibGuides. On the one hand, this seems like it should be pretty easy, as it’s all HTML/CSS/JS. But nonetheless, I wouldn’t be surprised if there would be some problems lurking in the corners.

Our page is a LibGuides group homepage that we totally emptied of content and rebuilt from the ground up. So there’s basically no boilerplate Springshare-written code in there; we wrote almost all of it all ourselves. In theory, this would make it more portable.

On the other hand, the carousel would break, as that is LibGuides-specific. But that’s really not critical to the site, and could be replaced with other content. Other bits could be adapted. For example, the script that fetches the library hours would need to be pulled out of the LibGuide where it lives now. It might throw an error if you tried to run it from a different domain. I’m not sure; I’d have to try to see.

It’s interesting to think about these things, which may someday be relevant. I’m not going to try migrating it now, as there is no pressing need, but I’ll definitely continue with the thought experiment.

Posted in homepage, libguides | Comments closed

AR, future directions

For me, holidays are a time to do a bilan, to take stock and to think about what’s next. In that spirit, here are some augmented reality things I’d like to pursue in our library in the new year:

  • Use AR.js to render text in the virtual space, not just shapes.
  • Explore more of the possibilities offered by the A-Frame framework.
  • Build out our AR game’s UI to allow for dialog boxes, quiz questions, etc.
  • Look at alternatives to AR.js. Maybe now there are other, more robust options?
  • Try hosting the AR game somewhere other than on LibGuides. (Because having access to server-side scripting — which LibGuides does not offer — would allow us to capture more interesting analytics.)
  • Finish a paper that Prof. Carrie Jedlicka and I are writing on this.
  • Maybe try to get a poster accepted at a conference?
Posted in ar | Comments closed

Task force

It is probably very nerdy that I am as excited as I am to join something called the Alma Extensibility Task Force. It’s basically a committee to work with the Alma APIs, and I am totally here for it. There are a bunch of reasons for this:

  • It’s a chance to work with some stellar colleagues. Seriously, the people on this task force are top notch.
  • I’ll probably get to do some substantial Python programming. After some time spent wandering in the wilds of JavaScript, this sounds very appealing.
  • I might be able to finally contribute meaningfully to the Alma work on my campus. Up until now, I’ve been lingering in dissatisfied way on the edges of our library’s Alma work, not really wanting to become a power user of the Alma web UI, but still wanting to contribute more meaningfully. This task force may be my chance to do that.
  • I may actually have some knowledge to contribute here. I’ve done a lot of API-based projects over the years, and this (I think) is exactly the skill set they’re looking for.

So I will hum with excitement in advance of our first meeting in January. Until then, I hope everyone has a happy holiday!

Posted in alma, api, committees | Comments closed

Migrating to bootstrap 5

LibGuides seems to have finally begun its long journey to Bootstrap 5. In the abstract, this is really good news. New features! Modern tools! No longer having to worry about Bootstrap 3 being EOL! All good stuff.

But in practice, I think this might ultimately mean a lot of work for our library. Our library homepage is a heavily-bootstrapped group homepage. I expect that a lot would break if we simply flipped the switch to Bootstrap 5. The official list of breaking changes is daunting (and this list only covers the 4 to 5 part of the migration!).

Also, the migration timelines are still unclear to me. So far, Springshare has only launched Bootstrap 5 for the A-to-Z lists. I asked about subsequent timelines on the Springshare Lounge earlier this afternoon, but it’s the day before Thanksgiving, and I assume many people are (quite rightly) busy with the non-Bootstrap parts of the holiday.

My thought is to pitch this whole situation to my co-workers as a chance to do a redesign. If lots of things are breaking anyway, why not make it better? I bet we can come up with some constructive, iterative ideas for improvements.

Posted in bootstrap, homepage, libguides | Comments closed

Research and sordid calculations about promotion

I’m up for promotion this year, and it’s too late to try to get any more research papers published before my file gets reviewed by the promotion committee. So a few days ago I made the very pragmatic/mercenary decision to not start any new research projects right now. Instead, I’ll focus on committee work, which can still plausibly move the needle on my promotion application. Research can wait.

But then I woke up on Sunday morning super depressed about this decision. It feels very un-motivating to not be working on a paper. I find the research to be one of the most rewarding parts of academic librarianship, and I don’t really want to give that up, even if it isn’t really expedient right now.

Which is to say my research hiatus might be over after just a few days. I have some stuff I want to work on.

Posted in research | Comments closed

Offpunk

I’m trying something new: cross-posting from Gemini. I don’t foresee doing this very often. It’s a bit of an experiment.

So I had been using AV-98 by solderpunk as a gemini client, which was last updated 3 years ago according to the repository on tildegit. Anyhow, the recent lack of maintenance has been catching up with it, as there are an increasing number of problems with the client with each successive Python release.

But I don’t want to dwell on AV-98; it was a fine client while it lasted, but it was time to move on. Since I did like AV-98, I was drawn to offpunk, which is a fork. It’s also actively maintained (the most recent update was last week). Offpunk has a lot more features than AV-98, which is kindof fun. I like the idea of offline reading (what if I’m on a plane?), and it’s cool to read other formats, from web to rss and so on.

Offpunk is also pleasingly janky[1]. As in it is a project that I could see myself contribuing to. It’s certainly not perfect but I can plausibly see opportunities to submit patches and issues. Plus it’s written in Python, which makes me happy.

So lots of new stuff to explore here. Happy to have the opportunity for further tinkering in gemini.

[1] EDIT – The janky problems turned out to be a result of my Python setup, not Offpunk’s fault at all! My apologies to Ploum! :)

Posted in gemini, smol | Comments closed

Status page

Over the past two weeks, I put together a “status page” for our library services. It’s not live yet, but I hope to make it public soon. Basically the page gathers HTTP response codes by submitting GET requests for each of our outside services (website, collections, and other services like ILLiad, Primo, and EZproxy), and displays them to the user, helpfully color-coded to show which ones have failed.

The point is that librarians and other users – on our campus and elsewhere – can see what is working and what is not. The use case may be as straightforward as asking “is the website down?”, or perhaps may be more complicated, such as debugging eresource access problems.

One interesting thing that I learned is that a lot of our services return 3xx series responses, which are redirects. I’m not sure why this is yet. Perhaps our vendors just move their pages around a lot. Or maybe the URLs we have stored in our CMS are just particularly old. In any case it is curious and I intend to investigate further. I have set Python’s httpx library to dig a bit deeper and follow redirects to see where they lead. One hopes they ultimately lead to a 2xx, but it is clear that sometimes they don’t :(

I also had to spoof some headers to avoid unwarranted 4xx series responses. Some vendors were returning 403s if it was clear that it wasn’t a browser making the request. So I used a Firefox user-agent header and, for the most part, got more reliable responses. Some vendors continue to give 403s nonetheless. I wonder what it is about my GET request that is causing them to continue to return “Forbidden”. I will puzzle over this some more. Once I get the whole thing in decent shape, I will share it with the CUNY eresources librarians.

Posted in http status, maintenance, networking | Comments closed

The thanksgiving challenge, revisited

In 2021, I posted about how I was planning to stay home by myself for the Thanksgiving weekend and work on writing code for my Open Journal Matcher project. I then went on about how great it was. So this year I’m going to do the Thanksgiving programming challenge again. The premise is simple: stay by yourself and code all weekend. It is okay to have your dog (or other pet of your choosing) with you. Stay up late if that helps. Coffee or tea is optional but encouraged.

Some things I might try:

  • Migrate our Springshare A-to-Z page to Bootstrap 5
  • Build a status page for all of our various library services
  • Improve our public-facing Primo landing page

If anyone else is in for the challenge, let me know. Post your progress, encouragements, or visible signs of distress to Mastodon. We’re going to write a shit ton of code!

Posted in holidays | Comments closed
  • Subscribe to this blog

Skip to toolbar