Within a few days of my initial epiphany, I set out to build the first prototype. I call this my "minimum triable product". It was the first piece of usable product that someone could actually try out. It wasn't even "viable" so I couldn't even call it an MVP.
My minimum triable product was pretty simple: A series of classes in Ruby which scraped specific formats of status pages. I definitely wanted to scrape the Facebook API status page but when I listed out all the cloud services I depended on, I found most also had their own status pages already. And some of them used status page hosting providers such as StatusPage.io and Status.io, which would make scraping them easier. Every few minutes, I checked the status pages I cared about and if they changed, I send myself an email.
I ran my "MTP" from my own computer for a few days and then eventually pushed it to Heroku so it could run independently. To my delight, it worked remarkably well and although status page changes were not that frequent, some of them were incredibly useful to see in my inbox.
But some of them were actually not that useful at all. It was then that I realized, I didn't need notifications for all the cloud service services I used. Just the important ones such as Heroku and AWS. But the others were still nice to know about though, I thought that a web UI that aggregated the status of all my dependent services would be as useful as notifications. Whenever I had an outage or an issue, I could check my unified status dashboard and not waste time like I had during the Facebook API outage. I started to think I might have a marketable product here and decided I should build it and find out.