1. The figuring out of types, etc. is a task that the AI does well and is flow-disrupting. So you assume that the interjections will disrupt flow but you have to consider that they may preserve it.
2. The developer may not see the suggestions when they're in flow anyway, though they can indeed be distracting.
3. The AI's suggestions are still wrong enough that everything needs to be reviewed anyway. So, pair-programming it (with AI as author) is probably the fastest way to get things done.
One of the challenges with AI pair programming is that the choruses are sung so fast it's hard to prepare for the next verse. The programmer is forbidden easy tasks, which doesn't help with the most limited budget: the deep thought.
All good suggestions. I think the issue is a 50% acceptance rate is too low for broader adoption. I wouldn't use auto-complete in a word processor if every second word it offered was incorrect. One the brighter side, we went from 25% acceptance rate to 50% in ~1yr. Things move very fast in this space.
Typically as you start to type a new line you get a suggestion, and it is right or wrong. You don't get a ton of updates as you work through that line. So, I just look to see if it's thinking about it right or not. IOW, part of what I find jarring about your logic is that I'm not in fact bombarded with suggestions. They're infrequent, and each one, if chosen, probably saves me 30 seconds. The evaluation time for a suggestion is probably 1-2 seconds and when it hits it preserves flow. What's not to like?
An unsung benefit is that the AI knows language features, patterns, and library features that you might not know. So, for example, I didn't know about ImmutableJS groupBy or partition until it suggested it. This is pretty valuable as a teaching aide.
Let's say I can get paid $100K / year as a SW engineer. At 8k/month, and $20 for copilot (is that right?) I need to get a 1/400th productivity bump to make it worth forking out the $20. This is a triviality. 1/400th of my month of SW eng. is like 20 minutes. There's no doubt in my mind this bet pays.
IMO the problem with this take is:
1. The figuring out of types, etc. is a task that the AI does well and is flow-disrupting. So you assume that the interjections will disrupt flow but you have to consider that they may preserve it.
2. The developer may not see the suggestions when they're in flow anyway, though they can indeed be distracting.
3. The AI's suggestions are still wrong enough that everything needs to be reviewed anyway. So, pair-programming it (with AI as author) is probably the fastest way to get things done.
One of the challenges with AI pair programming is that the choruses are sung so fast it's hard to prepare for the next verse. The programmer is forbidden easy tasks, which doesn't help with the most limited budget: the deep thought.
Thanks for writing! Great as always Karim.
All good suggestions. I think the issue is a 50% acceptance rate is too low for broader adoption. I wouldn't use auto-complete in a word processor if every second word it offered was incorrect. One the brighter side, we went from 25% acceptance rate to 50% in ~1yr. Things move very fast in this space.
Typically as you start to type a new line you get a suggestion, and it is right or wrong. You don't get a ton of updates as you work through that line. So, I just look to see if it's thinking about it right or not. IOW, part of what I find jarring about your logic is that I'm not in fact bombarded with suggestions. They're infrequent, and each one, if chosen, probably saves me 30 seconds. The evaluation time for a suggestion is probably 1-2 seconds and when it hits it preserves flow. What's not to like?
An unsung benefit is that the AI knows language features, patterns, and library features that you might not know. So, for example, I didn't know about ImmutableJS groupBy or partition until it suggested it. This is pretty valuable as a teaching aide.
Let's say I can get paid $100K / year as a SW engineer. At 8k/month, and $20 for copilot (is that right?) I need to get a 1/400th productivity bump to make it worth forking out the $20. This is a triviality. 1/400th of my month of SW eng. is like 20 minutes. There's no doubt in my mind this bet pays.
... and I pay my own salary and copilot bills so my money is where my mouth is :)
Pretty sure Microsoft loves that maths :)