GET YOUR FREE BLAZOR CHEAT SHEET HERE!!!: JustBlazor.com/ Perhaps you need a bit of guidance in landing the job, passing the interview or succeeding in your Software Career? Book a session: contractlancer.com/
Thanks for the feedback, ill be sure to not do as much editing like this. I was thinking the same thing but the views are up so you know i thought it was ok.
@@justblazorprogramming I commented similarly, but the editing isn't the problem, in fact it's nice to have such concise content. It's the zooming change that is most distracting imo. Editing to make the content more concise = good. Zooming and jerky jumps is the problem. Thanks for the content.
I think on the fourth misconception, we should use a mix of Blazor Server and Blazor Wasm at somepoint because sometime we don't want to expose some very important customer information like SSN, Driver licence, Tax, ect. to the browser directly. And it will be great if Microsoft can some how mix them together to create a hybrid Blazor where in the 1st load to the page, we will use Blazor Server to have super fast page load, and in the background, we will downloading the Wasm dll, then when the Blazor Wasm finish downloading dll, It will replace Blazor Server to save us Memory on the Server, which alway the weakness of Blazor Server in term of cost. This will make Blazor become very powerful due to its superfast Initial load of Blazor Server and awesome performance of Blazor Wasm since Blazor wasm always behide other JavaScript framework in its Intial load, expecially when compare with Nextjs which have an incredible small download size, awesome performance, and very good SEO score.
The only issue is that you need to establish the websassembly in the browser somehow while trying maintain the fast speed and also your own application has to load in there. I think Microsoft can do it but thats quite the technical hurdle especially if you dont want a bloated framework. Not to say it wouldnt be cool if they could make it happen and solve the individual problems both Blazor hosting models have. Then you wouldnt need two and can just use this one. As for the PII thing, ya that would be nice to ensure that the information doesnt touch the browser, however from my experience thats not the biggest problem unless the user is already compromised and the most important thing is tokenizing/encryption and having a well-done security architecture.
@@justblazorprogramming Blazor Wasm have a very large download size in an actual project. I tried to use Brotli compression to compress my Blazor Wasm from 80mb to 8mb in .NET 6 which is very impressive effort from Microsoft but overall, 8mb is still alot. I think the goal is to chunk it down all the way to under 1mb or at least under 2mb, this is the ideal size if we want Blazor to dominate other JavaScript Libraries like Nextjs. I tried to implement Lazy Loading to achive a smaller download size but I don't see the dll file represent the razor code anymore, for example when using.net 5, I can see there is a counter.dll or fetchdata.dll in my network tab, but after migrating to .net 6, all I see is just client.dll, so I'm consufed and not sure if lazy loading is actively working or not.
Not sure when you say WASM and blazor server if you mean WASM thats blazor server hosted or a hybrid approach but there is a valid argument for both and your silly misconception about it shows a complete lack of understanding of why people would want both. If you meant blazor server hosted WASM, i have a significant project done this way and its because its faaaaar easier to develop together than to seperating host the WASM some other way and develop the API seperately. Unless im missing some trick or something. and hosting it is duplication zero functionality so its nothing like your comparison of wearing socks over your shoes and other socks. If you mean a hybrid of WASM and server theres VERY legitimate use cases for this hence in .net 8 they are working hard to make this a proper feature. The reason is WASM and server side both have trade offs. WASM has a heavy download and initial load time, and in some tasks can perform slowly rerendering the entire view (ive seen this in action on datagrids). But it has the benefit of less processing work and easier to scale because once its downloaded most of the work is handled client side and if you have heavy processing tasks such as processing audio files or large data sets its far cheaper to let the users browser process it. Whereas blazor server has far faster initial loading times, less traffic and because the browser only gets updates for its changed elements can make for a far smoother experience. If you want the best of both these worlds you can get this through a hybrid WASM and blazor server implementation, blazor server handles the initial load and gives the user quick response and usabliity while the WASM downloads in the background. you then can load the WASM for pages that have heavy processing or a genuine benefit from using it and through intelligent design and thought out usage of when is server side best and when would WASM make sense get the best solution.
Damn you put a lot of thought in this response and you were more or less polite about it so that's really good. When it comes to the notion of having a front-end use of Blazor-Client and then having the backend be blazor server, id like to try it myself before endorsing such a thing., maybe make a video on it. If you have any suggestions on how to perform this in the most optimized fashion id be glad to hear it, especially what use case you would prefer this set up in. I have always been under the impression, coming from a Razor background, that if i choose to use the server-side Blazor i should stick to that as much as possible. Same with Blazor WASM. As for .NET 8, this video is very old and i believe .NET 5 was the thing that was out at the time and i had no knowledge of that when i made this.
After Blazor becomes more prevalent in the job market, which do you think employers will prefer: blazor wasm with api calls or blazor server? This video really helped clear confusion.
I would guess the WASM be more popular. Since the nature of using it involves decoupling your front-end and your API it would be less work if they have an existing project. However for newer project most likely Blazor Server.
This is similar to an argument about which is the best framwork, whatever is the right tool for the job and whatever is complimentary to your skillset. WASM has one problem that Blazor Server doesnt and that is the issue with security. Most JS apps have a similar issue.
@@justblazorprogramming Right, my gutt tells me go Blazor WASM unless it doesn't need to be too dynamic or needs good SEO, go MvC. Blazor Server feels like an experiment for small scale solutions. In some way it reminds me of Meteor.js kinda failed.
Regarding the 4th misconception. In VS2022, when I use the provided template to create a WASM solution it creates 3 projects: server, client and shared. Is the server project a Blazor Server one? ...if yes, is the (MS) provided template using a sox in top of the shoe?
@@justblazorprogramming In the next step after one puts the project name; in the step where one chooses the framework (.NET 6.0) there is the check box "ASP.NET Core Hosted". If checked, it creates the 3 projects.
stackoverflow.com/questions/58093386/whats-the-difference-between-asp-net-core-hosted-and-server-side-blazor-really I believe this gives the most clarity, as per usual looking into the microsoft documentation yet again leaves one more confused than anything. But it says that its an ASP.net core runtime, it has the name Blazor.server but it literally is a Server. I believe the main difference is whether you are using API calls and SignalR to update your pages. If you already are doing API calls you dont need SIgnalR from my understanding, and if you are using SignalR then why use API calls too? But you do bring up something excellent that I would like to address in a future video. This also confused many people in that post i linked you, it might be worth addressing. Thank you for bringing it up, i mean it.
@@justblazorprogramming I think you have that wrong. API and SignalR do different things in Blazor. SignalR updates the DOM in the background, while you are using an API. So for example if I have a data table on my page with 2 rows in it that is built inside a foreach loop using a model as the data, and then I press the Delete button to get rid of a row, the Delete button will call an API to delete that info, but the row only disappears from the page instantly because SignalR detected a change in the data and will re-render whatever is inside the foreach loop. Basically they work hand in hand. SignalR is the thing that is doing what AJAX usually does. API is just a method of getting data, but it doesn't have anything to do with the DOM being updated.
Claiming that "everyone" gets it wrong and then totally pointing out the obvious is pure clickbait and a waste of time to ppl who really work with Blazor. When will these clickbait headlines ever stop? Seriously, who in their right mind even has these misconception?
Actually a lot of those questions came from my comments. Not everyone is up to speed with Blazor and i just don't assume you are an expert. Maybe you will gain something, maybe not, but i can say that if you look at my other videos those questions do pop up. As for it being click-baity, that's the name of the game here on UA-cam. I try to keep it to what the title is but I'm sorry you had some umbrage towards it.
ya i know, youre not the first one to complain about it but i promise all other videos dont have this level of editing. It is just youtube promoting this video for whatever reason
I think that React, Angular and Vue developers do not want to understand Blazor because they are stuck with their Javascript frameworks. They are narrow minded. It's a typically dishonest attitude. I think that minds will change when a lot of new job opportunities will request for Blazor skills. This is the same lie with Python. Everybody wants to learn Pytrhon since there are a lot of job opportunities if you know Python, but this is a poor OOP language compared to C#. All this comes from the Linux world because they do not want to use Microsoft technologies because this is the devil on this planet. They almost make me laugh. Just a note : I am not a native english speaker and you really speak fast. If you can speak slower this would be great. Anyway, many thanks for your useful channel.
I understood what you are saying, however its bad to presume so much. If you want to be a well-paid developer you have to open up your horizons. At the moment the most popular languages out there are the ones you described, and Blazor is brand new by comparison. It isnt good eschew them as they each have a merit for themselves and theres a reason behind why they are so popular. Python is a very flexible language far more than either the JS languages or C# which is why people learn it and its used everywhere. As for your comment on linux users, Linux is a great OS in my opinion and was the first OS i used and in fact GIT if you want to use the git bash command line is linux script. You shouldnt look down on them because Linux is also the OS of choice for poorer people who cant afford the latest hardware or the amount of money needed for a Windows OS. You can feel however you want about these technologies or the people that use them, but you shouldnt let your strong feelings for them get in the way of your own personal development. You are imposing limitations on yourself whether you know it or not and most likely limiting your future tech prospects. Ive learned many languages over my time as a developer and my feelings for them dont stop me from using them and getting paid for it. Dont let it stop you. Good luck
@@justblazorprogramming I do understand what you say. Linux is a great OS, and I am happy to see some trends coming from the Linux world, to be adopted in the Windows world. But, Dennis Ritchie and Brian Kernigham have invented the best language, who gave birth to Linux, and frankly, I do not see a big gap between other languages and C. Sometimes, I just see a waste of time, and not a revolution for application development.
At the end of the day, its about the money and marketing. Ipods were inferior to zune both in price and functionality but ultimately destroyed them in marketing and design. Sometimes what we value is not what the market values, and that makes all the difference. But i believe theres enough room for everyone here.
JS devs don't want to use C# as their primary way to code. They prefer using TypeScript for the most part to build stuff. Why would you blame them for that ? It's like asking C# folks to use JS / TS. Blazor as a technology will remain interesting to the C# community for this reason. The transpile to WASM mechanism in every case just result in much larger payloads compared to the equivalent JS version. While frontend frameworks are competing to reduce that even further Blazor will have a tough time competing on that front. Blazor for those reasons will be of interest to companies that already have a large C# developer base, and don't care about payload sizes.
BlaOr load time is more than js framework, obviously its based on compiled language. But fui compiled machine code runs much faster than interpreted JavaScript
You know I was gonna make the change and start pronouncing it correctly, but now that you pointed it out im not doing that. Its gonna be called SPAH, and .net will be called 'point-net'.
GET YOUR FREE BLAZOR CHEAT SHEET HERE!!!: JustBlazor.com/
Perhaps you need a bit of guidance in landing the job, passing the interview or succeeding in your Software Career? Book a session:
contractlancer.com/
Great content, but the zoom level jumps are distracting and kind of nauseating. Maybe just set a static zoom level and leave it at that
Thanks for the feedback, ill be sure to not do as much editing like this. I was thinking the same thing but the views are up so you know i thought it was ok.
I agree. I could not watch the video due to all the crazy zoom stuff. I tried to listen.
I also found it a bit annoying. I usually watch videos in full screen. But I had to hide this in order not to risk an epileptic attack ^^.
@@justblazorprogramming I commented similarly, but the editing isn't the problem, in fact it's nice to have such concise content. It's the zooming change that is most distracting imo. Editing to make the content more concise = good. Zooming and jerky jumps is the problem. Thanks for the content.
I think on the fourth misconception, we should use a mix of Blazor Server and Blazor Wasm at somepoint because sometime we don't want to expose some very important customer information like SSN, Driver licence, Tax, ect. to the browser directly.
And it will be great if Microsoft can some how mix them together to create a hybrid Blazor where in the 1st load to the page, we will use Blazor Server to have super fast page load, and in the background, we will downloading the Wasm dll, then when the Blazor Wasm finish downloading dll, It will replace Blazor Server to save us Memory on the Server, which alway the weakness of Blazor Server in term of cost.
This will make Blazor become very powerful due to its superfast Initial load of Blazor Server and awesome performance of Blazor Wasm since Blazor wasm always behide other JavaScript framework in its Intial load, expecially when compare with Nextjs which have an incredible small download size, awesome performance, and very good SEO score.
The only issue is that you need to establish the websassembly in the browser somehow while trying maintain the fast speed and also your own application has to load in there. I think Microsoft can do it but thats quite the technical hurdle especially if you dont want a bloated framework. Not to say it wouldnt be cool if they could make it happen and solve the individual problems both Blazor hosting models have. Then you wouldnt need two and can just use this one.
As for the PII thing, ya that would be nice to ensure that the information doesnt touch the browser, however from my experience thats not the biggest problem unless the user is already compromised and the most important thing is tokenizing/encryption and having a well-done security architecture.
@@justblazorprogramming Blazor Wasm have a very large download size in an actual project. I tried to use Brotli compression to compress my Blazor Wasm from 80mb to 8mb in .NET 6 which is very impressive effort from Microsoft but overall, 8mb is still alot. I think the goal is to chunk it down all the way to under 1mb or at least under 2mb, this is the ideal size if we want Blazor to dominate other JavaScript Libraries like Nextjs. I tried to implement Lazy Loading to achive a smaller download size but I don't see the dll file represent the razor code anymore, for example when using.net 5, I can see there is a counter.dll or fetchdata.dll in my network tab, but after migrating to .net 6, all I see is just client.dll, so I'm consufed and not sure if lazy loading is actively working or not.
This is exactly what they're working on with Blazor United for .NET 8.
Thanks for your video, but plz stop changing the zoom level too much while editing the video. It's really annoying.
Noted
I believe that for a large application the server will be more suitable.
I think WASM is the way to go if you want others to build from your API. Otherwise, the relative simplicity of a Server Project is my decision maker.
subscribed for the sock shoe joke
Im starting to kinda regret it cause there is actually a reason for it. But its a bit specialized
I'm getting "Reconnecting to server" like crazy with Blazor server.
Would wasm help me?
Something's wrong with your camera, it jumps and cuts all the time
Ya, this was an earlier video, experimenting with video editing, dont worry i chill out with all that in future videos.
@@justblazorprogramming cool. Good content otherwise. 🤘
Not sure when you say WASM and blazor server if you mean WASM thats blazor server hosted or a hybrid approach but there is a valid argument for both and your silly misconception about it shows a complete lack of understanding of why people would want both.
If you meant blazor server hosted WASM, i have a significant project done this way and its because its faaaaar easier to develop together than to seperating host the WASM some other way and develop the API seperately. Unless im missing some trick or something. and hosting it is duplication zero functionality so its nothing like your comparison of wearing socks over your shoes and other socks.
If you mean a hybrid of WASM and server theres VERY legitimate use cases for this hence in .net 8 they are working hard to make this a proper feature. The reason is WASM and server side both have trade offs. WASM has a heavy download and initial load time, and in some tasks can perform slowly rerendering the entire view (ive seen this in action on datagrids). But it has the benefit of less processing work and easier to scale because once its downloaded most of the work is handled client side and if you have heavy processing tasks such as processing audio files or large data sets its far cheaper to let the users browser process it. Whereas blazor server has far faster initial loading times, less traffic and because the browser only gets updates for its changed elements can make for a far smoother experience.
If you want the best of both these worlds you can get this through a hybrid WASM and blazor server implementation, blazor server handles the initial load and gives the user quick response and usabliity while the WASM downloads in the background. you then can load the WASM for pages that have heavy processing or a genuine benefit from using it and through intelligent design and thought out usage of when is server side best and when would WASM make sense get the best solution.
Damn you put a lot of thought in this response and you were more or less polite about it so that's really good. When it comes to the notion of having a front-end use of Blazor-Client and then having the backend be blazor server, id like to try it myself before endorsing such a thing., maybe make a video on it. If you have any suggestions on how to perform this in the most optimized fashion id be glad to hear it, especially what use case you would prefer this set up in. I have always been under the impression, coming from a Razor background, that if i choose to use the server-side Blazor i should stick to that as much as possible. Same with Blazor WASM. As for .NET 8, this video is very old and i believe .NET 5 was the thing that was out at the time and i had no knowledge of that when i made this.
Whats the situation with blazors wasm size and performance at the moment?
Its gotten better, still has the initial load problem but there are ways around it like prerender and having the loading circle.
After Blazor becomes more prevalent in the job market, which do you think employers will prefer: blazor wasm with api calls or blazor server?
This video really helped clear confusion.
I would guess the WASM be more popular. Since the nature of using it involves decoupling your front-end and your API it would be less work if they have an existing project. However for newer project most likely Blazor Server.
Debugging is much better on Blazor Server! Mono is not good enough in this case.
I wouldn't bet on Blazor Server ... Blazor WASM is great, we just need something to improve SEO.
This is similar to an argument about which is the best framwork, whatever is the right tool for the job and whatever is complimentary to your skillset. WASM has one problem that Blazor Server doesnt and that is the issue with security. Most JS apps have a similar issue.
@@justblazorprogramming Right, my gutt tells me go Blazor WASM unless it doesn't need to be too dynamic or needs good SEO, go MvC. Blazor Server feels like an experiment for small scale solutions. In some way it reminds me of Meteor.js kinda failed.
Lovely explanation. 👍👍👍
Programmer din pala si Janno Gibbs
Regarding the 4th misconception. In VS2022, when I use the provided template to create a WASM solution it creates 3 projects: server, client and shared. Is the server project a Blazor Server one? ...if yes, is the (MS) provided template using a sox in top of the shoe?
That is odd as i wanted to see and when i created it, it just made the one project. So idk what you did, maybe theres a bit of a misconception here?
@@justblazorprogramming In the next step after one puts the project name; in the step where one chooses the framework (.NET 6.0) there is the check box "ASP.NET Core Hosted". If checked, it creates the 3 projects.
stackoverflow.com/questions/58093386/whats-the-difference-between-asp-net-core-hosted-and-server-side-blazor-really
I believe this gives the most clarity, as per usual looking into the microsoft documentation yet again leaves one more confused than anything. But it says that its an ASP.net core runtime, it has the name Blazor.server but it literally is a Server. I believe the main difference is whether you are using API calls and SignalR to update your pages. If you already are doing API calls you dont need SIgnalR from my understanding, and if you are using SignalR then why use API calls too? But you do bring up something excellent that I would like to address in a future video. This also confused many people in that post i linked you, it might be worth addressing. Thank you for bringing it up, i mean it.
@@justblazorprogramming Looking forward on your future videos.
@@justblazorprogramming I think you have that wrong. API and SignalR do different things in Blazor. SignalR updates the DOM in the background, while you are using an API. So for example if I have a data table on my page with 2 rows in it that is built inside a foreach loop using a model as the data, and then I press the Delete button to get rid of a row, the Delete button will call an API to delete that info, but the row only disappears from the page instantly because SignalR detected a change in the data and will re-render whatever is inside the foreach loop. Basically they work hand in hand. SignalR is the thing that is doing what AJAX usually does. API is just a method of getting data, but it doesn't have anything to do with the DOM being updated.
Claiming that "everyone" gets it wrong and then totally pointing out the obvious is pure clickbait and a waste of time to ppl who really work with Blazor. When will these clickbait headlines ever stop? Seriously, who in their right mind even has these misconception?
Actually a lot of those questions came from my comments. Not everyone is up to speed with Blazor and i just don't assume you are an expert. Maybe you will gain something, maybe not, but i can say that if you look at my other videos those questions do pop up. As for it being click-baity, that's the name of the game here on UA-cam. I try to keep it to what the title is but I'm sorry you had some umbrage towards it.
jerky motion/cuts and zoom in/out is annoying for me. Thanks for the content, though. It disrupts my focus as I'm listening to what you're saying.
your edit has way too many pop-in/pop-outs, make me kinda motion sick dude
ya i know, youre not the first one to complain about it but i promise all other videos dont have this level of editing. It is just youtube promoting this video for whatever reason
I think that React, Angular and Vue developers do not want to understand Blazor because they are stuck with their Javascript frameworks. They are narrow minded. It's a typically dishonest attitude. I think that minds will change when a lot of new job opportunities will request for Blazor skills. This is the same lie with Python. Everybody wants to learn Pytrhon since there are a lot of job opportunities if you know Python, but this is a poor OOP language compared to C#. All this comes from the Linux world because they do not want to use Microsoft technologies because this is the devil on this planet. They almost make me laugh. Just a note : I am not a native english speaker and you really speak fast. If you can speak slower this would be great. Anyway, many thanks for your useful channel.
I understood what you are saying, however its bad to presume so much. If you want to be a well-paid developer you have to open up your horizons. At the moment the most popular languages out there are the ones you described, and Blazor is brand new by comparison. It isnt good eschew them as they each have a merit for themselves and theres a reason behind why they are so popular. Python is a very flexible language far more than either the JS languages or C# which is why people learn it and its used everywhere. As for your comment on linux users, Linux is a great OS in my opinion and was the first OS i used and in fact GIT if you want to use the git bash command line is linux script. You shouldnt look down on them because Linux is also the OS of choice for poorer people who cant afford the latest hardware or the amount of money needed for a Windows OS. You can feel however you want about these technologies or the people that use them, but you shouldnt let your strong feelings for them get in the way of your own personal development. You are imposing limitations on yourself whether you know it or not and most likely limiting your future tech prospects. Ive learned many languages over my time as a developer and my feelings for them dont stop me from using them and getting paid for it. Dont let it stop you. Good luck
I agree
@@justblazorprogramming I do understand what you say. Linux is a great OS, and I am happy to see some trends coming from the Linux world, to be adopted in the Windows world. But, Dennis Ritchie and Brian Kernigham have invented the best language, who gave birth to Linux, and frankly, I do not see a big gap between other languages and C. Sometimes, I just see a waste of time, and not a revolution for application development.
At the end of the day, its about the money and marketing. Ipods were inferior to zune both in price and functionality but ultimately destroyed them in marketing and design. Sometimes what we value is not what the market values, and that makes all the difference. But i believe theres enough room for everyone here.
JS devs don't want to use C# as their primary way to code. They prefer using TypeScript for the most part to build stuff. Why would you blame them for that ? It's like asking C# folks to use JS / TS. Blazor as a technology will remain interesting to the C# community for this reason. The transpile to WASM mechanism in every case just result in much larger payloads compared to the equivalent JS version. While frontend frameworks are competing to reduce that even further Blazor will have a tough time competing on that front.
Blazor for those reasons will be of interest to companies that already have a large C# developer base, and don't care about payload sizes.
Love what you're doing, but Bruh you need to organize, consolidate and rehearse.
it gets better with the other videos.
The only significant and crucial Blazor drawback is poor performance when compared to JS SPA frameworks like React/Vue/Svelte etc
BlaOr load time is more than js framework, obviously its based on compiled language. But fui compiled machine code runs much faster than interpreted JavaScript
Stop caling it Spa-Applications, it has nothing to do with Wellness.
It's SPA, all uppercase, its an Acronym so it's AS-PE-AY Applicatons.
You know I was gonna make the change and start pronouncing it correctly, but now that you pointed it out im not doing that. Its gonna be called SPAH, and .net will be called 'point-net'.