Mine is that the useState hook is an actual plague on the entire React ecosystem. Regardless of your opinions of React, if you wanna use something then use it right.

  • MrScottyTay@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    10
    arrow-down
    1
    ·
    14 hours ago

    I actually really like C#, it’s my favourite. But don’t know how much of that is Stockholm syndrome at this point haha. But whenever I’m writing in other languages i always end up missing something i do regularly in c#, especially from it’s latest versions (which i also deeply miss when forced to work on legacy software that is still using shit like version 4 or 5 of C# (ASP.NET 4.8 / .NET standard) whereas I feel like C# really got good and fun to use from C# 8 onwards (I think this was .NET Core 3.0 or .NET 5 - we’re on C#14 now with .NET 10, with 15 on the horizon).

    • nightlily@leminal.space
      link
      fedilink
      English
      arrow-up
      2
      ·
      6 hours ago

      It’s a bit of a kitchen sink language now. I haven’t used it professionally in quite a while but using it for Godot (anything but gdscript) has me scratching my head over some of the architectural decisions. It seems to be led by „if people do a certain form often enough, add a shorthand to the language“, which is one way of cutting boilerplate, but does lead to something very hard-to-parse if you’re not familiar with it.

      • Valmond@lemmy.dbzer0.com
        link
        fedilink
        arrow-up
        1
        ·
        5 hours ago

        Heey Godot for the win! And yeah no gdscript please!

        C# is like a script language wanting to be a C++ contender (let’s switch everything around to show how different we are, sigh).

        They do have one thing right though, true & false aren’t True or TRUE etc. But man all the new() whatever all the time 😓.

        public int A {get; private set;} = 0;

        Beautiful eh 😐

      • ThirdConsul@lemmy.zip
        link
        fedilink
        arrow-up
        4
        ·
        10 hours ago

        Not the oc, but honestly just random shit, like:

        Linq.

        Async and await are both in python or rust, but still via anexternal provider afaik (like Tokio).

        Explicit interface implementation (default trait implementation for the Rust fans)?

        Nice source generators and what you can fo with them (kinda like aspect programming).

        Idk if python or js support pattern matching or proper low level or no GC coding.

        I also enjoy my langauges to have an end of statement character like ; instead of the horrible visual mess python is.

        Type safety of compile and runtime type checks lol. In C# if you say your module requires int parameter, noone will be able to call it passing None/null/string/date.

        • marcos@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          9 hours ago

          Linq

          AKA - We have Monads at home…

          Rust is really missing something like do syntax. It’s half-way there with the semicolon and question marks, but it’s missing an idiom for .map_or_else and to generalize the thing to work with a trait.

          • ThirdConsul@lemmy.zip
            link
            fedilink
            arrow-up
            1
            ·
            3 hours ago

            AKA - We have Monads at home…

            Thats not the linq purpose. Though it is technically a monad, its purpose is not hiding side effects or managing an async flow, or managing nulls/errors, but query, filter, map data from an enumerable.

            If you use Linq as a replacement for Option, Either or Maybe you’re doing something wrong.