Skip Navigation
InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)AD
AdamBomb @lemmy.sdf.org
Posts 0
Comments 102
Anon discovers .NET
  • Well, for starters, it's a greentext, so who knows how genuine it is, right? Most of the points listed are either subjective or citation needed fodder. However, maybe there's one fact I can bring to the table:

    ASP.NET's benchmark performance ranked 16th in Round 22 of the TechEmpower Web Framework Benchmarks, ranking below solutions written in Rust, C, Java, and JS. C# has advantages over each of those languages and frameworks in exchange for the relative loss in performance. Rust and C are much lower level. Java's syntax is generally considered to lag behind C#'s at this point. JS's disadvantages could fill a whole post of their own. C# and .NET have their own disadvantages (such as relatively fewer libraries available) as you've pointed out in this thread and another in this post, but when you take into consideration the relatively high performance while being a strongly-typed higher-level language with plenty of nice QoL features, you might be able to see why it could be attractive to a specific slice of professionals.

  • Anon discovers .NET
  • Yeah, 100%. I don't really recognize the complaint that "it isn't in the standard library" as being super valid. If you know what an option monad is and you want to use one, you can certainly create one. Lots of people don't know what it is and won't miss it, especially in this context since the option monad is a functional construct and C# is an objects-first language.

  • Anon discovers .NET
  • It can be even simpler than that. With the so-called “Minimal API” framework lets you define an entire web app with simple functions. This article shows some samples of what it looks like to create a web app in this style.

  • Anon discovers .NET
  • 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.

  • Have you ever clicked on an ad *on purpose?*
  • No, but after I blocked ads at the router, my spouse started complaining that they couldn’t open ads anymore. I disabled ad blocking in the router, but not without some level of consternation. I have ads blocked at the device level for all my devices so no harm done.