Rebuilding hasworn

Sunday 22 August, 2021 at 10.28am

  • tagged
  • This is the first in a series of articles about hasworn — the site I run to catalogue which tshirt I wear on any given day. The project is open-source and published on Github, and my wearings can be found at

    In the beginning…

    On the 31st of May, 2011 I registered a domain, with the idea of using it to track things I had worn. Specifically, my tshirt collection.

    On the 3rd of September, 2012 I tracked my first tshirt. I did this by posting an image of it to Instagram. Over the next couple of years I posted more tshirt images as I wore them. As any individual tshirt came around again, I would sometimes post to it to Twitter, including the link to the original Instagram post.

    On the 16th of July, 2015, I started building a django website to track tshirt wearings, but only four days later I got bogged down in trying to support logging into it from twitter, and let that code lapse.

    On the 9th of May, 2018, seven years after registering the domain, I started a new django project, and focused on just enough database to log wearings. I posted a link to my log publicly the next evening.

    I did some more work on it over the new few weeks. Later, I started adding the code to support images in the app (rather than hard-coded image locations) I broke something, and managed to git rebase myself into a mess. I stopped working on the app, but continued adding wearing information into the database.

    And now… v2, August 2021

    Over the past month, I've been rebuilding it from scratch, this time trying to lay a solid foundation for being able to work on it piecemeal. As I'm no longer unemployed, for any of my side projects need to see further development they need to be in a position where I can do small things in the odd bits of time I have, rather than expecting to power through them in my time off.

    It's in a position where I can develop it locally, commit my changes and push them to Github, and the production site will be automatically redeployed. This was half of my previous problem stalling work on hasworn; I had a mess of half-deployed code and too many manual steps.

    Now it's in quite a good state, with a few caveats:

    If you're someone who already meticulously notes the tshirts you wear on a daily basis, or want to become someone who does that, and don't mind doing it in public, let me know.