Ai is not a programming abstraction, just like hiring a contractor is not a programming abstraction. Taking a few lines of code and throwing them into a function is a programming abstraction. It's a kind of mapping, whether it's full of side effects or not.
AI is meant to do the work for you. That is like hiring someone, which is not an abstraction, and also why so far we have to check what it does in ways that is different than checking Assembly after compilation. One is about optimization that isn't often needed, the other is about double checking the result actually worked.
I didn't mean that AI is an abstraction. (Hmm, I should change the headline.)
I meant that every time our programming has taken place further away from the raw hardware, we've created abstractions that allow us to think at a higher level, allowing us to build larger and more complex systems. That also let more people write code.
I believe that programming with AI means no longer thinking in terms of strings, lists, and dicts, even though they're clearly being used by a lower level (assuming that AI is writing Python). This is similar to how we don't think in terms of bits and registers, even though those are still being used at the even-lower level.
I'm starting to think about what abstractions we'll want to create and use at this higher level.
Programming abstraction vs. general process or work abstraction. The distinction is relevant because AI is using the same programming abstractions as humans, that's why it's so useful.
Ai is not a programming abstraction, just like hiring a contractor is not a programming abstraction. Taking a few lines of code and throwing them into a function is a programming abstraction. It's a kind of mapping, whether it's full of side effects or not.
AI is meant to do the work for you. That is like hiring someone, which is not an abstraction, and also why so far we have to check what it does in ways that is different than checking Assembly after compilation. One is about optimization that isn't often needed, the other is about double checking the result actually worked.
I didn't mean that AI is an abstraction. (Hmm, I should change the headline.)
I meant that every time our programming has taken place further away from the raw hardware, we've created abstractions that allow us to think at a higher level, allowing us to build larger and more complex systems. That also let more people write code.
I believe that programming with AI means no longer thinking in terms of strings, lists, and dicts, even though they're clearly being used by a lower level (assuming that AI is writing Python). This is similar to how we don't think in terms of bits and registers, even though those are still being used at the even-lower level.
I'm starting to think about what abstractions we'll want to create and use at this higher level.
Abstraction: the quality of dealing with ideas rather than events.
Either you’re confused, or I am misreading (and not understanding) your comment. How is hiring a contractor not an abstraction for doing work?
I mean, it’s not an abstract class or something, but I don’t think that’s what anyone means.
Programming abstraction vs. general process or work abstraction. The distinction is relevant because AI is using the same programming abstractions as humans, that's why it's so useful.