hhmx.de

infinite love â´³

infinite love ⴳ (@trwnh@mastodon.social)

Föderation EN Di 17.09.2024 17:56:40

@evan @erincandescent @julian @silverpill I don't think a thread *has* to be a tree -- it's a set. The "reply tree" is a separate structure. Threads can be forked out of other threads.

(I also dislike "reverse chron" and heavily favor "forward chron", but custom sorting of collections is not well-specced rn so that's a future step.)

silverpill

silverpill (@silverpill@mitra.social)

Föderation · Di 17.09.2024 18:11:39

@trwnh @evan @erincandescent @julian +1 for forward chron, that way you can start displaying posts without fetching the whole thread

Evan Prodromou

Evan Prodromou (@evan@cosocial.ca)

Föderation EN Di 17.09.2024 18:13:49

@silverpill @trwnh @erincandescent @julian Use the `last` property to start with the oldest page.

Evan Prodromou

Evan Prodromou (@evan@cosocial.ca)

Föderation EN Di 17.09.2024 18:17:00

@silverpill @trwnh @erincandescent @julian Also, I think you're imagining some kind of pre-order traversal sorting. If you want that, it's a lot easier to just walk the `replies` tree.

infinite love â´³

infinite love ⴳ (@trwnh@mastodon.social)

Föderation EN Di 17.09.2024 18:23:16

@evan @silverpill @erincandescent @julian just seems backwards to me, for no real reason. if you wanted reverse chron viewing of a forward chron collection, then it makes sense to fetch `last` and page backwards.

at the very least, `startIndex` as a property of OrderedCollectionPage makes **way** more sense with a forward chron presentation.

Evan Prodromou

Evan Prodromou (@evan@cosocial.ca)

Föderation EN Di 17.09.2024 18:27:13

@trwnh @silverpill @erincandescent @julian

It's bad for caching to do forward chron, which is why we don't do it anywhere else.

Also, it does not help you build a tree structure; older nodes are not necessarily at the top of the tree.

infinite love â´³

infinite love ⴳ (@trwnh@mastodon.social)

Föderation EN Di 17.09.2024 19:01:34

@evan @silverpill @erincandescent @julian why is it bad for caching? it seems like the opposite to me -- reverse-chron means that pages are constantly updating and are almost never consistent! each new item in the collection pushes everything else behind it, and the last item of the page overflows into becoming the first item of the next page. if you did forward-chron, you could freeze "page 1" as soon as it got full, and move onto "page 2".

also, a viewer can easily tell where they left off.

Evan Prodromou

Evan Prodromou (@evan@cosocial.ca)

Föderation EN Di 17.09.2024 19:04:47

@trwnh @silverpill @erincandescent @julian oh, yes, that's true, if you do "volatile paging" (last 20 pages).

If you have reified pages (item goes in one page and stays there), once the pages are full, they don't change (except for `Remove` activities).

Don't do volatile paging.

If you use reified pages, an add to a reverse-chron collection will typically have changes to `first` and the Collection itself.

Evan Prodromou

Evan Prodromou (@evan@cosocial.ca)

Föderation EN Di 17.09.2024 19:05:59

@trwnh @silverpill @erincandescent @julian

If you have bidirectional links (`first` and `last`) you can have stable collections with rev-chron or forward-chron. So, fair point.

infinite love â´³

infinite love ⴳ (@trwnh@mastodon.social)

Föderation EN Di 17.09.2024 19:11:22

@evan @silverpill @erincandescent @julian Yeah, my point is that it seems almost entirely conventional whether to have "reverse" mean first.next.next... or last.prev.prev... -- and I favor the latter approach because it makes more sense imo, no double-inversion ("reverse-reverse chron", anyone?)

Evan Prodromou

Evan Prodromou (@evan@cosocial.ca)

Föderation EN Di 17.09.2024 19:16:14

@trwnh @silverpill @erincandescent @julian Except for most interfaces, your first page is the current stuff, and you go back in time to find earlier stuff.

infinite love â´³

infinite love ⴳ (@trwnh@mastodon.social)

Föderation EN Di 17.09.2024 19:36:36

@evan @silverpill @erincandescent @julian This is what I meant by "conventional". On a forum thread, you generally read forward. On social media like Twitter, there is a heavy bias toward going reverse. And some interfaces even let you choose ascending or descending order.