Some demonstrations on the uses and misuses of an LLM, circa 2025, for programming students
There are a lot of conversations in my circles at the moment about AI, and (not unreasonably) a lot of people have pretty strong feelings about the ethics of (contemporary) AI, like large language models. This isn't going to be about that, although at least I can say that I'm not sufficiently opposed to large language models to swear off using them for ethical reasons.
However, I'm very interested in people learning how to program, and on that front, there are three things I want to do.
First off, I know a lot of programming students will be using AI to help them learn. As a (somewhat) advanced programmer on certain topics, I've found this enormously valuable, but I've also had some experiences that make me worry a bit about my students - everyone's heard a lot about AI's tendency to confabulate (aka make stuff up), but I think it might be useful to show some examples.
Second off, I suppose it might be useful to give examples of the kinds of conversations I'm having in terms of the voice I use, the kinds of questions I ask, etc. I gather people use AI in all kinds of ways, and get all kinds of experiences, so perhaps these examples can serve as more data in your understanding of how things can go. I type fast, and I generally talk to AI in something resembling my normal voice (but with an increased specificity, and an increased presumed tolerance for detail, compared to talking to a human), for personal habit-forming reasons if nothing else (I might write more about that some time later).
Finally, similarly to when Discord 'replaced' online fora, one of the downsides of using Claude instead of Stack Overflow is that the resulting conversations are much more private - if I ask Stack Overflow a question, the resulting conversation is indexed by search engines and people can find them, whereas if I ask Claude a question and learn something, I'll be the only one. So, publishing these conversations is a small gesture towards alleviating that - I can't imagine these days that a site like mine is very findable with modern search engines, but at least in theory they are here for posterity.
With all that in mind, these conversations are a combination of cases. Sometimes it's me asking a genuine question - usually in the form of a fairly advanced/obscure graphics programming question that I've struggled to find the answer to. Sometimes it's me asking a fairly rudimentary question about an area of programming I lack experience with. Occasionally it's me probing for a better understanding of how LLMs work and what they're capable of. The conversations are generally unedited but I've occasionally inserted a comment for the reader. I hope they're of some use!