|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.
or email your comment to: firstname.lastname@example.org
|Last Updated ( Tuesday, 08 May 2018 )|