Making the Web Readable

Glasses with phone and book

Wow, October was a busy month. It started with a release that took reading items in a new browser-based direction. Before this change I personally used Den mostly with my system web browser, adding exceptions for feeds with full content. I always felt that a single app, no-switching, experience would be better though. The issues arose when I actually started using the integrated browser. See, an ad blocker is the absolute first thing I install on any new device. I was oblivious to how hideous the web actually is because I block out most ugliness before even getting a chance to notice it. The shock of seeing how bad things were triggered a miniature existential crisis, "Why would anyone use RSS when the websites themselves are horrible! The internet is hopeless! Why am I building this? What's my purpose?!" After some deep breaths I got back into the code and built out three new features for combatting ads and other annoyances.


Den now has a flexible system for using filter lists with the built-in browser. I've included some handy presets for the top offerings from https://easylist.to, but you may add any filter list you like. https://filterlists.com is a great site for browsing the dizzying number of options out there. One limitation of note is that not all rules in common Ad Block type lists are compatible with Apple's content filtering API. There's usually a small fraction of rules that cannot be converted. The number of successfully converted rules and number of errors is visible in blocklist settings.

Recognizing that not all sites are over-the-top awful with ad placement, blocklists may be turned on or off feed-by-feed. If a site is responsible with ads then turning off blocking could be a good way to support the site and make the internet a little bit better. If sites that are conscious about reader attention are rewarded then maybe others will get the message.

Reader Mode

The new reader mode allows you to view articles without clutter. While not perfect, it does its best to extract the important content from pages. I evaluated several libraries for powering the reader mode and finally landed on Postlight Parser. Postlight has been acquired and I'm not 100% confident in the library's future, but it provides the best results as of writing. The project hasn't been archived, so I'm crossing my fingers it gets updates and stays relevant. I created the functionality behind reader mode to be modular so that another library could be slotted in if Postlight Parser does eventually go by the wayside. Mozilla Readability is another option that appears to have more stable support. Would anyone be interested in being able to choose the parser used for reading mode?

JavaScript Control

Ah JavaScript, thou givith interactivity yet taketh away thy sanity. Most distractions on webpages rely on JavaScript so Den now includes an option for turning it off. Browsing without it is faster, safer, and often more enjoyable, but not all websites work without scripts.

What's Next

I haven't done much of any marketing or promotion for Den. The first reason is that actual development takes up a lot of time and mind space. The second was a false belief that if I build it then users will just magically appear. I'm feeling good about Den as a product offering now and think it deserves some more public attention. So the plan for next one or two months is to focus on the website, app store page, sending out promo codes, etc. If you have ideas for how to get the word out I'd love to hear them.