Live data from Hacker News

.NET 8

devblogs.microsoft.com

221–230 of 374 posts

Re: .NET 8

#221

I'd love to hear from some .NET fanatics, how would you convince someone to use that ecosystem over another?

I think I'd use the argument that "its pretty boring", meaning, it's very solid. However, the C# language is very expressive and get's better every year, so it's a joy to use. It's a great choice for cloud-native server systems. (I feel like this year Blazor is a strong contender against Next.js, so web UI can work well with the backend).

Re: .NET 8

#222

Lots of very cool stuff here (AOT, Aspire, etc.). .NET has been held down by the image of its early days, but it has become a pure joy to work with recently. The improvements in tooling and ergonomics have made it a replacement for Go in our org (we migrated from .NET Core 3.1 to Go back to .NET 6 recently).

> .NET has been held down by the image of its early days, but it has become a pure joy to work with recently People have been saying that for the past 4 years. As someone who's never used .NET but develops embedded apps for Linux, I had high hopes for it become the best story for crossplatform development, it still feels like the crossplatform is held by ductape. It's still Xamarin for mobile, Avalonia (a 1-man proje…

This is not a .NET problem.

There really isn't a simple way to do cross platform (Windows/Linux/macOS) UIs with any language. The least bad option is to make it a web page, maybe wrap it with Electron.

Re: .NET 8

#223

Earlier quoted context omitted.

> .NET has been held down by the image of its early days, but it has become a pure joy to work with recently People have been saying that for the past 4 years. As someone who's never used .NET but develops embedded apps for Linux, I had high hopes for it become the best story for crossplatform development, it still feels like the crossplatform is held by ductape. It's still Xamarin for mobile, Avalonia (a 1-man proje…

> I had high hopes for it become the best story for crossplatform development, it still feels like the crossplatform is held by ductape. Sorry to be pedantic, but it's cross-platform GUI that still doesn't have a good, officially supported story. For non-GUI apps, cross-platform works very well! I've deployed a range of apps to production across Windows, Linux (both x64 and ARM), and Docker on Linux too (also both x6…

I just saw in the dotnet-labs project they've been building FreeBSD support.

https://github.com/dotnet/runtimelab/tree/feature/FreeBSD

Re: .NET 8

#224

Earlier quoted context omitted.

One of the first comments on the site points out this lacuna. Leave it to the F# community to be vocal about this.

We gotta be. We know Microsoft isn't gonna be :D.

I'm with ya. I still use F# for scripting in Linux. I've been out of enterprise computing for over 2 years.

Re: .NET 8

#225
post #143

Earlier quoted context omitted.

Every even release is LTS (including .NET 8 today). New projects should not use Framework at all. It's really not confusing at all.

.Net 8 is supported 3 years, . Net Framework 4.8 presumably longer. Confusing.

.NET Framework is part of Windows. That means it is very stable and supported for a very long time. But it is also not possible to evolve it further. That is why the .NET team forked it to make .NET Core, which is cross platform and installs versions side by side. This is what evolved into .NET, most recently .NET 8.

Re: .NET 8

#226

I'd love to hear from some .NET fanatics, how would you convince someone to use that ecosystem over another?

While I might not be the best as I just joined using .NET for an open source application 2-3 years ago, I did just convince my boss to let me rewrite our (really crappy) Java application with a new version (to enable her 2 year vision) in .NET.

Spring boot vs .NET is pretty similar, they both offer DI, Filters, Middlewares, etc. The ways I really proved to switch (given my development team is usually freshers) is to showcase the power of the Identity framework, LINQ (especially with EF Core and the ability to still use Raw Queries), and just overall being easier than Java (LINQ methods, extensions, syntax sugar).

Another big one is how damn easy it is to update and the performance posts MS does with the improvements. So you literally change one line in simple web apps and get performance boosts. Java doesn't really have that PR and the language (imo) is very verbose and painful to use (like their stream API).

All in all, we are building our rewrite in .NET (and Angular 17) and my team and I couldn't be happier.

Re: .NET 8

#227

Earlier quoted context omitted.

I have. Too much "magic," and I'm too experienced to fall for that again. No more magic, I should be able to see and understand how every part of my stack works top to bottom. That's why I'm for isolating the front end from back end frameworks via something agnostic like WebAPI.

With blazor wasm you generally do have separate project for front end and api.

I am talking about that. Not the server side or server to wasm one.

Maybe I use the term hybrid wrong, I am talking about the fat client hosting blazor/web view one. Basically electron shell just without js

Re: .NET 8

#228

Earlier quoted context omitted.

>At the end of the day, you have to ask yourself about what your hourly rate is. At the end of the day it's a question of how much ROI are you getting. Your hourly rate is irrelevant, when you're just learning a new tech... because when you're hacking/learning the hourly rate is $0.

If you spend 20 hours fixing something that wouldn't occur with the paid toolchain, at what price does it become worth it to skip those 20 hours when they're not directly applicable to what you're trying to accomplish?

When you literally don't have $20 in your account. Then you can spend 100 hours and it's still worth it.

Re: .NET 8

#229
post #213

Earlier quoted context omitted.

>At the end of the day, you have to ask yourself about what your hourly rate is. At the end of the day it's a question of how much ROI are you getting. Your hourly rate is irrelevant, when you're just learning a new tech... because when you're hacking/learning the hourly rate is $0.

Just because you're not getting paid doesn't mean your time is worthless (or your hourly rate changes).

That's where ROI comes in.

Should I have spent my full income for 3 months on an IDE, vs spending an extra 2 hours with the free tools?

It's not a hypothetical, that was the reality of my life in 2004. I had a lot of extra time, couldn't use it to make money and buying "enterprise grade" tooling wouldn't produce any extra value.

The ROI of an professional grade tool would have been - "you get to sleep extra two hours and have no food for 3 months"

Re: .NET 8

#230
post #212
post #111

Earlier quoted context omitted.

Go seems like a good fit for that.

Go is insanely verbose compared to both C# and Java due to its low expressivity, especially around its error “handling”.

I think you're confusing Go's simplicity and explicitness with verbosity. Yes, it won't help you write the least amount of code, but this forces you to write readable code and avoid cleverness, which is almost always a good thing. Its error handling is an exhausted topic, but avoiding exceptions and being forced to decide how to handle errors where they happen is also a good thing IMO.

On the other hand, I would absolutely use verbose to describe both C# and Java. They are huge languages, with many features, a complex syntax, and conventions and patterns that lead to writing a lot of hard to understand code.

I'd use Go over both of them any day, especially when it comes to writing cross-platform GUI or console apps that can be quickly compiled and easily distributed.

Other options to consider might be Nim or Zig, but these are not as mature as Go.

Post reply on HN