News

The latest about what I've been working on

Making SPARQL queries to Wikidata using Python
Making SPARQL queries to Wikidata using Python

I recently solved several annoying problems that I’d been having when using SPARQL queries to acquire data from Wikidata. My success inspired me to write a comprehensive Python class that will reliably carry out every kind of SPARQL Query and Update, with defaults to easily make SELECT queries to Wikidata.

Birding in Puerto Rico
Birding in Puerto Rico

After recently making a trip to Puerto Rico that was primarily focused on bird watching, I decided to write a blog post to pass on some of what we learned. Much of the information that we got from books or the Internet was outdated or incorrect, so hopefully this post will help others to have an easier time finding good places to bird there.

QT Py RP2040 workshop
QT Py RP2040 workshop

I’m really excited to be working with Vanderbilt Science and Engineering librarian Francisco Juarez to develop a workshop series to teach participants to program the QT Py RP2040 microcontroller using CircuitPython.

VanderBot 1.9 supports somevalue
VanderBot 1.9 supports somevalue

One of the issues I discussed at my recent talk in the Art in Context: Identity, Ethics, and Insight symposium was the problem of representing anonymous artists in knowledge graphs. The solution that the Wikidata community has accepted is to associate a P170 (creator) claim with a somevalue snak having a P3831 (object has role) qualifier value of Q4233718 (anonymous). In RDF, this corresponds to a blank node and Wikidata claims using somevalue are represented by blank nodes in the Query Service.

Optimizing Wordle guesses
Optimizing Wordle guesses

I’ve recently started playing the viral word game “Wordle”. After numerous discussions among family members about guessing strategy, I decided to spend some time over the holiday weekend writing a Python script to play with different guessing algorithms and strategies.

Latest Posts

Favorite winners of Nebula Award for Best Novel
Favorite winners of Nebula Award for Best Novel

In March 2025, I finished reading all 60 of the winners of the the Nebula Award for Best Science Fiction or Fantasy novel. Many of my favorites were also winners of the Hugo Award, so I wrote a follow-up blog post to my earlier post about my favorite Hugo winners, focusing on favorites that weren’t already discussed in the Hugo post.

Favorite winners of Hugo Award for Best Novel
Favorite winners of Hugo Award for Best Novel

In May 2023, I finished reading all 71 of the winners of the the Hugo Award for Best Science Fiction or Fantasy novel. There were some fantastic books on that list and some real duds.

Humboldt Extension for Ecological Inventories Published
Humboldt Extension for Ecological Inventories Published

The Humboldt Extension for Ecological Inventories is a new metadata vocabulary that extends the Darwin Core Standard to make it possible to describe the inventories and sampling events that are used to collect organism occurrence data. This is the largest extension to Darwin Core since the original vocabulary was ratified in 2009 and it represents over three years of work by the Humboldt Extension Task Group. This group of international experts met weekly over that time period to develop the vocabulary, carry out implementation testing, and publish the vocabulary and associated documentation.