There are a couple I have in mind. Like many techies, I am a huge fan of RSS for content distribution and XMPP for federated communication.

The really niche one I like is S-expressions as a data format and configuration in place of json, yaml, toml, etc.

I am a big fan of Plaintext formats, although I wish markdown had a few more features like tables.

  • Kissaki@programming.dev
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    16 days ago

    I wish standards were always open access. Not behind a 600 dollar paywall.

    When it is paywalled I’m irritated it’s even called a standard.

  • flameguy21@lemm.ee
    link
    fedilink
    English
    arrow-up
    3
    ·
    17 days ago

    It’s completely bonkers that JPEG-XL is as good as it is and no one wants to actually implement it into web browsers

  • pHr34kY@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    17 days ago

    IPv6. Stop engineering IoT junk on single-stack IPv4, you dipshits.

    Ogg Opus. It’s superior to everything in every way. It’s free and there is absolutely no reason to not support it. It blows my mind that MPEG 1.0 Layer III is still so dominant.

    • mox@lemmy.sdf.org
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      17 days ago

      It blows my mind that MPEG 1.0 Layer III is still so dominant.

      Count the number of devices in use today that will never support Opus, and it might not blow your mind any longer. Also, AFAIK, the reference implementation still doesn’t implement full functionality on hardware that lacks a floating point unit.

      These things take time.

  • mox@lemmy.sdf.org
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    17 days ago

    ISO 8601 date format. Not because it’s from a standards body, but because it’s simple, sensible, clearly defined, easy to recognize, and very effective.

    Date field placement in any order other than most-significant-digits-first is not only counterintuitive, but needlessly complicated to work with. Omitting critical information like the century is ambiguous and confusing.

    We don’t live in isolated villages any more. Mixing and matching those problems by accepting all the world’s various regional and personal date styles, especially with no reliable indication of which ones apply in any given case, leads to the hodgepodge of error-prone date madness that we have today.

    The 2024-09-02 format should be taught in schools and required in official documents. Let the antiquated date styles fall into disuse outside of art and personal correspondence, like cursive writing.

  • filister@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    17 days ago

    The metric system, f*ck the imperial system. Every scientist sticks to the metric system, and why are people even still having an imperial system, with outdated measurements like stones for weight blows my mind.

    Also f*ck Fahrenheit, we have Celsius and Kalvin for that, we don’t need another hard to convert temperature measurement.

    • mox@lemmy.sdf.org
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      16 days ago

      Also f*ck Fahrenheit, we have Celsius and Kalvin for that,

      Who is Kalvin? Did you mean kelvin?

      One drawback of celsius/centigrade is that its degrees are so coarse that weather reports / ambient temperature readings end up either inaccurate or complicated by floating point numbers. I’m on board with using it, but I won’t pretend it’s strictly superior.

      • tleb@lemmy.ca
        link
        fedilink
        arrow-up
        1
        ·
        16 days ago

        A degree Celsius is not coarse and does not require decimals in weather reports, and I suspect only a person who has never lived in a Celsius-using country could make such silly claims.

    • kn33@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      arrow-down
      1
      ·
      17 days ago

      I’ll fight you on fahrenheit. It’s very good for weather reporting. 0° being “very cold” and 100° being “very hot” is intuitive.

      • RecluseRamble@lemmy.dbzer0.com
        link
        fedilink
        arrow-up
        0
        ·
        16 days ago

        For traffic Celsius is more intuitive since temps approaching zero means slippery roads.

        You’re long passed that with Fahrenheit. And on a scale from 0 very cold to 100 very hot, 32 doesn’t seem that cold. Until you see the snow outside.

          • ulterno@lemmy.kde.social
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            15 days ago

            my sense of temperature is much different than someone from somewhere warm

            That’s probably the reason for this preference.

            10°C for me means my PC doesn’t heat up the room enough and I need a heater. 32°F and I will be shoving my feet in the heater.

          • Minnesotan here. Can confirm that 32 is still long-sleeve shirt weather.

            I regularly see people here walking into a store from the parking lot in T-shirts, in 32° weather. Wind chill makes a far greater difference. 38° from wind chill is far colder than 32° with no wind.

      • arendjr@programming.dev
        link
        fedilink
        arrow-up
        0
        ·
        edit-2
        16 days ago

        0° being “very cold” and 100° being “very hot” is intuitive.

        As someone who’s not used to Fahrenheit I can tell you there’s nothing intuitive about it. How cold is “very cold” exactly? How hot is “very hot” exactly? Without clear references all the numbers in between are meaningless, which is exactly how I perceive any number in Fahrenfeit. Intuitive means that without knowing I should have an intuitive perception, but really there’s nothing to go on. I guess from your description 50°F should mean it’s comfortable? Does that mean I can go out in shorts and a t-shirt? It all seems guesswork.

        • Remavas@programming.dev
          link
          fedilink
          arrow-up
          0
          ·
          16 days ago

          About the only useful thing I see is that 100 Fahrenheit is about body temperature. Yeah, that’s about the only nice thing I can say about Fahrenheit. All temperature scales are arbitrary, but since our environment is full of water, one tied to the phase changes of water around the atmospheric pressure the vast majority of people experience just makes more sense.

          • AnAmericanPotato@programming.dev
            link
            fedilink
            English
            arrow-up
            0
            ·
            edit-2
            16 days ago

            All temperature scales are arbitrary, but since our environment is full of water, one tied to the phase changes of water around the atmospheric pressure the vast majority of people experience just makes more sense.

            But when it comes to weather, the boiling point of water is not a meaningful point of reference.

            I suppose I’m biased since I grew up in an area where 0-100°F was roughly the actual temperature range over the course of a year. It was newsworthy when we dropped below zero or rose above 100. It was a scale everybody understood intuitively because it aligned with our lived experience.

            • Remavas@programming.dev
              link
              fedilink
              arrow-up
              1
              ·
              11 days ago

              But when it comes to weather, the boiling point of water is not a meaningful point of reference.

              Well, the freezing point of water is very relevant for weather. If I see that the forecast is -1 degC when it was positive before, I know I will have to watch out for ice on roads.

              And the boiling point as the other reference point makes complete sense.

    • tyler@programming.dev
      link
      fedilink
      arrow-up
      0
      arrow-down
      1
      ·
      16 days ago

      Imperial is used in thermodynamics industries because the calculations work out better.

  • webbureaucrat@programming.dev
    link
    fedilink
    arrow-up
    1
    ·
    16 days ago

    I’ll give my usual contribution to RSS feed discourse, which is that, news flash! RSS feeds support video!

    It drives me crazy when podcasters are like, “thanks for listening to our audio podcasts. We also have a video feed for our YouTube subscribers.” Just let me have the video in PocketCasts please!

    • monk@lemmy.unboiled.info
      link
      fedilink
      arrow-up
      1
      ·
      6 days ago

      I just wrote a YouTube scraper and exported to RSS and into my podcast client. Using YouTube any other way is masochism in comparison.

  • madnificent@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    17 days ago

    The semantic web and social linked data. We could have applications share data without depending on big tech, but rather based on application standards.

    It can be used today and gains traction but I wouldn’t mind it going faster. Especially the interoperable personal app space could use some love and attention.

      • madnificent@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        15 days ago

        Exactly. The Semantic Web is broader than Solid but Solid is great for personal apps.

        Say you buy a smartphone. The specifications of the smartphone likely belong elsewhere than in a Solid Personal Online Datastore, but they can be pulled in from semantic data on the product website. Your own proof of purchase is a great candidate for a Solid POD, as is the trace of any repairs made to it.

        These technologies are great to cross the barriers between applications. If we’d embrace this, it would be trivial to find the screen protector matching your exact smartphone because we’d have an identifier to discover its type and specifications. Heck, any product search would be easier if you could combine sources and compare with what you already have.

        The sharing tech exists. Building apps works also. Interpreting the information without building a dedicated interface seems lacking for laymen.

    • Cyclohexane@lemmy.mlOP
      link
      fedilink
      arrow-up
      0
      ·
      17 days ago

      I never really quite understood IPFS and why it gets used where I see it today. What problem is it solving?

      • madnificent@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        17 days ago

        IPFS would replace Content Delivery Networks in present day.

        It would also allow you to host software and other content from your own network again without the constraints modern Internet Service Providers pose on you to limit your self-hosting capabilities.

        If applications are built for it, it could serve as live storage for your applications too.

        We ran ipf-search. In one of the experiments we could show that a distributed search index on ipfs-search, accessible through JavaScript is likely feasible with the necessary research. Parts of the index would automatically be hosted by clients who used the index thus creating a fairly resilient system.

        Too bad IPFS couldn’t get over the technical hurdles of limiting connection setup time. We could get a fast (ElasticSearch based) index running and hosted over common web technologies, but fetching content from IPFS directly was generally rather slow.

        • Valmond@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          16 days ago

          Would you be interested in a similar protocol that supports more things (and is IMO easier to set up)?

          • madnificent@lemmy.world
            link
            fedilink
            arrow-up
            0
            ·
            15 days ago

            I’m not actively looking but please do share references! Other people may read this and they may want to know too. Perhaps I’ll jump back in the rabbit hole at some point too 😁

            • Valmond@lemmy.world
              link
              fedilink
              arrow-up
              1
              ·
              14 days ago

              Okay here it goes!

              Tenfingers sharing protocol & python implementation (your python needs cryptodomex, or use the frozen executables).

              http://tenfingers.org

              You share theirs, they share yours (all encrypted)! So no benevolent nodes or crypto and it’s 100% decentralised.

              I’m working on a better documentation on how to set it up (just forward a port and run setup basically).

              • madnificent@lemmy.world
                link
                fedilink
                arrow-up
                3
                ·
                11 days ago

                I had to read the overview and it looks nice. It reads like IPFS without some of the challenging cruft. Well written!

                IPFS seemingly works small scale but not large scale. What makes tenfingers handle millions of files and petabytes of data better than IPFS? Perhaps that is not the goal. In what way do you think the tech scales? Why will discovery of the node which has the data be short?

                I want to ask for benchmarks but you can’t do a full benchmark without loads of resources.

                • Valmond@lemmy.world
                  link
                  fedilink
                  arrow-up
                  2
                  ·
                  edit-2
                  11 days ago

                  Thanks!

                  IPFS is static, whereas tenfingers is dynamic when it comes to the links. So you can update the shared data without the need of redistributing the link.

                  That said, its also very different tech wise, there is no need for benevolent nodes (or some crypto or payment).

                  Nodes do not need to be trustworthy either, so node discovery is very simple (basically just ask other nodes for known nodes).

                  The distribution part, where nodes share your data, is based on reciprocal sharing, you share theirs and they share yours. If they don’t share any more (there are checks) you just ditch the deal and ask for a new deal with another node.

                  With over sharing (default is you share your data with 10 other nodes, sharing their data) this should both make bad nodes a no problem, but also make for good uptime and takedown safety.

                  This system also makes it scalable infinitely node wise, as every node does not need to know all other nodes, just enough for their need (for example thousands out if millions of existing nodes).

                  To share lots if data, you need to bring enough storage and bandwith to the table because it’s reciprocal, so basically it’s up to your node how much it can share.

                  Big data sets are always complicated because of errors and long download times, I have done 300MB files without problems, but the download process sure can be made better (with parallel downloading for example and better error handling).

                  I haven’t worked on sharing way bigger datasets, even a simple terabyte is a pita to download on the regular internet :-) and the use case is more the idea of sharing lots of smaller data, like a website for example, or a chat.

                  What do you think, am I missing something important? Or of course if you have other questions please do ask!

                  Also, sorry I’m writing this on my mobile so it’s not very well written.

                  Edit: missed one question; getting the data is straight forward to use (a bit complicated how it’s handled because of the changing nature of things) but when you download, you have the addresses of the nodes sharing your data so you just connect to one of them and download it (or the next if the first one isn’t up etc and so on). So that should not be any kind of bottleneck.

  • seth@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    14 days ago

    Oddly having several variants rather than a standard despite “regular” being in the name: everyone I work with eschews regex but after finally taking the time to learn more than just the basics of it a few years ago I find it so incredibly useful almost daily.

      • seth@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        14 days ago

        regex101.com has a convenient searchable cheat sheet for all the somewhat odd but powerful functions like negative lookbehind/lookahead with a brief explanation of each, a regex pattern input with checkable boxes that helps you get down single replacements vs global replacements, a large input that lets you dump text to test against the pattern, an explanation on the right of what each symbol is trying to match, and the left side lets you switch between the different flavors to see some of the variants between languages/standards. I still have a lot to learn before I’ll consider it mastered, but I have enough common stuff memorized now that it works great for me!

    • FizzyOrange@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      15 days ago

      The biggest problems with gRPC are:

      1. Very complicated. Way more complexity than you want in most cases.
      2. Depends on HTTP 2. I’ve seen people who weren’t even doing web stuff reach for gRPC, and now boom you have a web server in your stack for now reason. Compare to Thrift which properly separates out encodings, transports, etc.
      3. Doesn’t work from the web. There are actually two modifications to gRPC to make it work on the web which means you have three different incompatible versions of gRPC with different feature sets. IIRC some of them require setting up complex proxies, some don’t support streaming calls, ugh. Total mess.

      Plain HTTP can be type safe. Just publish JSON schema or Typespec files or even use Protobuf.

  • frezik@midwest.social
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    15 days ago

    I’d like something akin to XML DOM for config files, but not XML.

    The one benefit of binary config (like the Windows Registry) is that you can make a change programmatically without too many hoops. With text files, you have a couple of choices for programmatic changes:

    • Don’t
    • Parse it, make the change, and rewrite it (clobbering comments and whitespace that the user setup; IIRC, npm does this)
    • Have some kind of block that says “things below this line were automatically set and shouldn’t be touched” (Klipper does this)
    • Have a parser that understands the whole structure, including whitespace and comments, and provides an interface for modifying things in place without changing anything around it (XML DOM)

    That last one probably exists for very specific formats for very specific languages, but it’s not common. It’s a little more cumbersome to use as a programmer–anyone who has worked with XML DOM will attest to that–but it’s a lot nicer for end users.

  • kersplomp@programming.dev
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    16 days ago

    Zigbee or really any Bluetooth alternative.

    Bluetooth is a poorly engineered protocol. It jumps around the spectrum while transmitting, which makes it difficult and power intensive for bluetooth receivers to track.

    • SirEDCaLot@lemmy.today
      link
      fedilink
      arrow-up
      0
      arrow-down
      2
      ·
      16 days ago

      Not matrix? XMPP is a good idea, but the wildly different levels of support among clients cause problems even back in its heyday Matrix solves some of that, fully encrypted, chat history stored on the server in encrypted form, supports gateways to other services.

      • Feathercrown@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        16 days ago

        Honestly I just haven’t looked at Matrix yet. Unfortunately like many of the privacy-centric protocols it’s mostly used by people trying to hide something.

        • SirEDCaLot@lemmy.today
          link
          fedilink
          arrow-up
          0
          arrow-down
          1
          ·
          14 days ago

          This is really not accurate. Matrix is not designed to be a super privacy first protocol. It’s like Lemmy in the it’s designed to solve a problem and be a useful federated collaboration tool. It borrows features from a number of popular messaging platforms. Message history is stored on the server but encrypted client side so privacy is preserved. It supports group chat rooms. It supports voice and video. And most importantly, it supports bridges- you can connect your matrix to other services that are completely incompatible with matrix using a bridge. Perhaps the best example of this is Beeper, which is built on matrix. They are trying to replicate the user experience of the old app Trillian- beeper can link with a number of chat services including Google messages, slack, WhatsApp, telegram, signal, etc. Thus you get all your chats in one place.

                • SirEDCaLot@lemmy.today
                  link
                  fedilink
                  arrow-up
                  3
                  ·
                  13 days ago

                  (This is not an insult, I just had a realization that I think might affect you)-- do you know what the name comes from?

                  Years ago there was a thing called a beeper before everyone had cell phones. It was a one way paging system-- you’d give your friends your beeper number, they’d call it, type in their phone number, and their number (or whatever they dialed in) would appear on your beeper. You’d then use a landline phone to call them back (early versions of the system had no text or reply capability, only numbers and only one-way).

                  I always thought it was a cool name. But thinking about it I realize someone less than maybe 25-30 years old might literally have never encountered such a device. Much like a 5.25" floppy disk or rotary dial phone, they went out of style years ago and a young person might never have encountered one.

                  Curious if that’s you?

      • matcha_addict@lemy.lol
        link
        fedilink
        English
        arrow-up
        0
        ·
        16 days ago

        Those problems you speak of about XMPP are not really a concern anymore and haven’t been for a while.

        Matrix on the other hand is very difficult to implement, and currently there’s only one (maybe two?) viable implementation choices. It is way over complicated, resource intensive, and has privacy issues.

        • timbuck2themoon@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          1
          ·
          15 days ago

          Does it have privacy issues compared to XMPP which doesn’t enforce the privacy extensions? I figure they are about the same there. Asking genuinely as I do not know other than Matrix might leak some metadata.

          And quite frankly, I really wish we’d just agree on one or the other. Would love to host an instance and move some people to it but both are just stuck in this quasi-half used/half not state. And even people on here can’t agree what should be “standard.”

          • matcha_addict@lemy.lol
            link
            fedilink
            English
            arrow-up
            1
            ·
            15 days ago

            Xmpp definitely wins in privacy. What is there to privacy more than message content and metadata? Matrix definitely fails the second one, and is E2E still an issue for public groups? I don’t remember if they fixed that.

            XMPP being a protocol built for extensibility means it will be hard for it not to keep up with times.

            On your point of picking one or the other, I’d say pick the one you like and bridges will help you connect to the other. But XMPP came way before matrix, and I believe they fractured the community instead of building it.

            There’s a good reason all the big techs built on top of xmpp (meta, Google, etc). It’s a very good protocol and satisfies modern demands very well.

            • SirEDCaLot@lemmy.today
              link
              fedilink
              arrow-up
              1
              ·
              6 days ago

              Xmpp definitely wins in privacy. What is there to privacy more than message content and metadata? Matrix definitely fails the second one, and is E2E still an issue for public groups? I don’t remember if they fixed that.

              XMPP being a protocol built for extensibility means it will be hard for it not to keep up with times.

              Okay so how does modern XMPP protect this? When I last used XMPP, some (not all) clients supported OTR-IM, a protocol for end to end encryption. And there wasn’t a function for server stored chat history (either encrypted or plaintext).
              Have these issues been fixed?

              • ambitiousslab@lemmy.ml
                link
                fedilink
                English
                arrow-up
                1
                ·
                edit-2
                2 days ago

                It’s not perfect yet, but it’s much, much better than the old days.

                OMEMO is supported by every major client, and they interoperate successfully. Unfortunately, most clients are stuck with an older version of the OMEMO spec. It’s not ideal, but it doesn’t cause any practical issue, unless you use Kaidan or UWPX, which only support the latest version.

                All popular clients and servers support retrieving chat history now too.

                In practice, I’ve been using it for several months to chat with friends and family, and haven’t had any issues.

  • Kissaki@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    16 days ago

    TOML instead of YAML or JSON for configuration.

    YAML is complex and has security concerns most people are not aware of.

    JSON works, but the block quoting and indenting is a lot of noise for a simple category key value format.

    • FizzyOrange@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      15 days ago

      TOML is not a very good format IMO. It’s fine for very simple config structures, but as soon as you have any level of nesting at all it becomes an unobvious mess. Worse than YAML even.

      What is this even?

      [[fruits]]
      name = "apple"
      
      [fruits.physical]
      color = "red"
      shape = "round"
      
      [[fruits.varieties]]
      name = "red delicious"
      
      [[fruits.varieties]]
      name = "granny smith"
      
      [[fruits]]
      name = "banana"
      
      [[fruits.varieties]]
      name = "plantain"
      

      That’s an example from the docs, and I have literally no idea what structure it makes. Compare to the JSON which is far more obvious:

      {
        "fruits": [
          {
            "name": "apple",
            "physical": {
              "color": "red",
              "shape": "round"
            },
            "varieties": [
              { "name": "red delicious" },
              { "name": "granny smith" }
            ]
          },
          {
            "name": "banana",
            "varieties": [
              { "name": "plantain" }
            ]
          }
        ]
      }
      

      The fact that they have to explain the structure by showing you the corresponding JSON says a lot.

      JSON5 is much better IMO. Unfortunately it isn’t as popular and doesn’t have as much ecosystem support.

      • Hawk@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        15 days ago

        You’re using a purposely convoluted example from the spec. And I think it shows exactly how TOML is better than JSON for creating config files.

        The TOML file is a lot easier to scan than the hopelessly messy json file. The mix of indentation and symbols used in JSON really does not do well in bigger configuration files.

    • NostraDavid@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      15 days ago

      YAML is complex and has security concerns most people are not aware of.

      YAML is racist to Norwegians.

      If you have something like country: NO (NO = Norway), YAML will turn that into country: False. Why? Implicit casting. There are a bunch of truthy strings that’ll be cast automagically.