6 ms·
The Future of Programming – Interview with Richard Eisenberg
- Dudester230518 3y agoWell, that is one way to do job ads.
- jncraton 3y agoI appreciated Richard's take on AI-assisted programming: > It doesn’t remove the need to communicate precisely. ... In a sense, that’s almost the definition of what makes a programming language a programming language, as opposed to some other kind of language. There’s a precise semantics to everything that is said in that language. > With the advent of AI-assisted programming, now we have sort of a new method of communication in that it’s a communication from computer back to human. In that, you might have something like ChatGPT producing the code, but a human still has to read that code and make sure that it does what you think it does. And as a medium of precise communication, it’s still very important to have a programming language that allows that communication to happen.
- idopmstuff 3y ago> but a human still has to read that code and make sure that it does what you think it does I feel like a lot of programmers are too stuck in their work to realize that there's a huge universe of problems for which this isn't the case. If you need to build a complex web app, absolutely someone needs to validate the code, but if you just need to build a simple internal app or a script to automate something for a small business, you can just test it and make sure it does what you expect. I think the biggest benefit of natural language programming via LLMs isn't going to be for sophisticated developers; it's going to be for kinda smart businesspeople who have problems that can be solved by code. Maybe it wasn't worth the time to find a developer to solve them (if you don't have any connection to the tech industry, not only finding but also evaluating the quality of a developer is hard!) or it would've been too expensive. Now you can just fire up GPT4 and get your simple inventory tracking app or whatever it is you need built. It's like the small claims court of software development. If someone owes you $500, you can't engage a lawyer to help recover it because the cost is too high. Small claims gives people the ability to get restitution at low cost and without much sophistication. GPT4 is the equivalent of letting you solve small legal issues without bringing in a lawyer, but for programming.
- AnimalMuppet 3y agoThat was the role of Visual Basic, back in the day. And before that, it was the intended role of Cobol. It was supposed to make professional programmers obsolete. And, um, that's not the way Cobol worked out. So how will AI-assisted programming work out? Like Visual Basic, or like Cobol? I don't even have a guess. I think it's too early to tell.
- tjr 3y agoAlso Cucumber test frameworks with Gherkin syntax.
- brabel 3y agoThat was much worse because while business people were suppose to write the scenarios, programmers were still expected to actually implement all the "steps" and logic behind and pray that combining them in all sorts of way still would work.
- JimtheCoder 3y ago"I think the biggest benefit of natural language programming via LLMs isn't going to be for sophisticated developers; it's going to be for kinda smart businesspeople who have problems that can be solved by code...Now you can just fire up GPT4 and get your simple inventory tracking app or whatever it is you need built." I'm already preparing myself for the "kinda smart businesspeople" who will come to me and say... "Why is it taking you so long to fix [insert sophisticated software problem here]? I built [incredibly simple script] with ChatGPT in 5 minutes. Do you need my help?" I'm excited...
- pts_ 3y agoAnd when people start drying like with Tesla FSD then they might come to their senses. Or they might first attempt to ignore it like many people tried to downplay Covid deaths.
- zamnos 3y ago
- galoisscobi 3y agoNerd writer made an eloquent video that discusses this theme. It’s called “The Real Danger of ChatGPT”: https://youtu.be/AAwbvGywdOc https://youtu.be/AAwbvGywdOc
- seanmcdirmid 3y agoIsn’t a conversational LLM going to be really good at sussing out actual requirements from people who want software but can never really explain clearly what they want? Heck, that could be a product on its own even if never even writes one line of code.
- braindead_in 3y ago> but a human still has to read that code and make sure that it does what you think it does. Why not just write tests instead? If you have 100% test coverage, would you care about the code?
- systems 3y agowho will write the test
- braindead_in 3y agoHumans, with a lot of help from LLMs.
- thoradam 3y agoIf you're talking about coverage in the usual sense (% of lines that were executed), it's pretty much useless. Here's an example of 100% test coverage in that sense: add a b = 2 test_add = assert_equals (add 1 1) 2 A more useful definition of coverage would be the entire possible state of the program, but this is tantamount to a proof, which is a really hard problem for programs in general. Property based testing, e.g. QuickCheck[1], gets us close, but it is often hard to come up with the right properties. [1]: https://hackage.haskell.org/package/QuickCheck https://hackage.haskell.org/package/QuickCheck
- imiric 3y ago> but a human still has to read that code and make sure that it does what you think it does But an AI proficient at programming wouldn't need to spit code back to the human. It would produce binaries or usable services, and the human would refine the product also via natural language. The human would act more like a manager than a programmer, and would direct the AI towards the desired goal. The code is just the means to an end, and internally the AI would be free to use whatever machine-optimized language it wants to. Hell, it can write directly in machine code for all I care. That would be more optimal than having to produce human-readable code, and have a fallible human in the process.
- laratied 3y agoI just can't imagine we don't get a new programming language at some point that is a more precise subset of English but is closer to English than say python. I mean previously we needed absolute precision in a programming language because there was nothing to disambiguate natural language. chatGPT's ability to disambiguate natural language is unbelievable. We will figure out a way to leverage that ability at some point in a programming language to the point that maybe it won't make sense to even call it a programming language. Making software is going to get much easier. Denial is the most human of coping strategies with change.
- dang 3y agoRelated ongoing thread: In Rust, for memory, you don't pay as you go, everyone has to pay all the time - https://news.ycombinator.com/item?id=36000242 https://news.ycombinator.com/item?id=36000242 - May 2023 (58 comments)
- pjmlp 3y agoIt is still flagged, most likely because someone did not like the title, still it has quite an interesting discussion.
- Tozen 3y agoAgree. Maybe the flag should be removed or perhaps move the discussion (https://news.ycombinator.com/item?id=36000242 https://news.ycombinator.com/item?id=36000242) to here and under dang's post.
- b20000 3y agoi’m more interested in what clearing arrangements they have, if they have their own risk management tools, how they make sure nobody sees their traffic to and from the exchanges (including the clearing firm), how they prevent their traffic being shared with 3rd party application providers etcetc and how they started out, where they got funding and what opening account size
- diligence_ 3y ago[dead]
- deleted 3y ago[deleted]