The site is designed at the moment to support two ways of dynamically loading content:
Over a websocket connection.
Using standard Ajax requests.
The websockets have a bunch of benefits over ajax:
Should be faster. Don't have to establish a new connection every time.
Uses less bandwidth. No headers to send on each request, just exactly what is required.
Allows the server to push content to the client. So I can have new articles magically appear when they're posted. Admittedly not too worried about this, since this will be infrequent. However will be much more relevant if/when #6 (article comments) is implemented.
However they aren't supported on all devices. It's possible to have the browser autodetect if websockets are supported, however they way I've currently done this doesn't work. At least not in chrome for Android. For now I've disabled the websocket version entirely, but it should be re-enabled at some point once I fix the capability detection.
Looks like this is fixed by the refactoring done in dda3f353bfc9810547bac7abd3e28ca48d205f28.
At least, the site works properly in Chrome for Android now. Closing.
The site is designed at the moment to support two ways of dynamically loading content:
The websockets have a bunch of benefits over ajax:
However they aren't supported on all devices. It's possible to have the browser autodetect if websockets are supported, however they way I've currently done this doesn't work. At least not in chrome for Android. For now I've disabled the websocket version entirely, but it should be re-enabled at some point once I fix the capability detection.