Live data from Hacker News

AI-Powered JavaScript Completions

kite.com

51–60 of 100 posts

Re: AI-Powered JavaScript Completions

#51

Semi-related thought~ I find myself often dreaming about the AI-assisted development processes of the future. I'll frequently be writing code and start thinking "this task I'm doing is pretty formulaic and constrained-- it should be automatable someday, even if we haven't figured out how yet." Examples: 1. I memoized the arguments for a util function. Repeat this on the very similar functions defined alongside it. 2.…

When is it better to solve those problems through the organization of your code rather than an autocomplete feature?

The things you mentioned all seem to yield to the decorator pattern.

Creating the right abstraction (instead of using autocomplete) would benefit future collaborators who may not have access to the same autocomplete functionality.

Re: AI-Powered JavaScript Completions

#52
post #10

Earlier quoted context omitted.

Adam, Intelligent autocomplete is great. Big fan of it. However, Microsoft has already built this out in VS and VS Code as IntelliCode, and it supports Python, Typescript, JS, and Java. VS Code is the most used JS editor by far and has first party support for this that comes out of the box. What is the reason for Kite for the VS Code users out there?

Hi there, thanks for the question. IntelliCode has a similar vision but uses much simpler models. IntelliCode can essentially give you to the top 5 attributes for a global type. Kite uses statistical models which are orders of magnitude larger and richer, both in terms of the context they understand and the sophistication of the completions provided. Here is a good example from the blog post: var server = express();…

Appreciate the reply and the additional explanation, best of luck!

Re: AI-Powered JavaScript Completions

#53

This looks more like a problem that could have easily been solved with traditional algorithms, ranking keywords, etc.

I guarantee your opinion of AI-based autocomplete will change if you try it for a week. It's completely different than anything heuristics-based. In fact, it often suggests complete English phrases when I'm writing prose that are contextually relevant and grammatically valid (which makes sense, it uses GPT-2 under the hood I think). It's crazy how good it's gotten over the last few years. I recommend TabNine but mayb…

Your comment convinced me. I just downloaded the TabNine extension for VS Code and started using it for the work I'm doing (Python).

I tried it for about 10 minutes, but had to disable the extension. Two reasons:

1. My editor no longer brought up the useful function signature hints for library methods I wanted to call, which is really annoying.

2. There was a noticeable increase in lag from when I hit a key on my keyboard to when the corresponding character appears on screen. It was hard to get used to.

Have you noticed these issues? Would appreciate any tips you have for how to get over this - maybe just stick with it a while?

Thanks.

Re: AI-Powered JavaScript Completions

#54

Semi-related thought~ I find myself often dreaming about the AI-assisted development processes of the future. I'll frequently be writing code and start thinking "this task I'm doing is pretty formulaic and constrained-- it should be automatable someday, even if we haven't figured out how yet." Examples: 1. I memoized the arguments for a util function. Repeat this on the very similar functions defined alongside it. 2.…

When is it better to solve those problems through the organization of your code rather than an autocomplete feature? The things you mentioned all seem to yield to the decorator pattern. Creating the right abstraction (instead of using autocomplete) would benefit future collaborators who may not have access to the same autocomplete functionality.

The GP wanted to repeat some code modification 2-6 times. At that scale, adding abstractions often just adds unnecessary indirection and makes the code harder to read.

Re: AI-Powered JavaScript Completions

#55

Earlier quoted context omitted.

I guarantee your opinion of AI-based autocomplete will change if you try it for a week. It's completely different than anything heuristics-based. In fact, it often suggests complete English phrases when I'm writing prose that are contextually relevant and grammatically valid (which makes sense, it uses GPT-2 under the hood I think). It's crazy how good it's gotten over the last few years. I recommend TabNine but mayb…

Your comment convinced me. I just downloaded the TabNine extension for VS Code and started using it for the work I'm doing (Python). I tried it for about 10 minutes, but had to disable the extension. Two reasons: 1. My editor no longer brought up the useful function signature hints for library methods I wanted to call, which is really annoying. 2. There was a noticeable increase in lag from when I hit a key on my key…

1. the priority order of popup hints is customizable in VSCode I believe. Unfortunately, I use sublime so I'm not sure of the exact fix in VS, maybe someone else can chime in with their experience here.

2. I haven't encountered this in SublimeText other than when I first open a large new project for about ~30sec, maybe it's trying to index a large project folder? I know you can set up restrictions on the folders it tries to index to make sure it's not going wild on your whole home folder by accident.

Check out https://www.tabnine.com/faq/#magic_strings and maybe try playing around with some of those config options?

