New Project: the Idea

I've wanted a personal software development project for a while. Some reasons why are:

  • to scratch the "just for me, just for fun” itch
  • to have a workbench for learning new libraries, APIs, etc
  • to serve as an active resume of my capabilities
  • to have something fun to share with people, a “Hey, look what I made!” toy

This project should have several components: a web service for data, a web app for admin functions, and a mobile client (iPad, iPhone, or Apple Watch) for user actions. That broad description applies to many modern software systems, so it doesn’t help narrow down what this project should be about. That’s been the challenging part - finding a compelling reason to do this work.

I finally cooked up an idea that feels novel enough to be interesting, small enough in scope to be achievable (for the MVP!), and extensible enough to provide room to nurture and grow it.

But first, a little backstory: for years, my friend/co-worker and I have tossed around ideas for different podcasts we would do were we more motivated to do a podcast. Given that I will likely never create it, I still want to listen to a podcast called A/B Test, hosted by two developers, each fluent in a different language (for example, Tim prefers C# while Patrick prefers Python). A typical episode would consist of them tackling the same programming task in their respective language and discussing the merits of each. Maybe it’s a bit of good-natured, adversarial pair programming? With the right chemistry between the hosts, I think this would be a fun one. If you run with this concept and are wildly successful - you’re welcome.

Back to the idea - this thought of comparing one thing to another bloomed into the question of “what if the screen presented the user a simple choice between two things?” That user is just me initially, but a simple web page asking my preference between this or that, accessible on a phone/tablet/laptop, with some stats/graphs available to an “admin” (again, me), all talking to a web service that manages data - this checks all the boxes for me to get started on this.

Eventually, these preference questions can come from different categories, and the category choices can come from various internet data sources with APIs. After gathering enough data, some neat visualizations might be possible. But first, I’ll create just enough to manifest the essential idea; the embellishments will come later. Do I prefer the number 3 to 7? Or the color orange to blue? Let’s find out!

Of course, step #1 was to get a domain name 😀. I immediately thought of doyouprefer.com, but I preferred not to spend $1800 for it. However, at only $13, whichonedoyouprefer.com is now mine, and I will fill it with some sweet preference-probing goodness. (Thanks, Hover.)