• mozz@mbin.grits.dev
        link
        fedilink
        arrow-up
        1
        arrow-down
        1
        ·
        25 days ago

        Yeah

        I could maybe see it, if all you know otherwise is C++, and your experience with other languages is trying to make python / go / node / whatever work well on a Windows machine without well-working tooling, and then you finally try C# and it’s like oh shit, it’s not filling up my mouth with feces every time I want to iterate over a dictionary or need memory management, this is a big improvement, I like it

        But, VSCode has good support for those other languages now anyway

        And, the bigger question, who the fuck are all these people upvoting this

        Like what do you guys do all day? Or is this some subtle super sophisticated joke I am not understanding, or do you just like the man’s chin? Or do you just not program and you upvote programming things out of general excitement about the idea of doing programming?

        Who in the fuck is this excited about C# of all the things in the world to get excited about?

        I’m just baffled in general by it

          • mozz@mbin.grits.dev
            link
            fedilink
            arrow-up
            0
            ·
            25 days ago

            Yeah. That’s what I was saying - it is clearly superior to C++ and probably to Java but those are like the worst two languages in the meta. It’s like hey this is a clear improvement over what we were doing 40 years ago that’s acknowledged by everyone has aged poorly.

            Idk man, I’m not trying to be bigoted about it just saying my experience is more pleasant with a few other languages available outside of that grouping.

            • JustAnotherRando@lemmy.world
              link
              fedilink
              arrow-up
              2
              ·
              25 days ago

              It very much depends on what you’re trying to do. C# is pretty great for developing APIs, especially in an enterprise environment involving a lot of business logic. I don’t have much of an opinion on Django as I haven’t spent enough time looking into it, but I have looked at enough Node.js code to know I don’t prefer it for most of the projects I’ve been involved in.
              My Python experience is largely based in working with things like Raspberry Pis, and relatively simple jobs where Python made the job pretty easy. I don’t know enough experience with larger Python projects to have a feel for what good architecture in a complex application looks like.
              With C#, I can go into a large application using good practices and quickly navigate the code and be productive.

  • anus@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    25 days ago

    pervasive unchecked nullability

    Framework management is hell, fat binaries inconvenient and not default

    No option monad in the standard lib

    Cross version dependencies simply don’t work in some contexts

    Compiler output only marginally better than working with c++

    At least it doesn’t have Gradle.

    • ඞmir@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      25 days ago

      pervasive unchecked nullability

      Addressed nowadays with the question mark and exclamation mark syntax, and programming without nullability is a pain

      Framework management is hell, fat binaries inconvenient and not default

      Nuget?

      Compiler output only marginally better than working with c++

      No one claims it’s faster at runtime than good C++, it’s just a lot easier to write decent code

      • Billegh@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        24 days ago

        Compiler output only marginally better than working with c++

        No one claims it’s faster at runtime than good C++, it’s just a lot easier to write decent code

        I think they’re referring to warning and error content. Compared to things like rust, deciphering error notifications from the c# compiler can sometimes feel like trying to figure out what a child with limited vocabulary is trying to tell you.

        Even with decades of personal experience with it, they can be confusing and non-informative sometimes for me.

    • AdamBomb@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      1
      ·
      25 days ago

      Null reference checking by the compiler is enabled by default in new C# projects.

      C# doesn’t come with an option monad in its standard library, but its cooler sibling F# does.

      • Static_Rocket@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        25 days ago

        Microsoft tried to lock a development feature behind a paywall by introducing an artificial dependency on Visual Studio.

        This also happened to occur right around the time there were also licensing and hosting issues around open source libraries. The manipulation of the .NET foundation was the really concerning part. Made it clear that MS still doesn’t give a damn about the wider community using their language.

    • AAA@feddit.de
      link
      fedilink
      arrow-up
      0
      arrow-down
      2
      ·
      24 days ago

      Everything I don’t like is an ad.

      Seriously. People. Get off your high horses. It’s a fucking greetext of someone liking something.

  • Zimeron@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    25 days ago

    Always seems like you have to reinvent the wheel in .NET and I’m missing something. Is there a nice set of ready to go libraries like Spring Boot?

    • FrostyCaveman@lemm.ee
      link
      fedilink
      arrow-up
      1
      ·
      25 days ago

      I get the sense that’s what .NET itself is meant to be

      It’s a very insular ecosystem IMO, and the lines between .NET, C# and Visual Studio are very blurry

  • voxel@sopuli.xyz
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    24 days ago

    i tried using c# for lower-level-ish tasks and it was even more painful than js (emulation development, specifically). who the fuck decided that all math operations should cast to int???

    • Heavybell@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      24 days ago

      I program professionally in C# and I gotta say, it really isn’t for that. You can do services in it, but that’s as low level as I’d suggest. It’s definitely a high level language for rapid dev of web and desktop stuff.

  • EnderMB@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    25 days ago

    IMO C# is at the point where Java can probably just die. I don’t see a point in keeping Java when C# is a viable option in many use cases.

    • GissaMittJobb@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      25 days ago

      I don’t think this line of reasoning is strictly speaking correct, but assuming it was, then I think it would follow that Kotlin exists and as such C# does not need to be kept around.

    • grue@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      25 days ago

      I’m sure Microsoft will be happy to know their EEE strategy is finally paying off, only two decades late.