Categorisation of feeds/users - aka. "Lists" #937

Open
opened 7 months ago by ullarah · 14 comments
Owner

This is an open discussion!

The idea popped into my head, and I'm sure this has been spoken of before..., of marking different users/feeds into different timeline sections.

Everything stays the same. A new button (not sure what it'd be called) on the nav bar will show you these different categories.

You still have the "show everything" timeline. But by clicking the different categories the timeline will only show what's in there.

How do you add feeds/users to these categories? Glad you asked. The new "page" showing these categories would have an Add section. Allowing you to create new categories and adding feeds/users to them.

You could even add the same feeds/users to a new category.

I'll have to draw up a napkin UI/UX to show what I mean but I'm hoping that people understand my rambling thoughts!

This is an open discussion! The idea popped into my head, and I'm sure this has been spoken of before..., of marking different users/feeds into different timeline sections. Everything stays the same. A new button (not sure what it'd be called) on the nav bar will show you these different categories. You still have the "show everything" timeline. But by clicking the different categories the timeline will only show what's in there. How do you add feeds/users to these categories? Glad you asked. The new "page" showing these categories would have an Add section. Allowing you to create new categories and adding feeds/users to them. You could even add the same feeds/users to a new category. I'll have to draw up a napkin UI/UX to show what I mean but I'm hoping that people understand my rambling thoughts!
ullarah added this to the 0.15 milestone 7 months ago
ullarah added the
area/ui
discussion
enhancement
labels 7 months ago
ullarah changed title from Categorisation of feeds to Categorisation of feeds/users 7 months ago
Owner

@ullarah This is teh basic idea behind Lists right? Do we have an item of this on the backlog already, or is this it? 🤔

@ullarah This is teh basic idea behind Lists right? Do we have an item of this on the backlog already, or is this it? 🤔
Poster
Owner

@ullarah This is teh basic idea behind Lists right? Do we have an item of this on the backlog already, or is this it? 🤔

Oh probably! 😆 There may not have been an issue, or it has eluded me.

> @ullarah This is teh basic idea behind Lists right? Do we have an item of this on the backlog already, or is this it? 🤔 Oh probably! 😆 There may not have been an issue, or it has eluded me.
Owner

@ullarah Had a quick look, looks like we hadn't filed an issue for this before 😅 Maybe I intended to and forgot 😂

But yeah we have talked about this a lot, and I think it can be done with essentilaly a simple List-type data structure. Perhaps we can talk about this on our next weekly video call coming up this Sat?

@ullarah Had a quick look, looks like we hadn't filed an issue for this before 😅 Maybe I intended to and forgot 😂 But yeah we have talked about this a lot, and I _think_ it can be done with essentilaly a simple List-type data structure. Perhaps we can talk about this on our next weekly video call coming up this Sat?

Goal

To be able to select diffrent view/filterings of feeds by some kind of catagories, depending on what you are looking for/in the mood for

Data-model

  • Should be able to implemtne with basic plaintext files and simple scriting like bash or pyhon, so it's easy to build into other clients than just yarn.social

Idea for adding tags to excisting list of following

Adding #tags to end of line for excisting follow-list format

# follow = prologic https://twtxt.net/user/prologic/twtxt.txt #yarnDev
# follow = sorenpeter http://darch.dk/twtxt.txt #creativeCoding #visuals

OR

Adding +tag to nickname similar to how you can do it with email-adresses

# follow = prologic+yarnDev https://twtxt.net/user/prologic/twtxt.txt
# follow = sorenpeter+creativeCoding+visuals http://darch.dk/twtxt.txt

