Writing music scores on Hugo blog posts with ABCJS

Since I am on a roll with cleaning up my Hugo-based blog, adding alt text, and supporting math writing, I also had to experiment with adding support for musical scores. For the Sensing Sound and Music book, I used music21 in Python after struggling to set up LilyPond. Both LilyPond (professional engraving) and music21 (symbolic analysis and MIDI generation) are powerful and could be integrated into a blog, but they usually require a server-side toolchain or extra installation. However, with the help of CoPilot, I discovered ABCjs, a lightweight client‑side library that provides rendering, playback, and MIDI export, which work well for static sites. ...

January 2, 2026 · 2 min · 290 words · ARJ
Winter landscape, water, trees, snow

2026, a Year of Transition

Happy new year! As we move into 2026, I am currently undergoing a gradual shift in my academic life. I don’t have any new annual projects planned this year (like 365 Sound Actions or #StillStanding). This year is more about wrapping up old things and moving on with exciting new projects. I am more or less done with writing Still Standing, which summarizes 15 years of micromotion research. My AMBIENT project is also about to end, with sveral of my doctoral and postdoctoral fellows wrapping up their projects in the coming months. The plan is to write a book based on AMBIENT, too, summarizing my interest in indoor environments. However, book writing takes time, so it will probably take a few years before I have completed that project. ...

January 1, 2026 · 2 min · 362 words · ARJ

Adding math support to Hugo blog with KaTeX

I am continuing to clean my Hugo site. Going over old posts, I found one on explaining artificial neural networks that included a bunch of equations based on screenshots from my master’s thesis. Now, with the help of CoPilot, I have implemented proper equation support on my Hugo site. KaTeX to the rescue I am used to writing my academic texts using LaTeX, an advanced typesetting library where you write code and compile it to a PDF (or something else). One of the benefits of LaTeX is its advanced support for typing equations (and many other features). However, until recently, it wasn’t so easy to write equations in HTML. ...

January 1, 2026 · 2 min · 350 words · ARJ
Stones, water

Automating alt text generation for all blog images

Yesterday, I wrote about how I cleaned up a lot of old mess here on this blog. This made me realize that I have not paid attention to creating alt text for all my images, that is, descriptive text that describes the content of the image. That is an enormous job when you have several thousand images on a blog like this. So I decided to ask CoPilot for help. Getting AI help CoPilot first suggested creating alt text based on the image file names. That could have been a good idea if the filenames had been descriptive. However, they are not (in general), hence I asked for a solution that would actually analyse the content of the images. After a series of iterations, we (CoPilot and I) ended up with a Python script that does the job. ...

December 31, 2025 · 3 min · 535 words · ARJ

AI-based help with cleaning my blog

After running this blog for over two decades, it was time for some serious housekeeping. I converted from WordPress to Hugo some years ago, but never had time to do a proper cleanup. Then, the focus was on conversion and making it work. Now, with the help of GitHub Copilot, I finally got around to cleaning up the technical debt that had accumulated across several thousand posts. The Scale of the Challenge This blog currently contains more than 2000 English posts and 200 Norwegian posts, spanning from 2000 to 2025. In the beginning, I wrote HTML code manually, then moved on to server-side includes, then to WordPress, and now to Hugo. Throughout those years, I have changed themes and explored new web standards as they have evolved. That history shows in the inconsistencies that have built up in the content. ...

December 30, 2025 · 4 min · 650 words · ARJ

Audiovisual is confusing, use Audio–Video or Auditory–Visual instead

I have previously written about the differences between sound and audio and sound/light vs audio/video. In this short blog post, I problematize the concept “audiovisual”. Dictionary definitions The term “audiovisual” is ubiquitous. Unfortunately, for those of us working both on technology and psychology, it causes a lot of confusion. For example, consider the definition by Wikipedia: Audiovisual (AV) is electronic media possessing both a sound and a visual component, such as slide-tape presentations, films, television programs, corporate conferencing, church services, and live theater productions. ...

December 28, 2025 · 2 min · 286 words · ARJ

Stretchtext and LLMs

During a Christmas dinner, someone commented that many texts are too long these days and that it would be nice to have shorter versions available. One could think of large language models (LLMs) as a good solution for this. However, a better conceptual starting point may be the the concept of stretchtext, coined by Ted Nelson back in the 1960s. I wrote about application writing as stretchtext here on this blog back in 2011. Then, I used the example of having to write both a 5-page and a 15-page application for the ERC Starting Grant. Now, I am curious about how we could use the stretchtext concept to improve contemporary reading and learning. ...

December 27, 2025 · 5 min · 1018 words · ARJ

Reflections on writing a textbook with AI

This semester, I have written a book with AI. I should emphasize the with in the previous sentence, because this has been an experience of co-creation between various large language models (LLMs) and me. This post details my approach to co-writing Sensing Sound and Music and reflects on the process. The need for a book The reason for my AI-based writing experiment was the need for a textbook for the course MUS2640 – Sensing Sound and Music at the University of Oslo. This is an introductory course for the bachelor’s students in our musicology program who want to major in music psychology and/or music technology. These are two distinct directions that are usually taught separately. However, at UiO, we have a strong tradition of combining psychological and technological perspectives on and with music (in the fourMs Lab and at RITMO), so I have argued that we need a foundation course showing the connections between the two disciplines. ...

December 22, 2025 · 12 min · 2495 words · ARJ

Dancing and Musicking

It is somewhat embarrassing that I did not “discover” it before, but I only recently realized a striking parallel between the terms dancing and musicking. Music as a verb (“to music”) is only used by a small subset of music researchers, while “to dance” is universally accepted. Why? Musicking Christopher Small introduced the term musicking in the 1990s as a framework for understanding music as a social activity, using music as a verb (“to music”) rather than a noun (“music”). Though still not universal in musicology, the term has gained traction in music education and therapy, where participation in communal music practices is central. ...

December 21, 2025 · 3 min · 499 words · ARJ

AI-realistic Photos

One of my MUS2640 students asked which AI tool I had used to create the illustration on top of the textbook I have been developing for the course. The fact is, it isn’t AI-generated; it is a photo! I took the photo holding a 360-degree camera on my head while visiting the San Francisco Museum of Modern Art (SFMOMA) a couple of years ago. I was standing inside Olafur Eliasson’s One-way colour tunnel, located on a bridge inside the gallery. It is a fascinating three-dimensional light sculpture that no photo could capture. However, the 360-degree photo gives an impression of what it looks like: ...

December 19, 2025 · 2 min · 289 words · ARJ