Deep learning at the rescue! 👨💻👩💻
In this article I'll talk about TabNine, an AI Code Completion system for all languages, with a focu...
For further actions, you may consider blocking this person and/or reporting abuse
It's free-ish. It's proprietary SAAS, so it needs an Internet connection to run and will fail if the developers decide to make it fail, for whatever reason.
It's interesting tech, and I used it a year or so ago in Vim for about a month before getting fed up with some of its idiosyncrasies and falling back to regular omni-completion.
Yes, of course, is still imperfect. I've used it for a couple of months with a full enterprise project and nowadays is more "smart" than the first days because it has learned from my patterns and naming conventions.
Is based on deep learning so it needs a lot of data to learn and improve itself, I think it could be really useful on non-typed languages like JS.
Well after your article I decided to try it out. Won't be free for me on my project but it's already looking very interesting. Annoying that it corrects me in Markdown and not always when I notice! Thanks for this.
I'm glad it runs all locally - very important that for my stuff.
Hi Mike! Thanks for trying it!
Yes sometimes it's pretty annoying but it strongly depends on which IDE are you using and your coding speed!
To fix that I think you need to think in a different way while you write your code, personally I switched from auto-completion to driven-completion (lol what's that 😂).
Basically, before using TabNine I was tabbing everything, letting the IDE complete the code for me.
Now with TabNine, I wait for its suggestions before tabbing (or alt-spacing) and let it write the right code for me. That's what I call a driven-completion.
I swear this might help you, any way you need a bunch of time to master this new way of coding.
PS. If you well document your code before writing it, the suggestions will be more precise.
Yeah I'm not sure why it's autocorrecting Markdown - on Webstorm - my CHANGELOG.md randomly has a version number that isn't right lol.
I can see what you mean on the tab to complete stuff, definitely interesting given all of the more complex structures it suggests. Never been a fan of editor shortcuts, but maybe....
Damn, that's strange at all!
I think the plugin is reading all your files, and maybe it touches them.
According to FAQs:
I don't think it's changing your file metadata or something like that. Can I ask you to provide an example of what's happening? Maybe I can help you!
Well it's active in my Markdown - offering suggestions, which is a little unhelpful really - I'm not expecting my English to change on Enter
I typed this:
And it stuck a 7 on the end of the version number
It helps you with code first, and it "works" also with markdown, but as a syntax language it tries to help you with some suggestions calculated on your code, so it could mess a little bit up. Anyway, I've tried on a new markdown file and It's not happening, I think it is because is learning from your code and somehow it matches the wrong words. I'll check TabNine devs for that to learn more about this behaviour.
I absolutely adore TabNine, I have been using it for about 3 weeks for at least 8 hours a day in an angular project and it has been such a help with almost everything that annoys me with web development. Need to write log messages? Need to write things that are repetitive and boring ? TabNine got you covered!
Thank you so much for developing this gorgeous type of software!
Happy to hear that! Unfortunately, I didn't develop it I just wanted to share an amazing tool to you all!
I'm using it in an enterprise angular project, I want only to improve your comment saying than using typescript and tsdoc this amazing plugin do the rest for me.
My biggest problem with TabNine is that if I call a service class, the existing methods are no displayed at the beginning, but rather at the end. So I have to scroll through all "smart" suggestions from tabnine, rather than see the existing methods on the service class instantly. Something any basic IDE does.
It seems like same as Visual Studio IntelliCode
Yes, the logic behind is the same, but TabNine supports different IDEs. I think this is the main difference.
Maybe I need to check which one is the best and make an article about that?
Oh wow, how much RAM do you have?
Lol what that's too much! For me is like 1gb at max!
It looks like a nice tool! Thanks for sharing it, Nicola!
Thanks to you! It's a pleasure for me!