The AI In The IDE - IntelliCode In Visual Studio
Written by Mike James   
Tuesday, 08 May 2018

Visual Studio is the old man of IDEs, on Windows at least, but this doesn't seem to mean that it isn't still developing. New at Build 2018 is IntelliCode -  IntelliCode not IntelliSense. It is not the first attempt to put AI at the disposal of the programmer, but it might be the most important so far.

There are rumors that Visual Studio will lose the battle with Visual Studio Code - the Electron-based web IDE. The argument goes that Microsoft is more committed to Azure than it is Windows and so a code editor that is web rather than Windows based makes more sense. The signs of this are that there is no 64bit version of Visual Studio and no serious attempt to differentiate the free community edition from the paid for Pro. It is also true that many of the language services used by Visual Studio are just as accessible from Visual Studio Code.

So you need to keep all this in mind when learning about IntelliCode. It is essentially an AI that tries to take IntelliSense to the next level. The machine learning model was trained on over 2000 GitHub repos. The machine learning model is complete so the VS add-on that implements it doesn't have to look anything up on GitHub or Azure. At the moment it is only C# that benefits from IntelliCode, but with enough repos any language could be represented.

As well as offering better code completion, IntelliCode also automatically generates a config file that captures your current formatting style. It also autogenerates comments which have to be less inane than the typical a=a+1 //Add one to a.

The misuse of variables analysis looks particularly interesting given the example:



I ask you, who hasn't made that sort of mistake?!

Finally it will recommend files that need extra attention in review. It claims to do this using heuristics derived from file histories. Presumably it doesn't do what a colleague of mine used to do and list all the files I had recently input to as being "at risk of spelling mistakes". 

Take a look at the video to see it in action:


This appears to be just the beginning:

"Microsoft is investing extensively in machine-learning and AI technologies. We’re working with Microsoft Research to leverage the latest techniques to learn from source code and deliver new, innovative ways to enhance the coding life of developers, so that you can deliver your software with greater confidence and velocity."

If you are interested you can read a paper on the subject that has just been released: Learning from Source Code

There is no doubt that this is the way that AI will make itself felt in programming.

No sudden takeover; just a slow deskilling.


More Information

Introducing Visual Studio IntelliCode

Related Articles

Bayou - AI To Help You Code

Visual Studio 2017 Released 

Ubisoft Applies AI To Code

DeepMind's Differentiable Neural Network Thinks Deeply

Neural Turing Machines Learn Their Algorithms

Learning To Be A Computer

Microsoft Asks For Help On The Future Of .NET - Where Do We Start?


To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.



Node.js 22 Adds WebSocket Client

Node.js 22 has been released with support for requiring ESM graphs, a stable WebSocket client, and updates of the V8 JavaScript engine.

Stack Overflow Jobs Reborn In Partnership With Indeed

Stack Overflow has launched a new jobs site co-branded with Indeed. It is intended to make thousands of highly-relevant job openings easily discoverable by developers. The job site is curren [ ... ]

More News

raspberry pi books



or email your comment to:

Last Updated ( Tuesday, 08 May 2018 )