5 ms·
You have to understand the code the AI emits, to be able to check if it's done what you wanted. That's sometimes more challenging than writing it yourself, as i
by nitwit005 3y ago
You have to understand the code the AI emits, to be able to check if it's done what you wanted. That's sometimes more challenging than writing it yourself, as it may use features you're not familiar with.
Which is not to say it can't be useful, but don't expect a cure all.
- IanCal 3y agoWhat they're describing is dealing with a person who already doesn't understand what their code does.
- mettamage 3y agoReading code is easier than starting from scratch. Not sure how that is for a researcher though, just my SWE perspective
- sdenton4 3y agoThey're different kinds of easy... Writing fresh code is easy because you just express your ideas. What's hard is hitting all the contingencies appropriately; it can take years of 'burn in' to get right. Reading code is easy - especially if you don't know the language well - because someone has already assembled all the correct syntax, etc. What's hard is that the code may be convoluted from years of monkey-patches to handle all those inconvenient contingencies, to the point of obscuring the core ideas. eg, making you search through ten nested indirections to figure out how something actually executes... On the writing side, LLM's make it much easier to have the idiomatics of the language easily on hand. (eg, I never ever remember the exact way to use 'super' in python... but ML assistance is happy to fill in the parens as soon as I start them.)
- bamboozled 3y agoNot really, reading existing code is hard because you have to be on guard that your bias isn’t skewing your judgement about what’s going on. What I’m getting from these comments is (as expected), most people are happy to take the easy assumption filled route rather than actually applying rigour.
- Balgair 3y agoMy co-researcher was thrown in with the sharks on that project. He'd never even taken calculus, let alone any form of coding class. And this was Matlab, by the by, a language that not only holds your hand, but chews your food for you too. He never really groked matrices either. We were a neuro lab, so coding was seen as something similar to a hammer: Bang away with it all you want, but at the end of the day, it's going back in a dark drawer where it belongs with the other tools.
- block_dagger 3y agoI think the gap is quickly narrowing on the need to fully comprehend most computer programs for most use cases, especially if bugs and changes can all be managed through natural language by the primary stakeholders.
- LabMechanic 3y agoI think the gap is quickly narrowing on the need to fully comprehend most computer programs for most use cases, ... What makes you assume that current "AI" "comprehends"? I wish it could, but it appears not to. As an example, ask it to code up something from a "less popular domain" (e.g., Clifford algebra). You might notice that it appears to not have enough data to make good guesses. Some "AI" hype folks appear to move the goalpost then. However, maybe the stock market and some companies benefit from all this sensationalist stuff. I wish I had a HAL 9000 beside me, but I am sorry Dave, I cannot let you do that.
- CamperBob2 3y agoName one thing that HAL 9000 did that current LLMs can't do (for better or worse). We are basically at the point where we could build the fembots from Ex Machina or David, the little boy from A.I., if we were just a little better at robotics. We'll see the teddy bear Supertoy from the latter movie under peoples' Christmas trees inside five years.
- LabMechanic 3y ago> Name one thing that HAL 9000 did that current LLMs can't do (for better or worse). The ability to reason or understand seems to be not there in current LLMs. See my other comment: https://news.ycombinator.com/item?id=38819544 https://news.ycombinator.com/item?id=38819544 Simply put: "fake it 'till you make it" = probabilistic guesses given a large data set = seems to fool us people believing that an LLM "thinks" and "reasons".
- CamperBob2 3y ago
- mycall 3y agoThis is where AI agents will shine as you give it the test cases it needs to meet and it will write the code to that specification AND verify those through writing unit tests, executing the code then verifying the results. English as a programming language makes this all work.
- bamboozled 3y agoYou have to know how to write useful test cases to know it works, etc Some of the comments here actually freak me out.
- Balgair 3y agoI'd think you'd be positively appalled by the state of code in academia then. It's kludge after hot patch after voodoo incantation. I once worked on a computer that under no circumstances could it be put on the web. It was running Windows 98 in ~2017 and was only used for a single program to control an instrument. I know for a fact that it's still online and running. It was slow as all get out, but no one had any kind of time, let alone gumption, let alone skill, to try to bring it up a millennium.
- aragilar 3y agoMost academic code is written fairly naively (it's usually the code that's written by people who have some idea and try to be "smart" that's a problem), and so can be cleaned up and made maintainable pretty easily. If AI causes more "smart" code to be written, that's going to make things worse. On old hardware/software, that's normal, and will continue to be normal, simply because the value is in the instrument, and money spent trying to get the software/drivers to work on more modern systems would be better spent on buying a new and better instrument. The only way this would change is if we force all hardware vendors to fully open-source (and ideally upstream) their code (look at the whole IoT ecosystem).
- bamboozled 3y agoThis is a good point, using an LLM means that writing even more smart code is now unlocked. One still needs to find that balance between smart, functional / practical and maintainable. That’s the art of coding.