Live data from Hacker News

Performance Improvements in .NET 6

devblogs.microsoft.com

61–70 of 256 posts

Re: Performance Improvements in .NET 6

#61
post #48

Earlier quoted context omitted.

The UI story on Windows is completely broken but that has been the case forever. Has MS basically released anything sustainable on the UI side since MFC? It feels like they’ve constantly provided a new new replacement every few years that replaced the new replacement from a few years ago since then.

That's definitely true but they did a good job supporting their tech once it was released. My company has been using WinForms on .NET Framework for over 10 years now and it's working really, really well. Microsoft even added HiDPI support to it. When Microsoft announced they wanted to bring WinForms to .NET Core 3, we were initially very happy as it meant we could switch to .NET Core. But then they did all kinds of s…

> My company has been using WinForms on .NET Framework for over 10 years now and it's working really, really well.

Despite WPF being preferred amongst developers, WinForms solves most use-cases well.

I’ve not really kept up with Microsoft UI developments but I’d be interested in seeing any cross-platform UI toolkits they develop now or in the future just as an alternative to gtk/qt

Re: Performance Improvements in .NET 6

#62
post #23

Earlier quoted context omitted.

I'd like to see them to roll their own identity platform after IdentityServer went close source.

Identity server is still open source, it just has a much more restrictive license and is paid. https://github.com/DuendeSoftware/IdentityServer

ok, not closed, but restricted use. I think Microsoft should do (or buy Duende) their own platform. I've swapped to using keycloak, which is really nice, but it's a whole different world than .net

Re: Performance Improvements in .NET 6

#63
post #39

WinForms and its Visual Studio designer are still broken, WPF is still riddled with bugs and was declared obsolete in ~2017 in favor of UWP, UWP is marked obsolete in favor of WinUI, and WinUI's OSS release was postponed just two days ago because it's not ready. Microsoft is marketing .NET 6 as the replacement for .NET Framework but you still cannot properly do desktop UI with it. I honestly don't understand why they…

Agree the UI story has been rough. .NET MAUI seems promising, yes? Outside of JavaScript, what other (good) multi platform UI frameworks are out there? And I’m hesitant to call JS good, with the amount of slow, laggy, resource intensive apps I’ve come across.

Should be possible to write fast Electron apps with Svelte, Solid or maybe Imba no?

Re: Performance Improvements in .NET 6

#64
post #39

WinForms and its Visual Studio designer are still broken, WPF is still riddled with bugs and was declared obsolete in ~2017 in favor of UWP, UWP is marked obsolete in favor of WinUI, and WinUI's OSS release was postponed just two days ago because it's not ready. Microsoft is marketing .NET 6 as the replacement for .NET Framework but you still cannot properly do desktop UI with it. I honestly don't understand why they…

Agree the UI story has been rough. .NET MAUI seems promising, yes? Outside of JavaScript, what other (good) multi platform UI frameworks are out there? And I’m hesitant to call JS good, with the amount of slow, laggy, resource intensive apps I’ve come across.

FreePascal with Lazarus is fantastic. It is so dead simple to use, and mostly just works (e.g. coding up an app on windows, opening it on Linux and hit the compile button, and Done!)

Re: Performance Improvements in .NET 6

#65
post #23
post #11

Earlier quoted context omitted.

What are some of the libraries you're thinking of?

I'd like to see them to roll their own identity platform after IdentityServer went close source.

I agree. However a very difficult space. From one side they have commercials offerings (Active Directory and the variant within Azure). On the other the identity and authorization space has dozens of standards and the security space is changing primitives every day. It is extremely expensive and is permanently blocking resources from doing other things. That is also the reason IdentityServer is now under commercial license.

Re: Performance Improvements in .NET 6

#66

Earlier quoted context omitted.

The UI story on Windows is completely broken but that has been the case forever. Has MS basically released anything sustainable on the UI side since MFC? It feels like they’ve constantly provided a new new replacement every few years that replaced the new replacement from a few years ago since then.

Is there a UI story that doesn't suck?

Maybe, if you change your perspective. From buddhist teachings i learned that we react emotionally to the labels (our judgements) we attach to what we perceive, not realitty itself which just is.

Re: Performance Improvements in .NET 6

#67
post #3

Some very nice improvements! I hope that this trend with focus on performance continues in the future and that NativeAOT becomes first class citizen soon.

Becomes again, Native AOT is the only way on WinRT since Windows 8, but has been stuck in C# 7 and .NET Standard 2.0, which contributes even more for the little love UWP still has.

If I remember correctly, WinRT doesn't use Native AOT. Native AOT has never been released before, and to me is the most exciting feature since generics in .Net 2.0 (circa 2005).

Re: Performance Improvements in .NET 6

#68
post #39

WinForms and its Visual Studio designer are still broken, WPF is still riddled with bugs and was declared obsolete in ~2017 in favor of UWP, UWP is marked obsolete in favor of WinUI, and WinUI's OSS release was postponed just two days ago because it's not ready. Microsoft is marketing .NET 6 as the replacement for .NET Framework but you still cannot properly do desktop UI with it. I honestly don't understand why they…

Agree the UI story has been rough. .NET MAUI seems promising, yes? Outside of JavaScript, what other (good) multi platform UI frameworks are out there? And I’m hesitant to call JS good, with the amount of slow, laggy, resource intensive apps I’ve come across.

Compared to most prominent JS platforms, WinForms or WPF are awesome. We just got used to the sheer complexity and dev cycle of HTML, CSS, JS and JS UI frameworks especially.

Not that I would not agree that the Windows UI space is a mess but it is rarely about the tech but the management of it.

Re: Performance Improvements in .NET 6

#69
post #30
post #25

Earlier quoted context omitted.

I’m thorn on that. As someone who has had intermittent periods of .NET, it’s a complete mess every time I’ve come back after a couple of years off and figuring out what new APIs are the new thing to use, which have been deprecated and when looking for a solution of something involving e.g. configuring stuff in the web server request handing stack it’s a real confusing mess. Docs of course aren’t all up to date and ar…

> It’s way worse than React in this regard (if not only by its sheer size and larger scope) FWIW, I've used React for 18 months now. Except Java and classic core PHP it is one of the most stable platforms I've developed on. So, in my view being less stable than React isn't a big problem.

I agree, React itself can be remarkably stable because they found the right abstractions early on and have been able to evolve just small variations of those central patterns over time.

All the stuff people expect to use around react, on the other hand. That sees huge amounts of churn.

Re: Performance Improvements in .NET 6

#70
post #59

and we're stuck with Java. Sad, I hope that bigger companies and startups choose to use .NET for the future. I love it but can't it seems like 80% of the big tech companies here are using java

I like the uniformity of Java language. I like the "inner class" feature that has to be manually emulated in C#. I also like that I can implement anonymous abstract class-interface ad hoc in Java. I wish that internal visibility in C# was tied to a namespace instead of assembly, like package visibility in Java. Method co-/contravariance in C# is tied to interfaces. I prefer it tied to individual methods, like in Java…

>In C# it can be overloaded.

I know it only confirms your point, but Rider highlights the overloaded operators so you spot them right away.

After working with dotnet for pretty long time and coming to Java world (mostly Spring with Kotlin), I was extremely disappointed to find there's no real alternative to LINQ. What's your solution to this common problem: you have a table (HTML table) with 30 different filters, you need to apply all of them if they're set. Some filters require simple field comparisons, and some filters add very complex conditions.

With LINQ and EF, it's very easy to do, and the result is clean and easy to read. I don't think there's any alternative in Java that does not require adding yet another library and re-implementing data access layer, or writing a lot of boilerplate.

Post reply on HN