
Kite launches line-of-code completions, goes cloudless, secures $17M in funding - adamsmith
https://kite.com/blog/launching-line-of-code-completions-going-cloudless-and-17-million-in-funding
======
adamsmith
Adam for Kite here. We learned a lot over the past year and have worked hard
to build several new features to Kite based on detailed user feedback (much of
which came from the HN community). We're excited to release two new features
of special importance today:

* Line-of-Code Completions - Kite's completions engine can now predict several tokens of code at a time, powered by the most sophisticated AI code models available.

* Cloudless Processing - Kite now performs all processing locally on users' computers, instead of in the cloud. No need to upload your code to our servers. You don't even have to sign up for a Kite account.

We know privacy is a big concern for users, so that's why we decided to bring
Kite off the cloud. You can learn more about this decision as well as the full
Kite release on our blog post, linked here.

Our core belief is programmers spend too much time on repetitive work like
copying and pasting from StackOverflow, fixing simple errors, and writing
boilerplate code. That's why Kite uses AI to make writing code less repetitive
and more fun.

Speaking of fun, we've set up a playground for you to try our Line-of-Code
Completions out in your browser. We hope you enjoy it!

As always, Kite is free to download and use. And we no longer require user
accounts now that we've moved off the cloud.

If you already use Kite (thank you for your support!), you now have these
features via auto-update.

We're really looking forward to your feedback. The detailed feedback we've
received in the past has been immensely helpful in getting us to this point.
We'll be here all day to answer questions, too.

~~~
cjhanks
"Our core belief is programmers spend too much time on repetitive work like
copying and pasting from StackOverflow, fixing simple errors, and writing
boilerplate code."

Sounds like you will likely be introducing bugs into people's code. Or at the
very least, regressing code quality towards the mean.

~~~
adamsmith
Kite aside, I think both of these things will happen as developers adopt these
technologies. We're seeing similar effects with autocorrect on your phone and
self driving cars (i.e. there will still be accidents, and they tend to drive
more slowly), but on balance these technologies are positive.

~~~
thecatspaw
For me autocompletion is the second thing I turn off on a phone (right after
vibrate on touch). There is nothing more annoying than writing a word
correctly, and autocomplete "fixing" it, just because it was slang word, or a
word in another language because I forgot the english word in that moment.

~~~
LeifCarrotson
A lot of that is because the minimal phone keyboard doesn't give you a good UI
to accept or decline a suggested autocompletion.

With a keyboard and mouse and large monitor, you can display the completion
prompt and let the user select or ignore from the various options with Ctrl-
Space or similar.

When "Select the first autocomplete over what I typed" is the default
behavior, yeah, that sucks. I often end up using the "key combo"
Space,Backspace,Space to accept the autocomplete on my phone.

But I definitely see utility in offering a correction for, eg.
'DateTime.Format("yyyy-mm-dd" -> yyyy-MM-dd' or any of the million other
idioms that we have to remember or look up. What I don't understand is how
Kite can offer useful local-only suggestions - Is the default dictionary that
comes with it preloaded with a million lines of open source, or is it
literally just my code being suggested?

------
bfirsh
To those thinking of using this service, you might want to read this first:
[https://theoutline.com/post/1953/how-a-vc-funded-company-
is-...](https://theoutline.com/post/1953/how-a-vc-funded-company-is-
undermining-the-open-source-community?zd=1&zi=kieikhri)

