23

i absolutely hate how the modern web just fails to load if one has javascript turned off. i, as a user, should be able to switch off javascript and have the site work exactly as it does with javascript turned on. it's not a hard concept, people.

but you ask candidates to explain "graceful degradation" and they'll sit and look at you with a blank stare.

top 50 comments
sorted by: hot top controversial new old
[-] scarabic@lemmy.world 11 points 1 week ago* (last edited 1 week ago)

You’re correct, and I’m going to explain how this happens. I’m not justifying that it happens, just explaining it.

It isn’t that no one knows what graceful degradation is anymore. It’s that they don’t try to serve every browser that’s existed since the beginning of time.

When you develop software, you have to make some choices about what clients you’re going to support, because you then need to test for all those clients to ensure you haven’t broken their experience.

With ever-increasing demands for more and more software delivery to drive ever greater business results, developers want to serve as few clients as possible. And they know exactly what clients their audience use - this is easy to see and log.

This leads to conversations like: can we drop browser version X? It represents 0.4% of our audience but takes the same 10% of our testing effort as the top browser.”

And of course the business heads making the demands on their time say yes, because they don’t want to slow down new projects by 10% over 0.4% of TAM. The developers are happy because it’s less work for them and fewer bizarre bugs to deal with from antiquated software.

Not one person in this picture will fight for your right to turn off JavaScript just because you have some philosophy against it. It’s really no longer the “scripting language for animations and interactivity” on top of HTML like it used to be. It’s the entire application now. 🤷‍♂️

If it helps you to blame the greedy corporate masters who want to squeeze more productivity out of their engineering group, then think that. It’s true. But it’s also true that engineers don’t want to work with yesteryear’s tech or obscure client cases, because that experience isn’t valuable for their career.

[-] baggachipz@sh.itjust.works 5 points 1 week ago

Blame the ui frameworks like react for this. It’s normalized a large cross-section of devs not learning anything about how a server works. They’ve essentially grown up with a calculator without ever having to learn long division.

[-] possiblylinux127@lemmy.zip 2 points 1 week ago

Not all frameworks are bad

The problem is the devs/owners not understanding basic fundamentals. They could see a major financial benefit if they make the page snappy and light but apparently no one at these companies realizes that.

[-] Supervisor194@lemmy.world 5 points 1 week ago

It's worse than this even. I have an old Raspberry Pi 3B+ (1G) that I got in 2018. I hooked it up the other day to mess around with it, it's been maybe 2 years since I did anything with it, ever since I got a Pi 4 (4G). 1 gigabyte of RAM is now insufficient to browse the web. The machine freezes when loading any type of interactive site. Web dev is now frameworks piled on frameworks with zero consideration for overhead and it's pure shit. Outrageous.

[-] possiblylinux127@lemmy.zip 5 points 1 week ago

You want to see terrible try looking at the network tab in inspect element

"Modern" pages load hundreds of large assets instead of keeping it smaller and clean.

its also cdn on cdn nobody does local libraries anymore

[-] possiblylinux127@lemmy.zip 5 points 1 week ago

JavaScript is needed to actually build anything useful. It is way easier to maintain and when done properly it can be very fast to load and use.

The problem with today's web is that pages are extremely inefficient and bloated. You can keep the same UI just don't try to use every framework and library under the sun. Also it would be nice if people actually formated assets properly instead of using tons of large images and other assets.

[-] the_wiz@feddit.org 2 points 1 week ago

JavaScript is needed to actually build anything useful

Tell this to the people who build things you would call today a "Webapp" with CGI written in C.

[-] XM34@feddit.org 4 points 1 week ago

If it's a standard webpage that only displays some static content, then sure.

