Live data from Hacker News

The Case for C# and .NET

chrlschn.medium.com

81–90 of 376 posts

Re: The Case for C# and .NET

#81
post #50
post #10

Earlier quoted context omitted.

Not with their core languages. For example, Windows still comes bundled with the old VB6 runtimes and Microsoft still supports the language even if they no longer add features to it. I'm not really sure of any major Microsoft languages that Microsoft has just dumped, unless you count their smaller more esoteric ones. Also keep in mind that .NET Core is not only open source, but comes with complete protection from any…

J# is one that comes to mind. Spent some time learning this only to have it dropped the next year.

Wasn't J# designed to be a transitional language for Java devs migrating to .NET/C#? (Wikipedia calls it a transitional language, too) Sure it wouldn't last long.

Re: The Case for C# and .NET

#82
Until .NET has the equivalent of Zod, I'm not that interested.

Being able to write a validation schema and deriving types from it automatically - that I can share on client and server - is just too big an advantage.

Re: The Case for C# and .NET

#83
post #5

> For the front-end, JavaScript is unavoidable (for now) Author really needs to give Blazor a try. I wrote some comments last week speculating that I'd use Dart or TypeScript with C# .NET on the client because WebAssembly doesn't do DOM manipulation, but turns out I should have waited to learn it better before making a comment. I've learned I can add events and event handlers to elements without ever leaving C#. Then…

I'm a huge fan of C#, but I didn't really like Blazor when I tried it. I had expected to love it too. I found much of Blazor's boilerplate to be very ugly, I didn't like the complication involved in referencing npm libraries or backend code, and I couldn't figure out where several magical authentication related pages in the example app were coming from. I switched back to Typescript and Vue 3 (almost went with Svelte…

The thing is in .NET 7, they are going to decouple the WebAssembly toolchain from Blazor.

This will allow people to write competing frontend frameworks, or mix and match their JS framework of choice while calling into .NET app logic.

The latter already possible, though a bit hacky with the official tooling at the moment, since Mono can compile regular .NET code to WASM no problem (a fact already extensively used by game engines like Godot or Unity).

Re: The Case for C# and .NET

#84
Hottake:

Without JetBrains Rider .NET would have no cross platform dev experience.

VS is shitty Windows bloatware, VS for Mac is utter rubbish and OmniSharp was killed by Microsoft because they didn't fancy to give away dev tools for free and purposefully killed it in order to replace OmniSharp with a closed source extension, which as of today doesn't exist yet. So if you are a Linux developer then you are basically fucked today if you wanted to use .NET, except there is Rider. Without Rider .NET would be completely unattractive today.

If one is okay with this then .NET is amazing. Otherwise I cannot advocate for .NET anymore I am afraid. Microsoft doesn't see what's good for them. VS Code is the future, not VS. They invest too much time and money and marketing in selling VS to developers instead of making VS Code a great free OSS experience.

Re: The Case for C# and .NET

#85
post #47

Earlier quoted context omitted.

Maybe it's good to have an open ecosystem for using the language that doesn't rely on paying for an IDE? I personally soured on Kotlin for this same reason!

VS is free though.

That sure isn't my understanding if you work for a large enough business. It is very explicitly NOT free.

https://visualstudio.microsoft.com/license-terms/mlt031819/

This is the rare post where I would be fucking ecstatic to be proven wrong but sadly I believe I'm correct.

Re: The Case for C# and .NET

#86
I started out agreeing heavily with the article (yeah, javascript sucks today!), but one thing stuck out to me:

If Typescript makes Javascript so much work because the tooling discourages learning best practices, how does moving to C#, which is designed very similarly, help?

I.e. if half the cardinal sin was creating Typescript in the first place and that's part of why Javascript sucks so bad (I am inclined to agree, FWIW), how does C# then make it better?

Author is light on the details here. I do agree that strong typing systems, safety checks are preferably on backend systems-grade code, at least, but I don't think C#'s types are strong enough, for that prefer something like a Haskell-ish language, Cayenne e.g., Ada, and with strong code-re-usability. I decline to champion a particular language, I only know C# has a lot of baggage from Java/Typescript/Javascript, which it would be better without (C# is also starting to suffer from a C++-ish problem, where there are so many new and different ways to do the same thing that interoperability and "good" standards are swiftly becoming a problem).

Re: The Case for C# and .NET

#87
post #26

Earlier quoted context omitted.

MS discontinues a UI library project and then hypes up a new one every few years. Today Blazor and Maui are hot, but there's a lot of abandonware that came before. You can see it in Windows too, where you can burrow deeper and deeper into progressively older settings dialogs, because they reshuffle the Control Panel every few years.

To be fair. Creating a good cross UI framework is hard. Winforms wouldn’t cross over to OS X / linux. WPF was too heavily tied to Windows. Silver light was a compeditor to flash and both of those died. Now we are up to Maui and Avalion? Blazor is more silverlight replacement imo.

Also, Winforms and WPF were designed before Microsoft embraced Linux and started making .NET truly cross-platform. Starting over with a new cross-platform UI framework sounds like a reasonable thing to do.

Re: The Case for C# and .NET

#88
This thread shows there is still a large amount of FUD around .NET and it’s community.

Folks here still think it’s Windows-only and comparable to Java. Yet latest TechEmpower benchmarks shows .net running on Linux and being faster than Go, Python, Node, and Rust.

Re: The Case for C# and .NET

#89

This thread shows there is still a large amount of FUD around .NET and it’s community. Folks here still think it’s Windows-only and comparable to Java. Yet latest TechEmpower benchmarks shows .net running on Linux and being faster than Go, Python, Node, and Rust.

The dev experience is Windows only, STILL:

https://news.ycombinator.com/reply?id=32220935&goto=item%3Fi...

(Also the benchmarks are a cheat, look at the source code of C# vs the source code of Go or Java)

Post reply on HN