 Hello, everyone. My name is Donald Mac and I'm Amy and we are both PMs at Microsoft on the visual studio for Mac team we are here today to show you how to work in visual studio for Mac and Show you some of our favorite tips tricks and some of the things that we really like about visual studio for Mac So down what can visual studio for Mac do for me? You know I'm not so sure. I'm not so sure What can visual studio do for you? well Let's say it this way if I would have put it in a nutshell right you can build a number of things, you know You can build apps games services for mobile web desktop and the cloud So yeah, just a few things right and I know I know this really excites you So, you know, it excites me sometimes too, but don't worry We will go into this in a lot more detail over the course of this presentation So I'd like to start off with a brief introduction About what visual studio for Mac is a visual studio for Mac is a native Mac OS application That has the look and feel that you would expect on a Mac So for those of you who are familiar with the Macs are you going to feel that same same thing that you feel on? On the Mac for any other application for those of you that are used to visual studio on Windows We know that you know, it's going to feel a little bit different for you It might be a little bit jarring because because of those differences But where possible we try to make make be very mindful of those differences to make it easier for you Speaking of making things easier. We also try to make it easy for you to Download and get running with visual studio from that pretty pretty easily Once you've downloaded and installed it. It's a this is single Single download that you can get once you've downloaded and installed it You can activate it using your existing visual studio subscription Just by logging into the IDE It's not a problem at all if you don't have one of those visual studio Subscriptions you can if you're if you're eligible you can you can use visual studio from Mac community edition now from the Moving on we have a few different types of projects that we support in visual studio for Mac From the file new solution menu. You can actually access a variety of different Project templates you can create we have some of them listed here. You can create dotnet core apps ASP dotnet core projects You can do a cross-platform mobile development with Xamarin You can deploy connect to Azure work with Azure functions, and then actually something that I'm pretty excited about myself And I'm personally, you know, I really enjoy it visual studio for Mac is actually now the home of of Unity on the Mac and You can develop your unity apps unity games not just games, but apps too using visual studio for Mac So right now with visual studio for Mac you can we have support for C sharp Which is a language you can common. It's commonly used for creating cross-platform apps cross-platform applications And we actually support up through C sharp 7, which is the the latest versions and for those of you who are a One of those strongly type functional programming language persons. We're looking out for you guys, too I think Amy knows some folks that F sharp ends So you also have the ability in visual studio for Mac to write and debug in F sharp Something that I'd also like to talk about is some of the web the web bits We also have added a support for Razer for JavaScript TypeScript You can do HTML CSS We give you access to syntax highlighting to IntelliSense if you're one of those web developers and writing for the web And speaking of IntelliSense, you'll be happy to know that IntelliSense is actually well IntelliSense along with all of our analyzers code fixes Refactoring that visual studio from Mac and give you it's it's all powered by Roslin Which is the the same engine that visual studio on on Windows users So if you are accustomed to those features on Windows, you'll see those transfer over to the Mac as well We also know it's very important to test and Some of us a little bit better at testing than others if you're a little bit more responsible then Feel a little bit more responsible than I am. You'll be happy to know that you can You can use a few different kinds of tests Templates are built into VS for Mac. You can do MS test and unit X unit tests All in visual studio from Mac which will help you to you know maintain your code health And show code coverage all that sort of good stuff if you again if you're a responsible person The last thing I wanted to talk about for now, I know I don't have it listed here But I did want to actually I do have it listed here. Sorry But the last thing I want to talk about I'm going to talk about later again is version control So we're going to talk about get subversion later on as well as team foundation version control, so we'll talk about those later and You know, we have a you know visual studio for Mac is a nice ID. There's a lot of features in it And I think Amy might have some tips for us about the ID So do you want to show us show some of the things that you know about the ID? Yeah, absolutely I'd love to show you guys on a tour of the ID So first off there's a couple of different types of settings that you want to be aware of whenever you're personalizing the The ID these are the ID preferences These are used to make the ID function in the way that you wanted to Things like themes code folding. These are all ID preferences and you can find them from the preferences menu Which I'll be showing you in just a second We've also got project options which affect how your app is built. So things like Build configurations compiler options. They're all included there And you can get to the project options either by right-clicking on the project name in the solution pad or just by double-clicking on it And they'll bring it up And then policies which relate to your code styling and format And you can adjust these again through their preferences dialogue So what I'm going to do now is Give you a little demo so we can run through and I can show you some of the interesting things in visual studio for Mac right Thanks, Amy So, you know as we were saying everyone has their own personal preferences over how they want the IDE to look and feel and act You know if we Like how many times have you heard people argue over tabs or spaces, right? So I want to show you some ID preferences that you can use to get visual studio for Mac working just the way you want it And then I'll also give you a quick tour of the IDE itself so This is the welcome page. So whenever you open up visual studio for Mac for the first Eighth tenth a hundredth time. This is the first thing that you're going to see You could open a new project from here open an existing project. You can see all your recent projects But before we get into that I wanted to show you how to customize the IDE So to access the preferences that's just through the visual studio menu item right here And there's a ton of things that you can access through here We have a lot of people asking for Dark theme and we introduced that Probably a year ago Our designers were really put to work with this They designed every single little icon for dark thing just so that it looks like as amazing on dark theme as it does On light theme. I'm so you can just you can just change that in here. Yeah, Amy and I think are both really really Strong supporters of light theme. Yeah, I'm one of those people who use light theme for everything But I will say that as far as dark themes go, you know, it's not bad I know ours is amazing. A lot of people really like the dark theme So, you know to each their own, but I guess I guess we're a little bit on the same side there, right? Okay, so Next thing that's super important is key findings So with the key bindings in visual studio for Mac, you can actually set that this game So if you're coming from another idea, whether it be visual studio for Mac on Windows Xcode you can just choose something that matches, you know, what you're familiar with I'm just gonna keep it with the the standard one for now But what I am gonna do is show you how to add a key finding So we just added this cool report a problem tool a little while ago and I love filing bugs I Fallen bugs is my favorite We work in the same office and I think every morning Amy kicks the door down and she says how many bugs am I gonna find today? I want to be easier for myself to make, you know to file bugs So to do that, I'm gonna add You keep binding for the report a problem feature get easy. Yeah, so Let me see. I'm just gonna set like So I'm just gonna select it here. I searched for it. I'm just going to set the binding command D Doesn't look like that's taken Cool If it was taken what happens? It would just prop it would come up and tell me that there's conflict Oh, cool. I have to choose something else nice. Yeah, no, it will complain I'm just going to add that And there we go See I can show you come on D. There we go. Easy peasy. That's awesome. Didn't have to use my eyes. That's awesome Look ma no hands Okay So that's the environment. I'm like the text editor section in Preferences is probably one of my favorite. There's tons of stuff that you can do in here In the general section you can enable code folding. I find that really handy Especially whenever I'm looking through like huge code files just to try and navigate a little bit easier Another one markers and rulers So I Don't know about anybody else in here But I If I had a dollar for every time I didn't have a matching brace and I you know I ran my app and the compiler started yelling at me and I was about to start crying and then I realized that I had just you know Not included a brace I'd have like at least 10 bucks But so now I once I find this feature turned it on and now I always like to just double-check make sure that You know, I've got my match of braces there I also like to just double-check and So I can see my current line just so I know where I am in the file And I also like to make sure highlighted dead fire references turned on one thing That's really handy there is if the reference is assigned it will actually be highlighted in red And if it's referenced it will be in blue So it's a handy tip there Again Coming back to braces Once I realized that I could just insert a matching brace. That was really handy for me Because then the compiler doesn't try to make quite as much and I'm much happier And you can also add, you know smart semicolon placement here, too If that's your thing in case you forget those semicolons. Yep And Another cool feature is color theme. So while you can change the The theme of the idea in general you can also change the theme Of the editor So we have a variety of different things here, but we also do support Visual Studio themes and text me of themes. You can just add those And apply it and it will it will work straight away Yeah So as I mentioned so policies are what we use to describe the code style in and formatting So I just want to show you that really quickly as well So Yeah, so in the source code section under code formatting I'm just gonna look at the C sharp code source code for now But you can do this for you know anything else f sharp xml. Whatever it is you're using you can set Your your preferred policy or whatever policy it is that using mono visual studio If you want to edit that as well, you can just go to the C sharp format tab just hit edit and Let's see I'm gonna insert space Yeah And it'll give you a little preview of exactly what's going on as well. So you can just customize that policy kind of as you want And yeah, so that's setting your policies So you can also use this preferences menu to set the new good source locations version control message style and various other things I Do highly encourage Anybody just to check out if you haven't you know browse through the preferences menu before just check it out and go and see all The features in there, and I'm sure you'll find You know something that you didn't know was in there. It'll be quite a nice treat So if I'm working with you on some shared code and we have some different opinions on You know how we want to work there. Yeah, what do we do there? Okay? So that's a great question. So we now I have support as well for editor config files Which means that you know you can have your spaces and I can have my tabs and You know whenever we're printing the file and we're using it all together with the team Then Miguel is happy and that's yeah, that's how matters at the end of the day Yeah, so Now that you've got your ID working the way you want it. Let me give you a lay of the land and the ID itself so I'm just going to Open up my super cool app, which is just an iOS Single view app straight from the template And you see whenever we open this up. We have what's called a workspace here Above the workspace is your toolbar. So you have your round debug buttons. You've got your project configurations here You've also got your notification bar So whenever, you know, you're uploading to Azure whenever your project's building you can see exactly what's going on then And you've got your search over here can also very easily access the search Through the command full stop option And that will just come up there so as I was saying we've also got We usually use what's called works pieces and the workspace consists of the document area And the document area would be like the code editor as we have here if you're using a designer file It you know, it'd be the designer surface for an iOS storyboard or something and it's surrounded by Complementary pads. So here we have the solution pad We would have, you know, your properties your toolbox along the side and all these all these Default layouts are there for you. So you've got code debug design test so that can very easily jump between the different different layouts It is important to It's important to note that by default visual studio for Mac will open any new solution That you have in a new workspace and actually close the current workspace But however, you can open more than one solution in a single workspace by going to file and open And just select the you know, the solution file that you want go to options and uncheck this close current workspace and Then hit open and it will open in the same workspace Now if you're using a solution or if you want to open a solution that you've recently used You can actually go to file recent solutions hold down the control key and Just select it and again, it'll just open in the in the workspace and see workspace So say I want to open So I want to open a new file here and this is from a different solution altogether I can actually play around with My documents here and I can have them side by side so I can just pull it pull the tab out Move it to the side and there we have it side by side. It's pretty cool If you want if you're using more than one monitor as well You can actually pull it right out of the IDE and have as a separate window all together. It's pretty pretty nice Finally one thing that I do want to mention is that on a Mac all apps are single instance And what that means is that once it's kind of like already open here if you click on it again in the dock That It will just open the same instance that you're in if you Want to open a new instance you can just do that in the command line So just with open dash and Let's see applications And that'll just open a new instance for you And this was life-changing when I figured this out a couple of years ago when I when I started using Macs Absolutely life-changing it's pretty cool pretty cool All right, all right, let's get this back up All right So thank you very much for that in me sure thanks for that run through I would like to talk a little bit now about ASP Dotnet call in visual studio for Mac. So we can hit the next slide there Awesome so ASP dotnet call allows you to do just do a few things you can develop and build some awesome cloud-based Internet connected cross-platform applications and you can you can you know have the ability to create web apps You can create services back ends You know something if you you really want to you can even do something like Connecting your coffee pot to the internet using IOT and at the moment Visual studio from Mac supports dotnet core 2.1, which is again the latest version of the dotnet core APS SDK and you'll be able to with this create web apps using Razer pages or MVC in addition to ASP dotnet web API projects With this also comes IntelliSense formatting and all those other features that you're used to for various files like razor files temp type script JavaScript CSS HTML files and Something that's really cool. You can also hook up with docker and throw your ASP debt dotnet core Pages or projects into containers One thing that I do want to say as well as that in inside of visual studio from Mac You can actually configure the location of your dotnet core SDK in case you had a previous install or you want multiple installs of dotnet core So you can go into the preferences page, which Amy showed us earlier and and change the location there and Then I did want to get us up and running with a little bit of a demo Just to see a little bit of what we can do with ASP dotnet core so I'm gonna get the get the idea up and running and Fire away, so I'm gonna show you Once we we clean this out, all right So I'm gonna show you a a new the templates that we have for dotnet core So if you go into file File any solution We'll open this up. These are templates for dotnet core if we scroll down here You'll see Yeah, and you'll see that we've got a few options here. I'm going to select a dotnet core web app Now this is a razor template and the preferred way to create pages in HTML And I know that there's an MVC one below it and you might be asking well You know, when do I pick between razor and MVC? If you're looking to do just a you know an HTML website Raisa is going to be a choice if you're looking to do something that will also serve like as a web API You know go with MVC There's good news about this though, you know, you're not locked into one of them if you choose one over the other It's not you know the end of the world. You can actually add MVC you raise the pages even web API bits to all of your projects and shuffle things around so instead of going through and creating a app I'm going to Going to open one up that I conveniently just have here, you know, just randomly on the computer So As this looks up, I just wanted to show one thing really quick Amy's actually going to touch on this a little bit later and that's if you right-click on your project here Go over to publish. You can actually publish some of your functions or products too as your Dotnet call web app. Yeah, you can publish your dotnet. What dotnet call web app to show as well so I'll just show you quickly some Some code completion and tell us then so I'm going to go down to my ASP.net Web app I'm going to go down here and to my index page And I'm going to add a new property here Let's just add it. Let's just throw it here I'm actually going to use a little bit of a cheat code a little template here. So I'm going to type in prop hit tab and It's going to fill this out for me. I'm going to make a string Hit tab again. I'm going to call it totes prop because it's totally a property And then I'm going to go over to my my index CSHTML not my dot CS1 and you'll see if I Let's say at model Sorry There we go. I can do totes and it's it's there, you know, I can access that So I'm just going to get rid of that because I'm just being a little silly there But what I think is really important is showing you how to configure multiple builds in Visual Studio for Mac so if I select my entire solution and Hit options here You can go down to my run configurations and I'll add a new configuration I'd call it that totes all Because it's totally gonna run all of my my projects I'm gonna create that Double-click that and I'm gonna select all the projects All the projects in my solution hit okay and now I'm going to run it and There we go. So that is that is going so while that's going I will say a couple things Oh one thing here. It's Something that's really cool to know is that With the latest versions of ASP.net core when you create a project that actually has support for HTTPS built into it so you can easily convert over to a To a secure website if you'd like Oh, and yeah, thank you Amy. So I was actually really silly I created that So this is really good. This is a really good lesson If you don't select that build configuration, then it won't run everything. So we only run the function there. So I'm gonna Close that and let's start again So a good catch. Thank you, Amy So that'll take just a little bit there as it spins up. It's running that function. It's creating that Or getting that ASP.net core website ready So that will just pop up in a sec. We're going to go to this website here and There it is. All right. So what we're going to do here. This is an ASP.net core website It is here to Take these files from me. There's a dog.jpeg file here. It might be a picture of a dog It might not be it's definitely a picture of a dog So this is a picture of a dog. I'm gonna open this up And I'm gonna submit it and what what's happening here is This ASP.net core website is Taking this picture uploading. It's a blob storage and it's triggering a function to get the image analyzed So if we go back here We'll see up. There we go. It's coming through here So now this is coming back through cognitive services and it's saying okay This was a dog lying on a wood floor. There's definitely some floor and there's definitely some dog in it That's pretty accurate. I think So now that we've brought up functions a little bit here I would like to to hand over to Amy. So I'm just gonna close this up make everything nice and clean and And scooch over so so Amy can Work with you guys Awesome. Thanks, Tom. Yeah, thank you. Thanks for catching my mistake there. Of course anytime All right Cool. So yeah, so as Dom is saying I want to show you guys a little bit by azure functions So hopefully you have heard about azure functions because they're super cool But they're also pretty new technology. Just over a couple of years old They're a serverless event driven way to get a quick task Like up and running so think like Imager order processing or something that you just like want to run on a schedule And it does that with like the need for you to build the whole application infrastructure behind it In addition azure functions ties in with Existing azure services or third-party services such as twillow, which we just saw the advert earlier And there's a number it's really easy to get started as we have a number of different templates Available. So for example like blob trigger GitHub web hooks and allows you to get started really quickly With the common scenarios So azure functions in visual studio from mac So what what kind of support do we have here? Well, all of our templates They're supported for the the v2 azure functions run time. We also have dotnet core 2.0 plus support Uh, there's a ton of templates that are actually available through the new project dialogue So you can just go In like create a new project select the template And from there you can you can actually configure the template with your connection string and whatnot And you have it something that's up and running. You can actually just run it there locally We do now have local debugging And my favorite with our newest release We're super excited to announce that you can now publish your function to azure Which and I'll show you just show you this in a couple of minutes So it's it's pretty cool So visual studio from agni allows you to create azure functions from start finish It allows you to go from file new to publish it publishing it on azure and getting it up and running So yeah pretty cool pretty cool so Let me give you a little glimpse into The world of azure functions on visual studio for mac Awesome. So I'll just open this. I'm just going to work with this same app that dom had just introduced So this this super cool web app allows you to Upload a photo Up into blob storage This triggers the the function and runs it through cognitive services and is basically analyzed Um So like I was saying, oh, I kind of kind of want to run it to to show off my cat So the the dog is is uh, one of my close friends dogs, but the cat hair Is uh, it's amy's own cat And I dare say the cat is cuter than the dog. Yeah Yeah, like Um, there's no costume on this cat She doesn't need one Okay, so I'm going to submit that and go back to my function And it should just take a little A little bit I've done everything right I think it's working. It's running um Yeah, and so this is so this function itself is actually just running locally. Um, so this is just running on my machine. Um the You know, the only connection to to azure is just the to the blob storage and uh by two cognitive services Um, yep, it looks like a cat looking at the camera. Awesome. That's exactly what it is Nice. I love cognitive services Yeah Yeah, so, um, let me just go back to visual studio. So this, um, this function was created from the blob trigger function Um, it was created from the blob trigger function Uh template which you can find just through the new project dialogue And that's just located under cloud and general I just hit next And you can just select your initial template from here. Um We have some documentation as well online that describes these in a little bit more detail If you want to try and figure out which one is the right one for you So Call my function amy because yeah Um, not amy is cool function. No, okay No, this is just just showing the template. Um, and so this connection string setting is you would just get it from The the portal. Um, so you can just copy your connection string from there put it in here It will have it all set up and running for you. Um, as soon as you hit create Um, so, you know debugging locally is cool But, um, you know, what if I want to use this like in my app? Like what if I want to actually, um, do something with with this that's not just on my machine? Um, so what I want to do is, uh, publish this function to azure So I'm going to show that to you guys now Um, so to publish to azure, we're just going to right click on the function publish And publish to azure So whenever you publish to azure, um, it's going to take whatever you're signed in to visual studio from mac with Um, and and use that see if there's a sub an azure subscription Um, and kind of go through, um Go through and it will display all the azure app services that is or that is connected to any subscription that you've logged in with Um, so I do have a couple here, but I Want you know for the sake of demo, I just want to show you how to create a new app service. So we're just going to hit the new button here Um, I'm going to call it something, uh function Amy Don't know come Cool And this has to be globally unique as well So it will tell you if if this has been taken before it won't actually let you go ahead and create it If the name's already taken You want to sub select your subscription? And you'll want to, um, select your resource group So I want to make sure that I'm selecting the resource group that the storage account that my function is using And my.net core app is using um So I want to make sure that I've got the the resource group that has that storage account I'm going to create a custom service plan Obviously the the pricing region is is dependent on your personal circumstances So I'm going to try and go for a consumption I'm going to go for the east u.s And let me see net comp Plan function really good at naming stuff Um, okay next and we want to use the storage account that we want to create So If I hit create Should create my app service And publish everything to azure Here's where the magic happens Here's where I hope the internet doesn't feel on me And this takes Just a couple minutes sometimes. Yeah, it normally takes a couple of minutes to do I mean it depends if you're using existing Like app services or stuff if it's an existing app service. It doesn't need to create everything So, um, it it's a little bit shorter Um, obviously depending on your internet speed and everything as well Things can just take a little bit of time Um, but yeah Cool, it looks like sayed's in the channel answering all your questions. Thanks. Sayed Yeah, thank you Are there any other questions or anything while we're waiting for this? It must be because we're doing such a good job such explaining everything All right, so this is looking good it's publishing to azure Don't feel on me. No, I didn't do that Uh, so I think You know, maybe while we uh, we wait for the second here. Um, I'll just give you a preview Um, of what I'll just jump into next Um, I'd like to talk a little bit about version control I know that's pretty important to a lot of people And we do have some uh, some new support for For tfvc, so Um, I will definitely talk about that. Cool. Can't wait for it and uh, all right. Yeah, so, um You will be prompted for this right now Um, this is just making sure that whenever you are Uploading to the portal that the application settings of your function Um are using the the v2 runtime Um, so you just want to hit yes here Boom There we go. It all worked and it's a happy face, right? It's good whenever. Yeah. Yeah, it's a happy winky face um But yeah, so that is azure functions in visual studio for mac. Yeah, so let's pop back. Uh, yeah, there we are Hi us Hi everyone out there So, uh, let's uh, let's chat a little bit about version control Uh There's some version control options for you in visual studio for mac. Uh support for uh team Team foundation version control. There we go. I'm going to say tfvc from now on to avoid tongue twisters but But support for that is currently in preview in visual studio for mac. It's uh, it's actually available Via an extension so you can add it into You can add it into visual studio for mac via the extension manager and uh Via the gallery tab in the extension manager and you can access the extension manager from the extension menu item In that visual studio Menu bar item which amy pulled from the preferences open from Once you've installed that extension for tfvc make sure you restart visual studio for mac Just to make sure everything is Nice and smooth and then as that extensions in preview are actually We're actually updating that fairly regularly. So, uh, you know, keep it up to date by going back to that place That extension manager go into the updates tab and you know checking for updates on a periodic basis Yeah, and please try it out and file bugs. Oh, yeah. Yeah, we showed you how to file bugs, too We'll show you a little bit more of that later, too So With that extension installed you can connect to tfs you can connect to vsts Create you can connect to repositories there. You can create workspaces Navigate projects perform all the things that you know that you're used to doing with version control And now let's move over to git and subversion. Uh, those are both actually built into visual studio for mac the support there so The version control menu item and the the menu bar is going to be your best friend when you're working with these Um It's important to know that actually git is installed by default on your mac So macs come with git installed. It's not usually the the most recent version of git So you will probably want to go and update it. Um, you know, make sure you're on a recent version But you know that advice aside now that that's taken care of You know, you can you can hook up to git repositories. You can push you can pull You can do everything else that you can normally do with git Um And then similarly with subversion same similar story, uh, you can you know, check out update Check back in commit Something important though on the mac subversion is not pre-installed like it is So you're going to have to Install subversion and one of the really easy ways to do that on the mac is by installing the The xcode command line tools. So I definitely recommend doing that if you'd like to use subversion Uh, now you may be familiar with the ability that uh, that you have on windows in vs 2017 to uh, To clone git repos to vs 2017 from uh vsts We're actually working right now on enabling that for vs for mac So stay tuned for more information on that And then I think amy actually has a few few little bits of information that she wants to share with you Before we close up Yeah, so there's just another little bit of information that I um, I just want to wrap up with Um important things to know just to make sure that you're really getting the best out of the IDE um So that is making sure that your IDE is can is being kept up to date Or if you'd like to live on the wild side, um to check out our previews or even better our um our weekly bills So we have um three maybe four channels um in the in the updater dialogue um That is stable, which is you know, which it's your the releaseable content that that we want to be um That we're pretty happy with We have uh the beta channel, which is our preview So you can stay up there for all the like juicy goodness And the alpha channel is our weekly build, which is literally the latest and greatest content We also have dynamic channels Um, which you know, we will add them for specific purposes such as um Xcode 10. Yeah, so um Hope you iOS developers Yeah for um, if you were trying to keep your I open summer in iOS app up to date for iOS 12 We were sending Xcode 10 updates through the that dynamic channel It just meant it was much easier for you rather than having to go to the web and and download everything from there You'll also get notified Either through the toolbar or just by a pop-up whenever there are notifications So I highly recommend that you stay on top of that You know to update you just bring up the updater dialogue Select the channel that you want um And you can switch to that channel Dialogue install Everything you know how to do And like I was saying earlier, we'd have this new report a problem dialogue That came out this new feature. I think literally just the start of this week. Yeah, be right Um, so this is in the seven six four release of visual studio for mac From this dialogue, it makes it really easy for you to be able to Browse any followed issues that you have Search for any issues to do with visual studio for mac or to actually Report a new problem just from right within the IDE So it just makes it really easier easy for you to you know to give us that feedback Which you know, we we always really appreciate everybody that takes the time to um to feedback to us. Yeah, we we We absolutely love to get the feedback it helps us make a better product for you And the more details that you can give us in these issues that you're filing The better it allows us to you know To address them a little bit more quickly with a little less back and forth So if you're going to be filing issues and you want to see if you can beat Amy in the filing bugs department Feel free and thank you Yeah So thank you guys so much for taking the time to listen to us. We really appreciate it Um, if you want some more information, um, I can always go to aka.ms and forward slash visual studio for mac if you have never um Used visual studio for mac before now. You're interested. You can download it from that page. Um, if you want to get up to scratch on visual studio, we've got the the awesome awesome content written By our docs team aka.ms forward slash vs mac hyphen docs Um, so it's really good to keep up with all the content there And if you have questions That either we can't answer now or you just want to talk to us or you want to just listen to what we have to say You can follow us on twitter. Um, time you take it. Tom is sound dumb One of these days i'll i'll update that but not right now But thank you for listening to us. Yeah, it was thank you so much. We really appreciate it. Yeah, thanks everyone