• 22 Posts
  • 2.06K Comments
Joined 6 years ago
cake
Cake day: May 31st, 2020

help-circle



  • Yeah, I always found it really valuable to know a person on the other side. Obviously, they’re not immune to propaganda either, but even just seeing the differences in propaganda can teach you a lot, both about which parts may be untrue, but also how propaganda works.

    For example, I once saw a guy on Mastodon, who posted a populist Indian news article and expressed his agreement. The article was about some policy the EU was discussing, following Putins attack on the Ukraine, which would’ve affected India.
    That policy was controversial here in the EU. I don’t remember what policy it was, but I didn’t feel good about it, my country (Germany) didn’t support it, but the EU as a whole did agree to it.

    Meanwhile, that article framed it as “Europe is doing a bad thing” and “the West is blah”.
    Like, man, I doubt, I would agree with my neighbor about this policy, but somehow I’m being generalized into an amorphous blob, the size of half the fucking planet.
    It dehumanizes. It makes it seem like we’re not open for discussion, despite us internally leading extremely heated discussions.

    But of course, we do the exact fucking same. We talk about India collectively all the time, even though it is much larger than the EU, with 1.4 billion different opinions. You don’t hear “the East” as often these days, but you do hear “Asia”, which is effectively just as meaningless of a word.

    And yeah, just seeing the inverse happen to me, made it instantly clear why this is shit, which I would not have even thought about, if I only ever read our news outlets.



  • Oh man, I don’t want to get deep into all the politics involved, but man, this reads like complete non-sense:

    The outage comes following Iranian attacks on the UAE as retaliation for US and Israeli strikes on Iran.

    If they did specifically target US corporations in UAE, that would make some amount of sense as direct retaliation.
    I guess, you can also attack UAE and hope that they pressure the US to stop invading.
    But in any case, this seems like a really good way to drag more nations into the conflict, or at least to force them to become active, which is not in the interest of Iran.


  • Oh man, seeing folks suggest it as a Discord alternative always had me uninterested, because I don’t even use Discord and it just seemed like yet-another-standard.
    Now I’m reading this really technical title for a talk which mentions XMPP and I’m instantly sold.

    Well, to be honest, “Movim” also sounded like a VC-funded startup. Looks like it’s a bus-factor-of-1 open-source project instead, which I have significantly more trust in.






  • Ephera@lemmy.mltoProgrammer Humor@programming.devTOML
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 days ago

    Well, I assume they had other concerns, too. For example, it adds a bunch of complexity for reformatting a JSON from single-line to pretty-print, if comments can appear in there. I’m certainly not saying that I’m always best friends with the decision to remove comments, just that I can somewhat understand it.


  • Ephera@lemmy.mltoProgrammer Humor@lemmy.mlTOML
    link
    fedilink
    English
    arrow-up
    2
    ·
    11 days ago

    I can understand the sentiment and would 100% agree for programming languages.
    But personally I actually like that it encourages a flat structure, because you do not want to be yakshaving the structure of your config file. Too much nesting means you will sooner or later run into configuration keys being nested under the wrong category, because your project context changed over time.

    And well, as I’ve argued in a few other comments already, I think non-techie users have a disproportionally simpler time when no nesting is used. They understand the concept of a heading and then just adding a line underneath the appropriate heading is really intuitive.
    You can just tell them to add the line certificate="/tmp/cert.crt" under [network.tls] and they will find a line in their config file which actually reads [network.tls] and they can just paste that line as-is.

    With nesting, they’d need to add it under here:

    network: {
        tls: {
            certificate: "/tmp/cert.crt"
        }
    }
    

    Which means:

    • You need some awkward explanation where they should nest it, or an explanation that e.g. “network.tls” translates to nesting.
    • They will ask whether they should indent the line you sent them.
    • Well, and it’s also surprisingly difficult to explain between which braces they should put the text, and that’s at the end of the braces, but not after the braces etc., if you’re talking to them on a call.

    It’s not even that I’m completely enamored with TOML, but this aspect is certainly growing on me…


  • Ephera@lemmy.mltoProgrammer Humor@lemmy.mlTOML
    link
    fedilink
    English
    arrow-up
    2
    ·
    12 days ago

    VSCode is Electron, i.e. a webpage, so it’s not hugely surprising that they opted for the natively supported JavaScript Object Notation. And also shows that they don’t care for using the right tool for the job to begin with.

    Personally, I much prefer TOML over YAML, because it does not have significant whitespace, and because you can read the spec in a reasonable amount of time. It just has so much less complexity, while still covering the vast majority of use-cases perfectly well.


  • Ephera@lemmy.mltoProgrammer Humor@programming.devTOML
    link
    fedilink
    English
    arrow-up
    9
    ·
    12 days ago

    They’re not supposed to contain data, but some parsers will allow you to access what’s written into comments. And so, of course, someone made use of that and I had to extract what was encoded basically like that:

    <!--
        Host: toaster,
        Location: moon,
    -->
    <data>Actual XML follows...</data>
    

    My best guess is that they added this data into comments rather than child nodes or attributes, because they were worried some of the programs using this XML would not be able to handle an extension of the format.


  • Ephera@lemmy.mltoProgrammer Humor@lemmy.mlTOML
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    12 days ago

    We just document that this is how you write the config file:

    [network]
    bind.host = "127.0.0.1"
    bind.port = 1234
    
    # etc.
    

    And that seems straightforward enough. Yeah, technically users can opt to use inline tables or raw strings or whatever, but they don’t have to.



  • Ephera@lemmy.mltoProgrammer Humor@programming.devTOML
    link
    fedilink
    English
    arrow-up
    11
    ·
    13 days ago

    I don’t feel like it will stray very far from what’s dubbed “TOML 0.1” in the meme. Yes, it has inline tables and as of TOML 1.1, they’re allowed to span multiple lines, so it’s technically not anymore illegal to do what’s in the meme. But all things considered, this is still a miniscule change compared to TOML 1.0.


  • Ephera@lemmy.mltoProgrammer Humor@lemmy.mlTOML
    link
    fedilink
    English
    arrow-up
    4
    ·
    13 days ago

    Well, you can still decide how much of the TOML features you actually use in your specific application. For example, I’m currently involved in two projects at $DAYJOB where we read TOML configurations and we don’t make use of the inline tables that OP memes about in either of them.

    Ultimately, the big advantage of TOML over INI is that it standardizes all kinds of small INI extensions that folks have come up with over the decades. As such, it has a formal specification and in particular only one specification.
    You can assume that you can read the same TOML file from two different programming languages, which you cannot just assume for INI.