Silly Goose Cassettes

Cooking Up Code

I did a lot of creative coding tutoring while I was at Parsons. So, I’ve spent many hours observing gears turn in students' brains as they work out functions, objects or arrays.1 My last semester of teaching was the big chat GPT boom and we were all faced with figuring out how to use AI in education. There are still many uncertainties. But after using AI in my creative practice and at work, I have found the ways it is useful.

Firstly, it’s important to disclaim that I am at best an above average amateur teacher and programmer. But, I have been coding since I was a teen and have learnt how to code both in an academic setting and at art school. I think the parts of this essay that resonate with you more depends on which of these buckets you fall into.

Secondly, a lot of this advice stems from having to use AI at work. I was building a prototype for a drawing app that was multiplayer, multi platform and collocated using Unity and the Meta SDK. Prior to this, I had despised Unity and the world of Mixed Reality - but sometimes we must face our demons (or something like that). Armed with an Oculus Quest and accompanied by my trusty sidekick, Claude, I commenced on this quest - here are my findings.

The more you know about coding, the easier & faster it is to use these AI chats. I have used AI in Unity (C#), Godot (GDScript), websites (JavaScript) and bits of Python. The more unfamiliar the language,2 quirks of its functioning were more unknown . There were a lot of times I didn’t realise that there was an efficient way to do something in Unity (using OnCollision instead of pooling Controller positions). Whereas, I would always ask for the most efficient methods in JavaScript.

AI is really good at starter code There is a very real worry about students using AI to create first drafts of their essays. Having put in a month of writing into this blog, I can definitely say that all of my writing would have been wildly different and honestly, probably worse if I had used chatGPT to write any of it. In contrast, all of the code on my website was initially spit up by Claude and mostly worked perfectly. No one’s first draft of a function is an original thought. You start by googling the syntax of something, googling your desired behaviour, and perusing codepen examples or p5.js sketches. You can outsource all of that first draft searching to Claude and it’s pretty good at it.

It's faster (but also better) than debugging with stack overflow. The most obvious benefit of using claude and not stack overflow is that if you are a bit internet shy like me and have never asked a question on a stack overflow-esque forum, it’s hard to get tailored feedback. I was initially a bit skeptical of the speed of response. It means that 70% of the time I get answers immediately, I’m not clicking on multiple links, following in rabbit holes or having enough associative learning. But sometimes, Claude will use a property or method in Unity that I was not aware of and was quite far away from the pool of key words I was using to come across the answer. So I still flip back and forth about whether this instant gratification is a good thing – in life, certainly not, but at work, where speed is of essence, maybe?

Specificity can sometimes be the death of reliability (especially with ChatGPT) I, as well as most people in my community, have switched over completely from ChatGPT to Claude. When it comes to programming, Claude shines. ChatGPT is an over eager, people pleaser and is hell bent on giving you an answer even if it completely hallucinates it. 3 Luckily, it’s really easy to catch fake code, if your project doesn’t work it’s back to the drawing board. But it can also give you long, unnecessary code which will technically work but is awful.

Too much sugar will hurt your tummy. This might not be a compelling learning for you. But AI energy consumption is a lot! So I had to set up some guardrails for myself. When my code is not working, I always send a more specific question or a hypothesis for why it is not working. I’ve set this up in order to slow down, read the code, and not keep generating new responses using phrases like, “this seems to not be doing what I want. Can you try something else?” or more concisely, “didn’t work” on repeat.

I do think AI will help learning, it’s just a calibration game now.

This post has made me realise that a lot of the code I write is regurgitated and stupid. Or maybe it feels that way because puzzles I’ve solved lose their sheen and complexity. But that is a question that requires more pondering before I can ask Claude. Note: I am not sponsored by Claude (it’s more the other way around).

Take a shot every time you read the word AI and you’ll still be nursing a hangover when I see you here next week.

Note: I might be permanently moving my blog day to Monday, the day always seems more contemplative. My Sundays are about escaping the drudge of my myriad of thoughts.

  1. Fun fact: I taught a couple of workshops to a gaggle of 10 year old homeschooled kids in Bangalore. That was the fastest I've ever seen students understand what an array was. The elasticity of childrens’ brains astound me.

  2. Order of unfamiliar GDScript > C# > Python > JavaScript

  3. Apparently even the best AI will still hallucinate 17% of the time.

#on AI