Live data from Hacker News

Show HN: TabNine, an autocompleter for all languages

tabnine.com

131–140 of 193 posts

Re: Show HN: TabNine, an autocompleter for all languages

#131
post #39

Earlier quoted context omitted.

Typing an 'r' is faster than clicking on "work" then backspacing.

That can lead to ("Work", "Worry", "Word") so you'd then have to type the 'k'. Now you could have ("Work", "Worker", "Worked") and still are missing the variant you want. It'd be nice to long press "Work" at step one, get that completed without a space being inserted, then tap 'i' to get ("Working", "Workings", "Workingmen")

It turns out that iOS prediction will make a provisional guess based on what you typed and will go back and adjust its autocorrections as you type subsequent words. You can see this more clearly if you use dictation, but allegedly it won't do as well if you use the word corrections every time.

Re: Show HN: TabNine, an autocompleter for all languages

#132
post #115

Played with free for a bit, 200KB is quite a bit low, didn't get any completions. Purchased the premium licence. Gotta say stripe integration is very smooth. Overall after a couple of hours of playing with this. My mind is quite blown away. This is absolutely amazing. Hopefully Microsoft or someone acquires this technology for a fat sum and open sources it. I've thought about code completion smarts for a long time. Y…

I don't get the jump from "didn't get any completions" to buying the premium license. Can you explain?

I suppose because it's worth trying and the price is not unreasonably high. But the 15MB indexed limit to me seems strange on premium, as others have mentioned.

Re: Show HN: TabNine, an autocompleter for all languages

#133
post #78

Earlier quoted context omitted.

Does npm not have version pinning? Why would you want to operate as if you didn't have a package manager, as your default behavior?

Depends on if you want to bother setting up Artifactory. The problem with having your dependencies outside of your project directory is you're now relying on a network request and a build step to get your stuff up and running. It's obviously not right for every project, I wouldn't classify it as default behavior or even a standard behavior. But if you're already using Vagrant/Docker to standardize environments across…

Afaik, Most language communities with a package manager are fine with the network request, since it should really only occur on initial pull, and library updates; not sure what they do with vagrant, but i imagine just keeping the libs locally and copying it in on vagrant build.

Eg in pythonland, I’m pretty sure I’ve never seen a repo with packages stored in the repo.

So what happened in jsland that makes the difference?

Re: Show HN: TabNine, an autocompleter for all languages

#134
post #115

Played with free for a bit, 200KB is quite a bit low, didn't get any completions. Purchased the premium licence. Gotta say stripe integration is very smooth. Overall after a couple of hours of playing with this. My mind is quite blown away. This is absolutely amazing. Hopefully Microsoft or someone acquires this technology for a fat sum and open sources it. I've thought about code completion smarts for a long time. Y…

Did you see much improvement in the suggestions after purchasing and using the larger index?

Re: Show HN: TabNine, an autocompleter for all languages

#135
post #108

Earlier quoted context omitted.

Theoretically we don't even need programming languages or compilers at all. REAL programmers used a magnetized needle and a steady hand. [1] Following your logic, nobody should show appreciation for anything. [1] https://xkcd.com/378/

I meant he could have said: "Because I love Rust, I'm giving this for free to be used in Rust codebases", instead of "this would never exist if not for Rust". Or maybe he's serious, maybe the Rust ecosystem literally saved him from death or something like that.

The saying is perfectly standard and meaning has been granted equivalence to your alternative, through common usage. It’s really not a point worth making, or arguing.

Alternatively you could read it as “I wouldn’t have bothered doing this if rust wasn’t there.”

Re: Show HN: TabNine, an autocompleter for all languages

#137
post #133

Earlier quoted context omitted.

Depends on if you want to bother setting up Artifactory. The problem with having your dependencies outside of your project directory is you're now relying on a network request and a build step to get your stuff up and running. It's obviously not right for every project, I wouldn't classify it as default behavior or even a standard behavior. But if you're already using Vagrant/Docker to standardize environments across…

Afaik, Most language communities with a package manager are fine with the network request, since it should really only occur on initial pull, and library updates; not sure what they do with vagrant, but i imagine just keeping the libs locally and copying it in on vagrant build. Eg in pythonland, I’m pretty sure I’ve never seen a repo with packages stored in the repo. So what happened in jsland that makes the differen…

Python installs its packages system-wide with pip, so you'd never be able to commit those. The default for Ruby gems is also system-wide (although it seems like members of the community are starting to shift away from that).

Node installs packages locally to the project itself. This was partially a direct response to languages like Ruby and Python; the early community felt like system-wide dependencies were usually bad practice. So you can install packages globally in Node, but it's not the default.

When you move away from global dependencies to storing everything in a local folder, suddenly you have the ability to commit things. And at the time, there weren't a ton of resources for hashing a dependency; managers like Yarn didn't exist. So checking into source turns out to be an incredibly straightforward answer to the question of, "how do I guarantee that I will always get the same bytes out?"

People are free to fight me on it, but I would claim that this was not particularly controversial when Node came out, and it is a recent trend that now package managers are advising Orgs to just use lockfiles by default. Although to be fair, a lot of the community ignored that advice back then too, so it's never been exactly common practice in Open Source JS code.

Re: Show HN: TabNine, an autocompleter for all languages

#138
post #135

Earlier quoted context omitted.

I meant he could have said: "Because I love Rust, I'm giving this for free to be used in Rust codebases", instead of "this would never exist if not for Rust". Or maybe he's serious, maybe the Rust ecosystem literally saved him from death or something like that.

The saying is perfectly standard and meaning has been granted equivalence to your alternative, through common usage. It’s really not a point worth making, or arguing. Alternatively you could read it as “I wouldn’t have bothered doing this if rust wasn’t there.”

[deleted]

Re: Show HN: TabNine, an autocompleter for all languages

#139
post #78

> TabNine builds an index of your project, reading your .gitignore so that only source files are included. Heads up, it's not necessarily uncommon for JS developers to include node_modules in their git repos. If you're developing something like an Electron project or a website instead of a library, it's even sometimes advised to do so -- there's a line of thought that your static dependencies should be tracked as par…

Does npm not have version pinning? Why would you want to operate as if you didn't have a package manager, as your default behavior?

At one point, it did not, and the default behavior when one did npm install was to use quite permissive packages.json rules that allowed minor and patch updates. I remember being bitten by this a few times years ago, particularly when semver was more poorly understood.

Re: Show HN: TabNine, an autocompleter for all languages

#140
post #108

Earlier quoted context omitted.

Theoretically we don't even need programming languages or compilers at all. REAL programmers used a magnetized needle and a steady hand. [1] Following your logic, nobody should show appreciation for anything. [1] https://xkcd.com/378/

I meant he could have said: "Because I love Rust, I'm giving this for free to be used in Rust codebases", instead of "this would never exist if not for Rust". Or maybe he's serious, maybe the Rust ecosystem literally saved him from death or something like that.

Ah, got it! You were being literal and he was not. That's where the confusion is coming from. Your comment came across as mildly aggressive which is probably why you're getting downvoted, but you were just pointing out that what he said made no sense in literal terms which is true.

I don't think it was intended to be interpreted literally. The intent and the feeling behind what he was communicating was represented clearly.

Post reply on HN