Live data from Hacker News

Performance Improvements in .NET 6

devblogs.microsoft.com

181–190 of 256 posts

Re: Performance Improvements in .NET 6

#181
The .Net road map has been incredible for us. We have carried the same product across 7 different major framework upgrades, 3 of which were the old school windows only variant.

I don't know of many ecosystems where backwards compatibility is this good while also providing tons of upside on the future path.

We are definitely getting more out of the Microsoft stack today than we thought we would 8 years ago when we started this journey.

If you told me our product would magically become cross platform capable while we were still sitting on 3.5 I would have laughed you out of the room. Granted, the conversion to .net core wasn't entirely painless, but it wasn't bad either.

Re: Performance Improvements in .NET 6

#182
What ever happened to IronRuby?

It hasn't been updated in 10 years and IIRC, Microsoft even hired the creator of IronRuby.

Is anyone running a Ruby on Rails app on .NET Core? If so, are you using IronRuby or something else? The folks at https://www.discourse.org know .NET super well from there StackExchange days - is Discourse a vanilla RoR app are they using the .NET runtime?

Re: Performance Improvements in .NET 6

#184
post #157

Earlier quoted context omitted.

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://g…

C++ builds are only bad when you use too many templates, which Chrome famously does. If you use MSVC you get some additional speedup as well because it tries to avoid disk IO. I would say Qt on Windows is probably a worse idea than just using .NET as it ties into the OS. If you need cross platform and normally use Windows it's not a bad idea.

Chromium uses templates very sparingly. Working with this code day to day, most days you don't see a single template. What it does use a lot of is class inheritance, delegates upon delegates, AbstractFryingInterfaces and whatnot.

Re: Performance Improvements in .NET 6

#185
post #180

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…

I've been in and around platform development in the .NET space for over a decade (not as a developer, I stopped programming for the web in like 2002 because I couldn't stand the the entire front end paradigm). My biggest issue with .NET has always been how slow it is compared to . Is there hope? lol

It has always out performed Python and Ruby. While it usually falls behind Java in general performance. It seems to win in startup time which is important for scripts.

Re: Performance Improvements in .NET 6

#187
post #180

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…

I've been in and around platform development in the .NET space for over a decade (not as a developer, I stopped programming for the web in like 2002 because I couldn't stand the the entire front end paradigm). My biggest issue with .NET has always been how slow it is compared to . Is there hope? lol

I've always found that someone complaining that XXX is slow is just writing very bad code.

C# is blazing fast, but there's plenty of ways to write boneheaded-slow code.

Re: Performance Improvements in .NET 6

#188
Congratulations! .NET is increasing the lead. It was already (generally) faster than JVM. One thing that I find really crucial is the COLD START times, this is a super important factor when using .NET as a primary platform for FaaS (Serverless Architecture), like Lambda, Azure and Google Functions. I think that's an important characteristic of languages VMs for the next years.

Re: Performance Improvements in .NET 6

#189

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…

> But like everybody has said, the desktop UI story is garbage.

Strange, I find WinForms very similar to Visual Basic 6.

The UI designers are very similar. The API is very similar. C# is just a much better language than VB 6.

I personally really like WinForms, but I haven't done anything in it in about a decade.

Re: Performance Improvements in .NET 6

#190

Earlier quoted context omitted.

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://g…

>The language needs to do a lot of file access for includes, and on NTFS those are super slow, I'm not sure I'd blame NTFS as such - but you can massively improve build times by creating a precompiled header .pch include file in your projects.

I already use PCH but can't put everything in them either otherwise it becomes a negative
Post reply on HN