AI Code Autocompletion Engines - GitHub Copilot, Tabnine, Kite, and Amazon CodeWhisperer in 2023.
Senior Content Marketer & Technical Expert
Cloud & DevOps
12.04.2023 Update: We updated our post for 2023. 05.04.2023 Update: See our post about GitHub Copilot X. 03.04.2022 Update: We updated the article to give more information on Kite's situation. We also included the information about wider availability of GitHub Copilot. 13.07.2022 Update: We updated the article to add a section about Amazon CodeWhisperer, and to add more information about Copilot.
Last year, in 2022, we had quite a few announcements about the releases of Artificial Intelligence assistants for developers. The year was not even the year of pioneers. That is reserved for 2014 - the year that the first tool was released. That's why AI autocomplete engines are not a novelty by any means. Their purpose was and still is simple - to make programming simpler, and less reliant on our human memory - which is much more error-prone than computer memory.
A lot of people get the purpose of AI autocomplete engines wrong. It is not the replacement of a human programmer, but rather augmenting their capabilities, and making the code better. The ones who fear that code autocomplete engines will replace professional software developers, we have rather good news for you - chances are they won’t, though it could be close. If you are not convinced, these engines work the same way as looking up documentation and/or real-life examples. The only difference is it happens automatically vs having to open a new browser tab.
Now that you know they are here to help you, then what are the options that you have? Mainly, there are three.
GitHub Copilot, the most popular option on the list, also seems to generate the most emotions. It is the effect of collaboration between Microsoft and OpenAI, and is based on a natural language processing model called “Codex”. The neural engine had been trained on publicly available GitHub repositories before the release (and most likely still doing so as we speak), processing countless projects and files to offer the best possible autocompletion options possible. The proposed options indeed are quite promising.
Here is a little demo of what it can do
Here is another demo, where you may see how well GitHub Copilot works on Java Spring code:
It’s time to install the extension for your VS Code. Look up “github.copilot” in the Extensions view
Install the extension
Click “Sign in to GitHub” in the popup on the bottom right, if prompted
You’re ready to go!
Copilot vs CodeWhisperer
If you are on the fence whether to choose GitHub's Copilot assistant or maybe CodeWhiperer is more for you, we have a couple of videos for you that could guide you choice.
Tabnine (Formerly Codota)
Tabnine, initially a creation of a college student, turned into quite a popular product. The paid and free options were both available from the start, with all features unlocked when you worked on a project using Rust. As the author stated, it’s “in acknowledgment of the fact that TabNine could not exist without the Rust ecosystem.”
The autocompletion options are not as spectacular as with the case of the recently-announced GitHub Copilot, though they still do make programmers’ lives easier. There is an experimental option to enable longer completions, though keep in mind it is by no means complete.
The last option on our list was historically dedicated to Python development, and, as such, it provides the best features specifically for Python developers. Not only were you able to quickly search the documentation, but the engine will look it up for you automatically, thanks to the “cursor-following” feature.
The company was a true pioneer in the field. They launched their product 8 years ahead of GitHub, much before even the underlying OpenAI model. As it sometimes happens, the technology was not quite there at the time, nor was the interest. They were too ahead of their times.
Guido van Rossum, the creator of Python himself, tweeted he was enthusiastic about the helpers’ capabilities:
As you can well see, the target market for Kite is pretty obvious, and so if you are mainly a Python programmer, or just use the language daily, there would have been no better option for you. So, why are we writing about it as if it isn't available anymore? That's because it isn't. At least ever since we first wrote this article (September 2021), you may not download Kite.
Kite Supported Languages
Back in the day, the company claims to support 16 languages, though naturally, it is recommended you decide to use the engine if Python is a go-to language for you.
Kite Supported Editors
16 of them, including the most popular Python editors:
Kite Installation Guide
As of 22.09.2021, downloading the client is not possible. Sadly, it won't be available anymore, although if you want to compile the tool yourself, you may.
The tool from Amazon has probably the most hilarious name out of the four tools. If you don't know why it is funny to us, then there is a famous show called "Dog Whisperer."
The company has stated that this is not a copycat of Microsoft’s tool but something they have been working on for some time, laying the groundwork with DevOpsGuru and CodeGuru a few years ago.
Key benefits of using Amazon CodeWhisperer include:
1. Accelerated frontend and backend development with automatic code recommendations for next-gen applications.
2. Saving time and effort by generating code to build and train ML models for your applications.
3. Speeding up development processes with code recommendations for popular AWS services, including Amazon EC2, AWS Lambda, and Amazon S3.
4. Automating unit test generation based on natural language comments, offloading repetitive unit test code writing.
To end with, the capabilities of all the aforementioned engines are still quite underwhelming. We still could not have dreamt of such capabilities even 10 years ago, which showcases how fast is this space moving.
We can only expect our smart helpers to become smarter. No worries here – your job is safer than you think. You have to remember, that AI cannot come up with anything new, and it is doubtful it ever will. It’s because computers lack the ability to think abstractly, or creatively. All they do is process the data that already exists unlike humans, which do transform pieces of creative work into something new.
360° IT Check is a weekly publication where we bring you the latest and greatest in the world of tech. We cover topics like emerging technologies & frameworks, news about innovative startups, and other topics which affect the world of tech directly or indirectly.