But everything that needs to be interactive (and I'm talking about actual interactivity here, not just navigation) requires Javascript and it's really not worth the effort of implementing fallbacks for everything just so you can tell your two users who actually get to appreciate this effort that the site still won't work because the actual functionallity requires JavaScript.

It all comes down to what the customer is ready to pay for and usually they're not ready to pay for anything besides core functionallity. Heck, I'm having a hard enough time getting budget for all the legally required accessibility. And sure, some of that no script stuff pays into that as well, but by far not everything.

Stuff like file uploads, validated forms and drag and drop are just not worth the effort of providing them without JS.

file uploads and forms are the easiest to do server side

[-] XM34@feddit.org 1 points 1 week ago* (last edited 1 week ago)

Not if you want them to be at least halfway user friendly. Form validation is terrible when done completely server side, and several input elements like multiselect dropdowns, comboboxes and searchfields won't work at all unless supported by client side JavaScript. And have you ever tried to do file previews and upload progress bars purly serverside?

So I guess by fileupload you mean "drop file here and wait an uncertain amount of time for the server to handle the file without any feedback whatsoever." and by forms you mean "enter your data here, then click submit and if we feel charitable we may reward you with a long list of errors you made. Some of which could have been avoided if you knew about them while filling in previous fields".

[-] The_Decryptor@aussie.zone 2 points 1 week ago

It depends on the type of input validation you're doing, a bunch of it is built into the browser and you don't need JS for it.

load more comments (1 replies)
[-] MonkderVierte@lemmy.zip 3 points 1 week ago

Most don't even know @media (prefers-color-scheme: dark/light), rather cobble something with JS that works half of the time and needs buttons to toggle.

[-] unmagical@lemmy.ml 1 points 1 week ago* (last edited 1 week ago)

A button to toggle is good design, but it should just default to your system preferences.

load more comments (1 replies)
[-] ExtremeDullard@lemmy.sdf.org 2 points 1 week ago

Funny, from my standpoint, more functional JavaScript almost always feels like service degradation - as in, the more I block, the better and the faster the website runs.

load more comments (2 replies)
[-] Kolanaki@pawb.social 2 points 1 week ago

I don't know how you're gonna get everything to work without JavaScript. You can't do a lot of interactivity stuff without it.

[-] the_wiz@feddit.org 3 points 1 week ago

Do "the stuff" on the server, only serve HTML. In my first job we build a whole webshop with very complex product configurators that would today even run perfectly fine in dillo.

[-] irelephant@lemmy.dbzer0.com 2 points 1 week ago

I've had news articles not work without javascript. (unpaywalled as well).

[-] Armand1@lemmy.world 1 points 1 week ago* (last edited 1 week ago)

I wrote my CV site in React and Next.js configured for SSG (Static Site Generation) which means that the whole site loads perfectly without JavaScript, but if you do have JS enabled you'll get a theme switching and print button.

That said, requiring JS makes sense on some sites, namely those that act more like web apps that let you do stuff (like WhatsApp or Photopea). Not for articles, blogs etc. though.

[-] Azzu@lemmy.dbzer0.com 0 points 1 week ago* (last edited 1 week ago)

requiring JS makes sense on some sites, namely those that act more like web apps that let you do stuff (like WhatsApp

I mean yes, but Whatsapp is a bad example. It could easily use no JavaScript. In the end it's the same as Lemmy or any other forum. You could post a message, get a new page with the message. Switching chats is loading a new page. Of course JavaScript enhances the experience, makes it more fluid, etc, but messengers could work perfectly fine without JavaScript.

[-] PeriodicallyPedantic@lemmy.ca 0 points 1 week ago

Maybe I'm out of the loop because I do mostly backend, but how do you update the chat window when new chats come in, without JavaScript?

[-] Azzu@lemmy.dbzer0.com 1 points 1 week ago

You don't, I'm saying it would still mostly work. Getting messages as they arrive is nice but not necessary. For example, I personally have all notifications off, and I only see messages when I specifically look for them, no one can reach me instantly. Everyone seems to be missing that we're talking about degradation here, it degrades, it gets worse with JS disabled. But it shouldn't straight up not work.

A good example for something that does not work without JS would have been a drawing application like they said, or games, there are plenty of things that literally do not work without JS, but messaging is not one of them. Instant messaging would be of course.

[-] PeriodicallyPedantic@lemmy.ca 1 points 1 week ago

I also feel like everyone seems to be missing that we're taking about degradation, which isn't usually "no js at all", it's some subset that isn't supported. People use feature detection to find out of some feature is supported in the browser and if it's not the they don't enable the feature the depends on it.

For the chat example, you could argue that a chat can degrade into a bulletin board, but I'd argue that people use chat for realtime messaging so js is needed for the base use case.

If your webpage primarily just displays static information, then I agree that it should work without js or css. Like Wikipedia, or a blog, or news, or a product marketing page, or a forum/BBS.
But there is a huge part of the web that this simply doesn't apply to, and it's not realistic to have them put in huge effort to support what can only be a broken experience for a fraction of a percent of users.

load more comments (1 replies)
[-] Kache@lemmy.zip 0 points 1 week ago

How would a page fetch new messages for you without JS?

[-] Vigge93@lemmy.world 2 points 1 week ago* (last edited 1 week ago)

You don't. That's the gracefull degradation part. You can still read your chat history and send new messages, but receiving messages as they come requires page reload or enabling js.

load more comments (3 replies)
load more comments (1 replies)
[-] lena@gregtech.eu 1 points 1 week ago

Fair, some websites do need JavaScript though. Such as webapps. Could they be server-side rendered?

[-] candyman337@lemmy.world 2 points 1 week ago

Depending on the web app, the real solution would be a much more simplified JavaScript free version

load more comments (1 replies)
[-] 6nk06@sh.itjust.works 1 points 1 week ago

SSR is a thing and could be used to render most content remotely without pissing off readers.

load more comments (1 replies)
[-] aesthelete@lemmy.world 1 points 1 week ago

They also continually forget that you can't do frontend only validation for things.

[-] tal@lemmy.today 1 points 1 week ago

Not even possible to reply to this post using the Lemmy Web UI without having Javascript enabled; the reply button doesn't function without Javascript.

a lot doesn't work on piefed but thankfully replying does (just tested it)

[-] xep@fedia.io 1 points 1 week ago

Some surely know, they just don't care.

[-] adarza@lemmy.ca 1 points 1 week ago* (last edited 1 week ago)

i run with scripts disabled by default. it gets annoying at times, but most sites and pages i go to work fine. a few are true 'apps' and are whitelisted. random sites that don't work i just search for an alternative source if i really want to read it. i have separate browser installs with fewer restrictions that i use specifically for certain things (like webmail or the little online shopping i do).

the few web sites that i am responsible for... all work without scripts. many of the visitors i care about have shitty internet, so i don't want massive js or css bundles in there or tons of unoptimized graphics or media.

[-] elephantium@lemmy.world 1 points 1 week ago

Graceful degradation - pfft.

Progressive enhancement - yeah!

load more comments
view more: next ›
this post was submitted on 27 Jul 2025
23 points (92.6% liked)

Mildly Infuriating

41331 readers
227 users here now

Home to all things "Mildly Infuriating" Not infuriating, not enraging. Mildly Infuriating. All posts should reflect that.

I want my day mildly ruined, not completely ruined. Please remember to refrain from reposting old content. If you post a post from reddit it is good practice to include a link and credit the OP. I'm not about stealing content!

It's just good to get something in this website for casual viewing whilst refreshing original content is added overtime.


Rules:

1. Be Respectful


Refrain from using harmful language pertaining to a protected characteristic: e.g. race, gender, sexuality, disability or religion.

Refrain from being argumentative when responding or commenting to posts/replies. Personal attacks are not welcome here.

...


2. No Illegal Content


Content that violates the law. Any post/comment found to be in breach of common law will be removed and given to the authorities if required.

That means: -No promoting violence/threats against any individuals

-No CSA content or Revenge Porn

-No sharing private/personal information (Doxxing)

...


3. No Spam


Posting the same post, no matter the intent is against the rules.

-If you have posted content, please refrain from re-posting said content within this community.

-Do not spam posts with intent to harass, annoy, bully, advertise, scam or harm this community.

-No posting Scams/Advertisements/Phishing Links/IP Grabbers

-No Bots, Bots will be banned from the community.

...


4. No Porn/ExplicitContent


-Do not post explicit content. Lemmy.World is not the instance for NSFW content.

-Do not post Gore or Shock Content.

...


5. No Enciting Harassment,Brigading, Doxxing or Witch Hunts


-Do not Brigade other Communities

-No calls to action against other communities/users within Lemmy or outside of Lemmy.

-No Witch Hunts against users/communities.

-No content that harasses members within or outside of the community.

...


6. NSFW should be behind NSFW tags.


-Content that is NSFW should be behind NSFW tags.

-Content that might be distressing should be kept behind NSFW tags.

...


7. Content should match the theme of this community.


-Content should be Mildly infuriating.

-The Community !actuallyinfuriating has been born so that's where you should post the big stuff.

...


8. Reposting of Reddit content is permitted, try to credit the OC.


-Please consider crediting the OC when reposting content. A name of the user or a link to the original post is sufficient.

...

...


Also check out:

Partnered Communities:

1.Lemmy Review

2.Lemmy Be Wholesome

3.Lemmy Shitpost

4.No Stupid Questions

5.You Should Know

6.Credible Defense


Reach out to LillianVS for inclusion on the sidebar.

All communities included on the sidebar are to be made in compliance with the instance rules.

founded 2 years ago
MODERATORS