How'd you like to listen to dot NetRocks with no ads? Easy? Become
a patron for just five dollars a month. You get access to a private
RSS feed where all the shows have no ads. Twenty dollars a month,
we'll get you that and a special dot NetRocks patron mug. Sign up now
at Patreon dot dot NetRocks dot com. Hey, Carl and Richard here with
your twenty twenty four NDC schedule. Will be at as many NDC conferences as
possible this year, and you should consider attending no matter what. The Copenhagen
Developers Festival happens August twenty sixth through the thirtieth. Early bird discount ends April
twenty sixth. Tickets at Cphdevfest dot com. Ndcporto is happening October fourteenth through
the eighteenth. The early bird discount ends June fourteenth. Tickets at Ndcporto dot
com. And we'll see you there, we hope. Hey, guess what
it's dot net rocks Live from Bild. Okay, not live from bill but
we're at build. I'm Carl Franklin, Beth Massy is here with us.
We're gonna be talking to her in a minute. But first, the weather
report from Seattle, gray, cloudy, situation normal, Well it was northwest,
lots of rain, it's mild, it's very much. The sun did
come out for a brief moment yesterday, Yeah, for a little while.
Yeah, and then it's like just kidding, Yeah, listen, we value
when sun does show up, we go outside because it doesn't happen very much.
Right, anyway, let's jump right into my better noa framework, all
the crazy music. All right, what do you got? Well, this
is a nod to how long the three of us have been in the profession.
Oh my goodness. Some of you remember Vim? Oh sure, yeah,
the editor? Yeah, the editor. Well, now there's Neo VIM,
NEOVIM dot io. Is it the one? It's the new Vim,
Yeah, the one hyper extensible VIM based text editor. Oh no, So
the API is first class discoverable version, documented message pack, structured communication,
enables extensions in any language. Remote plugins run as coprocesses safely, and they
synchronously and the list goes on and on. Is this like, you know,
congratulations on making the ultimate console based text editor. They really went nuts,
right with all the features. Yeah, yeah, you know, editors
became when VS Code came along and sort of said, ah, here you
go here, I have an editor. Yeah, works everywhere. So I
think it's and it made a difference. Yeah, a good editor does make
a difference. And then you know it's well received. Well, the bigger
thing here is the book exiting VIM, right, Like that's one real thing?
Is it? Colon w Q Yeah, yeah, something like that.
I don't know. Hey, it brought about us trying to use vim on
you know. So I think it was Don Box who was like, you
know, Vim, that's what I used, and I tried it and I'm
like, reminds me of word perfect. Yeah, from the nineties. Yeah,
don't do that. That's so funny. All right, all right,
I love it. That's what I got. If you're interested, go for
it. He was talking to us today. Rich Ah grabbed a common Healf
show eighteen thirty three, the one we did back in February of twenty three
when we were in Sweden Sweat Hug and Stockholm, and we grabbed Orton Now
and Maddie, the two troublemakers of Maui to talk about the state of Maui
because coast things have been moving pretty quickly. Yeah, and I think that
was the first time we ever talked about Blazer Highbred. Yeah right, and
I think we're probably going to go there today too, So it only made
sense. And Rob Gardner had his comment, admittedly from a year ago.
He said, I can confirm that, yes, you can put a Maui
and Blazer wads a app in the same solution and share controls in a Razor
class library. Then you can employ to pretty much everything except maybe Xbox.
It should be a little employed. I'm okay with that. It's coming to
my default way of building applications. You never be sure you won't want that
web app to include a phone app later down the line, so you know,
just not blocking your options. If I go this way, then whatever
happens later, I can make that for other devices. Really, this is
great, he said it all. We don't even have to interview back.
It's like, don't you Samuel use Blazer and the end of story. Thanks
for playing faces on stunt kirkout. Yeah we come a piece. You can
laugh, Oh, Rob, thanks so much for your coved. We're you
know, it's the last day of build. We're all a little a little
silly at this point. So thanks again for your comment, and a copy
of music codey is on its way to you. And if you'd like a
copy of music go by. I write a comment on the website at donnat
Rocks dot com or on the facebooks. You publish every show there, and
if you comment there and I read it on the show, we'll send your
comed mused to go by. Yeah, and if you can follow us on
x you can Twitter. It used to be Twitter x Twitter. That's what
we'll call it, because it used to be you can follow us on x
Twitter. We've been there for a long, long, long long time.
But the cool kids are hanging out on macedon. I'm at Carl Franklin at
tech Hub dot social, and I'm rich Campbell at macedon dot so, and
of course you can get in touch with me millions of ways by going to
Carl Franklin dot com. Okay, let's bring back our good friend Beth Massi.
She's been on the show several times. I don't have the number in
front of me, but Richard probably will look it up by the time I'm
done interviewing her for reading her bio. Beth is a product manager on the
dot net MAUI team at Microsoft and is responsible for making native device and hybrid
web development in Visual Studio a delightful experience. Formerly the marketing director and community
manager for dot Net, as well as serving on the Board of Directors for
the dot Net Foundation, she has spent her career helping dot net developers be
successful. Boy, ain't that the truth? Yeah? Welcome back back,
Thank you guys. Seventh visit to dot net rocks. But hey, first,
most importantly, how's fox pro doing? You know, I still talk
about fox Pro at work sometimes because I do a lot of querying with Coupstone,
so that stopped me a lot. You know, relational database theory.
You never forget it. It's always It's always there, isn't it. Yeah,
we're all And I was always a clipper guy when you were. I
started clipper yeah back in the day. dBase Yeah, legit, dBase two
on the Apple too, with the sixties with the Z eighty zlog board plugged
into it. So now that we've established for all the same age with them,
very old with vim yeah, Remax I think was Don Box's favorite text
editor. Man. Oh wow, okay, so somebody just asked me this
at Mary Joe's thing. Right, We're sitting talking to some geeks and somebody
said, you know, I see that you're a proponent of using Blazer in
Maui when you're building Maui apps. You know, what do you think of
using xamal? And they said, don't. I have to admit I'm in
that camp too. I've just never really grocked zamal. Ever. Yeah,
I think more importantly is that Microsoft has to do everything in zamble and make
it work everywhere that CSS works now and works well across all platforms because the
market made it that way, you know, over many years, right,
and so they have to do all that themselves. It's a powerful language if
you if you grock it right, you know. But yeah, but just
I had never really had the patience I think for it. Well. I
did some some classes in it, of course, and i'm classes, I
mean teaching, And there was a situation where I think it was a list
of view or whatever. The you know, zamar informs come Maui version of
that is. And when you have these nested things and blocks and stuff,
it just fell down on iOS, worked great on Android, fell down on
iOS. And that's where it dawned on me. It's like, you know,
this is a big challenge Microsoft has to make this work everywhere whereas you
know, CSS is done. That's correct. And you know, I'm a
big proponent of Blazer Hybrid obviously. Actually, Maui hybrid. I'm gonna talk
to you guys about you know, some things we're going to do for dot
at nine that's not Blaser only. Yeah, so Maui hybrid full stop,
like hybrid with other things just Blazer correct, great, that's interesting. Correct
with other JavaScript frameworks we're going to bring bring through. Yeah. I just
for a minute there, I thought you were advocating, you were saying good
things about CSS, and I'm like, who are you, Carl Franklin's pretty
strange. I mean, I don't do great things with CSS, but there's
a lot of people that do, and it's easy to find them, you
know. So that's it. And you know, the simple things that I
wanted to do, I could do very easily. And there's just so much.
There's so much, you know, do a search and find exactly what
you need. Yeah, exactly. Yeah. Actually we're doing a lot of
cool stuff with co Pilot too, and and and Maui. So yeah,
a lot of tools. I'm on the tooling side too, So we got
what what does it mean to have a cool stuff and co pilot for Maui.
So like, imagine asking co pilot to just design your application and write
the xamal for you, right, So like actually that in that case,
and I'm like, Okay, I don't need to write right exactly unless the
exam is fundamentally broken, right, And so that's what we have to do.
We have to train the co pilot to understand the Maui flavor of zammal,
right, because it's a different flavor. Yeah. Well, I'm,
like I said, I'm a big fan anytime that I'm creating Maui app Now
I'm using Blazer because I've been and I've been doing this now since Blazer came
out, right, and arguably I wasn't the best assp neat web forms developer
when it came to design. I just made things work. Yeah, but
I really got into it at Blazer. Yeah, And I mean we're making
it like a lot simpler to just build apps that allow you to reuse your
code across the web, Blazer, Web and Mali at the same time.
So next month we'll release Next month and done at nine Preview five will release
a solution Tamblet that allows you to just start with project and sets up all
the glue for you so that you have a Razor class library you could put
all your UI and a shared interfaces you're using to do the functionality of that
UI. Actually that's my demo here at build I have a little demo theater,
you know kind of thing, and it's like a twelve minute demo and
yeah, and I show how to you know, you can even like multi
target the Razor class library, so you can turn on and off UI depending
on the platform. The only challenge you have there is you have different hosting
models. You know that you kind of have to you have to have different
implementations. And is that what if this comes down to in general, full
stop, right is whether you want to be on a mobile device, whether
you want to be on it as a web page or you want to be
as a desktop app. It's just a hosting model. You're trying to write
one set of code that all these models can pick up and make a reasonable
looking client for in that form factor. Well, Maui does a lot of
that abstraction for you, you know, and when you're using blazers that you
are you're really just but you're still using Maui, like the non visual parts
of Maui, right, So it does. It does eliminate a lot of
the code that you would have to write for each of the platforms. That's
the whole point of Maui. However, if you start with Maui and you
take advantage of the platform APIs right, don't expect to be able to publish
that on the web, right, because exactly have those things there. But
if you build it for the web, right, and then that will move
obviously with JavaScript in or op and all that stuff, and you can mix
a match. You can do native and web techn act. That's a really
good important point that you don't have to choose one thing for the whole application
RT right, correct, Yeah, you can mix the man well, And
thinking about Rob's comment too about he's it sounds like he's actually building a web
app or a desktop app, and he's just hedging his bets that he might
need to build a phone app. Because my instincts have always been the use
Yeah, you're building you're using Maui because you need a phone app. Yeah,
and then it's like, oh, I'd also like a web app and
a desktop app, and I'd argue that that was the weak part, right,
that it was really good at building one code base for both iOS and
Android, and then the web app was okay, and that's not bad voice.
Yeah, I mean sometimes you just want the store distribution and reach,
you know, so like instead of you know, having to advertise a u
ur L, sometimes it's easier just to get into the stores and have people
like install it. He's yeah, that's what p WA's are for. Man,
here's your icon let your cell phone. Yes, too. That must
be a common question for you. Should I just do a Blazer PWA or
should I make a mau app. It's just a depends on what you want.
I mean, Uh, some things are just really hard or impossible to
do in web only. So you do need a native you need a native
shell, or you need a native like controls, or you need a native
thing you needn't access the file system like and you need to do I don't
know, because you know, the web is pretty powerful. I have to
admit, you know what I mean. These days you can do almost anything,
but just some things are just hard. And check out that deployment model
right, Like that's like local storage on a Blazer web assembly. It is
a pain. Yeah, bar in light and this is the wrestling match I
have these days when I get to where my you know, senior architects had
and sissedmin had, It's like, really, you want me to deploy software
again? Like it's hard to justify. Yeah, a desktop client app because
it's you. It puts a lot of costs. Some apps have to be
like so rich though, and so like the experiences have to be so on
on or you just need Ali app then because that you know, when you
when I talk about your rich desktop apps, it's straight WPF these. Yeah,
but if you want to if you want to target Mac and Windows and
don't and don't have like two teams to do that, that's the win r
Yeah exactly you can get Yeah, because I'm not gonna argue with you on
that. That a number of max in the workplace these days. It's big.
Yeah, it's not consumer app. You got to you gotta have that
clients. Yeah, yeah, Okay, I am persuaded. Well, you
know, on the what are the downsides? Right, let's we talked about
some of them. But you know, why would you Let's just stick with
Zamal and Blazer because I've only made an aesthetic argument here. I have not
talked about a feature problem. Yeah, why would you Aside from what I
mentioned with zammeal and that you if you run into problems, why what is
the is there any benefit of using Zamal over Blazer. Well, so you
know, some argue that native experiences are the best experiences, and so depending
on your application, you may, like, especially if it's a consumer application
and you're you're betting on beautiful, deep, rich experiences that you want the
Android app to look like Android and feel like Android. You want iOS to
feel look and feel like with a Blazer, you know, everything looks the
same because you're just using the platform web view or render the UI more memory.
Well, you guys have to the edge control a little more memory.
Yeah, and I mean then you have then you have like then you're doing
CSS tricks, right, Like I like Ionic, does you know they have
a really nice you know, nice styling depending on what you know, platform
you're on, and it really does kind of look like the app. Because
they can't make that argument for corporate apps. They want them all the same.
Yeah, and some people want that, right, So yeah, Malady
doesn't like draw controls like they are in the native control. So that's like
the you have two options, right, you know. There that's the strength,
there's a strength. That's a very good point. And do you think
that people still want to have an iOS looking app versus an Android looking app?
Or they just want I mean most line of business, large enterprises those
types of apps. Probably not when you go it's a retail app. Yeah,
when it's like an summer But there's a lot less of those out there
than there are business as. I think it depends what the what the company
doing, right, Like you know, you're in the banking business and you
want to climb it's something for your customers. At that point, you might
have enough resources that will just go fully native and just have multiple code bases.
I just don't know if that's worthwhile. You know, one of the
things I've talked to teams where they have native you know, native developers for
both stacks, right, and one of the things they really focus on is
releasing simultaneously, right, because their customers get really angry when an iOS feature
shows up before an Android feature. I am. And so you know,
the nice thing about the common codebase is like you know you're going to release
together. Although now now it's down to even the store delays or a problem.
Yeah, yeah, yeah, you never know when the store is going
to when it's a week, it's two weeks, Like you just don't know,
right, you said that, you know, Ionic does some CSS tricks
to make up the platform look more platform me. Are there other things that
you would recommend that we can use in Maui Blazer hybrid apps too? So
right now we're kind of playing with fluent right now. So the Fluent you
know, I can, but like a lot of commercial components are really powerful
too, you know, like yeah, I personally I talk to more customers
that are you know, building line of business enterprise, and they they are
not as concerned with that. But there's a ton of library like CSS is
so you know everywhere, yeah, you know, and you can do any
you know, whatever you can do on the web, you can do in
the web view, right Yeah, I mean I love fluent UI, but
for a long time it was really a win UI thing right first and foremost.
Yeah, and then you know you can kind of do with WPF,
but it's better now. Yeah, I mean we have we have there's the
fluent UI maintainer. You know, it's because open source has examples for Blazer
and we're one of our engineers is working on one for Hybrid and so yeah,
there's controls for React for iOS or Android for mac os like yeah,
and that's what's kind of cool because we're talking also to a lot of customers
that have like dot Net customers that already have major JavaScript framework investments like React
or view or Angular, right, because you know, before Blazer, that's
kind of what we had to do, like right a sp dot Net was
really just the back end, right, Yeah, And so what we want
to do is we want to be able for them to use those frameworks also
in Maui. So we're building a hybrid WebView control. So like the Blazer
WebView control that's in Maui today, this will just be a hybrid WebView that'll
allow you to communicate between JavaScript and c sharp, right, So that'll be
an option for folks that you know, sometimes you have like third party components
that you want to pull in and they don't offer a dot Net library,
but they have a JavaScript thing. So you can go ahead and pull that
in. I would be remiss if I didn't bring up Blaze ions Blaze icons
dot com. I already put it in as a link. Basically, this
is a Blazer component where you can multiple Blazer components that you can pick whatever
icon set you want. Bootstrap dev Icon, Fluent, UI, Fluent UI
filled font awesome, regular and solid, Google material round sharp, filled,
outline, solid, whatever, two tone ion icons, lu seed and material
design icons. So they basically wrap them all up. You pick which one
you want and then use a Blazer component to show the icon. That's amazing.
Yeah, yeah, that's it's a strong community around, like it's not
just it. This is like the whole JavaScript and you know HGML community right,
like it's big boy. You're really running out excuses to make on ugly
web page, aren't you, Yeah, because you can just drop things in
and yeah, there's just no reason they here they are, just drop them
in and go. Yeah, you know you don't have to think that much
as a developer who doesn't like to design anything. It's pretty nice. Well
to me, it also is, and don't impair the designer when they do
show up and want to apply a design to right. So it's like you
can use tools that they're you know, really happy with, like Figma or
whatever, and like, you know, give you that debt designs. I
was always question of is it both ways? Like if I've gone certain path
down a path building something, then the designer appears like have I impaired them
with what I can? Yeah? I've certainly had that experience, right stuck,
I put bootstrap in. What more do you want? You got to
go through the whole app and change your CSS exactly? Yeah, all right,
I mean it's it's an interesting space to be and to just think through
all of these variations of you know, what do you need? You know
again call back to Rob. I'm building the desktop app, but I might
need a phone, so I'm going to stay in this in this library.
Or I'm building phone apps, but some people want the web. Yeah,
And we're also building a lot of tools to help you quickly build like some
of these these types of things. So like MAUI is you know, we
got the Maui extension for vs code right, it's in pre release. It's
eminently gun to ga. We know we've got some really I think we've got
some really cool tooling coming in just Visual Studio proper. I'm more of a
Visual Studio user myself, and uh and you know, I see a lot
of you know a lot of customers, enterprise customers, a lot you still
use Visual Studio, and so we are investing a lot in the tooling there
too. Some cool things I think, uh, we like to we'd like
to do uh in in the like done at nine timeframe, uh in Visual
Studio, just to make kind of you know, working with hybrid apps a
little bit more delightful, like actually having a live preview that will you know,
allow you to kind of select into the WebView itself and get at the
razor components we're looking at that. If that's possible to do, I think
that would really help kind of speed up, like just investigating where the razor
components are and the layouts and that sort of thing, so that you don't
necessarily have to look at the rendered content. You know, on the once
you go into the the F twelve developer tools in Edge or Chrome or whatever,
you know, you're kind of already looking at the rendered page. You
know, you're not looking at the components that created it, right, So
we're trying to figure out how to make that experience better too. So it's
all good news. Yeah. You know. One of the announcements that happened
this week and build was the Snapdragon machines. Of course they're focusing on that
being copile a PC, but it's like that's Windows on ARM. Yeah again
it's back and and somebody asked her, we're gonna make a Dona Rocks about
this, and like, there's nothing to say. It's just gonna work.
I don't think you're gonna need to recompile, right, use it? Okay,
we're done. Yeah, I mean that's what we did a lot of
work in visual studio to get a visual studio on ARM. Like so if
you're running like visuals, I mean I have a I have a macim one
and I'm running parallels and that's in it. That's an ARM you know base,
so you know what you're doing through emulation that way. Yeah, I
know one, So flip them fast? What do you care? Right?
It is really fast and a lot I mean a lot of I see a
lot of you know, users using a Mac that way because you can build
for all of the platforms at once, you know, with one machine,
it tends to be you're you're all versatile. Yeah, you U seemingly parallels,
but then you compare to your own Mac, and you know, use
the emulators and and you can you have like your your Android emulators, you
have your simulators for you know, through x code. There you just pair
that way. So I see, I see some people doing that. Not
not a ton We're making the Paradomac experience hopefully better, so that when you
pair to the Mac, you actually pair to the Mac Catalyst and the desktop
two. I basically use get ub as my thing, right, I push,
I push it to get up, I go over to my Mac,
I pull it down, and I run out there you go. It just
works, Yeah, but also speaks to the reality of its two machines,
right yeah, I think that's two platforms to machines. Yeah, are using
the extension for vs code vs code. Okay, so your studio a vs
code when I need to for a demo or something. Okay, Yeah,
it's getting a lot better. Sure, Yeah, I mean like you like,
don't even like I think Wendy was showing kind of in the context of
a spire yesterday, but there's a lot of just like now, I don't
need to know, like all the commands, I can like actually click a
button to create a new project. You know. So if you're a Visual
Studio user and you want to like, you know, build a Maui app
on your Mac, like, that's kind of the path you're going to need
to go. Yeah, the Visual Studio for the Mac is no more.
Yeah, it's it'll be out of support in August. Yeah. Yeah,
I have used uh, visual Studio code to do things like there's easy ways
to deploy a static web app, you know, uh, and you can
create the project and do everything right on GitHub and pull it down and press
a button in Visual Studio Code and it's running. That's that's the idea is
to make sure that the solution and the projects are all compatible. Yeah.
I love that. Yeah, that's all good stuff. Now, it's impressive.
And then dev kit in vs code really took you know, now you
forget that studio's job is also a project manager, right and then but dev
kit really brought that to code now that yeah, yeah, the solution explorer
experience there yeah yeah, well, and I certainly talked to teams where they've
got a set of devs who are only in code, right mostly web dev
and so they were just weren't able to see a lot of the project.
At the time, they didn't even think in the terms of the project.
But then dev kit came along that it was last year. Now I think,
yeah, I did release last year, and so suddenly they're, oh,
there's a whole bunch of other stuff going on. It's like, welcome
to the project. You actually have a view of what's going on in this
right. It just makes the I don't know, the context switch between Visual
Studio and vs code so much easier because you're like, oh, here's my
project, here's my solution. It's a good year, here's my debugger,
here's hot reload. But I mean they've added all of that, so it's
pretty cool. Yeah. Yeah. It just makes me wonder how long Studio
has, you know, I think it has a long future. I mean,
honestly, there are so many more tools that I think are critical personally,
Like hot reload is awesome, but like if you don't have like that
live you know, view of your app, it's kind of just yeah,
it's warm. It's like yeah, right, and we're and like I said,
like, you know, we're just trying to make the tooling experience a
little bit more richer, I guess, and in Visual Studio as that's kind
of where that's where traditionally where everything really is. And you know the value
of Visual Studio is a lot of in that that kind of tooling when it's
not like you guys don't push out an update to Visual Studio like every month.
Yeah, we're monthly, monthly release. I mean vis Code is weekly
pre release, Visual Studio proper is is monthly. Where recording this, it's
seventeen ten, right, seventeen eleven P one released this week and yeah,
yeah, seventeen ten gad this week. So seventy ten is GA now,
but seventeen eleven is underway, like it is a continuously updated product. Yeah,
And as a as a product manager, who's you know, trying to
get stuff in the SDK, trying to get stuff in you know, dev
Kit, vis Co extension or Mali extension is trying to get stuff like working
across all of these trains. Yeah, it's it's it's time. I've been
on the team for two years and I still don't know which ones which sometimes.
But yeah, there's multiple wiki pages to go look at schedules and things
like that, And not to be a heretic, but it's like, why
would we want a new version of Visual Studio. Well, we got it's
continuously updated. We kind of know where things are. We just got the
new copilot interface in like, oh, like a Visual Studio twenty twenty five
or whatever. Yeah, what would we make a major version? What would
that even do? Yeah, I mean I don't, like, I don't
know who, Like I know who probably makes the decision, but I don't
know when it's not me that makes that decision, like win a major version,
major version, and for what? Right? Because it's disruptive too,
right, Like, yeah, I mean, but usually when I'm like,
think about your own software. When you when you do a major version upgrade,
there is something major breaking changes, right, that's the usual thing.
And hey, nobody who wants breaking changes? Yeah, you or you add
some very significant feature to it or something like that, right, well,
copile it's pretty significant. Yeah. Hey, we got to break for a
moment for this very important message. We're back. It's dot net Rock's amateur
Campbell. Let's call Franklin hanging with our friend Beth Massey. Hey, and
hey, if you down in love with the ads that we're getting these days
because we've been working hard to try and get better ads. But you know,
there's limits to the systems that I'm afraid, and we're still working away
at it. There is another option that is to become a patron on Patreon
and you will get ad free versions of the show Patreon dot dot NetRocks dot
com. There you go. Yeah, well you hinted about a hybrid mode
beyond Blazer, yes, Maori for all the things. Yeah, so we
one of our engineers along Lipton. If you've never had him on the show,
you should probably get him on the show. He's amazing. He's been
at Microsoft forever. Yeah, and I chat with him on a regular basis,
so I sometimes forget we should probably put him on the show. Put
him on the show. He's awesome, an amazing engineer. He does all
things hybrid. He's the original driver for MVC back in the day. Yeah,
he's been all around sp dot net forever. Yeah. So he has
an experiment that I think it's been a while. I think last last year
at MVP Summit, we kind of wanted to get more feedback about it.
So it's been it's been an experiment for over a year. Now it's a
new get package. It's called Hybrid Malle Hybrid WEBEW and we have customers using
it today and so what we we've gotten enough feedback where where we really think
that it's time to bring it in to the Maui repository and get it as
a control in Mali itself. Yeah, this also speaks to a very cool
thing. It's in Alion's repository right now. Yeah, right, so this
is alions experiment. I think other people who contributed to it. Yeah,
yeah, we Yeah, a lot of people have contributed to created a pull
request, even some Microsoft employees in other divisions. And then and then it
becomes a conversation of should we put this in the product, like right,
yeah, that's exactly right, And then you know, yeah, and then
you know and I you know, we have actual customers, you know,
using it, and that's when we're like, okay, now we know like
their use cases. We can kind of outline what a minimum viable product would
look like right there. Now, if you go into the Mali repository,
you will see Hybrid WebView. You'll see Alan like you know, issue like
issues he's created so he has work items and he defines kind of what we're
going to when we're going to get in there for Dottin at nine. So
with a hybrid WebView, is it opinion opinionated about which framework you use?
Is it just completely open end, completely open ended? So a developer does
the same thing, then, yeah, so you you actually have to build
your app. You build your JavaScript frame whatever whichever however you do that right,
whether it's React or view or Angular or just plain old javascripts, whatever
you want, right, and you stick that into like the raw resources raw
folder in in Maui so that it it'll deploy with it, and then you
basically similar very similar to Blaser, right, except laser Laser has a whole
project system for and everything right where it does this for you, right,
but has like dub dub root for you and all that. So when you
in just like the Blazer WebView, you point, you point the hybrid we
view at where the index is or where the starts, where your start h
tmail is and then just that's it takes off from there. So that's like
a brain especially if you already have an app that's built. Right exactly you're
talking about wrapping existing software if you want just to give you all those options
exactly, and it's all it's all like, it's all static, you know,
this is like all client side. I mean, obviously you can make
calls to the server and that kind of thing if you need to. But
the whole idea is just to like, you know, if you have existing
uy in another framework, you can render that through Mali too. Don't have
to rebuild it or anything, just render it through good feature. Well done.
Yeah, well so we buy nine time frame? Maybe? Yeah?
So I'll you know, now, I know you've got to go home and
tell alone that I told the whole world about this and they better get it
in. You're admitted now we don't. But I mean the reality is,
if you want to use it, you can't. It's sitting one. I
mean, right, we don't make it for some reason. There's still a
new get package available that you can use. Yeah. Yeah, I can't
imagine why you wouldn't. But things happen, too, right, things happen.
The world is a strange place. The solution template is in I saw
the pull request. It is in. It is in dot at nine preview
five, which will release next month. Oh wow, okay, so are
there other new things in Mali we should be thinking about. Yeah, so
what we're really focused this year on Zamoran migration. Right, So, Zamoran
reached end of life. The SDKs are and out of support as of May
first, and so we've been laser focused on helping our existing Zamoran user base
migrate forward. Okay, so actually I talked to a few, you know,
few folks at the conference today and asked how everything's going. We have
a you know, an email if you're struggling right now, it's Mali Dash
Upgrades at Microsoft dot Com. We're on the other end listening and trying to
help. It's really important that people migrate because not only is the SDK's out
of support now, we're not servicing that anymore. The tools are still in
Visual Studio. They're marked as legacy and you can still install them if you
have to just copilot know how to do this. We have an upgrade assistant
that will help you get started. Okay, So the upgrade Assistant does a
lot of things like not just zamor into Mali migrations, but it does like
you know, Donne framework to Core and like it does it does a different
workloads, like you know, but yeah, there is an upgrade assistant that's
a visual studio add in as well as a command line that will kind of
help you walk through the process. But this depends on you know, how
many bindings, third party bindings you were using that may not be available today
and things like that. So it's not going to be like, oh,
fifteen minutes, you know kind of thing. You're really going to need a
plan in migration and depending on how large your app is, and so we've
been really focused on making sure that the compatibility is there, Like the SDK
quality is very important. You know, maybe you work with the third party
tool developers to make sure that the you know, yeah some some like some
you know, it's like we don't want to maintain all these bindings anymore.
As the Maui team, we just can't do it. Zamor in the company
could, but like we just don't have that kind of you know, bandwidth
to be honest, and we're looking at different you know, binding, like
different style of bindings. David Art now probably like we're talking off about what
they're thinking about that. But then the other option is this hybrid hybrid WebView.
I've seen some customers decide you know, hey, we don't have a
dot Net bindings for you know, this library that we were using, and
we're just going to use the JavaScript version of this. But so that's where
we're really focused on. The stores will stop accepting Zamoran submissions. I think
Apple probably in a year, and we might be able to give you a
little more like Google might give you a little more time than that, but
you know, like you really need to be focusing on this year. So
that's what we've been trying to really do. So we've been so as a
as a broader team, you know, and especially on the SDK SI,
we've been focusing a lot on iOS and Android. Okay, so because of
the Zamoran folks stuff for time exactly exactly, I'm still very you know,
I'm still looking very heavily at desktop scenarios by the way though, because from
the Blazer Hybrid side, we see a lot of desktop. Sure people want
contemporary Yeah, you know, we work with our partners in Windows and the
whin u I team, and you know that those that the partnership is still
there and they're still committed to when u I guy's part of Maui. But
there's announcement this week about when U I and WPF. Yeah, and they're
also investing in WPF as well, So yeah, tell me, tell me
more. I knew when you I was, you know, when U I
three is early there, you know kind of thing that's that's where all new
modern Windows native Windows apps when U I three correct. But what's the deal
with WPF. So WPF there's just a lot of customers like they have WPF
right, and they want a modern look and feel and they want some of
those modern you know UI concepts that when U I three has two and so
they and because the Windows I'm not going to speak on behalf of Windows,
but like I know this part of the story, they are investing in both
of those stacks. Okay, I'm in developer division, and I don't like
to talk about Microsoft is all these divisions, but it is kind of like
helpful sometimes to realize, like, hey, we rely on teams across micros
and actually it comes to Hybrid. It's even more because the WebView team is
edge right, so that's you know, another team that we rely on that
so all of these pieces work together. But yeah, from the MAUI teams
perspective, like we're really, we really are trying to help our Zamoran customers
be successful moving to moving to Maui. It's really important and we've seen like
so much growth in Maui. It's been really exciting to see since dot Net
eight release, there's you know, one hundred and sixty percent more apps in
the app store at this point that are Maui based. And like you know,
depending on you know where you're coming from, if you're brand new or
you're coming from from Zaman, we're having we're seeing more success. We're with
our customers now, so I think we're in a much better place than we
were like a year ago. Well, we have a dot net Rocks Maui
Blazer hybrid app out in the app stores. Cool, but it needs to
be updated, so that's on me. I haven't updated it since I did
a whole bunch of bug fixes and things. Okay, well, I mean
in the announcement this week was really about that when UI and WPF are both
first class citizens and Windows and the main thing they said, they said the
thing that I always focus on, which is what is Microsoft using to build
Windows apps? And that's when UI three primarily correct and so those are the
way things are going to be updated. But they did make a specific point
about WPF getting updates to be able to make Win eleven looking apps because When
eleven has an aesthetic correct, And I just feel like, you know,
WPI has had a lot of love in a while. We also have investments
in wind Forms too, By the way, that that's a developer division side,
it's an open source and you know Mary and Klaus, so I don't
know if you have ever talked to Klaus on this, He's awesome. So
getting back to this Windows thing, I just want to make sure everybody who's
listening knows that you can build a MAUI app that targets when UI, but
you can also just build a WPF app and use Blazer in it. Correct,
Yes you can. You're not you're not building across platform applications anymore maybe
web web and Windows only, right, But yes, that is absolutely true,
and actually you could do it in wind Forms as well. Yep.
In fact, I did a demo here with Don Weba from dev Express using
a Windows Forms app having Windows Forms UI and then adding Blazer UI. Yeah.
I watched that. It was cool having them talk together. Yep.
Cool it's all WebView. At the end of the day, it's the same.
It's on Windows, it's web U two, So that is the edge
team that runs that, right. Yeah, I'll include a link to the
when building with win Ui three in dot net, just because I think most
people just think of it as O C plus plus library, right. They
don't really know that it's available in the dot net much less. So you
could tie it in through about Maui as well. Are there any limitations doing
when Ui with Maui as opposed to doing win Ui directly and bi directly,
I mean not with Mali. Nice, So the Zamal flavor is different,
you know, so Mali you know kind of you know, abstracts things across,
standardizes, right, standardizes it across. So I am not like we
started. I am not a xamal developer, So I'm going to say,
I don't know, maybe fair enough. Yeah, it's fair anything else we
should know. Being here at build, I know, it's just so awesome
to see you guys, good to hang out. Yeah. Really, it's
like I feel like, so my career has come full circle. I think,
you know, I have never been a feature PM, so this was
like my last you know Horizon. You know, like this was like the
fast fast challenge in my life. You know, we were all very happy
when you led marketing for Dona. Yeah, I mean I loved it.
Yeah, I loved it. It was it was fun. But to be
honest with you, you know, I am a computer science major. I've
been a programmer. I started Microsoft like when I was in my thirties.
I was already in the industry doing software, building software, and uh,
you know, I came to the team to because I was an MVP.
I came to the team is like you know, community manager and you know,
like developer advocate basically is what I was, right. But we literally
went open source ten years ago. Crazy year I got married. Yeah,
and and that was like I don't need to do this community management thing anymore
because it was social engineering just changed, you know. We were like zero
distance to the customers now. Yeah, and so when I joined marketing,
it made sense. But I remember telling myself when I was younger, because
my sister was in marketing, and I was like, man if I ended
up in marketing, kill me. And I ended up in marketing. So
I was like, what, I also think you've had a very rounded career
too, because you've been over there, you've been in IC and now you're
PM. Yeah yeah, Les and so so product management was this last challenge
for me. Like I remember when I joined mycro stoft, I don't think
I could do this a team yeah, and uh, you know, I
mean I'm not a manager like of people. But product management is just a
constant challenge. You know, you have to be on top of what your
competitor are doing. You have to be on top of what your customers are
asking for. You have to be on top of what your engineers are able
to do. You know how you prioritize, you know, like the scheduling
part is it's just but it's fun because I'm so close to the engineering now
and I get to write code every day and you know, it's just I
get to test things and and I get to like look at the end to
end. What's funny is you know, I mean Microsoft isn't a cloud company.
They're an AI company now, right, we are, right, and
I'm I'm like on the client right. It's and it feels like it feels
like maybe like we have a little extra like I don't know, startup kind
of attitude to ourselves, you know what I mean, because you know,
we're we're kind of like the client is so important to the user experience on
the other end, you know, and so it is. It is part
of like the whole end to end of an application. But we're glad that
you were marketing, yeah, rather than somebody who didn't understand it, right.
And that's the thing I mean, that's that's kind of I brought.
I brought like the technical aspect of it. I learned a lot about storytelling
and marketing. And when you're a product manager, you're just doing storytelling and
at kind of like your level, like focused on your focused, yeah,
focused. So so I do a lot of I do. I help I
help the rest of the team do some of that too. So I I
love being on the dot net team and love being around dot net. You
guys know that. I like that forever. So it's like Fox were only
different. Fox Brow taught me how to how to love a community though.
Yeah you know it was an amazing community and an amazing product for its time.
Yeah, certainly. Yeah. And on that note, I guess we'll
call a show. Thank you so much. Hey again, I love you
guys, all right, you too, and we'll talk to you next time
on dot net rocks. Dot net Rocks is brought to you by Franklin's Net
and produced by Pop Studios, a full service audio, video and post production
facility located physically in New London, Connecticut, and of course in the cloud
online at pwop dot com. Visit our website at d O T N E
t R O c k S dot com for RSS feeds, downloads, mobile
apps, comments, and access to the full archives going back to show number
one, recorded in September two thousand and two. And make sure you check
out our sponsors. They keep us in business. Now go write some code,
see you next time. Got Jamdlevans and this is