blog

RSS Gets the Last Laugh

by

Software screen capture
I have a confession: I’m a recovering webcomics addict. I used to follow up to fifty at a time, and I have a couple hundred bookmarked, which is not to speak of those disqualified. As you might imagine, this takes up a lot of time.
I finally managed to suppress this problem, but during the struggle I tried using RSS as a sort of “crutch of denial,” though it took a while to get to that point. For years I saw that RSS was available on many sites, but I didn’t understand what it was good for, since all it really does is relist a site’s content in a summarized form. I didn’t get it, especially since visiting the sites directly was usually a better experience. Also, there used to be some forking of the RSS format, which doesn’t help anything. But eventually I became curious enough to find that RSS could reduce the time it took to keep up with fifty webcomics since it meant I didn’t need to even visit a site unless RSS told me there was something new there.
However, using RSS ended up backfiring in a way. If the purpose of RSS is to notify me when there’s new content, then I could also rely on it to act as a sort of “bookmark” to keep my place for me. This made it very easy for me to displace my “obligation” to webcomics in favor of more substancial obligations. “I can read webcomics later because RSS shows me exactly where I left off.” But the unread posts started to pile up, the numbers reaching into thousands, and this guilty burden made it easy to decide that it all wasn’t worth it. RSS became essentially a folly to me. I stopped using it. I won, RSS lost.
Fast-forward to present day: I collect many links to sites I want to read later, much like anyone does, I suspect. Some of these sites I collect in an attempt to find a blog or source of news about the game industry. But it’s tough for me to find a site that’s really interesting since most “gamer” websites are written from a fanboy perspective, and even on developer sites there’s an excess of pretense I just don’t need to hear. Some individuals are worth following, but there are too many sites out there to keep up with. It’s just plain difficult to find a source of news that makes me feel like I’m really keeping up with things from a developers’ perspective.
So I’m not sure exactly what started it, but I recently got the idea to use RSS to collect the blog feeds of many developers and put them all together on one page. Maybe I just noticed that some of my friends’ blogs were rather informative. Or maybe I just miss working in the university commons where you could simply walk around, see other people working on stuff, and talk to them about it on the spot. Just seeing what other people were working on, whether I knew them or not, could be very inspirational. And combining all of those feeds into one would put all of these individual efforts into an interesting chronological sequence, as well as make an obvious single place for me to go.
So after thinking about it for a few days, I put it all together over a weekend. I reused some code that spawned libcurl processes from one of my spidering projects. I used some readily available XML library to “deserialize” all the feeds. I think I actually spent less time coding than collecting eligible feed URLs. There are a bunch of little quirks I need to fix, but getting this thing operational was notably painless.
The resulting combination of 75 blogs on roughly the same topic was far more interesting than I predicted. Especially when many of the feeds included images, which is to say screenshots in this case. I had to clamp the date range down to a few months because that first page load threatened to crash my machine.
My conclusion is that RSS is useful after all because it succeeds at being a standard despite many people’s attempts to foul up that standard. RSS is XML, and very likely to be well-formed, so it’s easy to parse. Not like HTML, that is. The RSS standard at W3C is (slightly outdated, but) very simple, and they provide a nice validator. An RSS feed can be generated with only one page of code. RSS is far more broadly available nowadays than it used to be; I found only two or three blogs that I couldn’t incorporate—because they were coded by hand. Everyone’s feed is a little different, but they all follow the same general expectations. Some feeds truncate the posts to entice the audience to visit the author’s website, yet some will include pages’ worth of images. Some feeds are limited to 5 posts in the last week, yet some include hundreds of posts spanning years of writing. Unfortunately, most bloggers fail to categorize their posts effectively, but the categories are often available for occasional usefulness.
I happened to not become dependant upon the doomed Google Reader because it mysteriously failed to handle a Google Group, of all things. But for those feeling betrayed right now, I hope to report heartening news: RSS is prolific and easy to utilize from a programming standpoint. If I can make my own aggregator in a couple days without even trying, then someone is likely to build something in short order to replace Google Reader. And someone should, now. This is yet another potential business opportunity I’m “giving away” to the right person, hah. (No, really.)

• • •

Don’t ask me which webcomics are worth reading. My fifty recommendations will spell your doom just as well. Also, the part where I recovered from my addiction was a lie. The real, real reason I stopped reading webcomics is because Onstad retired.

+ more

Accurate Timing

Accurate Timing

In many tasks we need to do something at given intervals of time. The most obvious ways may not give you the best results. Time? Meh. The most basic tasks that don't have what you might call CPU-scale time requirements can be handled with the usual language and...

read more