The Blazor Competitor is Here!

  Рет қаралды 72,382

Nick Chapsas

Nick Chapsas

Күн бұрын

Пікірлер: 324
@krzysztofjeske
@krzysztofjeske 4 ай бұрын
Hi, Hydro creator here. Thank you Nick for checking out Hydro and creating this video! Thank you everyone who tried Hydro, I'm grateful for the support you gave by starring the repo and testing the features. I really appreciate that. I appreciate also all the comments, positive ones and the criticism - both are needed!
@appomobi
@appomobi 4 ай бұрын
Thank you for your awesome work!
@MarianoGomezBidondo
@MarianoGomezBidondo 4 ай бұрын
I think it's something very interesting for quick and dirty applications like internal tools or concept prototypes.
@xeoneraldo1254
@xeoneraldo1254 4 ай бұрын
Interesting project, keep up the good work! It's always good to have alternatives
@krzysztofjeske
@krzysztofjeske 4 ай бұрын
@@xybersurfer Thanks! Could you say something more about the composability issue in Blazor? What's the main cause of it?
@viniciusvbf22
@viniciusvbf22 4 ай бұрын
This is certainly a step in the right direction. Blazor and other technologies have become way too complex for very little benefits, but, for some reason, only programmers with 15+ years of experience seems to understand that. Sometimes I see new devs in my company getting very excited with a tech or a concept that existed 10 or 12 years ago. "This is running in the server? WOW!" Just the other day I made a PoC in 30 minutes using WebForms and they were speechless 😅
@MAMW93
@MAMW93 4 ай бұрын
lmao we're full circle back to webforms and update panels
@margosdesarian
@margosdesarian 4 ай бұрын
Yeeeeah! :)
@KorsAir1987
@KorsAir1987 4 ай бұрын
20 years later, I still have nightmares with webforms.
@ErazerPT
@ErazerPT 4 ай бұрын
THANK YOU.... i thought i was taking crazy pills because i was think "oh, we back to webforms... wonder why we dumped that trash, can't really remember..."
@Talk378
@Talk378 4 ай бұрын
Thanks for triggering PTSD
4 ай бұрын
Yep
@JoseLuisOrihuelaConde
@JoseLuisOrihuelaConde 4 ай бұрын
It's a cool idea, but late in time. Blazor 8 give us a lot of choice on how to create components and its render modes. I think that WASM is evolving in an effective way and it's the way to go.
@SuperWarZoid
@SuperWarZoid 4 ай бұрын
idk, at this point i think i'll stick to blazor
@alkishadjinicolaou5831
@alkishadjinicolaou5831 4 ай бұрын
Same here!
@PelFox
@PelFox 4 ай бұрын
I prefer htmx 😊
@RamonDeKlein
@RamonDeKlein 4 ай бұрын
I"ll stick to Silverlight ;-)
@markovcd
@markovcd 4 ай бұрын
I'll stick to WinForms that is run on virtual machine which is then rendered on a page, but thanks!
@alkishadjinicolaou5831
@alkishadjinicolaou5831 4 ай бұрын
@@markovcd Interesting. What framework are you referring to?
@keyser456
@keyser456 4 ай бұрын
Competition is always good, and I genuinely wish the creator luck! That said, as a business owner & architect looking for a solid production-ready platform that will be supported for years going forward, Blazor still seems like the more obvious choice. I'm not seeing any compelling reasons for me to switch, not yet anyway. If nothing else, maybe this will force MS to address any major limitations in Blazor, and that's a good thing. :)
@catalystcorp
@catalystcorp 4 ай бұрын
"as a business owner & architect looking for a solid production-ready platform that will be supported for years going forward" -- as one of those myself, I'm just sticking with React/Angular and plain old javascript/typescript with .NET on the server. This whole wacky circus tent that is Blazor and WASM seems like a nice way for dotnet devs to pad their resumés and waste time in scrum meetings coming up with convoluted DI systems when all they need to write is a couple of divs on a Contact Us page.
@thefattysplace
@thefattysplace 4 ай бұрын
Whilst I agree, production ready and being around for years isn't really Microsoft's thing though is it! Sliverlight, Maui seem like good examples!
@PelFox
@PelFox 4 ай бұрын
Blazor completely changes everything with every new .net version. I wouldn't call it stable. We have so many different blazors right now, it's a mess.
@keyser456
@keyser456 4 ай бұрын
@@thefattysplace Fair points. I got burned on XNA / Managed DirectX and Silverlight. But... *everybody* who went down the Flash/Silverlight path got burned. The Mobile / Desktop shared space is always going to be volatile. Xamarin had a bit of a smell to it, and it's why I won't touch Maui. WebAssembly has been around for a while now (2017 looks like?) and has been adopted by all the major browsers. Once you actually build something in Blazor WASM you realize this thing has legs. It really is .NET and C# in the browser, like virtually no javascript is needed. A tiny bit of JSRuntime business here and there to achieve some hacky stuff, but I can see that getting resolved. I don't see WASM going away, but who knows for sure... I've got a lot of time and money invested into it.
@keyser456
@keyser456 4 ай бұрын
​@@thefattysplace I got burned on Silverlight, but *everybody* who did the Flash / Silverlight thing did. .NET and C# have been around now for over 20 years (I started v1.0 circa 2002). The real beauty of Blazor is in the SPA / WASM paradigm. WASM has been around for about 7 years now. It's here to stay.
@Tsunami14
@Tsunami14 4 ай бұрын
I'm not sure how I feel about Hydro (reminds me of WebForms), but I generally agree that alternatives are a good thing. ...so long as we don't get to JavaScript levels of "framework of the week".
@abdouldia1605
@abdouldia1605 4 ай бұрын
I was wondering if we are not getting back to webform era. Same thoughts as you.
@TehKarmalizer
@TehKarmalizer 4 ай бұрын
The history of development paradigms is a spiral. What is old will one day be new again.
@browny99
@browny99 4 ай бұрын
Hm, htmx with mvc/razor pages seems simpler
@johnsuckher3037
@johnsuckher3037 4 ай бұрын
you can now do blazor SSR without signalR and return html sections (RazorComponentResult) from api controller (RazorComponentResult(new{ whatever you need to pass to it})). modern touch of server rendered site
@technolung
@technolung 4 ай бұрын
It is
@davideastman5806
@davideastman5806 4 ай бұрын
I've been enjoying this combination, too. Let servers serve html and decorate the front end a little to handle interactivity
@krzysztofjeske
@krzysztofjeske 4 ай бұрын
Hydro makes it easier to work with temporary local state, for example a form in a draft state that contains fields dependent on each other, that can interact with each other before the data is saved
@eyoo369
@eyoo369 3 ай бұрын
Honestly this year I started a new MVC project with Dotnet 8.0 and it works beautifully. Heck I even use JQuery for some light interactivity. Managed to get 850k in funding for the business idea. Don't feel discouraged about "SPA's being the next thing"... yes they're cool but ultimately choose which tools feel right for you and just ship features man
@marciogoularte
@marciogoularte 4 ай бұрын
Another good alternative is to use Htmx with Blazor SSR with a per-component route. There is no library for this, but it does similar behavior
@sammyjjb
@sammyjjb 4 ай бұрын
Someone recently made a library called Htmxor that integrates htmx with Blazor SSR. There's a talk about it on the dotnet youtube channel. Still seems to be in beta though.
@sulmarpl
@sulmarpl 4 ай бұрын
I'm currently using htmx with blazor SSR and it works great.
@johnsuckher3037
@johnsuckher3037 4 ай бұрын
Htmxor is trying to achieve it so separate endpoints wouldn't need be created
@NotInventedHereShow
@NotInventedHereShow 4 ай бұрын
There is a library. Check out Htmxor.
@Daniel15au
@Daniel15au 4 ай бұрын
"there's no library for this" what type of library are you looking for?
@LiveErrors
@LiveErrors 4 ай бұрын
Im getting pretty sick of youtube videos not putting the name of the subject in the title
@ericblankenburg
@ericblankenburg 4 ай бұрын
He should have spent his time creating an alternative to Maui.
@Birb-
@Birb- 4 ай бұрын
exactly this, I've always disliked the Cshtml and prefer blazor over it, but man an alternative to MAUI would be so helpful, either I'm writing blazor hybrid or avalonia, never ever again will I go through the maui BS
@sacalbal
@sacalbal 4 ай бұрын
I don't think that MAUI itself is bad. The tooling is the real difficulty for me, when developing on windows (mainly because debugging on ios while being paired to a mac is slow).
@DeusinMachina
@DeusinMachina 4 ай бұрын
How do you feel about AvaloniaUI?
@mynameisshadywhat
@mynameisshadywhat 4 ай бұрын
There's already AvaloniaUI and Uno Platform...
@SuperGulamali
@SuperGulamali 4 ай бұрын
Microsoft needs to add more developers to support MAUI
@CarrigansGuitarClub
@CarrigansGuitarClub 8 сағат бұрын
Blazor hasn't even caught fire after all these years and now there is a competitor!!!
@psyaviah
@psyaviah 4 ай бұрын
For the sake of competition and growing ideas, please make more videos on it. Blazor is still preferred for now, but, competition is needed. I like the fact it at least makes it as easy as Blazor to write code. So I'm excited for that. And, to be honest, Blazor needs competition to keep it fresh. I love Steve's work, but what has been done in .NET 8 and the missing templates we have, is really making people furious and is complicated for people... Maybe hydro can deliver new takes on stuff, and we they can all steal from each other ;)
@asvirts
@asvirts 2 ай бұрын
I don't like that you had to add external script tags to the project. Is that required or just an example for this video?
@logicalsparrow2130
@logicalsparrow2130 4 ай бұрын
I've been excited about Blazor since it came out but haven't had a business case to use it so my knowledge of it isn't too deep, but the existence of Hydro made me question some of the things I thought I knew about it. I went to read the blog post to find out what the reasons were for building it. The idea that having a WASM version of .NET is overkill seems a bit silly to me since you can specify a CDN for that and it will be cached so it should slow down page loads at most once, and I recall that the assembly file was just a few MB, so it's hardly expensive. The SignalR re-connection issue I thought was mostly solved by a feature added in, I think, .NET Core 3.1. The load balancing and connection exhaustion issues might be the only concerns I had left. Anyway, for cases where a push model isn't needed, this AJAX-centered approach seems like a great idea.
@hio86
@hio86 4 ай бұрын
We have blazor static rendering with enhanced forms or we could just user static rendering and HMTX. This seem to need more bolier plate for the same effect. I can't think of any reason why I would want to use hydro instead of the static rendering options.
@maacpiash
@maacpiash 4 ай бұрын
I think this is a better version of HTMX with Blazor static SSR - you can make reusable components, integrate objects from .NET DI container into them, and do a lot of cool stuff on the server with C#.
@kipchickensout
@kipchickensout 4 ай бұрын
I went through WinForms and then WPF but wanted a better way of making good UI, went to MAUI which I found hard and weird to use and not so different from WPF, then skipped Uno but tried Avalonia (because of the good reception online) but the support for intellisense and various components just felt so clunky to me, at some point I noticed Blazor and liked it but I wanted to make regular Desktop applications, didn't want to use Avalonia so I decided to go with Blazor Hybrid in MAUI but MAUI does not support linux for some reason so I finally found Photino, which seems like barely anyone knows of it. I have yet to see how well it works for me And then there's this one that's new yet again
@juffma
@juffma 4 ай бұрын
I recently found it too, it seemed really interesting. I developed something similar for myself however the blazor support of photino seems really cool.
@Zenoc2
@Zenoc2 4 ай бұрын
I had forgotten Photino! I was very interested when CODE Magazine first published it. The Blazor package for it looks appealing.
@kipchickensout
@kipchickensout 4 ай бұрын
@@juffma Yeah true, I think for blazor I had to copy stuff that an example app showed, because the project templates didn't reflect it
@markparker6499
@markparker6499 4 ай бұрын
Never heard of Photino, but gonna check it out now!! 👍
@notsingular
@notsingular 4 ай бұрын
I've been looking at open source alternatives to wisej and Photino looks promising.
@simonegiuliani4913
@simonegiuliani4913 4 ай бұрын
Hi why are you not looking into HTMX + C#?
@krzysztofjeske
@krzysztofjeske 4 ай бұрын
I was, in the beginning, but I realized quickly that it was hard to manage temporary local state, for example a form in a draft state that contains fields dependent on each other, that can interact with each other before the data is saved
@simonegiuliani4913
@simonegiuliani4913 4 ай бұрын
@@krzysztofjeske yeah if transactions require a lot of "local interactions" than having an heavier client may be beneficial and it's not gonna play out great with HATEOS since you have a state machine model spread between client and server but it's really good otherwise.
@bartlomiejuminski
@bartlomiejuminski 4 ай бұрын
Blazor WASM is my favorite version of Blazor. Just a SPA website without any unnecessary complexity being added.
@RoaringOrange
@RoaringOrange 4 ай бұрын
Word
@Talk378
@Talk378 4 ай бұрын
The problem a company I talked to was having is slow initial load times. Didn’t they fix this with a static site that gets updated when the new wasm is finished compiling?
@bartlomiejuminski
@bartlomiejuminski 4 ай бұрын
​@Talk378 The problem with Blazor Server is that it uses SignalR for interactivity. The problem with SSR is that the website is not interactive. I want my website bo be interactive all the time and i don't want it to use websockets (SignalR). So this is the reasons why i prefer Blazor Webassembly Standalone project rather than Blazor App (with all the complexities from switching render modes). I really like Blazor WASM but here are some points to consider before using it: - huge bundle size (~ 10MB) - slow initial time - no support for DOM manipulations (canva etc.) - bad performance (slower benchmarks than other frameworks) - small amout of js libraries ported to Blazor - Blazor community is still very small
@sulmarpl
@sulmarpl 4 ай бұрын
​@@bartlomiejuminski WebAssembly = long loading issue. Blazor Server = connection interruption problem SignalR. That's why I chose the third way: htmx with blazor SSR. Works quickly and is easy to write.
@dovh49
@dovh49 4 ай бұрын
@@bartlomiejuminski With all those negatives I'm surprised that anyone would use Blazor. I build PWAs on the side (offline first) for personal use and my most complex app is 100kB total. The underlying code that makes it all work is 15kB total. Why would I force a user to download 10 MB just to use my site? That would kill my cheap phone.
@micoberss5579
@micoberss5579 4 ай бұрын
Why not just use htmx with razor pages ?
@sulmarpl
@sulmarpl 4 ай бұрын
I use htmx with Blazor Component. Better than Razor Pages.
@maacpiash
@maacpiash 4 ай бұрын
I think this is a better version of HTMX with Blazor static SSR - you can make reusable components, integrate objects from .NET DI container into them, and do a lot of cool stuff on the server with C#.
@PelFox
@PelFox 4 ай бұрын
@@sulmarpl In what way is it better?
@sulmarpl
@sulmarpl 4 ай бұрын
@@PelFox I don't have to create the entire page. I expose the blazor component as an endpoint. Fast and convenient. You have to try ;-)
@PelFox
@PelFox 4 ай бұрын
@@sulmarpl Could you show some examples? Last I tried it used minimal api and you lost strongly typed models when returning components. I fail to see the benefit of this compared to using razor pages with partial views and viewcomponents.
@nothingisreal6345
@nothingisreal6345 4 ай бұрын
If I got this right the updates to the page are all computed on the server. That is: send AJAX request to server, render new, compute diff, send diff back as HTTP response, apply diff - right? That causes many requests, NW traffic and compute time at the server. It is similar to Blazor rendermode InteractiveServer. That is not a good idea for general purpose.
@cicher
@cicher 4 ай бұрын
There is no diff, it's UpdatePanels into Razor pages... it just re-render the component in the server and send the HTML back to the client
@hanisafa9094
@hanisafa9094 4 ай бұрын
Do you think, Asp team can introduce a similar thing to a blazer server so it optionally doesn't depend on signal R? Or signal R is cobbled to the implementation
@farmanguliyev
@farmanguliyev 4 ай бұрын
It helps to add some reactivity to existing big non-blazer applications.
@thefattysplace
@thefattysplace 4 ай бұрын
Seems great. But not sure why i would use this over blazor? If I'm not messing around with what's going on behind, why does it matter if its running on JavaScript or wasm? That's an actual question.
@clhoover4
@clhoover4 4 ай бұрын
Not sure the value of Hyrdo. Is it just to remove the server required support for Signal R?
@maacpiash
@maacpiash 4 ай бұрын
I think this is a better version of HTMX with Blazor static SSR - you can make reusable components, integrate objects from .NET DI container into them, and do a lot of cool stuff on the server with C#. I just have one question that was not answered by this video: Nick included Alpine.js in the head of the Layout, that means there are definitely some client-side capabilities, i.e. interactive changes that do not require HTTP calls to the server. I would like to see how that would work.
@stephajn
@stephajn 3 ай бұрын
I don't see the reason for this approach. I am still going back and forth to the server for all state changes. Like others have pointed out, this is WebFirms all over again. Why would I take this over Blazor WASM?
@xeoneraldo1254
@xeoneraldo1254 4 ай бұрын
Hmm good project, but a bit clunky compared to blazor. It sends the whole HTML as response, Blazor doesn't do that and is more efficient
@bzbetty1
@bzbetty1 4 ай бұрын
Is it truely an alternative if none of the big component libraries adopt it?
@PikiPikoslav
@PikiPikoslav 4 ай бұрын
this. no matter how cool or not, rarely there is a time or chance these days to pursue anything but established productivity
@krzysztofjeske
@krzysztofjeske 4 ай бұрын
It's only 5 months old, give it some time :)
@leftjabrighthook
@leftjabrighthook 4 ай бұрын
I played around with Hydro, if you are stuck with Razor Pages its a great alternative to Blazor. I like the fact it does not use Signalr.
@Spylak
@Spylak 4 ай бұрын
This seems like a great option to migrate gradually from regular RazorPages
@IOSALive
@IOSALive 4 ай бұрын
Nick Chapsas, This is awesome! I subscribed because I want to see more!
@djdaveydave123
@djdaveydave123 4 ай бұрын
Geez... if you squint, it is effectively web forms with ajax!
@kierancoldron8752
@kierancoldron8752 4 ай бұрын
This is my current hell, waiting on my manager to greenlight the migration to Blazor
@cicher
@cicher 4 ай бұрын
UpdatePanels into Razor pages 😹
@benjamininkorea7016
@benjamininkorea7016 4 ай бұрын
Trauma!
@saymehname
@saymehname 4 ай бұрын
Nice, reminds me of HTMX, I will give this a try. Blazor isn't the best, people are coping it's lackluster at best.
@FPI23
@FPI23 4 ай бұрын
Hail Hydro!
@MC_DarkMaster
@MC_DarkMaster 4 ай бұрын
Ward is it you?
@supreme_dev
@supreme_dev 4 ай бұрын
Interesting one, might give it a go for a project, I dislike the slow download of webassembly on first visit in blazor and server-side for high traffic web applications might get expensive
@craigmcinnes1212
@craigmcinnes1212 4 ай бұрын
this looks great, especially for people who were mainly server side, perhaps this will give them the confidence to try a bit more front end stuff
@Artokieffer
@Artokieffer 4 ай бұрын
What is the difference between the method you showed us to store the property data at 11:02 and the already existing component state that we have for long in .NET ?
@michaelakin766
@michaelakin766 4 ай бұрын
I am a bit new to Blazor and my current project is using .razor and Nick used .cshtml when and why do you use one over the other?
@adamoneil7435
@adamoneil7435 4 ай бұрын
wow, really interesting. I've been into Blazor for a couple years now. I do have some pain points around SignalR/socket disconnect issues, but overall it's a good dev experience. My WASM experience has not been great, but that's a side issue, really. It's great to see something like this being done. I'm not sure I want to pivot my effort into this, but I do like that this has a simple "feel" to it.
@ApacheGamingUK
@ApacheGamingUK 4 ай бұрын
Socket connection and re-hydration issues should be a lot better in .NET9. If you follow Daniel Roth's talks in the community standups, he talks extensively about the massive changes being made under the hood to make Blazor9 a lot better. It makes me think that Blazor8 was released as an MVP, and was probably rushed out for the November deadline. They've fixed the interactivity paradox; socket rehydration; and, they re-written the Razor compilation paths from scratch, to make Hot Reload work a lot better with Blazor. As well as lots of other small changes that read like a laundry list of low-priority work items that didn't make it into .NET8.
@pilotboba
@pilotboba 4 ай бұрын
Kinda looks a bit like htmlx where the server is doing the rendering and sending HTML fragments that the client side js uses to update the dom.
@CloudTheWolf
@CloudTheWolf 4 ай бұрын
This gives the same vibes as Livewire Components for Laravel, which is cool!
@ApacheGamingUK
@ApacheGamingUK 4 ай бұрын
I can see this being really powerful as a de-coupled front-end to OrchardCore. It's a bit of a pain to use Blazor as a de-coupled front-end, but because this uses Razor Pages, it would fit right in with the OrchardCore ethos.
@rn.cslive
@rn.cslive 4 ай бұрын
Hi Nick thank for your demo, did you try to make it can interact with external component like: calendar, date picker ... cause in the real application we really need them .
@andriisnihyr6497
@andriisnihyr6497 3 ай бұрын
I love the fact that this is an alternative to what Microsoft provides. I think we need fresh ideas. I'd love to see how it will evolve. Right now, I don't see much benefit of using it over Blazor. Blazor will most likely be more efficient with the SignalR as a transport.
@sascha1461
@sascha1461 4 ай бұрын
I'm just a month or two in on a project with blazor (first bigger project doing with it) and I encountered lots of things that I find really annoying with it. This looks more like what I had hoped blazor would be like. I'll definitely give it a try and check if it's worth compared to just using something like React
@PedroPabloCalvoMorcillo
@PedroPabloCalvoMorcillo 4 ай бұрын
I'm in love with Hydro. Awesome.
@Milk-gw1zl
@Milk-gw1zl 4 ай бұрын
Many people say that's it's like a old WebForms, BUT IT DOESN'T. SSR in react works like that, where it get just html element from server with content. And i think it's future of frontend because it's simple as it is. In my opinio it must be in blazor as alternative to SignalR
@ivcbusinesssystems6613
@ivcbusinesssystems6613 4 ай бұрын
*This sounds like the old "Update Panel" from Webforms! Oh, I see @MAMW93 has already noted this!*
@sulmarpl
@sulmarpl 4 ай бұрын
Webforms like Winforms, forever alive ;-)
@jaymartinez311
@jaymartinez311 4 ай бұрын
I hope something comes out with jsx but C#. I don’t use blazor but i would stick to it then using this.
@SajadJalilian
@SajadJalilian 4 ай бұрын
Finally something like "hot wire" and "live wire" for dotnet 🍺
@EnricoBarbieri86
@EnricoBarbieri86 4 ай бұрын
I never used blazor before (therefore I can be totally wrong here) but this Hydro looks very like the Angular approach to me… In the video I cannot understand if all those HTTP calls on the Add button are handled by the client or the server. If it’s on the server, it’s a bit of a bummer for me wasting bandwidth and processing for something the client could handle itself.
4 ай бұрын
Developer should add the ViewState to hold the state. 😂
@gregdennis6094
@gregdennis6094 4 ай бұрын
My only reason for using Blazor is WASM. This didn't appear to do that. The data binding is neat though.
@gabrielandres26
@gabrielandres26 4 ай бұрын
It would be interesting to see how this compares to htmx and razor pages.
@stoched
@stoched 4 ай бұрын
I gave Blazor a try but it was too difficult especially in VS dealing with the random LSP issues. I’ve found Svelte to be a much better alternative. Svelte components are structured very similar to blazor and everything just works. It’s the easiest framework to whip up front ends in imho
@gordonfreimann
@gordonfreimann 4 ай бұрын
So you cached counter for all the clients. Id rather have a client side component and cache it in the browser
@billscharf3353
@billscharf3353 4 ай бұрын
@nick chapsas I would love a comparison between hydro and DotVVM. Thr former uses Ajax and the latter backbone.js, but both have 2way data binding without the signalR dependency.
@tempusmagia486
@tempusmagia486 4 ай бұрын
I think this is more a replacement for aspnet mvc. Not match for blazor
@leftjabrighthook
@leftjabrighthook 4 ай бұрын
everyone suggesting htmx, have you tried changing a htmx action url client side?
@johnsuckher3037
@johnsuckher3037 4 ай бұрын
what kind of action? each action produces events that you can listen and modify before it's being sent rendered or whatever. But I implemented one where I was changing urls, simply get element, set attribute with new url, htmx.process and trigger htmx.trigger if that was your intention
@davideastman5806
@davideastman5806 4 ай бұрын
Why are we changing url's client side? Can you give a concrete example?
@ChrisWard74
@ChrisWard74 4 ай бұрын
So why would we want this vs Blazor again?
@ayorus
@ayorus 4 ай бұрын
This use similar approach to Livewire, which has some sync problems on slow networks, specially when you have big forms with many dynamic lists.
@zagoskintoto
@zagoskintoto 4 ай бұрын
Kinda funny nick's been producing content against the same courses they are just launching in dometrain LOL EDIT (coming back after watching): I liked most of the showcase. It really feels like some of the stuff should've always been like that in blazor. What doesn't sell, imho, is the whole Subscribe/Dispatch/DispatchGlobal thing. Idk it feels like reinventing the wheel to just do events and event handlers, and the syntax reminds me of MAUI (which is not a good thing). Nevertheless the fact that the whole thing is just done with ajax and doesn't have the problem of the signalR connection or the wasm download delay feels like the step Microsoft should've always gone with.
@manojchowdhary4097
@manojchowdhary4097 4 ай бұрын
Blazor hadn't gotten that popular and there is an alternative already 😀
@AmateurSpecialist
@AmateurSpecialist 4 ай бұрын
As a former Perl programmer ("There's more than one way to do it!") I'm all in favor of reinventing the wheel, because we might just get a better wheel.
@giovaniluigibrondani8609
@giovaniluigibrondani8609 4 ай бұрын
I want to see an example of you updating the page from an event received by the server. These events you showed are nice, but they are triggered from the front-end. Can you have the events triggered from the backend? Since its http, I am guessing... no way
@MalinAhlin
@MalinAhlin 4 ай бұрын
It's interesting and competition is good but long running established frameworks have ran into issues after Microsoft released their own version, I might look into it on some hobby project but I hope the best for the developers
@ueliska
@ueliska 4 ай бұрын
really hope c# doesnt turn into javascript that has 200 new web frameworks every single day lol
@an_wobbly
@an_wobbly 3 ай бұрын
Pretty sure C# was doing it before it was popular with NuGet, just before it was considered a web-first language.
@jd31068
@jd31068 4 ай бұрын
I used AJAX when it first arrived, and it was beautiful and easy.
@mm-iv9cl
@mm-iv9cl 4 ай бұрын
@7:12 Nick said, "... you don't necessarily have to use an Azure-managed SignalR instance to get everything to work properly..." Could you clarify this? Is all the Blazor Server app's SignalR instances managed by Azure?
@hio86
@hio86 4 ай бұрын
No, it's not. Blazor server works fine on any server. I host it on digital ocean ubuntu VPS.
@krigrtrue
@krigrtrue 4 ай бұрын
Nice video Please make a video showing viewmodel with multiple nested objects using lists in a form and using one form submit. Can't remember if you have made a video about htmx it would be great to get your opinion on blazer vs htmx and hydro.
@mekowgli
@mekowgli 4 ай бұрын
I'll check it out, but I would also like to do a shoutout for DotVVM which super mature (IMHO more than Blazor) and tested in the field.
@diadetediotedio6918
@diadetediotedio6918 4 ай бұрын
I would love some alternative like cshtml in the desktop/mobile UI field, microsoft stickyness with the weird XAML is absolutely terrifying, and Comet appears to be stale...
@yperman1
@yperman1 4 ай бұрын
There is. Its called MAUI hybrid using blazor html css and c#. No need for XAML.
@diadetediotedio6918
@diadetediotedio6918 4 ай бұрын
@@yperman1 Naturally I'm talking about a native (in the sense of using the native elements of the system OR using another approach that is not embedding/consuming an entire browser in the app, like skia) alternative, the hybrid (at least of what I know) still uses a browser to do it's biddings.
@yperman1
@yperman1 4 ай бұрын
@@diadetediotedio6918 yes it uses webview2. But it works perfectly I have created a few apps and it is very good. Everything is going to work throuhg a browser and the reason the cross platform thing. browsers work everywhere.
@fsharplove
@fsharplove 4 ай бұрын
@@diadetediotedio6918 Webview not a browser. Blazor hybrid > Blazor XAML (PERSONAL POINT OF VIEW)
@emmanueladebiyi2109
@emmanueladebiyi2109 4 ай бұрын
Yeah, really like the Blazor Mobile bindings. You can try it out
@ShoniNemavhidi
@ShoniNemavhidi 4 ай бұрын
NO
@theonlywallrus
@theonlywallrus 4 ай бұрын
Thanks Nick, good information. HTMX is another great alternative.
@nervousstate
@nervousstate 4 ай бұрын
Latency becomes problem number one here.
@dawizze1
@dawizze1 4 ай бұрын
Blazor doesn't seem like it wants to know what it wants to be.
@sakenda
@sakenda 4 ай бұрын
Adding a hole massive dependency bc of what? I would rather spend time using the tools that are given by blazor
@nihanshuranjanmitra947
@nihanshuranjanmitra947 4 ай бұрын
It seems to me that writting React in C# syntax ...
@nage7447
@nage7447 4 ай бұрын
not bad idea, but I just hate to know that every action will do http call
@dirkschannel5817
@dirkschannel5817 4 ай бұрын
Feels a bit like WebForms. Don’t hate me, but I really liked WebForms.
@CarrigansGuitarClub
@CarrigansGuitarClub 4 ай бұрын
I have to say that Blazor hasn't caught fire like the industry thought it should - I remember Silverlight and that caught the imagination of all C# developers, but Blazor just hasn't ignited yet....and now a competitor.....
@Subjective0
@Subjective0 4 ай бұрын
Definitely won’t use cshtml voluntarily again, such a big mess to do so little. For me, Blazer has a much better way to express components and pages and use them together.
@DavidSmith-ef4eh
@DavidSmith-ef4eh 4 ай бұрын
reminds me of a laravel library, livewire. I didn't like it at all, since the people using it hardcoded it and it was a hard dependecy for everything. They were too lazy to use it only in the presentation layer, actually, they had no presentation layer lol
@leffivanov3127
@leffivanov3127 4 ай бұрын
Never loved Blazor because of that lots of complexity we have in project. I wish there were something like NiceGUI, Dash, Flet and etc in Python, but in pure C# or F#.
@JeffryGonzalezHt
@JeffryGonzalezHt 4 ай бұрын
I don't totally dismiss Blazor, or this - but it is just amazing to me how much crazy stuff .NET developers will do just so they don't have to learn some JavaScript or a framework like React, Vue, or even Angular. Maybe I just still have some latent trauma from the years of the "Ajax Toolkit".
@MrFloDotDB
@MrFloDotDB 4 ай бұрын
Yeah, Crazy stuff to avoid js & react crazy stuff and other mfe shit
@keyser456
@keyser456 4 ай бұрын
That's like saying c or c++ is to avoid having to learn Assembly. The whole point of Blazor WASM is you effectively get the entire .NET Framework and C# in the browser. If you're not a .NET developer yourself, the benefits aren't immediately obvious.
@JeffryGonzalezHt
@JeffryGonzalezHt 4 ай бұрын
@@keyser456 It's not at all like saying that. I have been a .NET developer, and continue to be, since version 1.0. (I was also a C, and C++ developer). I wrote web apps with PERL on Apache before old school ASP. I think frameworks like React, Angular, Vue, etc. are really overused in enterprise environments. I think just server-side MVC/Razor is a better choice in about 85% of the cases. BUT, if you are trying to do a SPA type experience, the other end of the spectrum, your programming language of choice is the least of your worries. Abstracting yourself away from the DOM, from the browser, is going to give you issues. The DOM updates thing and state management is a pretty hard problem to keep it performant. And there are 100s of brilliant developers on the browser side struggling with this stuff - and making progress (reactive, signals, redux, etc.) and then I see stuff like the next iteration of "INotifyPropertyChanged" like Nick showed here and I just groan. Web Assembly in the browser is nearly abandoned. (Server-side, it's hot). I can see uses for Blazor (and this stuff) to add *some* interactivity to otherwise server-rendered LOB apps. I'm not dismissing it. I'm just skeptical.
@hio86
@hio86 4 ай бұрын
Ah yes, people assume that other people are just stupid and don't want to learn. The same logic SQL fanatics use for why others use ORMs or MongoDB. It's not about learning. It's about simplifying our workflows and being more productive. I use Vue and I am sick of the build process being slow and breaking every once in a while so i have to debug my tools instead of my apps. I am sick of the node build proccess and it's overly large dependency eco system. Also with blazor server i just give an IQueryable to DataGrids and it just works with sorting paging and filtering. Datagrids used be the most time consuming thing to build and now with blazor it is trivial. With server blazor I don't have to write API code or the JS to consume it and i get the responsive feeling of a SPA.
@creo_one
@creo_one 4 ай бұрын
I have latent trauma from the years of the "React framework"
@rwj_dk
@rwj_dk 4 ай бұрын
Sticking with Blazor...
@Condition_svk
@Condition_svk 4 ай бұрын
This hardly can fight support of MS in blazor but it's interesting
@MatinDevs
@MatinDevs 4 ай бұрын
Then he reinvented the wheel
@renebu2204
@renebu2204 4 ай бұрын
So this is basicly more like HTMX with C#
@rodjenihm
@rodjenihm 4 ай бұрын
Poor man's Laravel Livewire.
@IcaroFelix2023
@IcaroFelix2023 4 ай бұрын
It would be better if we could get the element reference and use System.Reactive to listen events
@law6906
@law6906 4 ай бұрын
I'm not sure why we get stuck in the loop of returning HTML. It seems that when you do that you get yourself stuck where your business logic gets stuck in the GUI section.
@ChaimMosheStern
@ChaimMosheStern 4 ай бұрын
Why go to the server for every increment of counter So sick
@abdusuf523
@abdusuf523 4 ай бұрын
lol 😅.. what if the counter is in db and u need to update it, r u going to increment it locally? Then what? This is just an example.. it is either an api or ajax that connect to the server to update the data Server is the source of truth
@catalystcorp
@catalystcorp 4 ай бұрын
@@abdusuf523 What if it's *not*? The point is this framework and blazor have no choice but to rerender from the server, whereas javascript can do both.
@DEZK90
@DEZK90 4 ай бұрын
@@catalystcorp But Blazor still offers WASM that would not need to render on any server. But at the end Blazor integrates great with JavaScript thats why everything that needs to be done on the client is either done with WASM or JavaScript in my blazor projects
@maacpiash
@maacpiash 4 ай бұрын
Nick included Alpine.js in the head of the Layout, that means there are definitely some client-side capabilities, i.e. interactive changes that do not require HTTP calls to the server.
@davidpickering1778
@davidpickering1778 4 ай бұрын
Hopefully someone will port it to Blazor SSR. Seems the project itself is a bit dead. No activity past 6 months.
@figloalds
@figloalds 4 ай бұрын
I like that it uses plain requests, because it's better for scaling; It does have the performance compromise of multiple connection opens that Blazor doesn't have, but with requests, as long as the state isn't tracked server-side it doesn't matter what server responds, which opens doors to horizontal scaling and blue-green updates I hate it's syntax tho, ugly af
@thygrrr
@thygrrr 4 ай бұрын
IMMA FIRIN' MA BLAZOR!!!
@_iPilot
@_iPilot 4 ай бұрын
It uses AJAX. Blazor with WASM is an attempt to get rid of JS completely, isn't it?
@efrenb5
@efrenb5 4 ай бұрын
So yeah, back to web forms with ViewState coming and going. That's just doing it via AJAX instead of full page post. LOL
@kakkarot1000
@kakkarot1000 4 ай бұрын
Is it just me, or does this feel like a server based version of Vue?
@sayedshraki8417
@sayedshraki8417 4 ай бұрын
Deer Nikin can you make video about how to run dotnet descktop app on browser?
Await Async Tasks Are Getting Awesome in .NET 9!
9:24
Nick Chapsas
Рет қаралды 97 М.
Don't Use Polly in .NET Directly. Use this instead!
14:58
Nick Chapsas
Рет қаралды 66 М.
버블티로 부자 구별하는법4
00:11
진영민yeongmin
Рет қаралды 18 МЛН
啊?就这么水灵灵的穿上了?
00:18
一航1
Рет қаралды 53 МЛН
Smart Sigma Kid #funny #sigma
00:14
CRAZY GREAPA
Рет қаралды 6 МЛН
Testing in .NET is About to Change
12:54
Nick Chapsas
Рет қаралды 73 М.
Why We Choose Blazor over React and Vue: Matt Jones
40:23
Techlahoma
Рет қаралды 7 М.
Why Developers Hate "Clean Code"?
14:39
Nick Chapsas
Рет қаралды 63 М.
The Pattern You MUST Learn in .NET
20:48
Nick Chapsas
Рет қаралды 89 М.
The World Depends on 60-Year-Old Code No One Knows Anymore
9:30
Coding with Dee
Рет қаралды 857 М.
It’s time to move on from Agile Software Development (It's not working)
11:07
What Makes A Great Developer
27:12
ThePrimeTime
Рет қаралды 198 М.
*Next-door 10x Software Engineer* [FULL]
4:50
Programmers are also human
Рет қаралды 700 М.
Why is Vite Everywhere? | Evan You
38:32
OpenSauced
Рет қаралды 34 М.
Stop Using FirstOrDefault in .NET! | Code Cop #021
12:54
Nick Chapsas
Рет қаралды 83 М.