Is it just me or does anyone else see "trained neural network" and read "garbage in, garbage out"?
Pair programming? That's so 2017. Try out this deep-learning AI bot that autocompletes lines of source code for you
Talk about working smarter, not harder. A computer-science student has got the right idea, by building an intriguing code-completion tool that uses deep-learning software to finish lines of source. And while, yes, there are already a ton of source-code autocomplete tools available, this one, dubbed Deep TabNine, is said to be …
COMMENTS
-
-
-
Monday 22nd July 2019 10:31 GMT Anonymous Coward
It reminds me of a recent graduate who was let loose on Netbeans, which provides all kinds of helpful hints as to how to improve your code. Unfortunately the hints sometimes make code almost unreadable, and of course they don't take int account why something might have been done that way.
So he took a major piece of code and implemented every single suggestion. The result was interesting, but unless he went and did it to the entire codebase and then tested the entire lot, it would have been a documentation nightmare.
-
-
Monday 22nd July 2019 10:30 GMT JetSetJim
I can well imagine it being used on I/O sanitation, the AI 'thinking':
"nobody else cares to check if this string entry contains special characters, or overflows the length of a buffer, so why should I?", and then gets given Bobby Tables input strings.
All the same, an interesting project that is deserving of a pint/doctorate. I do hope someone does sensible unit testing on all the code it writes (although if it's just auto completing individual lines of code one would hope that there's a certain amount of user checking going on anyway - assuming a competent user, of course!).
-
Monday 22nd July 2019 10:47 GMT Rich 11
assuming a competent user, of course!
There'd certainly be a risk of following its suggestions without thinking too clearly about the implication of any particular suggestion. No doubt that response would be something a human could learn to cope with, and minimise, but that's still one more load to deal with in an already loaded brain. When I think of the times that I've been writing a document or email and only belatedly spotted that autocomplete/autocorrect has mangled a sentence for me, I can't help but think there's a downside it's going to take some time to get used to and learn to manage.
-
-
-
-
Thursday 25th July 2019 21:43 GMT Cederic
I fear you are misinformed (and want a cookie for resisting 'are talking shite').
"Shite, now a jocular or slightly euphemistic and chiefly British variant of the noun, formerly a dialectal variant, reflects the vowel in the Old English verb (compare German scheissen)"
-- https://www.etymonline.com/word/shit
-
-
-
-
-
Monday 22nd July 2019 11:03 GMT SVV
This is certainly the problem with the "training" approach. If he trained it looking at Stack Overflow then the tool will be useless. It would need absolutely top quality code to train it for it to be beneficial, otherwise the algorithms will inevitably skew towards the lowest common denominator of code quality. It also claims to support a suspiciosly huge and wildly different list of programming languages, so that's another reason to be very sceptical.
Whilst he's undoubtedly a very bright chap, does he understand the true nature of "good" coding at his age? For me, thinking time and good design are far more important than typing time when it comes to producing good code.
-
-
-
-
Monday 22nd July 2019 17:10 GMT jake
Re: An interesting proposition
I have discovered that explaining it in detail to my Velcro Whippet generally works wonders for my own understanding.
Grandpa once told me that he didn't mind teaching me things because whenever he did he learned something new for himself. That stuck with me. Smart man, Grandpa.
-
-
-
Monday 22nd July 2019 11:24 GMT Flocke Kroes
Re: Can I get one trained on homework assignments?
Very close to my question: What is the license for the training data?
The SCO Group spent millions of investor's dollars suing world+penguin for using code that they did not own (and wasn't in the Linux kernel anyway) and infringing patents that did not exist. Some counties have a fair use concept that might allow ripping off a small percentage of someone else's source code but that would be a fragile fig leaf to hide behind even without the certainty that something like SCO version 2 would appear.
-
Monday 22nd July 2019 11:55 GMT Anonymous Coward
Non sequitur
"Pair programming? That's so 2017. Try out this deep-learning AI bot that autocompletes lines of source code for you".
But pair programming is not mainly intended to avoid syntax errors. It's meant to help prevent (or quickly fix) errors of logic, consistency and abstraction - which still require a human mind to engage with.
-
Tuesday 23rd July 2019 09:40 GMT Mike 137
Re: Non sequitur
"kinda like a pair-programming partner."
From a specification of Pair programming: 'The best pair programmers know when to say "let's try your idea first."'
which explains a lot about the parlous quality of code. Once you're at the keying in stage, you should be long past decision on the "idea" - that's properly part of the design process.
Ever since "agile" took off we've left out the design stage entirely, instead going straight from concept to implementation, resulting in completely uncontrolled development based on the idiosyncrasies of individual coders - witness the results.
-
Friday 8th May 2020 07:51 GMT Anonymous Coward
Re: Non sequitur
Back in 2019 an actual human mind was required, but here in 2020 an agent that understands code the same way a human does, is an even better solution than a (fallible) human mind.
https://www.americaninno.com/colorado/colorado-startups/golden-startups-ai-aims-to-make-developers-more-efficient/
-
Monday 22nd July 2019 12:34 GMT Pen-y-gors
No, just....no!
Autocomplete really slows you down - instead of just letting the code flow smoothly from your brain via the keyboard to the file, you have to constantly keep checking to see what suggestions are made and pause to decide which one you want - given that the list may not include what you had in mind). Constant mental stop-start, instead of a natural flow. Of course you could just keep typing and ignore the suggestions, but that rather defeats the purpose. The way Komodo autocompletes brackets and braces is a big enough pain!
-
Tuesday 23rd July 2019 00:31 GMT ovation1357
Re: No, just....no!
Yes! This 100%!
It's not just in code editors either, it's things like 'intelligent' highlighting which insists on expanding my specific selection of some text to include the nearest word boundaries or the next quote mark, or by the likes of MS Word taking a command or code excerpt and 'helpfully' changing the quote marks to pretty (but no longer valid) ones; or auto correcting capitals or a word that happens to match its list of common mistakes. Now Gmail is trying to auto predict the next words an email... No thanks! I'm fully capable of selecting/typing what I meant thanks.
I truly wish that all these 'features' were off by default - I generally find myself having to figure out how to turn off a load of assistive nuisances.
Specific to coding I do like being able to call upon some kind of hinter that will present contextual snippets of API docs and/or the usual cscope type features, but only on demand. Anything trying to second guess what I might type next is likely to be often wrong and very distracting.
It's probably why I still use vim with a few choice plugins for almost everything.
-
Monday 22nd July 2019 15:13 GMT amanfromMars 1
Quite Perfect for a Rapid Response Unit*and Pretty Soon, One of Boris's New Toys to Tool Policy with
Your laptop may not be powerful enough to run the neural network effectively, therefore, and you can apply to use DeepTab Nine via a beta-grade cloud service, which does all the predictions in a backend and beams the suggestions to your code editor over the internet.
What's not to like? .... Something So Sublimely Appealing and Almighty EMPowering ‽ . Where now to Utilise Much Deeper and Darker DeepTab Nine Beta AI Services is one of many Journeys Journaled and made freely available to All Wishing to See what Can Easily Be Laying Itself with New Ways Immediately Available Ahead. ...... with DeepTab Nine Beta AI Services to Server and Maintain and Upgrade with Virtual Components which be Stellar Accompaniments.
And StrangeDoctorLOVE Type Terrain it can certainly be too ....... and that has Secret Special Sources and Forces Successfully Primed and Employed in Future Greater IntelAIgent Games Use too and they can leave the Mad Fields of Mud and Battle Behind in the Hands, Hearts and Minds of A.N.Others and Step Right On Into the Perfumed Garden. ? Your Heaven from Home or Your Home from Heaven ?
Have you ever had any surreal encounters with spooks? That's surely one of their favourite roots/routes :-)
-
Monday 22nd July 2019 17:35 GMT Cliff Thorburn
Re: Quite Perfect and Pretty Soon, One of Boris's New Toys to Tool Policy with
Lets hope BOJ sorts this subliminal safari in reliable rectification for all involved, whilst undoubtedly scoring much needed feathers in the cap and much needed political kudos.
Would be certainly great game play at the end of the day would it not? :-)
-
-
Monday 22nd July 2019 16:24 GMT katrinab
It looks like you are writing a computer program ...
would you like help with that?
Some things never change.
Autocompletion can be useful on occasion, for example if I type "for", it would be useful for it to prepopulate the correct syntax for a for loop in the language I am using, or if I type in a function name, it could show me the arguments for the function.
And of course, code libraries are a thing, and useful for standard things that lots of programs need to do.
Otherwise, how is it going to know what I want? Very probably the whole reason I'm writing it is because it hasn't been done before.
-
Monday 22nd July 2019 17:58 GMT Anonymous Coward
Faster train wrecks
Most people shouldn't train this AI by themselves unless they want to spew 100x more crap than they currently are. That could open up an interesting market for pre-trained AIs that help improve your coding. It won't fix architecture at this point but it might help those who struggle with basic coding tasks. As with any market, scams will follow. Imagine selling pre-trained AI to introduce subtle vulnerabilities into applications.
-
Tuesday 23rd July 2019 14:51 GMT amanfromMars 1
Re: Faster train wrecks
As with any market, scams will follow. Imagine selling pre-trained AI to introduce subtle vulnerabilities into applications. .... Anonymous Coward
I sincerely trust, AC, you aint trying to smear and peddle that as a scam whenever a vital future facility and practical utility.
That would be akin to Toxic Misinformation for Errant Misdirectiion.
-
Monday 22nd July 2019 18:56 GMT adnim
my code is often a mess
I never get a full spec, it has to be done yesterday.
It's a maze of twisty little passages that all look the same, yet produce different and occasionally the right results.
It works and seldom fails even if it is an unstructured mess that is hard to maintain (for anyone other than me)
I welcome a machine coding for me, I was thinking of sub-letting my job any ways.
Beer because it helps me care less about the shite I produce
-
-
Tuesday 23rd July 2019 08:35 GMT amanfromMars 1
Re: Wrong solution
Surely, instead of trying to replace programmers with deep learning systems, we should be focusing on replacing lawyers and politicians... .... damocles
Would it be surprising and/or understandable knowing that deep learning systems programmers are already well focussed on that particular and peculiar work in progress, damocles.
It is what is so effectively spooking current established and assumed/presumed default executive administrative operations/Remote SCADA Systems.
-