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.

  • cley_faye@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    3 hours ago

    it’s not a hard concept, people.

    Depends. Webapps are a thing, and without JavaScript, there isn’t much to show at all.

    Websites that mostly serve static content though? Yeah. Some of them can’t even implement a basic one-line message that asks to turn on JavaScript; just a completely white page, even though the data is there. I blame the multiple “new framework every week” approach. Doubly so for sites that starts loading, actually shows the content, and then it loads some final element that just cover everything up.

  • hperrin@lemmy.ca
    link
    fedilink
    English
    arrow-up
    0
    ·
    13 hours ago

    It is substantially harder to make a modern website work without JavaScript. Not impossible, but substantially harder. HTML forms are not good at doing most things. Plus, a full page refresh on nearly any button click would be a bad experience.

  • Sertou@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    13 hours ago

    The web isn’t just HTML and server side scripting anymore. A modern website uses Javascript for many key essentials of the site’s operation. I’m not saying that’s always a good thing, but it is a true thing.

    It is no longer a reasonable expectation that a website work with JavaScript disabled in the browser. Most of the web is now in content management systems that use JavaScript for browser support, accessibility, navigation, search, analytics and many aspects of page rendering and refreshing.

    • katy ✨@piefed.blahaj.zoneOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      11 hours ago

      The web isn’t just HTML and server side scripting anymore. A modern website uses Javascript for many key essentials of the site’s operation.

      which is why the modern web is garbage

  • swelter_spark@reddthat.com
    link
    fedilink
    English
    arrow-up
    0
    ·
    14 hours ago

    Love it when a page loads, and it’s just a white blank. Like, you didn’t even try. Do I want to turn JS on or close the tab? Usually, I just close the tab and move on. Nothing I need to see here.

    • Croquette@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      0
      ·
      11 hours ago

      React tutorial are like that. You create a simple HTML page with a script and the script generates everything.

      I had to do a simple webpage for an embedded webserver and the provider of the library recommended preact, the lightweight version of react. Having no webdev experience, I used preact as recommended and it is a nightmare to use and debug.

  • normalexit@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    16 hours ago

    Developers are still familiar with the concept, there are even ideas like server side rendering in react to make sites more SEO friendly.

    I think the biggest issue is that there is very little business reason to support these users. Sites can be sued over a lack of accessibility and they can lose business from bad ux, so they are going to focus in those two areas ten times out of ten before focusing on noscript and lynx users. SEO might be a compelling reason to support it, but only companies that really have their house in order focus in those concerns.

  • moseschrute@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    19 hours ago

    I’ve spent the last year building a Lemmy and PieFed client that requires JavaScript. This dependency on JavaScript allows me to ship you 100% static files, which after being fully downloaded, have 0 dependency on a web server. Without JavaScript, my cost of running web servers would be higher, and if I stopped paying for those servers, the client would stop working immediately. Instead, I chose to depend heavily on JavaScript which allows me to ship a client that you can fully download, if you choose, and run on your own computer.

    As far as privacy, when you download my Threadiverse client* and inspect network requests, you will see that most of the network requests it makes are to the Lemmy/PieFed server you select. The 2 exceptions being any images that aren’t proxied via Lemmy/PieFed, and when you login, I download a list of the latest Lemmy servers. If I relied on a web server for rendering instead of JavaScript, many more requests would be made with more opportunities to expose your IP address.

    I truly don’t understand where all this hate for JavaScript comes from. Late stage capitalism, AI, and SAS are ruining the internet, not JavaScript. Channel your hate at big tech.

    *I deliver both web and downloadable versions of my client. The benefits I mentioned require the downloaded version. But JavaScript allows me to share almost 100% code between the web and downloaded versions. In the future, better PWA support will allow me to leverage some of these benefits on web.

    • Cam@scribe.disroot.org
      link
      fedilink
      English
      arrow-up
      0
      ·
      17 hours ago

      The matter is not javascript per se but the use companies and new developers do, if everyone used like you there would probably be no problem. A gazillion dependencies and zero optimization, eating up cpu, spying on us, advertisements…

      And if you try and use an alternative browser you know many websites won’t work.

    • monobot@lemmy.ml
      link
      fedilink
      English
      arrow-up
      0
      ·
      18 hours ago

      Problem is so many websites are slow for no good reason.

      And JS is being used to steal our info and push aggressive advertisment.

      Which part is unknown to you?

      • cley_faye@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        3 hours ago

        Problem is so many websites are slow for no good reason.

        Bad coding is a part of it. “It works on my system, where the server is local and I’m opening the page on my overclocked gamer system”. Bad framework is also a part of it. React, for example, decided that running code is free, and bloated their otherwise very nice system to hell. It’s mildly infuriating moving from a fast, working solution to something that decided to implements basic language features as a subset of the language itself.

        Trackers, ads, dozen (if not hundreds) of external resources, are also a big part of it. Running decent request blocking extensions (stuff like ublock origin) adds a lot of work to loading a page, and still makes them seems more reactive because of the sheer amount of blocked resources. It’s night and day.

      • Infinite@lemmy.zip
        link
        fedilink
        English
        arrow-up
        0
        ·
        16 hours ago

        Problem is so many trains are ugly for no good reason.

        And steel is being used to shoot people and stab people aggressively.

      • moseschrute@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        17 hours ago

        I don’t understand why we are blaming the stealing info part on JavaScript and not the tech industry. Here is an article on how you can be tracked (fingerprinted) even with JavaScript disabled. As for slow websites, also blame the tech industry for prioritizing their bottom line over UX and not investing in good engineering.

  • kieron115@startrek.website
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    21 hours ago

    I thought graceful degradation in terms of web design was mostly just to promote using the latest current browser features but to allow it to fall back to the feature set of, say, 1 or 2 previous browser versions. Not to support a user completely turning off a feature that has been around for literal decades? I think what you’re promoting is the “opposite” side, progressive enhancement, where the website should mostly work through the most basic, initial features and then have advanced features added later for supported browsers.

    • rumba@lemmy.zip
      link
      fedilink
      English
      arrow-up
      0
      ·
      20 hours ago

      Not OP, But welcome to my TED talk.

      Supporting disabled JavaScript is a pretty significant need for accessibility features. None of the text browsers supported JavaScript until 2017, and there’s still a lot of old tech out there that doesn’t deal well with it.

      It wasn’t until the rise of react and angular that this became a big deal. But, It’s extremely common now to send most of the website as code. And even scrapers now support JavaScript.

      There’s no “minor point” clause on the term graceful degredation. At the same time, there’s no minimum requirement. Would it be good to be thorough and provide a static page? I’d say yes but it’s not like anyone is going to do that anymore.

      The tables have turned, You can no longer live without JavaScript and now you need browsers that lie about your screen resolution, agent and your plugins because mega corps can sniff who you are by the slightest whiff of your configs.

      And that’s NOT pretty cool

      • kieron115@startrek.website
        link
        fedilink
        English
        arrow-up
        0
        ·
        18 hours ago

        Thanks for the response, good points all around. The fingerprinting is the most convincing argument to me but I think the accessibility issue you bring up is more important.

  • rdri@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 day ago

    i, as a user, should be able to switch off javascript

    Webdevs don’t care. They were vibe coding even before AI became a thing. It’s my personal opinion that they should not deserve to be called “developers”.

  • Jimmycrackcrack@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 day ago

    I don’t know anything about web development but, is it really fair to say it should work exactly the same with JavaScript turned off? If that were achievable why would it be there in the first place? I assume the graceful degradation concept is supposed to be that as you strip away more and more layers of additional functionality, the core functions remain or at least some kind of explanation is given to the user why things don’t work.

    • ElectricMachman@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      0
      ·
      21 hours ago

      People do stuff in JavaScript that you really don’t need JavaScript for. You don’t need JS to display a store listing, for instance. Or a news page, or documentation, or even a search engine

      • Jimmycrackcrack@lemmy.ml
        link
        fedilink
        English
        arrow-up
        0
        ·
        20 hours ago

        Ok, I’m seeing this a lot and I get it, and despite my lack of expertise in the field I can sympathize with the sentiment. Perhaps those replies are answering more in the spirit of the post than the letter.

        It’s just that the title asked if no one knew what this ‘graceful degradation’ concept was anymore and the text used the example specifically that the page should be exactly the same with or without JavaScript switched on which, without trying to be facetious, sounded kind of logically impossible.

  • NigelFrobisher@aussie.zone
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 day ago

    I built an internal tool that works with or without js turned on, but web devs want something simple for them with a framework, which is why you have to download 100Mb just for a basic form page.

  • scarabic@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 day 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.

    • rottingleaf@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      21 hours ago

      This has to be fixed though. I don’t know, how, but it’s an economic situation bringing enormous damage every moment.

      And most of people it affects are, like me, in countries where real political activism is impossible.

      This is the next thing that should be somehow resolved like child labor, 8-hour workdays, women’s voting rights and lead paint. Interoperability and non-adversarial standards of the global network.

      • scarabic@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        16 hours ago

        enormous

        It isn’t though. Thats the exact point. It’s a moderate effort that would prevent infinitesimal damage. That’s just not good math. People have to prioritize their time. If you have a numbers case to make about why the damage is so enormous, make it. That’s what it will take to be convincing: numbers.

      • Shanmugha@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        20 hours ago

        What should be fixed is people. The above described logic is true, it does really happen, and behind it is the idiot desire: to get more money. Not to make a better thing, not to make someone’s life better, not to build something worthwhile - in other words, nothing that could get me out of bed in the morning. When that’s the kind of desires fueling most companies and societies, all things will be going in all kinds of wrong ways

        • scarabic@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          16 hours ago

          the idiot desire to get more money

          Yes, but we don’t have to make a total caricature out if it. We all need to prioritize our time. That isn’t evil, or broken, or wrong. That’s just life.

            • scarabic@lemmy.world
              link
              fedilink
              English
              arrow-up
              0
              ·
              11 hours ago

              Developers having a narrower list of browsers to support is not ONLY about greed. You say it is NOT about making something that works to improve people’s lives. And I disagree with that.

              You can’t build a good piece of software and try To support every client under the sun since the beginning of time. There is a reasonable point to draw some lines and prioritize.

              So while greed is ONE factor, you seem to be saying it’s the only factor, and that people are stupid and broken for doing this. That’s going too far.

              It’s unrealistic to expect perfection. Today people want comprehensive client support. Tomorrow they will be outraged at some bug. But few realize: you may have to pick between the two. Because having zero bugs is a lot more achievable if you can focus on a small list of current browser clients. That’s just a fact. The next day they will be upset that there are ads in the site, but it may be ad revenue that pays for developers to fix all the bugs for all browser clients under the sun.

              People love to rant online about how NO you should give me EVERYTHING and do it for FREE but this is childish tantruming and has no relationship to reality. Devs are not an endless resource that just gives and gives forever. They are regular people who need to go home at night like anyone else.

        • rottingleaf@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          20 hours ago

          That can’t be fixed. We can’t wait for a different kind of human (what if it’ll be an artificial psychopath anyway) to fix our current thing.

          So hard to disrupt means of organizing (for associations, unions and such, unofficial) and building electoral systems (for Internet communities even, why not) are needed ; social media gave people a taste of that to lure them before subverting it all, but the idea is good.

          Some sort of a global system. When it’s in place, improvement around will follow.

          • Shanmugha@lemmy.world
            link
            fedilink
            English
            arrow-up
            0
            ·
            20 hours ago

            It can be fixed: we can choose to produce less idiots and more caring people. You are right, of course, that it is not the only thing we should be doing