LLM malaise

You may have seen my previous posts about my initial attempts to code with LLMs. At the time, they seemed promising. But in the past few months, my mood has shifted over into a sort of depression. Below are a few of my complaints. [1]

  • Using LLMs takes a significant amount of the fun out of coding. For me, a big part of the appeal of writing code is solving problems. Having a computer tell you the answer is much less fun.
  • LLM coding tools largely appeal to the productivity-obsessed and quality-indifferent. When it comes to writing code, that is an unambiguously very toxic combination.
  • The security implications of a fully-LLMed workflow are a bit terrifying. Simon Willison has written compellingly about this, and he claims that no one has solved these (rather severe) problems yet. This should really give us all pause.
  • The old ways of coding are being sidelined, which seems short-sighted. There are those who are — perhaps Quixotically — sticking to the old approaches. I suspect that their work will prove prescient in the long run. But right now that seems like a lonely battle and I don’t think I have the fortitude for it.

The result of all this is that I have been losing interest in modern programming. And it is probably prudent not to program in a half-hearted way with dangerous tools. So maybe I should just focus on my work with Humanities Methods in Librarianship and worry about other things for a bit.

[1] I know that these points are not at all original, and quite likely a bit naïve, but I wanted to bring them together here because they speak to how I feel about this situation right now. That’s what blogging is for, right? :)

Posted in ai | Leave a comment

Manifold

Our new journal, Humanities Methods in Librarianship, is now on Manifold. We invite you check out the new site and let us know what you think! Manifold is an open source web platform for journals and other publishing projects that is developed by a team based at CUNY, the University of Minnesota Press, and Cast Iron Coding.

One thing we like about Manifold is that it is opinionated about CSS. The house style is very distinct, but we are on board with it because we like it. However, I get the impression that if we wanted to deviate from the house style, it would be challenging. For now this is fine; we will see about the fit over the longer term. It is nice to work with tools that are aesthetically well-designed out of the box. Manifold allowed us to get up and running with a visually pleasing site with very little effort.

Lastly, I’ve started enthusiastically opening issues on the GitHub repository for the Manifold project. I hope that these are appreciated and not annoying to the maintainers. We’ll see how this goes…

Posted in journal, manifold | Leave a comment

Humanities Methods in Librarianship: Call for peer reviewers

Here is a call for peer reviewers for Humanities Methods in Librarianship (where I am on the editorial board) that I hope will be of interest to you. Please consider signing up as a peer reviewer, and feel free to share with your networks!

Humanities Methods in Librarianship – a new, no-fee, open access journal – is seeking peer reviewers to join our team.

We publish high quality, peer-reviewed research with an emphasis on articles that push the boundaries — both thematically and formally — of what has been traditionally viewed as scholarship within the discipline. The journal aims to broaden the conversation by encouraging submissions that deploy methods from the humanities to address current or salient issues in the library profession. Humanistic methodological approaches may be used to address a wide range of topics within librarianship, so we encourage creative approaches and a diversity of submissions.

Are you interested in reviewing library papers relevant to your expertise in the following areas?

  • Archives
  • Art
  • Cultural studies
  • History
  • Literature
  • Philosophy
  • Politics
  • Religion

Please consider filling out this form. We would not expect to send peer reviewers more than one article per issue; at present, we expect to publish about one issue per year.

We hope that you will consider joining us! We look forward to hearing from you.

Posted in journal | Leave a comment

Two papers

In the past couple of weeks, I’ve published two papers. I just wanted to plug them briefly here:

From Weberian Rationalization to JavaScript Components: Modularism in Academic Library Software” was published today in Information Technology and Libraries, and discusses the pervasiveness of modular approaches from the social sciences to library software. It is where Max Weber enthusiasts and JavaScript nerds can hopefully find common ground. Admittedly, that’s an underexplored intersection, but hopefully at least a bit interesting.

My other recent paper is “Critique, Postcritique and Libraries,” published on August 25th in the Journal of Creative Library Practice. This is an essay — in other words, not peer-reviewed — which is probably appropriate, since the argument that it makes is a bit speculative. Basically, it is arguing that there are potential novel arguments outside of what has been called “critical librarianship.” Perhaps controversial, but aiming to be constructive, not argumentative.

Posted in research, writing | Leave a comment

Grind

Every summer, I set myself a deadline: I have to finish and submit a paper before school resumes in the fall. This push in the summer is absolutely necessary because it is an unbeatable opportunity: it is so much quieter at the library than during the rest of the academic year. I know that once classes start in September, the opportunities for writing will dry up almost entirely, and whatever I was working on will linger on unfinished, probably at least until the winter break.

This year, the start of the semester falls on September 9th, which is just over two weeks away. So the urgency is really weighing on me now. I do have a paper that could conceivably be finished in time, but it is behind schedule and far from done. So my plan is to truly lean into the grind over the short term. Aside from a visit to the tea shop in the afternoon for supplies, all I did yesterday was write. It may already be too late; the deadline may already be impossible, despite my best efforts. But I do know that I am going to push as hard as I can over the next two weeks to see what happens.

