26 May 2022

Redefining what Open Mic Finder is to me

I first published the open mic finder website way back in January 2010. Within a few years it was the top resource for information on open mic nights in the United Kingdom. A few months ago I was about to shut it down permanently, but then I changed my mind.

One thing that's always been true is the website has never managed to justify its existence financially. And that was my reasoning as prepared to turn it off.

There are 3 distinct stages to the site's lifespan. In the beginning I had a fierce competitive drive to prove that I could make 1 website that was better than all the scrappy amateur homepages whose lack of accuracy frustrated me personally when wanting useable information on open mic events in faraway cities. I had aspirations toward professional standards and I blew them all out the water.

It remained like this for a while, as my professional career matured, with every new industry shift, the open mic finder codebase was my guineapig for proving my skills. Around 2013 it was responsive web design. Then Twitter API integration. Google Maps API. I was happy to have free rein to implement whatever over-engineered feature I wanted and as a result the users were spoilt!

Around 2016, the site entered its second phase; it became all about money! A friend had seen the impressive stats and was convinced that it had potential to generate a few thousand pounds in revenue. I ended up travelling to London for a 1 day course in sponsorship. I surveyed my users. I produced a proposal and contacted breweries of all different sizes. I exhausted every avenue and ultimately after a year I concluded that although the site occupies the top spot within the market, it's just a very small market. Open Mic Nights are niche and not particularly sexy. Their reputation is as much associated with cringe as they are anarchy and what brand are going to take the risk of associating their name with an image like that?

The years after my failure to monetise was a dark period for Open Mic Finder. My enthusiasm had tanked and I was no longer comfortable ploughing hundreds of hours of labour into maintaining it. Many features sat half-built, dysfunctional ghosts at the feast that served as a painful reminder.

I began to resent my administrative duties and it had been a long time since I'd felt a personal interest in open mic nights. It seemed logical to turn the site off.

So, in December 2021 I was preparing to shut it down. Taking one final look at the whole system I felt great sadness at what I was about to do. My fierce rival had shut his competing site down some time before. I came to realise that when I pull the plug on this, nothing is going to replace it. The decade of irrational investment of labour by me had made a system way more sophisticated than any economic analysis said it deserved. Is there another flourishing web developer out there who possesses a competitive urge and a passion for open mic nights who will build this site's replacement? Probably not.

I flipped the question on it's head and asked, if I were to keep the site alive, what's the maximum amount of time that I would be comfortable regularly investing without begrudging it? And I came up with the answer that if I could do all administrative duties in less than a few minutes each day then I would actually quite enjoy having it around. I also added a caveat that I would need the ability to take holidays from the role of administrator.

So with this new irreverent attitude I made one final push to automate the hell out of it and put the site into its third stage, a sort of self-maintaining autopilot. I started by stripping out all half-finished features:

  • The image gallery that worked badly and looked even worse... deleted
  • The automatic calculation of future event dates and detection of clashes with public holidays, simplified and flipped so the onus is on the maintainers to specify exact dates.
  • The whole suite of pages and database tables to manage regional sponsorship... all gone.
  • 2 separate authenticated login systems that I never got round to merging, I finally bit the bullet and merged them properly.
  • Removed broken integration with Meetup API

I then used my now considerably better skills to add some things that would replace the most labour-intensive parts of being an administrator

  • Added inbox integration to detected email bounces and flag user's account as unreachable
  • Merging Vimeo and YouTube columns, allowing users to literally drop in whatever kind of link they want and adding smart detection to handle it properly, saving many headaches with users putting from stuff in columns.
  • Adding daily script to remove ignored outdated events and inform users their event had been unpublished.
  • I added a new table called "Admin windows" which were public promises of when I would process data, this allowed me to take a break without leaving the users confused and uninformed.
  • Automatic live checks for https version of URLS when users pasted a link in.
  • Added ability for users to delete their account.
  • Upgraded to server to run PHP8

This final push of effort felt very cathartic! Swinging my axe and chopping out dead wood was very satisfying, I had let go of this sense of responsibility to build the type of features that aimed to do the work for the users and instead I was shifting all the responsibility onto them and if they ignored it, their data got culled. It was harsh but much fairer, fairer on me.

It took a few weeks for the first batch of reminder tokens to expire causing abandoned events to be automatically removed but once it had, I was once again proud of the site. I felt proud that there was now zero bits of information that hadn't been confirmed by a human in the last year. The site had severely reduced in quantity but increased in quality. All the automation had reliably reduced my daily administration duties to just 3 minutes of reviewing side-by-side comparison of text changes for approval and I was now happy.

Open Mic Finder is still a financial failure, but that no longer mattered because that's not the role it is judged by. Every project that I have contributed to in my career is either no longer online or hidden behind an auth-wall, apart from this one. I have restored it's role as a shining example in my portfolio of clean code techniques, solid functionality in the wild, and a proven userbase who trust it. And to myself and the handful of future colleagues who will need to understand what I can do, it is a very valuable asset.