Alert Email External Link Info Letterboxd 0.5/5 stars 1/5 stars 1.5/5 stars 2/5 stars 2.5/5 stars 3/5 stars 3.5/5 stars 4/5 stars 4.5/5 stars 5/5 stars RSS Source Topic Twitter
I’m redesigning this site in public! Follow the process step by step at

Introducing Tinnitus Tracker

My live music diary is now a website.

In the spring of 2015,, a social site that tracks users’ music listening habits, gave subscribers a sneak peek at its upcoming redesign. The first thing I noticed was that the Events section, which I had been using for a decade to catalog the shows I went to, was gone. It was reinstated when the redesign was publicly unveiled a few months later, but the temporary evaporation of my data was a good reminder: I couldn’t rely on an ephemeral internet service to give that data a reliable home. So I swept it all into a spreadsheet and started sketching out ideas for my own site.

Evolution of the concept

The initial concept was fairly simple: the site would be a database of my live music history, a list of shows filterable by artist, venue, city, and state. Ideally it would be a static site generated directly from my spreadsheet, so I could keep all the content nice and tidy in one place.

Alas, that ideal was not to be. I couldn’t find any software that could do what I wanted out of the box, I lacked the skills to build it myself, and I wasn’t interested in hiring someone else to do it. Instead, I gave up on my dreams of efficiency and decided to jam the whole thing through Jekyll, the same static site generator I use for this site. (For curious Jekyll users: I’m using tags for artists, categories for venues, and collections for city, state, and genre.)

Using Jekyll required my orderly spreadsheet to be broken into hundreds of tiny files, one for each show, a system intended not to build a filterable database, but a blog. And that got me thinking: Could this be a blog? While testing an early prototype, some friends told me they expected to be able to view individual shows with notes about my experiences. I dismissed the idea for lack of content, but thinking about it again, I realized I do have content. I have photos, blog posts, tweets, videos. Not for every show, but for enough to make them worth including. And with that, the site grew from a database into a diary. I eventually decided to call it Tinnitus Tracker.

Other ideas crept in along the way. Audio embeds on artist pages make the site about ten times more useful, and the brilliant Josh Stewart cooked up a script for me to retrieve all the necessary Spotify artist IDs. Browsing by genre (even if it is an inevitably imperfect taxonomy) makes it a little easier for people to find shows of interest to them. And the RSS feed allows past and future show buddies to keep an eye on what’s coming up.

The catalog

Back in the days, once I decided I wanted to create a catalog of every show I’ve attended, my own records got me pretty far. Ticket stubs, intermittent yearly lists of shows kept in text files, blog posts, old Yahoo calendars. From there, I was able to fill in more holes with several different online search strategies: the Wayback Machine, punk flyer archives,, garden-variety Googling. And when the internet ran dry, I spent a few afternoons in a few libraries, poring over microfilm.

Categorically, events come in many shapes and sizes, and it was surprisingly tricky to decide what qualifies as a show in the context of this site. I ultimately decided that any show in which a full set of music was performed qualified, even if it wasn’t primarily a music event. A band opening for a standup comedian is in; a comedian who plays a song or two is out. Other spoken-word events qualify only if the speaker is known primarily as a musician.

As for comprehensiveness, my best guess is that the site is missing between one and two dozen shows, and plenty of the shows on the site have incomplete artist lineups. There are currently nine shows awaiting inclusion for which I have insufficient data (missing a date, venue name, etc.), and I assume there are others which have (hopefully temporarily) escaped my memory. I also have yet to solve the problem of venues that have changed their name.

Okay, but who is this for?

I made Tinnitus Tracker simply because I wanted it to exist. I’m not sure how much of an audience there is for it. We’ll see! If other people like it, I hope to meet some kindred spirits. If not, I’m satisfied browsing it on my own, and I hope it will get me back in the habit of writing about music.

More to come

There’s a handful of features I still hope to implement at some point:

  • Highlights: I’m using icons on show listings to indicate which shows have notes, photos, or videos, but some of the more interesting highlights aren’t all that discoverable (e.g. the time I met Metallica).
  • Maps: A visual overview of cities and states (and maybe venues).
  • Search/sort: I’ve already tried an implementation of List.js to make it easier to find specific things in dense lists like the artist and venue landing pages, but I still have some UX issues to smooth out.

Visit Tinnitus Tracker and let me know if you have other ideas!

Beyond being a fun exploration of my life in live music, making Tinnitus Tracker was also a good opportunity to play with design ideas, hone my web development chops, and tinker with emerging technologies. I’ll be writing more about those things in a couple of upcoming posts about layout and color. Stay tuned!


My thanks to the folks who provided helpful feedback during the making of Tinnitus Tracker: Megan Born, Leah Chamberlain, Frank Chimero, Jodi Leo, Ethan Marcotte, Jen Mussari, Peter Richardson, Jason Santa Maria, Nick Sherman, Josh Stewart, Rumsey Taylor, and David Yee.