Discussion:
[https://news.ycombinator.com/item?id=14836653](https://news.ycombinator.com/item?id=14836653)

~~~
TACIXAT
tl;dr Kite hired a developer for an Atom plugin and promoted themselves in
this plugin. Kite acquired an autocomplete plugin and switched the engine to
use their own.

IMO, the devs have the freedom to do whatever they want with the code they
maintain. If the users don't like it someone can fork and maintain their own
version.

>Is a $4 million venture capital-funded startup stealthily taking over popular
coding tools and injecting ads and spyware into them?

Ads? Yea, I guess you can call cross product promotion an ad, but it's far
from flashing banners up for sale on ad exchanges. Spyware? Hardly. A service
uploading data and responding with results is a perfectly legitimate
interaction.

~~~
thecatspaw
In a corporate environment this may lead to accidential violations of
Contracts. Usually code isnt allowed to leave the corporate network. So one
day poor joe updates his favourite autocomplete plugin, the next day he
violated a contract

~~~
TACIXAT
An organization with those requirements should be careful which tools they
use.

------
kozikow
How come JetBrains didn't raise bazillion VC dollars, while their code
completion and tools like refactoring are the best option for most popular
programming languages?

~~~
flipp3r
They've even put Jetbrains' IDE at the bottom of the "Staircase of
intelligence" in their little infographic... I'm not sure if developers
familiar with those tools can take this company seriously (especially given
what they've done previously.)

I wonder what their look on say, IntelliJ, is.

~~~
thecatspaw
My primary experience is with Intellij, though most of their IDE's behave
similarly.

Im not sure what advantage I'd get with kite.

Often I'd start using a class in the code, and then ask intelliJ to import it,
rather than going to the top, and use the autocomplete tool. It can do
patterns as well, even custom defined ones, with default values
([https://www.jetbrains.com/help/idea/using-live-
templates.htm...](https://www.jetbrains.com/help/idea/using-live-
templates.html))

------
foobiekr
I acknowledge that this will be unpopular, but ...

Those of us who are fossil grumpuses already think IDEs often allow people to
write code they don’t think enough about with the idea that issues will be
caught by someone else in code review. This, at least, is what I’ve observed
over the last few years.

Something that writes the code for people and people basically “code” by doing
a series of micro-code-reviews seems really crazy to me for any application
that isn’t just fluff. Just look at what autocorrect has done to average
incorrect-words-per-sentence. One of the problems with predictive text
generation in general is that in isolation the output can seem very sensible
even if it’s gibberish.

So as an IDE skeptic in general, I’d be very curious to try this tool out, if
only to see how they deal with that.

[I spent years and years using VC++ and other tools and it was actually this
feeling of not really knowing anything that drove me away from it.
Etags/Cscope/Grey/actually-reading-code was what I replaced it with..]

~~~
ehsankia
As pointed above by the other comment, autocorrect's issue is that it
sometimes forces a correction on you (unless you disable that). On the other
hand, there are many words I could never dream of spelling correctly without
looking up, but that I know get perfectly. Sadly, you don't notice those, but
only notice it when it goes wrong.

Similarly, imagine going to type a common piece of code such as `if __name__
== '__main__':` or `def __init__(self):` at the start of a class, and have it
automatically suggested. Obviously you can manually create snippets for each
one of these, but that's much more effort.

I can see an interface similar to Gmail's new smart completion, or fish shell,
that just shows you a suggestion in the background.

[https://asciinema.org/a/37390](https://asciinema.org/a/37390)

~~~
dullgiulio
Gmail smart completion is more akin to a template, like giving you an empty
class or an empty main function. Its utility (at least in my experience)
hasn't gone much farther.

The example you link (from Zsh, not fish) is a fancy looking history
autocompletion: in bash, just press Ctrl+r.

The parent has a point: I've spent time working with absolute beginners in
programming and the first thing I was teaching them was to ignore the IDE
"smarter autocompletion" and suggestions. For typing faster, sure; for
suggesting anything else, not so clever.

~~~
ehsankia
Just a correction, my example was from a zsh plugin which imitates a built-in
fish feature. Also, said feature is different from ctrl+r, which all 3 shells
still have.

This one suggests possible completions as you type, so it's a passive feature,
compared to ctrl+r which is more active and requires explicit action to work.

And yes, I agree that the whole purpose is to write faster, not to write
smarter. I'd maybe add cleaner too, because unless you auto format your code,
people often don't write the best by default.

------
ken
In all my years programming, there's been only one feature that I've seen that
I consider The Killer Feature of Autocomplete, and I've only seen it in one
editor: Emacs.

I don't want to complete with all the other code everybody else in the world
has written. I want to complete with the words I wrote in a comment 3 lines
ago. Or my README I've got open in another window. Or the JSON config file I
was editing. That's my litmus test: can it autocomplete from _all_ my other
text? Kite can't.

I played with this online demo, and I actually found it pretty frustrating. It
kept trying to replace what I was writing with snippets that other people,
apparently, had written. I guess that could be useful when trying out a new
library, but the rest of the time, it's just going to get in my way.

------
FlyingLawnmower
Can I ask what your business model or pathway to monetization is?

Thanks for making it run locally, I can finally give it a real try now.

~~~
adamsmith
We'll monetize through the enterprises. We've had lots of conversations with
larger companies and it's clear that engineering time is really precious to
them, as is shipping faster. We're not really sure how to mechanize charging
enterprises yet. When we had a freemium offering we didn't like that e.g.
students didn't get all the features. Github had an elegant approach with
their approach of charging for private repos. Maybe Kite is paid if you're
working in a repo that's not open source and has lots of active contributors.
Would love any ideas!

~~~
save_ferris
You've raised millions and you're spitballing monetization ideas on an
internet forum?

Look, I'm all for second chances here. The past behavior of this company
doesn't concern me as much as the pretty clear lack of strategy around how you
plan to make money.

So this is what I've gathered so far (and correct me if I'm wrong on any of
this):

\- free product (based on the website)

\- no serious mention of enterprise pricing or support (based again on the
website)

\- a promise in your TOS not to collect sensitive data (which almost all
companies tend to modify, let's be honest)

\- solicitation of monetization ideas on an internet forum by the CEO, having
raised millions from VCs

This sounds like a product I'd stay away from if I cared about data
collection.

Can you quantify how much money you're saving developers or companies who use
this?

------
hyperpallium
> Line-of-Code Completions - Kite's completions engine can now predict several
> tokens of code at a time

I can predict several weeks of stock prices... not very well.

Shannon had an estimation method: ask people to guess the next letter in text,
to find its information content. (Assuming people have a perfect model of text
- probably, today, with billions of samples, machines might be better?). Could
do this with program text, to bound the benefit.

loc completion is a great idea, might work well with idioms, especially if it
can figure out the likely parameterization (e.g. in a for(;;) loop). I reckon
this approach will no where near realize its promise... but will
serendipitiously reveal unexpected adjacent benefits.

Also reminds me of that joke tool that automatically finds and pastes
Stackoverflow code.

------
orliesaurus
Can you also add a feature where my code is analyzed by a
community/individuals for $/month if I wish to submit it? Sometimes as a dev,
you get stuck or need to do refactoring & need help. Glitch has a community
feature like that - but it would be amazing to build a team of experts paid to
unstuck fellow devs - on top of a tool like kite; esp because you can then use
that data for building a better suggestion engine.

~~~
csteubs
I've used a tool similar to what you've described here called
[https://www.pullrequest.com/](https://www.pullrequest.com/) for code review,
though it's fairly new IIRC and not cheap.

~~~
make3
200$/h for the cheapest option O.o

------
blunte
No way. I already spend nearly as much time double checking code completion as
I save being able to tab my way thru a line of new code.

Also, anyone pasting most of their code from SO is doomed already, and smart
code completion isn't going to make them successful.

Is this Grammarly for "programmers"?

------
sandGorgon
> _Kite doesn 't support Linux yet, but coming very soon._

Quick suggestion - can you support a Docker based install ? Vscode now support
remote debugging through docker, etc. I'm not sure about your architecture,
but im wondering if this isnt something that you can do

~~~
rootlocus
How would that work? Docker is based on container technology inside the linux
kernel. Docker on mac and windows uses virtual machines to provide a linux
kernel. If Kite doesn't support linux, how would their technlogy work inside a
container, which is an isolated linux environment?

~~~
sandGorgon
well Kite's server side is presumably linux (most people's are). Pretty sure
that they had to re-engineer _specifically_ for Windows and OSX on their
native APIs.

Instead, only engineer for Linux and make it available through Docker on all
platforms. Since VSCode exposes hooks to interact with Docker anyway, this
might make more long term sense.

------
mesozoic
So very impressive if you want to type exactly what they recommend in the demo
app. And what's the copyright on that auto completed code?

------
bretpiatt
If anyone from Kite here readying your site fails to load with Brave browser
(on Windows 10) with Shields Up. Both the homepage and the blog post.

"Huh... that's weird Something unexpected occurred. We'll investigate what
happened"

------
romeisendcoming
Seemed lackluster to me. Adding code in a literally defined data structure
failed to complete anything. with open() as f: ll = [f.(no help from here on
out)]

------
jakecopp
Is there any way of using Kite in Sublime Text with Vintage mode, so that Kite
doesn't capture the Esc keypress?

It makes Vintage mode unusable.

------
hartator
How is that different than tab9? From what I remember it’s one guy and it’s
already working for VSCode and Sublime.

------
aliswe
How come its only for Python?

~~~
tyingq
Looks like the plan is to support more than Python:
[https://kite.com/letmeknow](https://kite.com/letmeknow)

~~~
adamsmith
Yes, because we use deeply semantic information about code there is some
engineering work to build support for other languages.

So we took the approach of focusing on one demographic (Python developers) and
making them really happy. We think we've reached that point, so we're excited
to begin looking at how we can expand our reach. Stay tuned!

~~~
erichurkman
Does "really happy" include injecting your ads into our editors by hijacking
open source projects? Because that makes me really unhappy.

~~~
AlexMoffat
Ah yes, now I remember where I'd heard about kite.

~~~
aliswe
Dunno if I should enter this seemingly infected argument, but I only now read
up a bit on it: [https://qz.com/1043614/this-startup-learned-the-hard-way-
tha...](https://qz.com/1043614/this-startup-learned-the-hard-way-that-you-do-
not-piss-off-open-source-programmers/)

While I agree with your sentiment that the changes were intrusive, from the
article they weren't actually ads in the strict sense. No Ugg Boots or Rolex
Replicas. They were helpful links to knowledge articles or documentation, from
what I gather.

Could be wrong though.

That's gotta be a tough position to be in, having raised ~ a lot of money and
having the pressure to do a suboptimal move to please the investors.

------
cwkoss
Demo doesn't seem to work.

