Live data from Hacker News

Understanding the .NET ecosystem: The evolution of .NET into .NET 7

andrewlock.net

101–110 of 357 posts

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#101

[flagged]

> You now have “.NET 4.8.2” applications that cannot be upgraded to “.NET 5”. Try explaining that to a non technical person. “A common convention in software is that new major version number of a platform indicates that software from earlier major versions may require changes, often quite significant, to function” is pretty easy for non-technical people to understand.

Usually non-technical persons do not give a faint fart about 'major' 'version numbers'. Is it a thing or goes somewhere? Yet about 'platforms' and 'sofware conventions'.

Is it working or not? Usually that's what they care about.

So it was ok in the old system but now there is an improved super shiny trendy best superpower new one and the previous ok is not ok anymore? [puzzled faces]

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#102

.NET has been doing a lot of things right. My startup's codebase is nearly all .NET 7: landing page, web app, Windows service, API. The main non-.NET code is vanilla JS in the web app. I've been keeping a close eye on Next.js, which is very well done, but I love how versatile .NET is. With one language, I can write all of the above, and my dependencies are minimal thanks to .NET's rich standard library - a refreshing…

Nextjs (and its contemporaries) work really well with .NET. Toss in your API calls into Next, write a beautiful front end, and now you've got separate front end and back end that works phenomenally together and can be tested separately using their strengths.

I'm more shocked by you sticking with Javascript. Surely with your adoration of C# you would have moved to its closely related sibling Typescript. Although I guess there is that slight initial hump to move to TS from a purely vanilla project.

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#104
post #12

Been using .NET for years now for backend web development after having taken a break from C#. It is such an improvement over the old .NET framework. When I started building my first backend with it, I was surprised how much was included and "just worked". Need to add authentication? Few lines. OAuth? Also built in. Response caching? Yes. ORM? EF Core is pretty good. Need to use env variables to override your JSON con…

The new asp.net took a lot of good concepts from the node ecosystem and feels really modern. It has a lot of batteries included. I think .net is an awesome platform to build backends. I wouldn’t use it for frontend though. Razor and Blazor never really convinced me.

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#105

Earlier quoted context omitted.

>It's like either assembly or Python, but nothing in the middle. Dapper seems to be in the middle and it is pretty popular

Yeah, but from what I saw it doesn't help much with master-detail setups? Like, inserting or updating an order with order lines etc. We rely heavily on those.

Maybe also check PetaPoco. But at this point you're getting closer and closer to code-first EF Core anyway. :)

https://github.com/CollaboratingPlatypus/PetaPoco

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#106
post #32

I'd be curious to know what is the actual adoption of .net core. I.e. of all the actively developed applications (not just new projects), what is the .net core / .net framework split. I found that the upgrade process is not seamless. Asp.net core has little to do with asp.net MVC. Winform introduced all sorts of contraints. The BCL is full of small changes or features missing. People are less vocal than for the pytho…

I just ported a pretty large domain specific library from VB with .NET Framework 4.61 to C# with .NET 7. It took me probably 3 to 4 days to do with the assistance of Instant C# converter. There are lots of gotchas here and there and it does require a pretty reasonable understanding of both legacy and new frameworks.

I'm interested in this case!

I have a bit app: Razor, MVC, EF, custom nuget packages, reflection, very advanced expressions ( linq) and my IoC is Autofac ( .net 4.7.2).

101 projects in one solution.

Have you got any pointers on gotchas? Did a quick attempt ( 1 evening) and got blocked on my nugets+ Autofac.

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#107
post #67

Earlier quoted context omitted.

1. .NET "Core" ... I tell myself "C is for Cross platform." This is usually what people seem like they mean now when they talk about ".NET". 2. .NET "Framework" ... I tell myself "F is for Former." This is the older, Windows specific version. 3. .NET "Standard" ... I tell myself "S is for Specification." This is just the spec which defines what Core and Framework must implement.

It's just .NET going forward (for now) if you don't need to worry about any old stuff.

The issue is with Googling (or Binging if you’re so inclined). If you google ".NET foobar", you might get answers for .NET Core, but you might also get old answers for the .NET Framework, written at a time when there was just one .NET, or when .NET Core was not as relevant and not the “real” .NET. Of course, it’s not super important if “foobar” is something simple and generic, like “.NET split string”, but when you get into the murky and obscure stuff, it might be hard to figure out if you’re reading an article about .NET Framework or .NET the-artist-formerly-known-as-Core.

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#108

Earlier quoted context omitted.

> You now have “.NET 4.8.2” applications that cannot be upgraded to “.NET 5”. Try explaining that to a non technical person. “A common convention in software is that new major version number of a platform indicates that software from earlier major versions may require changes, often quite significant, to function” is pretty easy for non-technical people to understand.

Usually non-technical persons do not give a faint fart about 'major' 'version numbers'. Is it a thing or goes somewhere? Yet about 'platforms' and 'sofware conventions'. Is it working or not? Usually that's what they care about. So it was ok in the old system but now there is an improved super shiny trendy best superpower new one and the previous ok is not ok anymore? [puzzled faces]

> Usually non-technical persons do not give a faint fart about ‘major’ ‘version numbers’.

This type of user is actually usually, IME, easier to explain it to:

“It’s a different platform and our software will not work without changes”. The less they “give a faint fart” about details, the easy it is to tell them the effects and have them accept and move on.

At most, you might occasionally need to invoke a car analogy: it’s like trying to use accessories designed for an older model year, when there has been a design change between model years – some things just don’t fit right anymore.

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#109
post #6

I love c# and dotnet. I've been holding off on flutter and praying Maui becomes a real thing

I wouldn’t hold your breath on Maui. I hold no hope for it.

i don’t think I will ever bet on any .NET desktop UI framework again. Even MS is going to Electron or similar for their own stuff. I expect Maui to be put in maintenance mode soon or just to be forgotten.

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#110
post #15
post #2

It’s a tired thing to say, but the “.NET” naming is so confusing on what’s what. Which is sad because there’s so much to like about .NET

Isn't Java world a lot more confusing? You have Java language, Java compiler, Java class library, Java Virtual Machine, Java bytecode, Java runtime environment, Java development kit (OpenJDK - is it open? how many forks are there?), Java SE, ME, EE, JavaBeans. What can you use where, what is the license, who made what, what role does Oracle play? So many questions in a universe where google doesn't exist to clear up…

These are different things: JDK already includes an implementation of API, compiler, and runtime. OpenJDK has many builds, not forks. Java EE is now known as Jakarta, and "Enterprise JavaBeans" were replaced by Spring. Clarifying just in case; otherwise I agree that the ecosystem might be confusing, especially if you consider the historical development and legacy code.
Post reply on HN