Live data from Hacker News

Performance Improvements in .NET 6

devblogs.microsoft.com

91–100 of 256 posts

Re: Performance Improvements in .NET 6

#91

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?

I don't think anybody is expecting perfection. Personal I just don't want so much needless churn, especially on the .Net side. WPF in particular seemed to offer so much promise but was abandoned at birth.

I now treat UI stuff from Microsoft the same way I treat services from Google, something to be avoided because it will probably be abandoned within a short period.

Re: Performance Improvements in .NET 6

#92

Earlier quoted context omitted.

I'm mostly doing my UIs in Qt and I'm always happy, sure it's not perfect but it consistently allows me to do what I want in a cross-platform way with minimal effort (especially when I compare with the royal empirical pain that is webdev)

For windows what's your hello world workflow / stack. I've wanted to get into QT, but there seem to be a bunch of different flavors out there. I'm more a winforms guy then an HTML/XAML/CSS type person.

I'll be honest I don't think that doing C++ on windows is a good idea. The language needs to do a lot of file access for includes, and on NTFS those are super slow, my builds on Linux are something like 1/3 of the time on windows (building the same software with the same commit of clang 12 and lld, same computer, same SSD).

But if you don't want to install a Linux partition, then just use aqt to install Qt: https://github.com/miurahr/aqtinstall

You want win64_msvc2019_64 as a platform.

Way too often I see everyone clicking on everything in the installer which amounts to a 30gb download, but for the immense majority of Qt apps you just want the core libs for your platform which is like a couple hundred megabytes (and even then in practice you're going to use only a small part of those unless you have uncommon needs such as serial port, modbus or NFC communication, XML parsing, ...)

Re: Performance Improvements in .NET 6

#93

Earlier quoted context omitted.

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.

.NET MAUI seems promising unless you're a VB developer.

The writing has been on the wall for VB.Net for a long time now.

Re: Performance Improvements in .NET 6

#94
I'm going to pile in too late and sing the virtues of .NET core or whatever its called now. Deployment of web apps to containers is a breeze, the language is modern feeling. Roslyn is about the most awesome thing I have played with. Razor pages are a breeze compared to the giant piles of dependency hell that client side SPAs or node have become. It feels lean and mean and I can be sitting at a debian box or a windows laptop and the experience in VSCode is identical including deploying code to production on AWS.

But like everybody has said, the desktop UI story is garbage. Fingers crossed Maui turns out to be useful because winforms and UWP are hot garbage. Such a shame from the guys who revolutionised gui development with Visual Basic.

Re: Performance Improvements in .NET 6

#95

I'm going to pile in too late and sing the virtues of .NET core or whatever its called now. Deployment of web apps to containers is a breeze, the language is modern feeling. Roslyn is about the most awesome thing I have played with. Razor pages are a breeze compared to the giant piles of dependency hell that client side SPAs or node have become. It feels lean and mean and I can be sitting at a debian box or a windows…

Maui is built on top of UWP, in what concerns Windows backend.

Have to agree with the desktop development chaos, look like not wanting to take an hard decision.

Forms and WPF continue, because they are the golden eggs, the ones that most .NET desktop devs actually care about.

WinUI looks like last attempt to rescue UWP, while at the same time in typical Microsoft fashion ignoring the tooling issues surrounding .NET Native and C++/WinRT.

MAUI, well they have to do something with Xamarin, and .NET still lacks an official cross platform so Xamarin be it. On macOS they are basing the backend on Catalyst, what I find completely insane, as most iOS devs know Catalyst apps don't feel at home in macOS.

Re: Performance Improvements in .NET 6

#96
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…

Couldn't agree more. Microsoft lost their minds on the UI / desktop app side - which was a core strength (historically). WinForms was fine / great / amazing. 90% of business / line apps could be handled with it. I have no idea how / why it's taken them so long and they STILL have not gotten their replacement story straight for it and they regressed the designer in .NET. Did they just lose their minds there? Hire a bu…

> Did they just lose their minds there? Hire a bunch of idiots caught up in fads instead of folks who've been around for a bit.

No, they just took the focus off the Windows UI.

They went cross-platform with .Net Core, which enables it to run in the cloud on Linux boxes. This was the focus.

I hope they come back around to a proper .Net WinForms designer under .Net Core, but for now the full framework can be run and will be supported. There are a massive number of WinForm applications in use. I was recently maintaining a massive 20-year-old .Net WinForms application, it still runs fine.

Re: Performance Improvements in .NET 6

#97
post #81
post #40

.NET 5.0+ drops the 'Core' from the name. The whole .NET platform has improved incredibly within the past 5 years. Previously, to run a C#/.NET app you would need Windows, Visual Studio, and a license for IIS. These days, you can run .NET entirely on Linux, without ever touching Windows or Visual Studio. (Founder here) At Amezmo [0], we've supported .NET for sometime now, and recently added .NET 6 as an option for ou…

You can, but if you actually start .NET on Linux without Windows and Visual Studio, you're not going to have the best experience. Lacking the background knowledge of the old .NET framework and how VS works was a consistent pain - both when reading outdated documentation and when getting help on something. I'd recommend it to a Windows dev who wants to go crossplatform, but never to a crossplatform dev.

As someone who was encouraged as part of a merger to start looking at dotnet who was entirely Linux based previously I've found this experience to be better than I expected.

It's confusing if you have to deal with legacy applications running old versions of the frame I concur, but if you're on a greenfield project working with dotnet 5+ the experience is pretty good.

I work with vscode on nixos which is probably one of the most challenging Linux environments, and have experienced no blocks. I have had to install mono manually to work around some bugs and write a couple of patches as vscode can't write things where it wants to the read-only nature of nixos, but this is just part of the usual nixos experience.

TLDR: For me, if you're using linux and you wanna give dotnet a go, try it, you might also be pleasantly surprised.

Re: Performance Improvements in .NET 6

#98
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…

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.

Actually not even MFC was that good when it appeared into the scene.

Borland C++ and Delphi/Turbo Pascal frameworks have always been top notch, and Qt follows their way.

MFC was re-created too low level, because the C guys at Redmond wouldn't use it, the Afx prefix comes from that first attempt.

I do like Forms and WPF a lot, so I fail to see what is broken about them, other than the missing love from doubling down on WinRT since Windows 8.

Ironically, MFC is the best framework for doing C++ GUI on Microsoft stack.

With C++/CX they could have had a C++ Builder like experience, instead politics made C++/WinRT replace it, while whoever is in charge doesn't care about Visual Studio tooling.

So using C++/WinRT is akin to being back in Visual C++ 6 alongside ATL, editing IDL files with a Notepad like experience.

Re: Performance Improvements in .NET 6

#99

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?

I made a GUI using cljfx - that's a react style wrapper around javafx

It was wonderful and runs an all desktops (and I guess theoretically mobile through Gluon). None of that Electron lag. There is a bit of a learning curve - esp if like me you've never done any react

Very Clojure-y, quite low coupling and very composeable

Re: Performance Improvements in .NET 6

#100

At work, I'm the maintainer of a 30k SLOC VB.NET codebase. Originally windows-only, when I took over I ran it under mono on Linux and OSX. The day that MS released dotnetcore, I jumped to that. Overall the experience has been really good. There are lots of complexities, but in short... .NET 5 gave it a 4% speed boost across the board, going up to 20% [!] in some cases. Mainly that was ascribable to the intersection o…

Wanted to mention in case it was interesting to you, but there’s a Roslyn powered plugin that can convert VB to C#, see https://marketplace.visualstudio.com/items?itemName=SharpDev...
Post reply on HN