leighmacdonald/uncletopia-web

Design Uncletopia's web site in a way which does not require JavaScript for basic use

Closed this issue · 7 comments

The https://uncledane.com/servers page works fine without JavaScript, but the new https://uncletopia.com website will not work at all with it disabled. Why? Because the entire website is designed around a single JavaScript file.

JavaScript while originally intended as a tool to enable user interaction, is now more often than not misused. Around 90% of all JavaScript code is for the sole purpose of spying on users and nothing else. More and more people are disabling it, and being unable to serve users with it disabled hurts Uncletopia's player base.

While some features such as the map graph require JavaScript, at the very least fallbacks should be available and returning things like the homepage which are simply static HTML should not require JavaScript. There are other, better ways to go about it

Is there something wrong with your browser that prevents leaving JavaScript enabled?

There are lots of reasons why users may not have JavaScript enabled, some of which are completely unintentional. Could be because the page was aborted, JavaScript throws an error, the proxy they are connected to may remove script tags.

Users often intentionally disable it either for security, privacy, or annoyance prevention. Even for the most popular browser Chrome, NoScript extension has 100k+ users. Other browsers like Lynx don't even support it at all. A particular 2016 metric conducted by Wikimedia shows that 7% of all visitors don't request JavaScript resources. This is nearly 10% of your entire audience being unable to use the site. I'd definitely recommend fixing this as soon as possible.

Interactive elements enhanced by JavaScript should have non-JavaScript fallbacks, but requiring JavaScript for even static HTML pages is bad practice in general, and also somewhat turning away of some users.

There's a lot of outstanding cosmetic issues with the website like the connect links being unusable, 25/24 etc. This is less important than this though, because right now the Uncletopia website is completely unusable in about 10% of browsers, including TF2's browser. There's also talk about making the vote menu work in a way similar to Casual.TF's, but that can't happen until this task is resolved.

I think there was a miscommunication at some point, it isn't planned to make uncletopia's voting mechanism require HTML MOTD. Many people (including myself) have that off due to community servers abusing it for advertisement.

Last I heard three different admins including Uncle Dane himself were interested in the idea and work was currently in progress to copy Casual.TF's voting system but the task was stalled due to the web incompatibility. If the plans have changed, I wasn't made aware of it at all. Also, weren't you the person complaining to me because Uncletopia Mod was removed?
image

However, even completely irrelevant to that, the fact that this website has multiple major outstanding issues including the website being completely unusable in about 10% of browsers, and having the extremely bad practice of using JavaScript for everything, with no benefit to the end user , makes closing any other issue impossible until this task is resolved. There's no point in fixing stuff like that when it needs to be changed anyway.

Okay I think this has gotten somewhat off track and toxic so let's just start over.

React is a frontend JavaScript library, usually used for interactive embedded apps. For example you may go onto an online game site like Poki and the main page itself will be returned as a document, but the game itself will be written in something like React (I don't know if that page specifically uses it but it is used in general). Here's what that page looks like with JavaScript off:
image

Designing entire pages in JavaScript is a discouraged practice because a significant portion of users have JavaScript disabled (in particular a problem with React is poor browser compatibility- in particular Uncletopia's website won't work in TF2's browser. even with JavaScript enabled:)
image

This practice is heavily discouraged and rarely done. The few times that it is done it is often done by businesses looking to save processing power (they load significantly slower for clients and have much more processing total, at the cost of slightly less on the businesses' end), and have interactive elements. In particular YouTube's current "polymer" design is criticised for being much slower than its previous "Hitchhiker" one. Notice how the time to content on https://www.youtube.com/attribution?v=dQw4w9WgXcQ is much faster than https://www.youtube.com/watch?v=dQw4w9WgXcQ . Uncletopia is not really created to earn money, it's created to provide a good experience to users. It should work in as many browsers as possible, and not hamper the experience with stuff like unnecessary client-side stuff. In particular the interactiveness on uncletopia.com is very little-- all pages but the servers page is static, and the servers page could definitely use from server-side rendering.

I hope this sums up my views as to why uncletopia.com should not run on React, but should simply serve documents instead like most other pages do, and what the world wide web was meant to be for in the first place. If I said something confusion please let me know, or if you don't agree hopefully the React will not cause too much inconvenience

React works on all modern supported browsers. Even ie 11 (and earlier iirc). Please stop saying stuff like this when its very provably false. This specific site having a issue/bug is one thing, but conflating this with not supported is just wrong. Just try loading any other react site and it will work fine.

A significant % of users DO NOT have JS disabled, that is absurd, especially for a gaming community and not some hacker space. These power users use a add-on to specifically allow/block things because they choose to, and should be technically inclined enough to turn it back on if it doesn't work. Your "10%" does not at all match any stats we have from clients, please stop repeating this like it is some irrefutable fact. Afaik, you are literally the only person who has brought this up in the many thousands of users so far. This is why its such a low priority at the moment.

The thing is, i largely appreciate your pov within reason. I am, in fact, one of those no-js addon users. However the approach you are taking here is not really helping your cause, especially since there is larger plans for the site that you are not privy too. You are assuming this is just it and the site is done. There is going to be much more "interactive" stuff in the future.

what the world wide web was meant to be for in the first place that was a nice sentiment in the 2000's perhaps, but not really relevant today, like it or not. Should we not use the internet since it was meant for military/research?