4 ms·
The best way IMO is still (somehow) a 4chan-style linear timeline, with heavy UI affordances to make following >-ref’s simple. This application (and HN, and Red
by basil-rash 2y ago
The best way IMO is still (somehow) a 4chan-style linear timeline, with heavy UI affordances to make following >-ref’s simple. This application (and HN, and Reddit) go with the “threads on threads on threads” tree, which is awful for when you want to respond to a specific subset of replies to the same parent comment at once.
How could it be improved? I say embrace the DAG nature of the beast and allow for selecting a specific set of parent nodes a comment is in reply to, and, importantly, make that set editable so when some other person comes in and replies to a comment with a topic that has already been discussed, you can link your earlier replay to that new parent without needing a “see my reply here” comment.
- senkora 2y agoI like this thought but note that it would no longer technically be a DAG if you allowed editing earlier comments to link to later comments.
- James_K 2y agoThis is easy to solve by representing edits as amendments. Each edit forms a new "reply" node in the graph with the amended content.
- readyman 2y agoOr each edit forms a new "edit" node that new replies are then connected to. Regardless, the DAG can always be preserved somehow.
- stevage 2y agoOoh, interesting - so it's clear that the B responded to A, not to A'. And your DAG ends up A'->B->A (where -> means responds to). OTOH I'm not sure that cycles are even a huge problem.
- James_K 2y agoThey probably aren't a problem, but they might be. I can see there potentially being some graph theory optimisations on the server side you can do if you know you're dealing with a DAG. > And your DAG ends up A'->B->A A' would be in response to A.
- basil-rash 2y agoYou could edit a comment to violate the DAG criterion, but not every edit that references a prior node must result in violation of the DAG. Those edits which would result in a violation should be prohibited.
- playingalong 2y agoThat possibly works for quiet discussions, say <30 total posts. For these with high level of engagement you often get distinct subtrees of threads which have little to do with each other. For the latter the linear structure is awful.
- basil-rash 2y agoThat’s where the UI affordances come in, for instance a button on each node to hide/show all comments that are descendants of that node.
- stavros 2y agoSo a tree, but worse.
- barbarr 2y ago4chan threads are more like DAGs
- krapp 2y agoThe graph of 4chan threads are definitely cyclical, since they can include back-references.
- basil-rash 2y agoTo be cyclical they’d need to have elements in reply to a post made after they were created. Including back references is a way of adding more parents, not children.
- philosopher1234 2y agoYou can reference posts that haven’t happened yet
- pkoiralap 2y agoDAG does seem natural here. Having a LLM add metadata to the nodes can make this even cooler. For instance, person A presents statement Sa. Person B comments on person A's statement, Sba and person C comments on person A's statement, Sca. The viewers now, especially new parties that are joining the conversation, would be able to see that Sba agrees to most of Sa said, but refutes a fact said by Sa. Sca doesn't agree with anything Sa is saying. Another example would be, nodes getting more weight as more people agree with it and smaller as more people disagree. Obviously, the implementation and implications are boundless.
- _bent 2y agoConsidering how debates tend to go in circles, I'm not sure if a DAG is the right data structure
- AnimalMuppet 2y agoThe comments are a DAG. The ideas go in circles. But I'm not sure you can get an automated map from comments to ideas, no matter what data structure you use...
- Nevermark 2y agoHN just doesn't have enough controls. I don't just want to reply to you, I want to elevate this comment so your comment is a reply to it... (Perhaps you could edit in a circular quote of this... :)
- basil-rash 2y agoAn idea I’ve been playing around with in my head for some time is to have LLM’s play a role in somehow generating an idealized debate structure of any given topic. For example, given the prompt “Namespaces are one honking great idea – let's do more of those!”, many actors (LLM’s, humans, etc) would submit top level replies to a hidden container. Eventually, an LLM would look over all the replies and cluster them into a small number of “essential responses”. The process repeats with each of these responses being new top level nodes. Eventually, a tree/dag/graph/something is created that recursively contains all the things one might have to say about the topic at hand.
- brobinson 2y agoThe 4chanx extension (userscript, run it in violentmonkey or equivalent) lets you nest comments in a chain to make following threads easy while maintaining the overall chronological state of the threads. You can also hide a reply, and it will automatically hide the entire chain of replies to that reply.