Hacker News new | ask | show | jobs
by kodablah 3439 days ago
I too have spent a lot of time thinking about this problem space. I find that there is not a big problem in context switching from one conversation to the next, but rather in the UI and appearance of the switch.

The ultimate key is unread message support. By using a single key/approach to jump from one unread message to the next (or mark all messages in a thread as read) in order of oldest unread message, then the rest of messages in that thread, then next oldest unread message, etc, you can make conversation switching easy. It just needs to be clear when you have switched conversations. I hate manually navigating from one channel/room/whatever to the next myself.

Also, I think chat and threading essentially conflict. Threading encourages more thought about who you are replying to and how and is less of a stream of consciousness like chat. In threaded conversational modes, I think the chat-like mode should be reduced (e.g. "X is typing", update exactly when completed, auto scroll the screen) and semi-live-update forum-like mode should be enhanced (e.g. a post is fixed in space, no auto scroll, live updates are batched/debounced over at least 2 seconds, etc).

Of course, the real answer might be extreme configurability. Any communication system can be like any other with enough configuration options. While default sets may be preferred for chat, forum, microblogging, etc, many people configure "rooms" more than they configure lots of other types of software so there is little "option overload".

1 comments

I agree with this. Chat and threading are oil and water to some degree. To me it is the difference between short term and long term memory; in short term memory, forgetting is a feature -- not a design problem to be solved.