Blazor .net 6 VS Phoenix

I am watching this video Enterprise-grade Blazor apps with .NET 6 - YouTube and it looks super cool.

Can you compare Blazor with the new .net 6 with Phoenix

You probably mean Blazor VS LiveView? For starters Blazor is client side technology. LiveView is comparable to Razor Components aka server side Blazor. How LiveView is implemented is much better. For example in LiveView WebSocket reconnects doesn’t need to go to same server instance. It’s also easier to create realtime apps that use multiple server because you can use Phoenix Channels on server side. LiveView is good state already and it’s getting better and better but server side Blazor feels like an after thought.

3 Likes

The biggest problem with Blazor is that you have to write C# :innocent:. .NET is pretty fast though and they’ve made a lot of effort to bring in the niceties from F#/functional programming in recent C# versions. Still doesn’t do it for me. It’s so much easier doing concurrency on the BEAM.

1 Like

The problem for me is .NET is now proven to be man-handled by Microsoft in bad ways. I won’t touch .NET for the same reason I won’t use Oracle DB for my database needs. I have enough problems running a business and finding product market fit - why would I add licensing and lawyers into the mix?

I’ll stick with true open source tools like Elixir and Postgres.

3 Likes

IMHO, asking comparisons from “competing” technologies will always generate debates that are prone to this kind of argument. Mostly because your question of X vs Y is very open to interpretation and full of bias by definition… If I may suggest, ask the same question in a dotnet forum so you have a more centered response by filtering the extremes.

That being said, I’ve worked with C# for a long time before starting doing Elixir and I have no regrets. Microsoft made a huge step in the right direction years ago by introducing dotnet core as an open source technology and C# has evolved meaningfully as a language since then. None of this is new though, this is a collective effort from the past 5 years or so.

I started doing Elixir around the time Blazor became a thing in the dotnet ecosystem, so I can’t compare a lot of it with LiveView. But at the time, I remember seeing stuff like dotnet to WASM in the browser which made me feel that it was an overly complicated approach to that problem (and kinda hack-ish). LiveView on the other hand feels like a very simple and elegant solution to the same problem, thanks to the “Elixir Way”.

One thing that made me fall in love with the Elixir ecosystem is that frameworks and tools usually don’t change the approach to the language’s core concepts. I don’t know how to properly put this, but you usually always have a familiar feeling while working inside the ecosystem. Also, by being a statically typed language, C# brings its own challenges which I have happily abdicated to work with Elixir.

2 Likes