• 0 Posts
  • 28 Comments
Joined 1 year ago
cake
Cake day: June 20th, 2023

help-circle





  • Razor

    Razor is the templating engine that’s been there since the original MVC. Blazor Server is the one that needs a server and streams changes to the client using signalR. Blazor WASM is the one that uses Web Assembly. As of .Net 8, Blazor can now also ne used as a generic SSR backend. They all use Razor Components, which is a component model using the Razor engine.

    Not to be confused with Razor Pages, which is also a generic SSR backend.











  • I didn’t have an answer for a very long time. Or more seriously, the answer was “the one that paid the most”. I’ve run the gamut of popular languages, C, C++, Java, Javascript, perl, ruby, Python, Visual Basic, VB.Net, C# and F#.

    But the last couple years it’s really been C#. The pace of development on the language/runtime has really picked up with yearly releases. The features that are added and iterated on are expressive and intuitive. You can tell from the discussion posts on how a feature is being considered for inclusion is thoughtful and deliberate. It really feels like the language is in good hands.

    Just wish those hands weren’t Microsoft.



  • I find ORMs exist best in a mid-sized project, most valuable in a CQRS context.

    For anything small, they massively over complicate the architecture. For the large enterprise systems, they always seem to choke on an already large and complex domain.

    So a mid size project, maybe with less than a hundred or so data objects works best with an ORM. In that way, they’ve also been most productive mainly for the CUD of the CRUD approach. I’d rather write my domain logic with the speed and safety of an ORM during writes, but leverage the flexibility and expressiveness of SQL when I’m crafting efficient read queries.



  • I like Blazor and use it exclusively at my work (usually to build the same type of stuff I’d use a HARP approach in a personal prj).

    Blazor is awesome, but really is attractive to backend .Net developers more than anyone else. However, Blazor has a bunch of downsides: Blazor Server is too chatty to build scalable public facing webapps. Blazor WASM has a massive initial payload, which makes it slow and heavy.

    Also, it just really falls into being overkill for so much stuff on the web. Half the shit I’m paid to build with Blazor would be faster and cheaper with just some htmx. Most SPAs are attempting to build a sand castle with an excavator.