 So, who have watched the build first-day keynote, anyone watched the build first-day keynote? Yeah, good. So, there were few new, few new announcement which were made on the first day. And, okay, let me just add the, okay, I just need to connect to internet. And we are here. Okay. Hey, how much? It's not replicating. Okay, hi. I'm not gonna just take much longer, just gonna wrap up in 15 minutes. So, one of the big announcement which was made was Visual Studio now generally available for Mac. Yeah. Okay. And so, this is a general Visual Studio for Mac brief. I'll just go through that what is there in the Visual Studio for Mac. Has anyone used Visual Studio for Mac before when it was in developer preview? Yeah, few guys have used it, of course. So, I'll just go through a little bit brief history of where did the Visual Studio for Mac came from. And the big of the history has to do with the Xamarin. Xamarin, when it started, as you guys know, there was no Visual Studio for Mac before. But Xamarin was in the dotnet. And dotnet was in Visual Studio. But for iOS application, you have to have a Mac. Now, when you do a Mac, there was no Visual Studio for Mac. So, Xamarin started their own ID, which they call Xamarin Studio. And from that's how the Xamarin Studio IDE was developed. And it kind of grew into a rich environment for cross platform mobile development. And then when Microsoft acquired Xamarin in 2016, again, what Microsoft did is was reframed the Xamarin Studio for Mac and called it Visual Studio for Mac. And launched the Visual Studio for Mac. So, when I say the Visual Studio for Mac, many of you might be thinking it was an exact clone of what is Visual Studio for Windows. And the same features and same sets would be there in Visual Studio for Mac. But that's not the case. Visual Studio for Mac is coming from the Xamarin. So, it's first is a cross platform ID. And it is not exact replica of what you see in Visual Studio on Windows. But there are essential features in Visual Studio for Mac, from which you can do a lot of things, basic programming. So, yeah, this is Visual Studio for Mac. And what's in there, maybe I'll go through that, let's say, let's say, create new project. And there are a few templates which are available right now here, which we can do. And the first one is a multi-platform, which is cross-platform application, which is Xamarin application. And the Xamarin Forms application, Xamarin Native application, Xamarin Android and Xamarin iOS. I'll go through a little bit about Xamarin in a while. And then iOS application, Android. And then there's the .NET Core application. So, since Microsoft is now focusing on .NET Core more, as a .NET Core application, also you can develop in Visual Studio for Mac. You can do Mac application, create Mac application, TVOS, console application, .NET, and libraries and stuff like that. So, let's do one simple, for example, Forms application. So, I'll just create Xamarin Form cross-platform application. Or maybe I'll just do a console application. So, let's say console application next. Maybe let me just give it a name. Let's stop. Hello, build. And I can use Git. Unfortunately, until now, there is no support for Visual Studio, team services in VS for Mac. But there's a Git support. So, I'll just go ahead and just create an application and just go through and through what are the features which we can use here. So, pretty much same similar kind of ID. You have your solution explorer. And it has in the same way. So, you have IntelliSense. So, let's say console. So, yeah, read line. And maybe I want to call it string as string input. And then what we'll just do is just hello. We'll just echo it. So, pretty much you can do most of the familiar things which you do in .NET anyways. So, I still use old way, old-fashioned way. And then I can add new get packages. So, I'll just create add package maybe json.net. Yeah, json.net add package. And it's there. So, yeah, let's say for example, if I am using json, what's the class name for json? json serializer. Oh, yeah, here it is. So, let's say I want to use json converter. So, I did json converter. And then it gave me IntelliSense. I mean, I can just write it here and say using Newton soft. So, pretty much what you guys, we are familiar with. We can use all of those stuff here as well. And what else? There's also extensions. So, let me say extensions. But these extensions are not the same extensions which we have in Visual Studio for Windows. So, there's no resharper. There is no other cool extensions which we are used to in Visual Studio for Windows. But it's a separate set of extensions. And you will find similar extensions here as well. So, there's no resharper, but there's another similar extension for Visual Studio for Mac here as well. And there will be ID extension. And then these are few of the extensions. Yeah, and you see most of it, since it was Xamarin focused ID, a lot of extension might be focused on Xamarin. So, Xamarin test cloud and you need Xamarin inspector. So, yeah. By the way, how many of you have used Xamarin or tried Xamarin? Oh, quite few. How many of you are interested in Xamarin? Oh, a lot. Let me just do one basic simple, one very basic application and we'll see how easy it is Xamarin. So, I'll just create a new project. Forms app. Now Xamarin has two approach. One is the native and so here you see the native iOS and Android. And another is Xamarin forms. Native iOS and in native iOS and Android is that you share the business logic. So, there will be one shared folder where you will run all your business logic like connecting to your server, getting data, pulling data, serializing it, packaging it. And then when you want to show it in a UI, the UI code would be different for Android and UI code would be different for iOS. But advantage here is that you can use the exact same exact native controls which you are used to it if you are an iOS developer or if you are an Android developer. So, for example, for Android there might be combat activity header or for iOS it might be 3D gesture which is not there in Android. So, you can use those features in the native application. But Xamarin forms is going a step ahead and here you don't not just share your business logic but you also share your UI code. So, not just getting the data from the server, manipulating it, creating serializing, deserializing, packaging it, but also displaying it in a UI, creating a UI, manipulating the UI. All of those code is shared in one code which runs on the iOS, which runs on the Android and which runs also on the Windows phone and other supported device platforms. So, and still if you want to do those kind of stuff like 3D gesture which is only in iOS, you can still do it in Xamarin forms. You will need to add an extra code on an iOS project but it won't be available in the Forms app. I will just go through and run through this. So, Xamarin forms app let's say again Hello World build and I am targeting it to Android and iOS. If I was doing it from Windows machine there would have been three options iOS, Android and Windows. But since I am doing it from Mac it is only two options giving me here but later I can also add new project into solution for the Windows one. And also the important thing here to notice is that it also gives you the mobile backend. So, generally it would be a ASP.NET mobile most of the apps you will create it will have to connect to one of the server. So, here if you just click yes it will also create the backend application which you can directly then host it to Azure and then everything is in the one solution there. But I am not going to do it right now. So, let's just go ahead and create this. It will take some time just to create and then okay. So, here you see there are three projects added. One is the iOS project, one is the Android project and the third one is a shared project which I told you. So, what we are going to do? We are not going to touch the iOS project. We are not going to touch the Android project. Everything what we are going to do is here in the common project. And in common project what you have is MVVM. Oh, yeah. And so, these are the pages which are the shared pages. So, for example, let me just open the login page. And in a while you will see here. So, this is my login page okay. And most if you guys have done the WPF programming you guys might be aware of XAML. So, it is the same XAML concept which is going to which is used here. So, like button for example. So, when you so you just have to define that you want to button in your page and then it will create an iOS button in the iOS project when you compile it for iOS and it will create an Android button if you compile it for Android. So, this is the shared code. This is the one code which will be used in both Android and iOS and also in Windows. So, let me just go ahead and build this project just to show you guys that how does it look. I have just two minutes and then I will it is building up. Okay, maybe that might be the problem. Let me just do the Thank you, Preston. Okay, I think I think I got it. Okay. Let me just quit the simulator and just try it again. Okay, hopefully it will start. By the way, yeah, so the simulator is starting up. Yeah, if I was to use the native Android and iOS, am I able to write and am I able to write and draw in using Kotlin? Sorry, using Kotlin. Kotlin? Kotlin. Kotlin, the code left. Kotlin, the program language from No, no, for Xamarin, you can use C sharp or J sharp. F sharp, sorry, not J sharp. Yeah, it's essentially Java in .NET. So, yes, it is a native performance, native UI. Sometimes it's faster. Yeah, sometimes it's even faster. Let me just go through that. So, this is a Xamarin app and you see here, so it's a list view. It's pretty much native. So, you have list view, you have tabs. So, there are two tabs about tab and browse tab, buttons. And if you notice, the buttons, they look like iOS. So, it is an iOS button. The tabs is a native iOS tab control. It is not something hybrid kind of stuff. The list view is a native list view. So, yeah, that's just a very brief demo of what is Xamarin. But there has been a lot of new announcements about related to Xamarin itself in the build. And that's what Ben is going to, yeah. Okay, well, I'm going to talk about like two stuff very quickly because it's got about minus five minutes. So, we've got an event covering all the new stuff from Xamarin and coming on the 18th of May. Yep, that's going to be like next week. We've got a new Xamarin TNSV that's is joining Microsoft A like this video, which is Michael William.