Live data from Hacker News

.NET 10

devblogs.microsoft.com

391–400 of 605 posts

Re: .NET 10

#391

Earlier quoted context omitted.

I've used libqpdf extensively from C++/CLI with excellent results, but since C++/CLI is deprecated-ish and Windows-only, I wouldn't disagree with PDF being a pain point, and if I get the time, a cross-platform open source .NET wrapper for libqpdf is at the top of my list of potential projects. libqpdf also intentionally limits its scope to PDF structure, so doesn't address nontrivial content creation or manipulation…

AFAIK pinvoke (DllImport) works today just like it always has if you want to create FFI calls to C libraries. It's not windows only for sure.

That brings you back to managing memory though, C++/CLI having access to managed C# handles/references for GC'd objects (and finalization) would greatly simplify any memory management at the same time as having first class access to native libaries.

Granted, one could probably build some of the machinery memory management in a simple way but it'd still need to be done and probably not be coherent with other native interfaces.

Re: .NET 10

#392

Earlier quoted context omitted.

Moq, lots of PDF libraries, Avalonia, Automapper, MediatR, MassTransit,Telerik stuff,etc. I'm not inherently against it, we have a problem with opensource being asymmetrically underfunded and if people going commercial is the cost perhaps we've failed.

Avalonia is FOSS (MIT licensed). You only need Avalonia XPF if you are migrating legacy stuff. Moq is largely unnecessary today with LLMs being able to easily generate mock classes. I personally prefer to hand-roll my mocks, but if you prefer the Moq-like approach, there's NSubstitute (3-BSD). Automapper and MediatR are both libraries I avoided prior to the license change anyways, because I don't like runtime "magic"…

Any recommendation of good alternatives to Telerik? We've been using it for years, but I'm open to considering alternatives even though it doesn't cost me anything to pay for the license.

Re: .NET 10

#393

Earlier quoted context omitted.

> the thing you wrote last year doesn't look anything structurally like what you're doing now... all the 6-month-old on-line docs and tutorials aren't only useless, but time wasting. This is indeed a complete exaggeration.

Sorry, I love .NET and have used it from it's rollout back in 2002. I'm just fondly remembering the ASP.NET MVC churn or more recently, Azure API whiplash.

Online forums often have people asking "hey I found this tutorial for learning c# but it's way way back for .NET 7 will it even work in .NET 9?"

The answer is always a variation of "yes, you'll be fine, but also look at a "what's new" summary for the new version.

Re: .NET 10

#394
post #324

Earlier quoted context omitted.

Is it though? Backends can be any language and there's a lot more variety there -- TS+node, Go, Python, Java. It's just .NET that's largely ignored for no real technical basis.

> Backends can be any language In +90% of cases you will still need a frontend for that backend. TS full stack is by far the best option for this.

Not really? Having come deom a TS + Go startup it’s pretty trivial to wire up domain objects across each language and define a clean API boundary with some enforcement at build time. And Go was a far better choice for the backend than TS for some lower-level memory considerations.

Re: .NET 10

#395

Earlier quoted context omitted.

> I wish .NET was more popular among startups, if only C# could get rid of the "enterpisey" stigma. I tried .NET and liked C# as a language. But even though the language and runtime are now open source, it seemed like a lot of the recommended libraries were still commercially licensed, which was an immediate nope from me. I've never encountered that in any other ecosystem.

I will pile on that I don't use any commercial libraries in .NET at all. Ironically, I do purchase a commercial library for front-end JavaScript. I agree that the commercial library offerings seem much more "in your face" with .NET but I don't find the actual breadth and depth of the free and open source library situation to be that troubling. It certainly continues to get better every year. .NET is very "batteries i…

Every company should give developers $100 per year to donate to the open source project of their choosing. Right now the conditions are such that maintainers are incentivized to rug pull.

Re: .NET 10

#396

Earlier quoted context omitted.

Is it though? Backends can be any language and there's a lot more variety there -- TS+node, Go, Python, Java. It's just .NET that's largely ignored for no real technical basis.

> It's just .NET that's largely ignored for no real technical basis. As someone who has been developing primarily on .Net for the past decade this is absolute bullshit. 1. It’s only very recently that .Net became open source. Until then you would frequently hit issues where the only option was to rely on the few support calls you got with MS engineers with your $1000+ Visual Studio subscription to move forward. And b…

By recently you mean a decade ago yeah? I mean it’s fair that it was only a half-decade (.NET 5) when it was genuinely complete enough, but lots of stuff was in good shape when it was called .NET Core.

It sounds like you’re projecting the problems of an existing .NET shop onto the shape of a startup without all that baggage. I can assure you, having worked with many customers running new business on newer .NET, it hasn’t been a legit technical concern since about .NET Core 3.

Re: .NET 10

#397

Earlier quoted context omitted.

You might want to read https://learn.microsoft.com/en-us/dotnet/core/deploying/nati... Publishing your app as Native AOT produces an app that's self-contained and that has been ahead-of-time (AOT) compiled to native code. Native AOT apps have faster startup time and smaller memory footprints. These apps can run on machines that don't have the .NET runtime installed.

There are quite a few gotchas for this, especially web apps. THis is understandable because it was added after the fact, vs. a first-party design requirement. It's cool and might work for you, but taking a non-trivial .net codebase to native AOT can be tough, and if you're starting greenfield, why go .net?

FWIW, the .net folks seem to have put a lot of effort into the native AOT pipeline in the last few releases. We have a large, non-trivial application with a fair amount of legacy code, and getting it AOT’d in .net 10 (targeting wasm, even!) was not an insane lift.

Re: .NET 10

#398

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…

I've personally found Rider to be a great IDE for .NET development outside of Windows.

It’s also a great IDE for .NET development on Windows.

Re: .NET 10

#399

Earlier quoted context omitted.

Silly question. If you want the C# experience but more community/OSS driven… why not Java?

C# 1.0 was pretty much Microsoft Java, but since then, C# has evolved into its own, more powerful thing, while Java has stayed much more conservative over the years.

I'm not sure it is more powerful but it might be more ergonomic. The strange part about both (today - it made sense 20 years ago) is the whole bytecode thing. That should go away imo.

Re: .NET 10

#400
post #388

Earlier quoted context omitted.

Silly question. If you want the C# experience but more community/OSS driven… why not Java?

I wouldn't call this a silly question at all. But having recently converted my intro data structures course from Java to C#, I can talk about why C# might be better. I have programmed regularly in both languages for the last 15 or so years (in addition to regularly programming in TypeScript, Scala, and F#). Java is fast and reasonably safe. It has a lot of software (especially OSS) software. Its package system (Maven…

This is interesting. I've been away from the high-code world for a while and instead of going back to Java, I might try out c#. Thanks for the writeup.
Post reply on HN