Can networking be platform independent in a libgdx game?Best way to do real-time networking in HTML5 is using WebSockets, preferably through node.js's socket.io (for fallback technologies and some nice additions). Socket.io allows you to send ordinary js objects and with plain WebSockets you can send them with JSON.stringify(). No need to resort to custom byte streams, unless you want maximum compression of the messages. WebSockets are implemented in other languages too, so the server doesn't have to use node.

Should I distribute shaders in a compiled form or in plain text?@user827992 The binary format may be different for different generations of GPUs/drivers even if the vendor is the same. And don't forget there's also lot's of Intel GPUs out there, let alone all the mobile ones, like Qualcomm and PowerVR. So again: I suggest you don't distribute compiled shaders, but rather cache them on first run on the user's device. Regarding GPU detection, you could try parsing GL_VENDOR, GL_VERSION and GL_RENDERER strings form glGetString(), but their format varies from vendor to vendor.