At the moment, if I want to directly message a user, I need to wait for a room to be created, and joined. This only takes a few seconds, but it's long enough to make me wonder why we impose this on users. I'd say that a good UI should throw the user right into a room and let them start typing, and connect the threads in the background, caching messages until the room is ready. All this should happen without the user even knowing.
At the moment, if I want to directly message a user, I need to wait for a room to be created, and joined. This only takes a few seconds, but it's long enough to make me wonder why we impose this on users. I'd say that a good UI should throw the user right into a room and let them start typing, and connect the threads in the background, caching messages until the room is ready. All this should happen without the user even knowing.