The thing about writing an app is that you don’t know how it’s going to be used. Your happy paths are not necessarily someone else’s happy paths.
My WeatherTab extension
I recently ported my WeatherTab extension, which I originally wrote for Chrome, to Firefox. Almost immediately, I got a three-star review and an issue on the project’s GitHub, both complaining of the same thing: it doesn’t work when you have geolocation turned off.
Of course a weather app isn’t going to work if it can’t determine where you are. But there are other ways of determining location: two that come to mind are 1) by IP, and 2) manually entering the city, state/province, country, zip code, etc. (Yahoo’s geodata API is pretty good with text searches, too.) So yeah, now that I think about it, it’s perfectly reasonable to expect a weather app to not require geolocation.
VivaldiFox and HSL
The browser Vivaldi has this feature that I really like: it can change the window color based on the main color of the website. It uses the theme-color meta tag, same as Chrome for Android. (If there is no meta tag, then it either pulls a color from the favicon or from the website itself.)
Since I first learned about this little feature, I included it in my WordPress theme Cover and its rewrite, Cover2. In the themes’ options, you can pick the color of the site header; this same color is used in the meta tag. Due to the nature of how the color picker works, I’m outputting the color in HSL, like this:
Since Firefox Quantum entered beta, I’ve been using it as my default browser. (I’ve been a long-time Chrome user, having jumped ship from Firefox when it started to get bloated. Now that Chrome itself is on the bloated side, I’ve returned once again.) I discovered this extension, called VivaldiFox, which replicates the Vivaldi’s theme-color functionality.
At least, it’s supposed to. It does, for the most part, but while VivaldiFox works with RGB and hexidecimal colors, apparently I’m the first person to use HSL, because I discovered that it doesn’t like that.
But both these examples, having happened in just the past week or so, can serve as good reminders. We know ourselves; we know the paths we’d take with our own apps. But we don’t know others, and we don’t know how someone else will use what we’ve written. But this is also why I love open source: if there is communication, it can foster collaboration and improvement.