Visual Studio's AI-Powered Assistant, IntelliCode, Gets Smarter

Visual Studio's IntelliCode has gotten smarter -- using artificial intelligence to provide better code completion suggestions -- and more robust, now supporting more programming languages.

The code-completion enhancement comes with the ability to examine and learn from the code generated by a developer in order to provide "smarter" lists of the most probable APIs intended to be used as the developer types.

IntelliCode, the AI-powered upgrade of Visual Studio's IntelliSense, previously used a machine learning model to examine GitHub projects to determine the best completion suggestions, along with the context of the current project.

"Until now, IntelliCode's recommendations have been based on learning patterns from thousands of open source GitHub repos," said Microsoft's Mark Wilson-Thomas, senior program manager, in a blog post yesterday (Dec. 5). "But what if you're using code that isn't in that set of repos? Perhaps you use a lot of internal utility and base class libraries, or domain-specific libraries that aren't commonly used in open source code, and would like to see IntelliCode recommendations for them too? If you're using C#, you can now have IntelliCode learn patterns and make recommendations based on your own code!"

Visual Studio IntelliCode
[Click on image for larger view.] Visual Studio IntelliCode (source: Microsoft).

Also, while that new functionality pertains only to C#, IntelliCode -- first introduced at Microsoft's Build conference in May -- now supports more programming languages.

The tool preview, which comes in a Visual Studio Marketplace extension, now supports C++ and XAML.

What's more, IntelliCode's counterpart extension for the open source, cross-platform Visual Studio Code editor now supports TypeScript/JavaScript and Java, along with the previous support for Python.

Microsoft's Sana Ajani provided more details on the VS Code extension's new support of TypeScript/JavaScript in a separate post.

"IntelliCode will also assist you across different JavaScript libraries, whether you're writing client-side code with libraries like React, Angular, or Vue, or doing server-side development with Node.js and Express," explained Ajani.

Meanwhile, Nick Uhlenhuth provides more details on the C++ functionality coming to Visual Studio 2019.

"IntelliCode uses machine learning to train over thousands of real-world projects including open-source projects on GitHub," Uhlenhuth said. "As such, IntelliCode will be most helpful when using common libraries such as STL. Based on this training, IntelliCode saves your time by putting what you're most likely to use at the top of your IntelliSense completion list."

At the time of this writing, the Visual Studio IntelliCode extension had been installed more than 129,000 times, earning a 4.6 rating (0-5 scale) from 25 developer reviewers, while the VS Code extension is more popular, with more than 496,000 installations and a 4.8 rating from 10 reviewers.

While some developers welcomed the new languages joining the IntelliCode camp, others wanted more, with multiple calls for VB.NET support, along with one for ASM (x86 and amd64). Microsoft replied that the tool is still in preview and feature suggestions can be entered at the GitHub issues site for the project.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus


  • What's New in Visual Studio 2019 v16.5 Preview 2

    The second preview of Visual Studio 2019 v16.5 has arrived with improvements across the flagship IDE, including the core experience and different development areas such as C++, Python, web, mobile and so on.

  • C# Shows Strong in Tech Skills Reports

    Microsoft's C# programming language continues to show strong in tech industry skills reports, with the most recent examples coming from a skills testing company and a training company.

  • Color Shards

    Sharing Data and Splitting Components in Blazor

    ASP.NET Core Version 3.1 has at least two major changes that you'll want to take advantage of. Well, Peter thinks you will. Depending on your background, your response to one of them may be a resounding “meh.”

  • Architecture Small Graphic

    Microsoft Ships Preview SDK, Guidance for New Dual-Screen Mobile Era

    Microsoft announced a new SDK and developer guidance for dealing with the new dual-screen mobile era, ushered in by the advent of ultra-portable devices such as the Surface Duo.

  • How to Create a Machine Learning Decision Tree Classifier Using C#

    After earlier explaining how to compute disorder and split data in his exploration of machine learning decision tree classifiers, resident data scientist Dr. James McCaffrey of Microsoft Research now shows how to use the splitting and disorder code to create a working decision tree classifier.

.NET Insight

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.

Upcoming Events