Posted in research, writing | Leave a comment

This is now a Chicago Manual of Style stan blog

The Chicago Manual of Style never ceases to delight me. Besides being an exceptional style guide by any standard, the deep love of detail that goes into the guide is remarkable. The authors’ passion for particulars positively radiates from all of the pages. It is enchanting. The visual design of the books is also impeccable.

Also, quite charmingly, the Chicago Manual also has an official merch page. As a result, a new hoodie may be in my future. Also, I am no longer content with my 16th edition, so I have just now ordered the 18th edition, to keep my reference shelf (stylishly) up to date.

❤️❤️❤️❤️❤️❤️

Posted in chicago manual, citation | Leave a comment

Further into tildegit

A couple of years ago, I posted about how I was mirroring some GitHub repositories on tildegit. Since then, GitHub has continued to deteriorate, with problems such as: feature bloat, over-engineering, slow response times when loading content, real ID verification for some features.

So now I’m moving further into tildegit. I’ve started a couple of new repositories that will be on tildegit only (not mirrored on GitHub), and I plan on adding more. I will also move my bots to tildegit, which has gitea actions (which are reputedly similar to GitHub actions).

There are obvious downsides to this. While anyone can clone the code, only tildegit users can make pull requests (for example). And you need to have an account on a tilde server to even get a tildegit account! But honestly, I am not worried about this.

There are plenty of other GitHub alternatives, some of which are more fully-featured that tildegit. But this plurality is a net postive; if we spread our work across multiple services, the ecosystem as a whole will benefit.

Posted in git, smol, tilde | Leave a comment

Web accessibility: a self-auditing approach

While my previous post was about how LLMs can supplement web accessibility work, they certainly do not match a thorough, human audit of web code and content. Real human eyes on the problem are often effective at diagnosing many of the most common pitfalls.

Our library is working on such an audit. A small sub-committee of two librarians went through the WCAG 2.1 AA guidelines rather painstakingly, and vernacularized their sometimes obtuse language to make them useful to librarians who were, say, reviewing their LibGuides. This was a bit of a laborious process, and indeed, it had to balance the risk of oversimplifying the WCAG guidelines with the pragmatic need for librarians to make sense of them. The result was this survey, which we distributed to librarians.

We also offered a workshop for the librarians on why this was necessary; how to use the survey; what to do if you were unsure what a question means; or what to do if you are stuck on how to fix a specific issue. The workshop was repeated several times so that most of the librarians could attend. The librarians have now been set loose upon their guides, and we will track the overall progress of the audit via their feedback and the form submissions.

It remains to be seen how this will work out!

Posted in wcag | Comments closed

Web accessibility: a supplementary approach

You may have heard about the requirement in the U.S. for most state and local governments’ web content to be WCAG 2.1 AA compliant by April 26th. This is a big lift, and our librarians have already been fretting about it for months now. But as I go about poking at Aider and o3, I realize they can provide a helpful alternate window onto web accessibility.

You can use Aider to point o3 at a website or a codebase, and ask it to identify spots where it fails WCAG accessibility requirements. The feedback it gives is often helpful, but also often not correct. You should definitely know your code well in order to be able to tell if its suggestions are reasonable. And it is good to be wary of the fixes it supplies too. For example, o3 wanted me to go on a long, mulit-commit journey refactoring with flexbox, when adding { margin-top: 10px; } to an element was a perfectly acceptable solution.

To be clear, o3 is not a comprehensive accessibility solution. It will miss things and suggest things that are wrong. But I found that it also flagged a couple of problems that I hadn’t noticed, despite having looked at this code for (literally) years. It also had opinions on what to do about these problems, and those opinions were a useful starting point to figuring out some constructive changes.

The downside here, of course, is the possibility of putting too much faith in the LLM. Don’t do that. Know your code and how to fix it yourself. But aside from that, o3 may have some useful input.

Posted in ai, aider, o3, wcag | Comments closed

Getting started with Aider

Last night, I got Aider properly set up on my laptop, both in the terminal and in neovim. It is remarkable. I honestly see how people get into a lot of trouble with vibe coding using tools like this. It’s a world of difference from chatting with Claude.ai via the web, or using GitHub Copilot as a fancy autocomplete. It self-confidently makes changes to code across a repo, in a way that’s scarily easy to go along with.

I signed up for an OpenAI API key to use their o3 model with Aider. This involved some rather creepy identity confirmation, which I was not too happy about. o3 costs money but is not super expensive; I spent several hours coding with Aider and o3 last night and it cost me $0.46. It is also neat that you can swap models in or out with Aider, depending on your needs, or the changing technology, or your sense of whimsy.

Lastly, I have to say that the git integration is pretty cool. This is not usually the kind of thing that I like: my default stance is almost always “don’t touch the git repo!”, but Aider does it well. There is an /undo feature that is very useful.

So far my impression is that this is a very powerful, dangerous tool. I wonder if there are ways to use it that are safe and reasonable. We will see.

Posted in ai, aider | Comments closed
  • Subscribe to this blog via email

Skip to toolbar