Slashdot Mirror


AI-Driven Python Code-Completion Tool 'Kite' Attracts $17M In Investments (venturebeat.com)

An AI-enhanced tool that suggests code snippets for Python developers in real time just raised $17 million in VC funding to expand its R&D team "with a focus on accelerating developer productivity."

An anonymous reader quotes VentureBeat: "Our mission is to bring the latest advancements in AI and machine learning (ML) to make writing code fluid, effortless, and more enjoyable," explained [founder Adam] Smith. "Developers using Kite can focus their productive energy toward solving the next big technical challenges, instead of searching the web for code examples illustrating mundane and frequently repeated code patterns...."

Instead of relying on the cloud to run its AI engine, Kite now runs locally on a user's computer, letting developers use it offline and without having to upload any code. (Kite still trains its machine learning models with thousands of publicly available code sources from highly rated developers.) Furthermore, running locally allows Kite to fully operate with lower latencies... In addition to ditching the cloud, the new version of Kite brings a feature the team calls Line-of-Code Completions. Until now, Kite's machine learning models could only suggest the next "token" in a line of code. Line-of-Code Completions can complete entire function calls with a single keystroke... The team boasts that Kite is "the only developer product on the market to offer such advanced completions."

"Today, Kite is used by more than 30,000 Python developers worldwide," reports VentureBeat, adding it locally-based ML plugin is available for top Python IDEs including Visual Studio Code, Atom, Sublime Text, PyCharm, IntelliJ, and Vim.

Kite's investors include the CEO of GitHub, as well as the founders of Dropbox, Paypal, and Twitch.tv, and the company hopes to eventually support more languages, starting with either Java, JavaScript, or Go.

12 of 87 comments (clear)

  1. The concept seems great by SuperKendall · · Score: 2

    Code completion these days generally works pretty well - but only for matching single words or method signatures.

    It would be really interesting to see the result of something that jumps beyond mere pattern matching for a single element and into the realm of suggesting real code completion, like filling out a lot of boilerplate, or even dare I say suggesting completions for variable names you had not yet even entered.

    We all know that old phrase that the two largest problems in computer science are cache invalidation... and naming (and off by one errors as the old joke goes). What if completion was helping your naming to be semantically consistent, or helping train a younger developer in coming naming approaches? Is there any kind of code completion today that does that?

    What would be greta to see is some kind of open source effort around all this before AI code helpers are lost behind a thicket of patents.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:The concept seems great by Anonymous Coward · · Score: 2

      What would be greta to see

      Your post is just a lot of garbo.

  2. So they can be even less competent? by gweihir · · Score: 3, Insightful

    This seems like s very, very bad idea, for multiple reasons.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    1. Re:So they can be even less competent? by Rick+Schumann · · Score: 3, Insightful

      Agreed. My first thought was, "Oh, great, so we can have the coding equivalent of mobility scooters?" If you're using it as a learning tool then great, but if you're relying on it to actually get your job done then I'm far from impressed. Also while Python is vast and strange it's not like it's difficult to learn, being easy to learn is one of it's main features, so if you really need some 'AI'-driven tool to get your work done, then I question why it is you're involved in any programming tasks at all.

    2. Re:So they can be even less competent? by TechyImmigrant · · Score: 2

      And that is just it. Whoever needs such help should stay away from coding in the first place.

      I'll try it. I'm not insecure about my programming. Maybe it's nice to use.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
  3. Useful? by fbobraga · · Score: 2

    Code-completion is very good nowadays, with almost any editor (https://atom.io/ is a very good one...). More than this is needed? To what? Generate lazy and bad programmers?

    1. Re:Useful? by PolygamousRanchKid+ · · Score: 3, Interesting

      Generate lazy and bad programmers?

      Well, executive folks will think that they don't need to pay high rates for good, experienced programmers any more.

      A lazy bad programmer with AI-Driven Code-Completion paid at lower rates is just as good as an experienced programmer.

      I remember seeing this in the late 80's . . . everyone was raving about CASE: Computer Aided Software Engineering. I remember hearing management folks saying back then that programmers wouldn't be needed any more.

      --
      Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
  4. Did you not realize by SuperKendall · · Score: 4, Interesting

    More than this is needed? To what? Generate lazy and bad programmers?

    That is the biggest contradiction I have ever seen typed.

    The truth is, as I and many others have learned over decades - the absolute BEST programmers are the laziest ones.

    A lazy programmer will spend vast amount of time determining a way to do something that involves less work, to build systems so that they need the least maintenance.

    A "dumb" programmer will look for the most modern way to do something, not assuming that they know the best way just because they have worked on something before.

    I am not just talking about saving you time, but tools that help keep you on track with your own ideals on how you want to program and name things. A system that could recognize how you've approached a problem before, and suggest starting with a similar approach - or maybe something new if the industry had moved to a different current best practice.

    After all, a lot of us use not just stack overflow but turn to looking over older code bases to review problems we think we solved really well before. Why would you NOT do that - again, lazy but it really helps code quality. An AI could spend the time during through your old approaches and Stack Overflow and journals to find something novel that might be a good idea.

    We always rightfully scoffed at tools that would replace programmers, but what should not be scoffed at is any use of technology that can augment humans by automating ANYTHING they do repetitively - and programming research is one of those things.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  5. So...Clippy for python? by karlandtanya · · Score: 4, Funny

    Hi, there; it looks like you're trying to download programs to some industrial controllers...Would you like help with that?

    --
    "Reality is that which, when you stop believing in it, doesn't go away." - Philip K. Dick
  6. Correcting intelligent completions is difficult by ziggystarsky · · Score: 4, Interesting

    If my completion is predictable, I know what I have to type without looking at the screen.

    If it is smart, I must always check if what I want to do is in the completion list.

    If it is too smart, it will propose complex completions, that are correct 80% of the time, and look correct 90% of the time at first glance.

    The "typos" I make today with smart typing correction in my smart phone look to other people like correct sentences. It's just confusing. No one can guess what I meant to write.

  7. Re:MOAR autocomplete hell by phantomfive · · Score: 2

    I have given up the fight against the autocomplete function on my smartphone already. There is no way to turn it off.

    You can install an alternative keyboard that doesn't have auto-complete. If you want more specific advice as a shortcut, on Android, install the Korean keyboard (and of course only use the English half). It will give you suggestions in the top bar, but won't automatically complete anything for you unless you gesture for it.

    If you are very picky about what you want the keyboard to do, then you can always build your own.

    --
    "First they came for the slanderers and i said nothing."
  8. Kite, the spyware (err, "telemetry") company? by janoc · · Score: 4, Informative

    FYI, this is the same company that took the 3rd most popular add-on for SublimeText and silenty added ads and spyware (err, telemetry) to it.

    https://qz.com/1043614/this-st...

    https://forum.sublimetext.com/...

    Sounds like someone who you want to trust with your company's source code, indeed.