You have just read a blog post written by Jason McIntosh.
Thank you kindly for your time and attention today.
Nearly three years ago I launched BumpySkies, my turbulence forecaster for airline flights over the continental US. Pride of my heart at the time, it sang with potential for growth, and whispered golden promises to me of commercial possibilities. Alas, other than a handful of bug fixes, I have put no further effort into it, and I have no plans to expand it beyond its current functionality.
Utterly static, it has taken on the role of my masterpiece: a clear and immediate demonstration of expertise in creative software engineering, as only I can express it… and no more than that. A useful enough purpose, and one I feel glad to have, of course, especially as I start to look around for new work. But I must admit some regret that it cannot grow beyond this, and feel compelled to examine the reasons why.
First of all, I cannot truly dogfood it. In one sense, yes, I did build BumpySkies for myself, a nervous flier with great anxiety about unexpected turbulence. And you can be sure that I do use BumpySkies when I fly! But that happens four times per year, perhaps. I simply don’t travel by air that often. In the thirty-four months since BumpySkies’ debut, I have boarded only twelve domestic flights. (I also rode four trans-Atlantic flights, which crossed out of BumpySkies’ American-airspace purview.)
More to the point, these opportunities to use BumpySkies happen weeks or months apart from one another, meaning that it precludes rapid iteration. The first couple of times I flew after launching the website, I excitedly wrote down notes for improvements even while strapped into my seat. Once on the ground, as I began to plan how I could encode these fixes, the insurmountable problem of actually testing them became clear.
When I work at my best, I keep many windows of input, output, and internal-state logging open: make a change, observe the effect, make another change, and so on, until everything lit up the way I wanted. Often, these cycles take minutes or even seconds each. Improving BumpySkies, on the other hand, would mean working with iterative cycles which might each take months to circle around. So, I would implement a trial improvement, and then… wait until my next Christmas flight to see if it actually did anything? I watched as the likelihood of this ever happening went soaring away, without me on board.
Finally, BumpySkies has political dependencies I cannot control. The program’s two major data sources are NOAA and the FAA. It gets the former through a resource I found because I asked some scientists nicely, and the latter through a federal data-sharing program, open to any citizen-run project willing to put the effort of application in.
Both of these run entirely on American public funds, and I can imagine either one vanishing suddenly, should the current short-sighed and thoroughly corrupt administration decide that it can kill it in order to score some political points, or redirect its funding towards some disgusting vanity project. Earlier this year the Trump administration demonstrated its willingness to suborn NOAA, overtly and outrageously, to support the president’s childish lies. I have no doubt that it would not pause to eliminate the programs that provide my data, if it meant even a momentary political advantage.
I built BumpySkies on quicksand, then, in the heart of a jungle I seldom visit. It is a folly, constructed in a frenzy over the course of a single year, and its inhospitable terrain resists any attempt to build upon it any further. Let it stand as a monument to my own ingenuity; let it serve my masterpiece, unchanging. I feel pride in its immediacy, like no other thing I’ve built, and in how it has run for years with so little need for maintenance. Let it coast on.
Sweat represents my next hope for an intensely personal project that might have a broader and more dynamic future. An ugly little command-line program, it lacks BumpySkies’ very visual, map-based immediacy, but it has lots of room to grow. As a program that I run almost every day, can iterate upon rapidly, and which operates free of any external politcal threat, it avoids the pitfalls that have doomed BumpySkies to stasis. I don’t know for sure that it will grow over the next three years, but at least I can afford to hope.
To share a response that links to this page from somewhere else on the web, paste its URL here.