AI Assisted Programming
Because standard programming language interfaces are hard.
Inspired by a discussion I had with René around my Qualifying Evaluation talk and all the excitement around GitHub Copilot and ChatGPT, I’ve been thinking about AI assisted programming. The interface people used to give instructions to a computer used to be punch cards. Now a standard way to give instructions to a computer is by writing out instructions in a programming language like Python. Perhaps in the future, people will mostly give instructions to a computer in natural language.
There are a lot of interesting questions to explore around AI assisted programming! In particular, I am interested in questions like:
- How can AI be used to improve reading and understanding programs and program changes?
- How can we make it easier for people to understand AI suggestions?
- How can we aide people in debugging AI suggestions that are close, but not quite right?
- How can we support people in providing quality queries to the AI system?