Today we rely on very few sources for discovering the information we want and need, mostly having it fed to us by Google and Facebook. I have long been fascinated by how to solve this, and have currently come to the conclusion that part of the blame lands on longstanding browser UI design.
If the browser asks users to select a single search engine or a single homepage (or use the default), people will come to use that webservice for everything. And those services will try to address every use case rather than shine at particular ones.
To explore this I have created my own (WebKitGTK-based) web browser “Odysseus” and have published it to the elementary AppCenter (though I will soon be deploying to other distros as well). I very comfortably use it as my primary browser, and I’m aware of others happily using it as well. But let me describe why I find it’s features so valuable to illustrate my thinking:
Top Sites
I’m worried about people coming to rely on their homepage for most of their discovery, so I don’t want to have a single one. Google Chrome’s (or is it Opera’s) concept of “top sites” provides one way for multiple sites to share that prime realestate in the form of links.
Though at the request of others I plan to try another approach as well where people can set multiple homepages for the browser to choose at random for each new tab.
Web Feeds
I really don’t like the alternatives to this early Web technology. I don’t want people to waste their time reloading specific websites, and nor do I want that to be solved by having all updates routed through a centralized service. That would just defeat any decentralization the Web has left!
Webfeeds allow a client application to load updates from all registered websites and merge them clientside into a single list, fully under the users control. Getting away from the AI-curated timelines of Facebook, et al. And they are useful to web developers to split and combine these datastreams however they want.
App Recommendations
Like other browsers Odysseus will open non-HTML and -HTTP links in other apps already installed on your computer, and it sends webfeeds to native apps as well for subscription. This is vital because without that central servers delivering code, native apps have more freedom to be peer-to-peer. And browsers should have the freedom to focus on rich text rather than being a virtual machine for networked apps.
To help the adoption of those apps Odysseus takes it one step further than other browsers: if you do not have a compatible app installed it will recommend some to you from your package repository. This currently works on any AppStream compatible distro.
To Be Done
Personalized Suggestions
We currently go to sites like YouTube when you want to idle away our time, but those sites do not necessarily have our best interests at heart when building their AIs. At the very least they want to keep us on their site. We need something more decentralized we can trust.
These technologies ask the question “what pages are related to those I’ve visited?” I plan to answer this with “What did they link to?”
That is I plan to echo back the unvisited links you encounter online as personalized recommendations. This sort of technique may also be useful for exploring problem areas, more professionally.
Bookmarks & Bookmark Sharing
The common wisdom I see is that people don’t use bookmark managers and instead find it easier to search for it again from Google. From a privacy and network efficiency perspective this is a big usability fail. For this reason I’m planning on basing my bookmarking system exclusively on tagging, and to allow webpages to offer some default tags to organize themselves under. Ideally making the process a single click and review to bookmark, and a single addressbar search to retrieve.
Furthermore since your friends and family are your best sources of links, and to aid people in helping others to discover the pages they’ve found useful/enjoyable I plan provide tools to share subsets of your bookmarks.
Combined Search
I mentioned above that I think it’s a huge problem that browsers make it significantly easier to use the “default search engine” than any others. To address this I plan to make it trivial to register multiple search engines and search accross all of them simultaneously, possibly filtered by some tags.
At least in the geospatial profession (and Searx) there’s good support for this in the form of the OpenSearch standard, but I will need fallback logic to work with the dominant search engines of today.
I’m keen to hear what all of you are working on, and possibly how my efforts can help with that.