Re: AI-Powered JavaScript Completions

#56

Earlier quoted context omitted.

When is it better to solve those problems through the organization of your code rather than an autocomplete feature? The things you mentioned all seem to yield to the decorator pattern. Creating the right abstraction (instead of using autocomplete) would benefit future collaborators who may not have access to the same autocomplete functionality.

The GP wanted to repeat some code modification 2-6 times. At that scale, adding abstractions often just adds unnecessary indirection and makes the code harder to read.

Depends on how often they intend to make changes to that code. But in general I think you are right.

Re: AI-Powered JavaScript Completions

#57

Earlier quoted context omitted.

Your comment convinced me. I just downloaded the TabNine extension for VS Code and started using it for the work I'm doing (Python). I tried it for about 10 minutes, but had to disable the extension. Two reasons: 1. My editor no longer brought up the useful function signature hints for library methods I wanted to call, which is really annoying. 2. There was a noticeable increase in lag from when I hit a key on my key…

1. the priority order of popup hints is customizable in VSCode I believe. Unfortunately, I use sublime so I'm not sure of the exact fix in VS, maybe someone else can chime in with their experience here. 2. I haven't encountered this in SublimeText other than when I first open a large new project for about ~30sec, maybe it's trying to index a large project folder? I know you can set up restrictions on the folders it t…

Thanks. Will give it another go.

Re: AI-Powered JavaScript Completions

#58
post #43
post #11

I've been using https://www.tabnine.com/ for similar AI/deep learning autocompletion, highly recommended.

I bought TabNine back in 2018 used for a while and stopped, now I see it's a subscription service. Anyone still using the old version? Is it still working?

(Dror from TabNine here) If you're lucky enough to have bought the perpetual license for TabNine back in 2018, you don't have to purchase a subscription as all perpetual licenses are honored! Just reach for support@tabnine.com if you need help.

Re: AI-Powered JavaScript Completions

#59
post #13

Any reason to use this over TabNine[1]? I’ve been using that for months, and only have good things to say about it. It’s like it’s reading your mind. Strong recommendation. 1: https://www.tabnine.com

Off-topic maybe, but do you feel the any kind of lag with TabNine. I've dropped using it after a month as its slowed down my editor.

Dror from TabNine here. We've introduced some big improvements in TabNine's resource consumption in the last few weeks, and there's more to come. In addition, TabNine's Professional version (free trial available) lets you use our GPU cloud servers which means dramatically reduced load on your machine.

Re: AI-Powered JavaScript Completions

#60

Having tried Kite a few years ago, and then TabNine, I ended up sticking with TabNine. The thing that convinced me in the end was that Kite had a super heavy editor integration UX that needing a constantly-running Electron "copilot" app, even uploading some of my code without clearly asking for consent first. This has maybe changed now, but at the time that was my impression. Meanwhile, TabNine has almost no UI, it's…

Thanks for the thoughtful message! We hope you'll give Kite another shot. We're always improving it and have covered a lot of ground in the last few years. In particular, a common complaint about TabNine on Twitter is that it's heavyweight. Based on our comparisons of today's Kite versus today's TabNine, we believe Kite uses less CPU/battery, and far less memory. (My teammate dhung posted a longer comment about TabNi…

To clarify, my complaints about Kite being heavyweight are 90% about the UX flow being heavy, not the CPU/RAM usage.

Kite seems to require a background daemon, Electron copilot app, and editor plugin, with a multi-step setup to customize what things are shown on hover vs ctrl+space vs tab. By comparison, Tab Nine was a single command to install in SublimeText, and I have never had to interact with it since other than pressing "tab". It seems to be completely language-agnostic with no additional setup as well.

FWIW, here are a few pain points from trying Kite today:

- Kite is a 1GB download vs TabNine's 64mb

- Kite Engine is using 300MB of RAM on my machine right now, and I don't have a single editor open, and there's no way to stop the daemon in the UI

- "sending usage metrics" is on by default in the preferences :/ this is really scary to someone who remembers Kite's issues with code exfiltration and telemetry in the past, haven't ya'll learned that lesson? I had hoped all of that stuff was disabled these days but I guess not.

- there is no uninstall option provided, and you cannot delete the .app on macOS because "the application is in use", yet there is no UI to stop or diasble the daemon anywhere, do I really have to manually `pkill kite; rm -RF /Applications/Kite.app` to remove it?

- Your "Start free trial" link on the homepage appears to redirect to forms filled with real user email addresses? Who do those addresses belong to, are you leaking your users emails? [screenshot link redacted]

Post reply on HN