With these data-models you can easily extract the lists using unix-tools like ´grep´

  1. Detect all tags
  2. Make list of each tag (grep #tag >> list-tag.txt)

Unknows:

  • How does excisting clients parse these lists within the twtxt.txt files?
  • Does the regex not excpect anything beyound the URL?
  • How do they handle in-line commentes (#tag) compared to start of line comments (# follow =)

UI ideas

How should it look at feel to the regular enduser of a yarn.social

UI for interacting with list

Phil's idea with a List-buttom in the topnav could work, but it could also be a list of list.
The individuals links to each list will show how long ago there have been any new post within it and a

UI for editing/taggin your feeds

I imaguinge someting like a spreadsheet with these collums, where you can

  • edit each cell by just clicking in it and it will be exposed as input
  • sort on all the collums, so you for example can see what feeds are active or dead/dorment
  • selcect mutiple rows in the first collum and mass-tag or mass-delete feeds
Nick URL Tags Time ago
[ ] prologic https://twtxt.net/user/prologic/twtxt.txt yarnDev 1 hour ago
[x] sorenpeter http://darch.dk/twtxt.txt creativeCoding, visuals 1 week ago
[ ] darch https://neotxt.dk/user/darch/twtxt.txt 4 days ago

Public vs. Private

If these model is used then the lists will be publically exposed, so if we want to do private lists, then the easy way would be to just not epose your following list. This is allready a feature, but if we want more ganuality, then we need to come up with something else.

Backend

How to make this datamodel and UI most effciant on the backend I have no idea, but I'm sure you can work this out.
My vision it to have something that is still as simple as the original twtxt.txt spec and in line it's ethos/spirit

## Goal To be able to select diffrent view/filterings of feeds by some kind of catagories, depending on what you are looking for/in the mood for ## Data-model - Should be able to implemtne with basic plaintext files and simple scriting like bash or pyhon, so it's easy to build into other clients than just yarn.social ### Idea for adding tags to excisting list of following Adding `#tags` to end of line for excisting follow-list format ``` # follow = prologic https://twtxt.net/user/prologic/twtxt.txt #yarnDev # follow = sorenpeter http://darch.dk/twtxt.txt #creativeCoding #visuals ``` OR Adding `+tag` to nickname similar to how you can do it with email-adresses ``` # follow = prologic+yarnDev https://twtxt.net/user/prologic/twtxt.txt # follow = sorenpeter+creativeCoding+visuals http://darch.dk/twtxt.txt ``` With these data-models you can easily extract the lists using unix-tools like ´grep´ 1. Detect all tags 2. Make list of each tag (grep #tag >> list-tag.txt) __Unknows:__ - How does excisting clients parse these lists within the twtxt.txt files? - Does the regex not excpect anything beyound the URL? - How do they handle in-line commentes (`#tag`) compared to start of line comments (`# follow =`) ## UI ideas How should it look at feel to the regular enduser of a yarn.social ### UI for interacting with list Phil's idea with a List-buttom in the topnav could work, but it could also be a list of list. The individuals links to each list will show how long ago there have been any new post within it and a ### UI for editing/taggin your feeds I imaguinge someting like a spreadsheet with these collums, where you can - edit each cell by just clicking in it and it will be exposed as input - sort on all the collums, so you for example can see what feeds are active or dead/dorment - selcect mutiple rows in the first collum and mass-tag or mass-delete feeds | | Nick | URL | Tags | Time ago | |---|------------|-------------------------------------------|-------------------------|------------| |[ ]| prologic | https://twtxt.net/user/prologic/twtxt.txt | yarnDev | 1 hour ago | |[x]| sorenpeter | http://darch.dk/twtxt.txt | creativeCoding, visuals | 1 week ago | |[ ]| darch | https://neotxt.dk/user/darch/twtxt.txt | | 4 days ago | ## Public vs. Private If these model is used then the lists will be publically exposed, so if we want to do private lists, then the easy way would be to just not epose your following list. This is allready a feature, but if we want more ganuality, then we need to come up with something else. ## Backend How to make this datamodel and UI most effciant on the backend I have no idea, but I'm sure you can work this out. My vision it to have something that is still as simple as the original twtxt.txt spec and in line it's ethos/spirit
Poster
Owner
  • Should be able to implemtne with basic plaintext files and simple scriting like bash or pyhon, so it's easy to build into other clients than just yarn.social

Yes definitely!

Idea for adding tags to excisting list of following

Adding #tags to end of line for excisting follow-list format

# follow = prologic https://twtxt.net/user/prologic/twtxt.txt #yarnDev
# follow = sorenpeter http://darch.dk/twtxt.txt #creativeCoding #visuals

I can see this one being preferred as it's visually easier to see on a text file. Perhaps instead of using # as the symbol for list(s) we use % as to not potentially confuse twtxt parsing?

I imaguinge someting like a spreadsheet with these collums, where you can

  • edit each cell by just clicking in it and it will be exposed as input
  • sort on all the collums, so you for example can see what feeds are active or dead/dorment
  • selcect mutiple rows in the first collum and mass-tag or mass-delete feeds

We will start of using a table-like view for this at the beginning but who knows what it will evolve into!

Public vs. Private

If these model is used then the lists will be publically exposed, so if we want to do private lists, then the easy way would be to just not epose your following list. This is allready a feature, but if we want more ganuality, then we need to come up with something else.

I think this will be a matter of:

  • Public: Storing the list in the twtxt file
  • Private: Storing the list in the user profile on the pod instance

My vision it to have something that is still as simple as the original twtxt.txt spec and in line it's ethos/spirit

Absolutely fantastic write-up! Thank you for submitting this super detailed post! 😃

> - Should be able to implemtne with basic plaintext files and simple scriting like bash or pyhon, so it's easy to build into other clients than just yarn.social Yes definitely! > > ### Idea for adding tags to excisting list of following > > > Adding `#tags` to end of line for excisting follow-list format > ``` > # follow = prologic https://twtxt.net/user/prologic/twtxt.txt #yarnDev > # follow = sorenpeter http://darch.dk/twtxt.txt #creativeCoding #visuals > ``` I can see this one being preferred as it's visually easier to see on a text file. Perhaps instead of using # as the symbol for list(s) we use % as to not potentially confuse twtxt parsing? > I imaguinge someting like a spreadsheet with these collums, where you can > - edit each cell by just clicking in it and it will be exposed as input > - sort on all the collums, so you for example can see what feeds are active or dead/dorment > - selcect mutiple rows in the first collum and mass-tag or mass-delete feeds > We will start of using a table-like view for this at the beginning but who knows what it will evolve into! > ## Public vs. Private > If these model is used then the lists will be publically exposed, so if we want to do private lists, then the easy way would be to just not epose your following list. This is allready a feature, but if we want more ganuality, then we need to come up with something else. I think this will be a matter of: - Public: Storing the list in the twtxt file - Private: Storing the list in the user profile on the pod instance > My vision it to have something that is still as simple as the original twtxt.txt spec and in line it's ethos/spirit Absolutely fantastic write-up! Thank you for submitting this super detailed post! 😃
Owner

My initial thoughts on this, were not to store this data in a feed, as that increases the data stored on feeds and cognititive burden on Twtxt users in general.

Instead I saw this as a way to group one or more feeds together in a "view".

That is to say, I see this more of a "client" feature rather then modifying or extending the specs.

Those "lists" however can be publicly shared quite easily, so defining a format for those (inspired by the simple text file format of twtxt.txt itself) is useful.

My initial thoughts on this, were not to store this data in a feed, as that increases the data stored on feeds and cognititive burden on Twtxt users in general. Instead I saw this as a way to group one or more feeds together in a "view". That is to say, I see this more of a "client" feature rather then modifying or extending the specs. Those "lists" however can be publicly shared quite easily, so defining a format for those (inspired by the simple text file format of `twtxt.txt` itself) is useful.
sorenpeter changed title from Categorisation of feeds/users to Categorisation of feeds/users - aka. "Lists" 7 months ago

@prologic so you will only publish the lists as flat text files like this maybe?

https://neotxt.dk/user/darch/twtxt+yarnDev.txt
https://neotxt.dk/user/darch/twtxt+creativeCoding.txt

Where twtxt+yarnDev.txt will contain:

# follow = prologic https://twtxt.net/user/prologic/twtxt.txt 
# follow = ullarah https://txt.quisquiliae.com/user/ullarah/twtxt.txt

How will this handle if you want to add a feed to several lists?

@prologic so you will only publish the lists as flat text files like this maybe? ``` https://neotxt.dk/user/darch/twtxt+yarnDev.txt https://neotxt.dk/user/darch/twtxt+creativeCoding.txt ``` Where `twtxt+yarnDev.txt` will contain: ``` # follow = prologic https://twtxt.net/user/prologic/twtxt.txt # follow = ullarah https://txt.quisquiliae.com/user/ullarah/twtxt.txt ``` How will this handle if you want to add a feed to several lists?
Owner

The above would leak personal information about the user (you) in this case.

I would (if you make the list public) generate a unique id for the list and serve it as https://pod.domain.tld/list/<id>.txt

On disk this will just be a simple set of flat text files:

/path/to/data/
/path/to/data/lists/
/path/to/data/lists/<user>/<id>.txt

Internally in the Cache, we will read each list and populate views for the matching user(s).

The above would leak personal information about the user (you) in this case. I would (if you make the list public) generate a unique id for the list and serve it as `https://pod.domain.tld/list/<id>.txt` On disk this will just be a simple set of flat text files: ``` /path/to/data/ /path/to/data/lists/ /path/to/data/lists/<user>/<id>.txt ``` Internally in the Cache, we will read each list and populate views for the matching user(s).

The RSS-reader https://moonmoon.org/ got the kind og UI I'm imagining

The RSS-reader https://moonmoon.org/ got the kind og UI I'm imagining

Just wanted to jump in here with a few thoughts.

I love Fraidycat (screenshot attached) particularly for its ability to group feeds by how often they are updated. Slow-changing feeds tend to get waashed out in feeds that update quickly, and you miss posts. It's great to be able to group these slow changing posts and then go check in on them once in awhile and receive notifications when they update. For me this is the most attractive use case for a list/tags/whatever feature, much more so than organizing by topic. I like being able to organize by topic too, but organizing by rate of change is a killer feature that not many feed readers have.

Just wanted to jump in here with a few thoughts. I love [Fraidycat](https://fraidyc.at) (screenshot attached) particularly for its ability to group feeds by how often they are updated. Slow-changing feeds tend to get waashed out in feeds that update quickly, and you miss posts. It's great to be able to group these slow changing posts and then go check in on them once in awhile and receive notifications when they update. For me this is the most attractive use case for a list/tags/whatever feature, much more so than organizing by topic. I like being able to organize by topic too, but organizing by rate of change is a killer feature that not many feed readers have.

@abucci I have also played around with Fraidycat and like a lot of what it's doing.
It still the user themselft who need to organize their feed into the frequency of updates, or does Fraidycat offer some automation here?

@abucci I have also played around with Fraidycat and like a lot of what it's doing. It still the user themselft who need to organize their feed into the frequency of updates, or does Fraidycat offer some automation here?

@abucci I have also played around with Fraidycat and like a lot of what it's doing.
It still the user themselft who need to organize their feed into the frequency of updates, or does Fraidycat offer some automation here?

As far as I know the user needs to do the categorization manually. I prefer that, personally, because I use the frequent/occasional/rare categorization to indicate how often I care about the feed, vs. how often it actually updates.

Anyway it occurred to me that this UX (not necessarily the UI) could be done with Lists, which is a feature I'd definitely appreciate! I feel like having a flexible way of defining lists would allow users to do this kind of temporal categorizing, topical categorizing, something else....

> @abucci I have also played around with Fraidycat and like a lot of what it's doing. > It still the user themselft who need to organize their feed into the frequency of updates, or does Fraidycat offer some automation here? > As far as I know the user needs to do the categorization manually. I prefer that, personally, because I use the frequent/occasional/rare categorization to indicate how often I care about the feed, vs. how often it actually updates. Anyway it occurred to me that this UX (not necessarily the UI) could be done with Lists, which is a feature I'd definitely appreciate! I feel like having a flexible way of defining lists would allow users to do this kind of temporal categorizing, topical categorizing, something else....
Owner

Speaking of inerfaces and the UX -- The recent new features that Github introduced called "Lists" (funnily enough) is one I really quite like (See attached). I think we should do this on the Profile view of feeds basically.

Since one of our primary tenents has been to ensure the Yarn UI works without Javasript (or most of it does, or degrades) we should probably have the "List" creation in Settings.

Anyway, we should build this soon™ After integrated Pod search? 🤔

Speaking of inerfaces and the UX -- The recent new features that Github introduced called "Lists" (funnily enough) is one I really quite like (See attached). I _think_ we should do this on the Profile view of feeds basically. Since one of our primary tenents has been to ensure the Yarn UI works without Javasript (_or most of it does, or degrades_) we _should_ probably have the "List" creation in Settings. Anyway, we _should_ build this soon™ After integrated Pod search? 🤔
Owner

Realted Issue: #954

Realted Issue: #954
prologic modified the milestone from 0.15 to 0.16 1 month ago
Sign in to join this conversation.
No Milestone
No Assignees
4 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: yarnsocial/yarn#937
Loading…
There is no content yet.