Live data from Hacker News

.NET 10

devblogs.microsoft.com

331–340 of 605 posts

Re: .NET 10

#331
post #319

Earlier quoted context omitted.

> I wish .NET was more popular among startups, if only C# could get rid of the "enterpisey" stigma There are plenty of real issues that are not the enterprise stigma. I built a backend web api this year with it and C# is fantastic. EF Core is truly one of the best ORMs I've ever used. That said, I regret that decision and won't be using it again for any new projects. Honestly it looks like Microsoft is distracted and…

Just stick with the classic frameworks. Razor works great as does MVC WebAPI

I tried Razor. It's mature, has tons of features, and it's very fast. But it only really solves rendering HTML.

You will still need to integrate Vite somehow to use modern CSS, TS, etc. And if you do that, why even use Razor to begin with?

Also, hot reload is garbage. C# will never get close in speed or features to something like Vite.

Re: .NET 10

#332

Earlier quoted context omitted.

Supporting as in maintenance mode, at least VB.NET. Thankfully F# is more community driven, but the CLR ecosystem is definitely getting C#-centric in the use of idioms and features from newer C# versions, which increasingly affects F# interop while they catch up.

.NET has always been both the biggest blessing and the biggest curse for F#. We have access to millions of libraries. I look at BEAM languages and OCaml every once in a while but can’t quite drag myself over there, knowing that in .NET, just as an example, I can choose between a dozen JSON serialisation libraries that have been optimised and tuned comprehensively for decades. But then, those libraries are also our cu…

Although you inevitably end up writing some OOP code in F# when interacting with the dotnet ecosystem, F# is a really good OOP language. It's also concise, so I don't spend as much time jumping around files switching my visual context. Feels closer to writing python.

Re: .NET 10

#333

I've worked with .NET for over 10 years and we built our startup on top of it. Here are my thoughts: Pros: * Stability * Very decent standard library * Good balance between productivity and robustness * Great package management * Extremely easy to upgrade, so essentially free goodies (performance) every year or so Cons: * Very MSFT dominated (obviously) * Subpar tooling outside of Windows (I'm looking at you C# Dev K…

Why is EF regarded as such a good ORM? I've encountered countless bugs in different repos related to its stateful nature after many years in .NET. Personally I found it completely illogical for my ORM to maintain state. I just want it to hold my schema and build queries.

Re: .NET 10

#334

Earlier quoted context omitted.

> culture of C# / Microsoft shops at al What do you mean?

I worked at a Microsoft shop, and this was my experience. 1. Process, process, and more process. Doing anything required layers of management approval. Trivial tasks become month long, or even years long, processes. 2. You have no power or agency. Something is broken? You're a developer, you should be able to fix it right? No. Broken things stay broken. You swim in your lane and keep your head down. Mediocrity is the…

Don't forget all the $PATTERNS ... I mean, you can't possibly live without 15 layers of abstraction and indirection.

Re: .NET 10

#335

Earlier quoted context omitted.

And .NET is the language of choice for "Enterprise". So that's what the majority of jobs are. Where as large 'tech' companies don't tend to be like this.

> And .NET is the language of choice for "Enterprise". So that's what the majority of jobs are. Disagree. I would argue Java is more of a choice for "Enterprise". Also, would you please define the scope of "enterprise". If you mean "enterprise" as someone who want consistent and predictable management and productivity, then sure .NET is "enterprisy", because instead of a dragon they want a fossil. But if you mean "en…

It is mostly an Enterprise Development complaint... that said, it's how most .Net shops are in my experience. I really like C#, I've been working on a project with FastEndpoints and the .Net 10 RC since April and been pretty happy with it. That said, I don't have to implement 10 layers of indirection/interfaces/patterns to get the job done either. I have in other places.

But I would levy the same complaint with most Java[1] usage as well.

1. https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...

Re: .NET 10

#336
post #177
post #2

For us, every .NET upgrade since .NET 5 has gone surprisingly smoothly and reduced CPU/RAM usage by 10–15%. We were even able to downgrade our cloud servers to smaller instances, literally. I wish .NET was more popular among startups, if only C# could get rid of the "enterpisey" stigma.

> I wish .NET was more popular among startups C# is extremely popular in Western/Northern Europe. (Sweden/Denmark/Germany ironically in particular). These are real Microsoft strongholds.

Australia too.

But startups aside, pretty much any company of significant size outside of the bay area/silicon valley is a Microsoft stronghold. It's an anomaly, not the norm, that so many companies in SV are on other stacks. Even for the non-tech workers (Google Docs vs. MS Office, macOS vs Windows endpoints, Slack vs. Teams, Okta vs. Entra ID or Active Directory, etc.).

When the entire enterprise's IT runs on Microsoft, you might as well pick an MS tech for the dev stack too.

Re: .NET 10

#337

Earlier quoted context omitted.

> dotnet requiring a CLR is not particularly well-suited for containerization Why? I routinely put compiled .NET programs into containers. It's also easy (easier than Rust even) to build on Mac targeting a Linux image.

Create a hello world dotnet container, then do the same in a modern language. Then compare image size and resource consumption. Then imagine you're running tens of thousands of containers in a proper SaaS microservices model, and it'll make sense :)

Sounds like a problem with the "proper SaaS microservices model" more than .NET

Re: .NET 10

#338
post #55
post #2

For us, every .NET upgrade since .NET 5 has gone surprisingly smoothly and reduced CPU/RAM usage by 10–15%. We were even able to downgrade our cloud servers to smaller instances, literally. I wish .NET was more popular among startups, if only C# could get rid of the "enterpisey" stigma.

Startups typically have the tech stack that the one man army tech co-founder set up on no budget. Apparently then .NET isn’t too popular for that!

That's part of it, but is also weird because C# & .NET is probably one of the most productive single-developer stack you can choose. Modern ASP.NET handles so much for you it's a lot like Rails in that regard, you can get a lot done in it solo.

Re: .NET 10

#339
post #2

For us, every .NET upgrade since .NET 5 has gone surprisingly smoothly and reduced CPU/RAM usage by 10–15%. We were even able to downgrade our cloud servers to smaller instances, literally. I wish .NET was more popular among startups, if only C# could get rid of the "enterpisey" stigma.

I think the key problem is that a large number of startups are shipping software in containers, and dotnet requiring a CLR is not particularly well-suited for containerization. It's like the old school Java JVM model. You have to ship a copy of the runtime with every container, and if you're doing proper microservices it's an awful lot of overhead. Yes I'm aware MS makes it easy to build containers and even single ex…

If you use the same base image, is it really as bad as you're making it out to be?

I understand that you're getting a roughly 100mb dist directory for a .Net web app, and that it uses quite a bit of ram.. but people also use Node and Java which have similar issues.

Don't get me wrong on this, I'd like to use Rust+Axum a lot more and C# a bit less.. but I don't dislike C#.

Re: .NET 10

#340

Earlier quoted context omitted.

> dotnet requiring a CLR is not particularly well-suited for containerization Why? I routinely put compiled .NET programs into containers. It's also easy (easier than Rust even) to build on Mac targeting a Linux image.

Create a hello world dotnet container, then do the same in a modern language. Then compare image size and resource consumption. Then imagine you're running tens of thousands of containers in a proper SaaS microservices model, and it'll make sense :)

Enterprise doesn’t spawn 10,000 containers to perform a simple “hello world” operation. That’s not how it operates. You’d be amazed at how many concurrent requests a single service can handle. This capacity must align with the actual requirements of the companies involved, not some unrealistic scenario like “we need to emulate Google.”
Post reply on HN