Support Ukraine

What Coding Assistants Excel At

After using coding assistants a bit, I think I know what they excel at, and what they do less well.

  • They excel at explaining things. You can point it at a codebase and it will give you a good explainer of any question you can throw at it. The answer will be well presented, with diagrams and quotes and all. This is the one use case where I think they are genuinely better than a senior developer. We should all pair up our junior developers with AI assistants they can ask things of.

  • They do code reviews very well. Same for code audits. That is, tasks that take a lot of concentration by humans, but cannot yet cost-effectively be done algorithmically.

  • Navigating large APIs. You can point it at the AWS SDK and ask it "how can I do X", where X is something you're pretty sure you can do easily, but it's just not clear how.

Actually writing code depends on whether it is code that is similar to other code. If you can find similar code on GitHub, it can absolutely belt out code fast and good enough. But as soon as you deviate from that, it struggles to produce good code. It is full of re-implementations, does too much, picks the wrong trade-offs, and generally meets the criteria of "slop".

I've found that a good rule of thumb is "do you think you're better than the average of GitHub for this job?" If the answer is yes - you do it yourself, and maybe use AI for parts of the job for which the answer is "no".

If the answer is no - get prompting.