It’s snowing outside my window as I type this, though we haven’t yet gotten a really big storm this year in Detroit. I’ve noticed a definite shift in energy and focus this month; projects both large and small seem to have their own momentum. I spent the week engrossed in more website work, including re-designing and coding this newsletter template – which you might by now have noticed!
If you’ve never had to code up an email template from scratch, let me tell you: it’s like building normal websites with an arm tied behind your back. Every email client has its own dialect; even the web version of gmail handles things differently from their iPhone app, which handles things differently from their Android one. The introduction of “dark mode” only adds another layer of complexity and inconsistency: some services automatically invert all the colors, others swap out only the darkest or lightest – or only the pure white backgrounds. Building for all of these scenarios can be like trying to build a car to traverse a road marked with potholes, but also an alley the width of a single person, and also a highway without on-ramps that operates at twice the earth’s gravity. I’m exaggerating, but not by much.
Maybe all this was what reminded me of an old project of mine. To set the scene: it was December of 2008, a similarly had-its-own-energy phase in my life, and I was in the habit of sticking post-its on my monitor bezel with to-do lists or motivational quotes. Then it occurred to me that I could put the note directly on the screen – as in, a site I could set as the homepage for my browser, that I would see every time I went on the internet. So I hacked together StickyScreen, which worked without any servers or accounts or passwords. It just stored the note in a browser cookie that updated whenever you typed something.
Someone emailed me a few months ago to say that they were still using StickyScreen after all these years, and out of curiosity I popped in some lightweight stats this weekend to see if there were any others. It turned out there are – at least a few dozen. Of course, in order to put stats, I had to look at the source code, and the source code was truly cringeworthy. It was a kludge of copy-and-pasted snippets that I put in not because I fully understood them, but because they did what I wanted them to do. There were also several constraints foisted on the site by the capabilities at the time of the languages it was written in (image saying that about a novel!)