TabNine Aims to Put Pair Programming Out to Pasture

TabNine, an AI-based autocompleter aims to make it easier for programmers to write lines of code.

Artificial intelligence has brought us autocomplete, making our lives easier when crafting emails or conducting internet search queries. That ease of use is now coming to coders thanks to TabNine, an AI autocompleter.

With TabNine, programmers are able to install the add-on to whatever editor they are using. Once the programmer starts coding, the tool will offer suggestions to complete each line of code. The suggestions come in small bits so as not to overwhelm the programmer. The tool can support as many as 22 different coding languages and includes popular ones such as Python, JavaScript, Java, C++ and Swift among others. 

RELATED: TOP 10 PROGRAMMING LANGUAGES FOR ENGINEERS

TabNine Speeds Up Coding Process 

"There has been a lot of hype about deep learning in the past few years. Neural networks are state-of-the-art in many academic domains, and they have been deployed in production for tasks such as autonomous driving, speech synthesis, and adding dog ears to human faces. Yet developer tools have been slow to benefit from these advances," wrote TabNine in a blog post

Advertisement

Created by Jason Jacob, a computer science undergraduate at the University of Waterloo, the software requires a lot of computing power. To address that, he is offering a service dubbed TabNine Cloud which is currently in beta. 

Advertisement

As for concerns about programmers wanting to keep their code on their own machines, TabNine is also working on a reduced size model that can run on a laptop for individual developers and a license model for enterprises. "TabNine Cloud is currently in beta, and scaling it up presents some unique challenges since queries are computationally demanding (over 10 billion floating-point operations) yet they must be fulfilled with low latency. To ensure high service quality, we are releasing it gradually," the company said in the blog post. 

Advertisement

Machine Learning Greatly Enhances What Can be Done 

While TapNine isn't new, Jackson said in an interview that adding machine learning to it has greatly improved what can be offered. The undergrad student started work on his program last February and launched the first iteration in November. The updated version, which was released in July relies on GPT-2, the deep learning text generation algorithm. Programmers who have used it have expressed their satisfaction on Twitter with one programmer calling it "amazing" and another describing it as "mind-blowing."

Advertisement

But not everyone was singing its praises when it was released. Some complained it worked better with certain types of coding over others. A criticism Jackson accepts but noted the tool still provides a faster way to input code than having a coding partner. “Imagine all programmers right now are using the equivalent of mobile phone keyboards to type, and going to Deep TabNine is sort of like moving to a regular keyboard,” said Jackson.  

Advertisement