stevensandersonuk
stevensandersonuk
  • 3
  • 92 177
Experiments with the new WASI workload in .NET 8 Preview 4
.NET 8 adds a new "wasi-experimental" workload, replacing the earlier Wasi.Sdk. This is a step towards giving .NET native, built-in support for server-side WebAssembly scenarios.
This video shows how to get started, then demonstrates how .NET+WASI creates possibilities for new kinds of apps and new ways to use .NET.
Переглядів: 12 273

Відео

DotNetIsolator: an experimental package for running .NET code in an isolated sandbox
Переглядів 19 тис.Рік тому
A quick overview and demo of an experimental new .NET package that can create isolated .NET runtime instances for running code in a sandbox.
Blazor United prototype
Переглядів 61 тис.Рік тому
A quick look at some of the experiments we're considering for Blazor in .NET 8

КОМЕНТАРІ

  • @herman7318
    @herman7318 2 дні тому

    Brilliant library.

  • @WelcoBro
    @WelcoBro 19 днів тому

    Steve please make this channel live and running, we love and miss your voice, style, and simplicity. please please, we need to listen to you regularly.

  • @Twilliames
    @Twilliames Місяць тому

    That SpreadSheetApp looked pretty cool. Was this project shared or could it be please?

  • @Neme112
    @Neme112 Місяць тому

    How does the streaming rendering work without JavaScript?

  • @kylekukshtel9945
    @kylekukshtel9945 3 місяці тому

    I was to small-brained the first time I saw this to understand it's implications but revisiting again the consequences seem incredible. It's effectively an arbitrary scripting runtime for dotnet, solving a longstanding "issue" where you couldn't easily eval arbitrary C# at runtime without that code having access to the full context of the host application. Being able to leverage this for things like game scripting are huge, and as others pointed out here the ability to tie this into a better hot reloading experience would be incredible.

  • @fr3ddyfr3sh
    @fr3ddyfr3sh 3 місяці тому

    .NET Runtime runs inside WA? Actually no, Mono is the Runtime, cause MS is not able to port .Net Runtime to iOS, Android or WASM. The biggest tech company in the world still relies on the mono runtime, which was created as an OSS .NET clone by a small number of volunteers three decades ago. And MS would not be able to do their fancy new stuff, without this project. I really wonder, what they did when they’ve written .net core runtime from scratch. If this fancy .net 8 runtime, is so inflexible that it can only be used for half of the final devices. While android, ios, wasm must use the mono runtime.

  • @cnanju
    @cnanju 4 місяці тому

    Blazor United is a game changer. Eager try on my next app

  • @eversonvieira6016
    @eversonvieira6016 6 місяців тому

    This is AWESOME, i would also love to see the entire "Document" methods on Blazor, killing the JsRuntime and encapsulating it just to the browser methods inside a set of methods. WOULD BE INCREDIBLE.

  • @droam129
    @droam129 7 місяців тому

    It would be amazing if we could use WebAssembly mode only when an internet connection isn’t available (to enable offline mode/PWA), but use Server mode otherwise-this way we could get all the benefits of Server when online (like directly access DB, without need for an API) but still get offline capability. I hope if “United” makes it to production, this use case will be supported.

  • @user-lt7cf5qq8j
    @user-lt7cf5qq8j 7 місяців тому

    Super👍👍👍

  • @SixOThree
    @SixOThree 8 місяців тому

    Just to clarify, does this mean you can't use existing Razor pages "as-is" with no modifications?

  • @Snickerv12
    @Snickerv12 8 місяців тому

    Please make more videos, weekly would be great. Daily would be amazing..

  • @UMARZONE
    @UMARZONE 8 місяців тому

    Wow! you solved my big problem, i have developed an application in blazor web assemlby which has around 10 millions pages, I choosen web assembly bcause blazor server requires more resources to handle millions of concurrent connections, and i have limited server resources, now the main problem with web assembly was SEO, i wanted to index these 10 million pages in google search, which is really a daunting task for me, as pre-rendering and server side rendering needs lots of configuration in WASM. Now that configuration has become very easy in Blazor Web Apps. Great! Blazor Web App Rocks. Thumbsup to Microsoft for making such a great framework, which may kill javascript frame works in future like React, Angular and Node.

  • @reachsoftware8008
    @reachsoftware8008 8 місяців тому

    Hi... you doing great job... In blazor I have one requirement to connect webpage to client local websocket server other than hosted computer.. I am using blazor server side app.. I need to share webpage data to desktop app wise versa

  • @davidlyons24
    @davidlyons24 9 місяців тому

    I'm eagerly anticipating the upcoming releases, as the evolving landscape of WebAssembly, Blazor, and related technologies often leaves me indecisive about the best choice. One of my core requirements is robust support for MySQL and MariaDB databases, as I have several Windows Forms projects that I'm keen to transition to web-oriented platforms. However, these projects currently utilize MySQL and setting up a web user authentication system with this databases has proven to be a significant challenge for me.

  • @xybersurfer
    @xybersurfer 9 місяців тому

    this looks great! but how would this work with services that run server-side?

  • @ozanyasindogan
    @ozanyasindogan 9 місяців тому

    .Net 8 with Blazor newest features will be a game changer for the whole internet even desktop applications. Congratulations and thank you very much for providing it to us!

  • @Davide__________
    @Davide__________ 9 місяців тому

    wow this is crazy

  • @new.clasic5512
    @new.clasic5512 9 місяців тому

    there is any news in dotnet 8 preview for blazor united ?

  • @TheCameltotem
    @TheCameltotem 10 місяців тому

    They Did it! Those Crazy Bastards actually did it!

  • @gyoreg
    @gyoreg 10 місяців тому

    Hey Steve, great video, thanks. Can I find details about the communication between the client and the server side? It seems, it is hidden completely, but I would still like to understand it. Do I have to connect to the server with websocket, or maybe I also can use the good old rest API? How can I control, which information goes through the network, and lands on the client machine?

  • @TheKevindubbs
    @TheKevindubbs 11 місяців тому

    This is absolutely the solution to all of the primary problems that Blazor devs need solved. Bravo.

  • @BinaryReader
    @BinaryReader 11 місяців тому

    I really like this, except I can't run .NET Wasm on due to the lack of sock_accept. I think this symbol is above and beyond the preview1 spec, is there any documentation on this?

  • @umer.on.youtube
    @umer.on.youtube 11 місяців тому

    Great guy but can never listen to him for more than 1 minute due to stupid Aussie Accent

  • @JuiceRabbit
    @JuiceRabbit 11 місяців тому

    You guys are all amazing! Steve Sanderson is fast becoming a living legend (if not already!) Keep up the good work! 👍

  • @Mariobot
    @Mariobot 11 місяців тому

    Excelent feature. Thanks for share.

  • @stassss2011
    @stassss2011 11 місяців тому

    Steven, thank you and your team for the great work! Looking forward to the final result. I'm actually going to write my MSc degree work on WASM, WASI topics. Plan is to concentrate on containerization and capabilities of the technologies as Docker-alternative.

  • @aarondglover
    @aarondglover 11 місяців тому

    🤯

  • @Candlesticksmedia
    @Candlesticksmedia 11 місяців тому

    Thanks for sharing the update on WASI. Please can you also share the font you are using as well as how you got your terminal prompt to look the way it is. Thanks

  • @urzalukaskubicek9690
    @urzalukaskubicek9690 11 місяців тому

    We need this in production!

  • @daveblack6951
    @daveblack6951 11 місяців тому

    🤯🤯

  • @nanvlad
    @nanvlad 11 місяців тому

    Running backend server app in a browser? You're crazy and I love it!!!

  • @chadlomax4500
    @chadlomax4500 11 місяців тому

    I have to know what font you using!

  • @29238734943
    @29238734943 11 місяців тому

    Steve, what about wasm component model support for C#? Seems like a key missing piece.

  • @burtonrodman
    @burtonrodman 11 місяців тому

    that’s some awesome stuff!! i hope nobody actually tries that heap migration for real… that sounds like a security nightmare!!

    • @stevensandersonuk
      @stevensandersonuk 11 місяців тому

      I don’t think the security issue would be as bad as it seems, as there’s a completely isolated wasm heap for each user (same as for client-side wasm). But the size constraints are an issue.

  • @KieranDevvs
    @KieranDevvs 11 місяців тому

    The DotNetIsolator is great. Ive been waiting for years for someone to provide a sandboxing mechanism for plugins. Hopefully that makes it out of preview.

    • @eyalalon
      @eyalalon 11 місяців тому

      Exactly my thoughts, this is pretty awesome.

    • @teddyalbina8422
      @teddyalbina8422 5 місяців тому

      I started working on testing it for that kind of stuff

  • @quantume7143
    @quantume7143 11 місяців тому

    Very cool! :)

  • @ashimov1970
    @ashimov1970 11 місяців тому

    incredible!

  • @denysolleik9896
    @denysolleik9896 11 місяців тому

    Get an SM7B like everyone else.

  • @DustinGamester
    @DustinGamester 11 місяців тому

    This is very cool!

  • @davidtaylor3771
    @davidtaylor3771 11 місяців тому

    It is awesome you did this experiment Steve. That last part will get us all thinking about what could be possible....

  • @adefwebserver
    @adefwebserver 11 місяців тому

    @stevesandersonuk - What are the challenges of implementing the final example (that starts as Blazor Server then downloads the app and runs it in WASM) in real life?

    • @dsvechnikov
      @dsvechnikov 11 місяців тому

      First thing that comes to my mind - database connection. Yes, your app suddenly works in browser, but if it needs data from db - said db has to be accessible from your computer. And that leads to second thing that immediately popped in my head - app secrets. In order to connect to db or any other external system, app must have some sort of credentials. And if you are motivated enough, you can extract those credentials from wasm that runs on your machine where you can do whatever you want with it. Just these 2 mean that server app that starts running on your machine can't be fully functional and secure at the same time. And in many cases it can't be both.

    • @adefwebserver
      @adefwebserver 11 місяців тому

      @@dsvechnikov Thank you for pointing out those key issues. On a case-by-case basis all these can be overcome (I am thinking of perhaps using Local Storage and then syncing the data back to the server on re-connect) but, I could see why Microsoft would not want to try to make a "general solution".

    • @CarlintVeld
      @CarlintVeld 11 місяців тому

      I have watched the universal blazor demos and there Steve showed how the wasm files get downloaded while Blazor server is active. As soon as all wasm files are there the switch is made. Sure your code needs to be prepared for these hybrid flows.

  • @qumetademo
    @qumetademo 11 місяців тому

    cool again👍

  • @jameshancock
    @jameshancock 11 місяців тому

    I think the biggest deal is in docker-like containers that don't need a full os running which shrinks the overhead massively. Just abstractions of the specific OS stuff in the container.

    • @WayneMunro
      @WayneMunro 11 місяців тому

      What's faster to run, a docker container instance or a wasm process? can docker run in the browser?

    • @jameshancock
      @jameshancock 11 місяців тому

      @@WayneMunro the idea (and docker already does this with WASI as does Kubernetes) is that you don't have to spin up a host os shim and instead all that is spun up is the abstracted interfaces to the host, and the only thing it knows what to do is run wasi and that's it. In tests, you can spin up a WASI container in a few ms and have it active with 1/3rd the memory overhead of a container running a stripper version of linux that hosts your app. So if you're doing microservices or similar the savings is HUGE.

  • @paradisefallen8385
    @paradisefallen8385 11 місяців тому

    awesome

  • @victorchisomnwisu9776
    @victorchisomnwisu9776 11 місяців тому

    I see your notification and I watch quickly❤

  • @gelaleypascua6236
    @gelaleypascua6236 11 місяців тому

    Please bring streaming rendering to MVC

  • @gudata1
    @gudata1 11 місяців тому

    The framework looks great. Any chance to see how the development is done on Linux?

  • @xkran
    @xkran Рік тому

    I think the future is something similar to this but with a few modifications. Essentially the developer would work like in blazor server but it would mark the code somehow to run on the server or on the client inside the component. However when the page first loads it should run exactly like blazor server until the needed libraries are downloaded in the background to run the client code with webassembly. So at that point client code inside the component would run on the client and server code would run on the server. The communication between the client and server code would be made by signalr like it is now done with jsinterop. At this point if you have no client specific code or no server specific code (meaning all code is either server or client) in your component it would not need the signalr connecction at all. Anyways great job !

  • @mjetpax
    @mjetpax Рік тому

    You hit it right on the nose. This is exactly the kind of thing our team is looking for, well done!