I had this idea in mind for a very long time and it is in my opinion a killer feature for diaspora*, even if it’s not something breaking new.
The problem we have to deal with is the relevance of the content which is displayed to the user. Most of the posts in my global stream don’t interest me. Aspects is cool, but people talk about many different subject so we can’t rely on that. Tags are nice. Tags are the answer to this problem. But tags can be spammed. Tags are sometime used to talk about an opposed topic.
Many use cases can be extracted from this observation. The solution to all? Queries / advanced search.
As a user, I should be able to create an advanced search (query) to focus exactly to the content I want.
The query is a boolean expression. The entity could be users and tags, eventually aspects. The query could look like (@fla && #diaspora) || (@goob && !#linux)
.
This query would return the posts written by Fla and containing the hashtag #diaspora and the posts written by goob and not containing #linux. This defines a new custom “stream”.
The user should then be able to pin the query in the left nav bar as an interesting stream, quickly available.
Of course, it would be even better if we can manage other type of data than user and tags, for example, aspects, or even already existing streams such as “every public posts”, “mentions” or “my activity”.
I don’t feel like we should add a start / end date though. This is done by scrolling the stream. To be able to jump to a date in the stream would be an awesome feature but it should be done in the stream as a navigation feature, not when the query is created.