8 ms·
Some obsevervations while using https://community.nodebb.org/ https://community.nodebb.org/ Kinetic scrolling on Firefox for Android is broken. Do not fiddle w
by hpaavola 12y ago
Some obsevervations while using https://community.nodebb.org/ https://community.nodebb.org/
Kinetic scrolling on Firefox for Android is broken. Do not fiddle with scrolling when doing web development, ever. I guarantee that you will fail.
Front page forgets the scroll position when coming back with back button (Firefox, Windows 7).
When you do AJAX stuff (or websockets or anything else not plain HTTP GET that browsers do when you click normal link), always show progress indicator right after you user clicks something. Now when the site is slow (because of HN effect?) user is shown blank page while the page is changing. All I can see is the top bar and the grey background after clicking any link. It takes 2-3 seconds before anything visible shows up. During this time always show some progress indicator.
Going back and forth quickly occasionally gives user a wrong page. For example right now my URL bar shows https://community.nodebb.org/topic/7/nodebb-plugins https://community.nodebb.org/topic/7/nodebb-plugins but content is a post by quahfamili posted 12 months ago with title Testing.
Bulletin board system gains nothing from "single page application" style architecture, it is a collection of documents, stick with it.
EDIT: Also, when using infinite scroll, do not put anything in the page footer. Now when the pages have copyright info and couple links in there, I can see those only for a split of a second before new content appears. Makes me go crazy.
- briantakita 12y ago> Bulletin board system gains nothing from "single page application" style architecture, it is a collection of documents, stick with it. Saying Nothing is to be gained is going a bit far. This is an interesting experiment, with some novelty, that will be iterated upon. I presume that the bugs will also be fixed.
- hpaavola 12y agoYes, I was a bit too harsh. My point is that discussion forum is almost completly just a collection of documents. Traditional web pages serve that structure really well.
- andybak 12y agoI agree although I can see value in a pjax style approach to get faster page reloads. As long as you preserve normal behaviour and url structure, this is usually a win-win. EDIT - just checked and it does a moderately good job without javascript: "Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode." This is probably an acceptable compromise. Just to clarify - I'm not arguing that everything should work with js disabled - just that it's a good litmus test for whether a website is fairly robust with regard to normal HTTP behaviour.
- jonahx 12y agoDiscourse in general loads a lot faster than traditional bbs when you click links or try to view a specific post. So what's being gained is better user experience. I'm not sure I see the relevance of the underlying data structure... isn't email just a collection of documents too? Why is gmail a SPA?
- dubcanada 12y agoI don't know if I would call a fully working product with pricing details and everything an experiment.
- lookingsideways 12y ago> Bulletin board system gains nothing from "single page application" style architecture, it is a collection of documents, stick with it. I'd have to say the Discourse project (http://discourse.org http://discourse.org) provides a fantastic counter example to this. It shows what can be achieved when SPAs embrace the URL and a lot of thought is put into how the modern browser features can be used to improve the user experience rather than just jumping on the bandwagon. Example forums: http://meta.discourse.org http://meta.discourse.org http://discuss.atom.io http://discuss.atom.io http://discuss.emberjs.org http://discuss.emberjs.org
- aikah 12y agonot convinced discourse UX is that good either,in fact NodeBB copies a lot from discourse.
- dingdingdang 12y agoneither am I, there's a good reason people are willing to pay for older BB systems like IPBoard and vBulletin, they work and they are iteratively improved upon instead of 'UX-rebooted' like Discourse and NodeBB. I personally don't think any of the systems are perfect but the the older forums work fine as long as they are popular enough that resources are dedicated to policing them.. so I personally feel proper inter-forum karma integration should be top priority, more-so than new UXs!
- hiphopyo 12y agoThis is why I prefer https://github.com/radar/forem https://github.com/radar/forem by the "Ruby hero" Ryan Bigg. It's also for Rails but without the bells and whistles from Discourse. A.k.a. "The best Rails forum engine. Ever.", it's perfect if you want to build something unique from the ground up.
- alxndr 12y agoI would associate Discourse more strongly with Javascript or Ember than Rails.
- jbrooksuk 12y agoI was just about to complain about overriding the scroll behaviour. The homepage doesn't work properly because I have Chrome at a weird size, so I'm unable to see all of the features list, if I scroll slightly it takes me to the next section.
- andrewstuart2 12y ago> Bulletin board system gains nothing from "single page application" style architecture, it is a collection of documents, stick with it. Real-time updates, differential updates, cacheable partials, free distributed rendering, to name a few. Specifically in the realm of cacheable partials, every single site out there that repeats elements between pages could benefit as a well-architected SPA. It's analagous to h.264 vs GIF: you can compress/cache the similar chunks and only update the deltas and save bandwidth, making your platform more scalable. Sure, GIF can compress each individual frame, but h.264 improves on that dramatically by compressing in another dimension. The essence, in my mind, of the SPA is keeping your HTTP requests DRY.
- Bahamut 12y agoI agree on the benefits of SPA, but there is a dealbreaker when it comes to forums - you want it to be searchable, and that currently means using server generated templates for SEO purposes (or a setup using PhantomJS to pre-render the pages each time, but that is even more suboptimal, especially for a potentially fast moving BB).
- psychobunny 12y agoNodeBB's engine supports both cold-loads from server-side and ajax-loaded pages. So if you browse NodeBB via JS-disabled browser for example, it will still work (read-only)
- CMCDragonkai 12y agoYou can try SnapSearch https://snapsearch.io/ https://snapsearch.io/ which uses Firefox to render SPA sites.
- austinz 12y ago> EDIT: Also, when using infinite scroll, do not put anything in the page footer. Now when the pages have copyright info and couple links in there, I can see those only for a split of a second before new content appears. Makes me go crazy. This sort of design element occurs way too often. I call them Tantalus footers, because they're always just out of reach. It also makes me wonder if the people who designed these things actually tried using them under real-life conditions.
- oftenwrong 12y ago>Do not fiddle with scrolling when doing web development, ever. This should be carved into the desk of every webdev on earth.
- voltagex_ 12y ago>Kinetic scrolling on Firefox for Android is broken. Do not fiddle with scrolling when doing web development, ever. I guarantee that you will fail. What do you mean? I've tried on Firefox (Beta) and Chrome on my Nexus 5 and it seems to work fine for me.