“And so the AI is able to figure out what the context is, and serve the most accurate API examples most relevant to you at that point in time in your context. We are already on our way there. So I’m absolutely fascinated by this. This is fantastic stuff.”
~ Mads Kristensen, Principal Product Manager, Microsoft
Microsoft employee Mads Kristensen spoke at the Visual Studio Live! Conference in Las Vegas gave an outlook on the AI future of Visual Studio.
In a keynote presentation, Kristensen explained how AI can be used in the IDE. The senior product manager for Visual Studio used his insight into the work of the development team to discuss how AI could revolutionize tasks in five broad areas: writing code, debugging, profiling, explaining code, and providing a starting point for projects.While AI-powered tools like GitHub Copilot and IntelliCode have already started down this path, Kristnsen says more advanced technology is in the works that will expand capabilities even further, particularly in the area of generative AI. Here are some highlights from the AI portion of Kristensen’s keynote:
Voice Assistant: As a simple example, Kristensen used a voice assistant extension he just developed with Brady Gaster of the .NET team. “So you can say ‘Hey VS’ and then the wizard will listen and we can give it an instruction. So we said ‘Hey VS, create a C# class called Person that has a first name, a last name and a constructor “, and document everything with XML code comments’. And boom! That’s it, it wrote the code completely for me, the perfect framework. And it’s much faster. Although I can write something like this pretty quickly – nothing compared to that. “
Code Comments: “I hate code comments. I hate writing code comments. I love reading the comments, but hate writing them.”
More complex application parts: “What if AI could help with that? What if my application’s topology included SQL Server databases, Azure Blob Storage, a Key Vault, some services here and there, some NuGet packages, various SDKs and I could instruct Visual Studio to help me generate code that retrieves a list of users from the SQL database using Entity Framework and correlates it with the available blob storage files? Using the Key Vault to find out the permissions and so on. And it could do all of that. It could write it, it knows how to write against these different SDKs. How awesome would that be?”
API samples: These are already provided in an IntelliCode preview. “So when you hover over something, you can see other people writing code for the same NuGet package – the same method in the same context you’re in. That way the AI is able to recognize the context and to provide the most accurate API examples that are most relevant to you in your context at this time. We’re already on our way.”
Debugging: Debugging is one of those non-programming tasks that takes up a lot of a developer’s time, so new AI features to assist are particularly welcome.
More info is provided in the article by David Ramel.