6 ms·
.NET 8 for the backend, and then blazor webassembly for the front end if it's complicated, or just boring old server side rendering with htmx if it's not. I've
by martinald 3y ago
.NET 8 for the backend, and then blazor webassembly for the front end if it's complicated, or just boring old server side rendering with htmx if it's not.
I've seen a lot of projects fail/struggle in golang (package ecosystem is still missing a lot of basics imo) or nextjs (very buggy).
.NET has been my secret weapon. It's boring, works really well, has a good ecosystem and asp.net is really well thought through and you can go as "deep" as you want with middleware etc. Plus performance is extremely good, as is the deployment story with docker these days (having to use Windows server with .net Framework a few years ago was a nightmare, enough to put me off, but in .net core Linux is a first class citizen now).
Also the IDEs are great these days, especially rider.
- andrewstuart 3y agoDo you deploy .NET on Windows or Linux?
- harshalizee 3y agoYou can deploy on both quite easily. The newer .NETs are properly multiplatform
- wrboyce 3y agoThat is probably why they are asking…
- martinald 3y agoLinux exclusively - I detest Windows server, via docker. I feel that it's actually quite rare to run modern .NET apps on Windows Server now.
- PH95VuimJjqBqy 3y agoI understand and agree with your sentiment but .net core on windows is definitely not rare. What's rare is asp.net windows developers knowing what a reverse proxy is (they typically install the asp.net core hosting packages).
- all2 3y agoWait, wait, so reverse proxy functionality is available in ASP.NET? If I'm deploying an app to a K8s cluster, I assume I would still opt for an ingress rather than making my app handle that bit of functionality? Where's the cutoff here? Also, how do I handle discovering what ASP.NET offers in terms of functionality? Is there an overview somewhere that I missed?
- PH95VuimJjqBqy 3y agoRP has nothing to do with any programming language or framework, if a web server exists, you can put a reverse proxy in front of it. In this case, asp.net core has a built-in web server named Kestrel. IIS can be used as a reverse proxy so you can have IIS forward requests to web servers bound to local host. Personally, I think its quite hilarious that you went straight to k8's. The vast majority of asp.net code is running on servers (bare metal or otherwise).
- all2 3y agoThank you! > Personally, I think its quite hilarious that you went straight to k8's. I work in a production environment with some 1.5mil loc that runs in a k8s cluster, so that's what I know. I'm not sure which reverse proxy we use in our ingress. I'd have to check with devops.
- tompazourek 3y agoIsn't k8s ingress itself the reverse proxy?
- codegeek 3y agoI am personally new to the .NET world but the idea that you can mostly replace JavaScript with Blazor component is fascinating to me and I am really trying to get more into it. Also, Microsoft stuff gets a bad rep in general but .NET ecosystem is solid and I am loving it. Otherwise, I do PHP/Laravel and Go.
- all2 3y agoHow do you manage page load times? I've been fiddling with Razor/Blazor and sometimes the page load times are obscene (5+ seconds). Is that just because it has debug symbols built in? Or is there something else I'm missing?