I'm not particularly familiar with DDS, but does it work nicely with browsers? either through some sort of translation or better yet, natively? I'm interested as the current ROS to WebSockets bridge is particularly ugly: the bridge has to subscribe to all the messages that any web client would need to listen to and then rebroadcast them, which introduces additional delays making it horribly painful to use for things like teleop with large messages like images or point clouds.