Date Tags ai / code

Stories about AI have an impoverished visual grammar: bots that look like something from a 90s music video, all porcelain surfaces and dark hydraulic sinews, against corporate vaporwave neon swirls, or junk from DALL-E. I suppose there's a need to embody the disembodied, the same impulse that puts a CGI-rendered coin on stories about cryptocurrency, but it's also about how we have difficulty seeing past the imaginary version of AI we've been living with for the past hundred years.

I've gone into retreat again from reading about it: it's not the technology itself which I find depressing, but the way in which so many people have very dogmatic ideas both for and against it, when the situation seems to call for a radical uncertainty, a suspension of what we think we know.

In particular, there's an attitude which IT people have to whatever they think is the new best thing which goes beyond a magpie-like attraction to the new and shiny: it's more sinister and feels to me like power-worship. The object of worship in this case is not any hypothetical AI (except for when it is) but the companies who are providing us with them.

And me framing things in such a negative way is a sign that I need to think about other things for a bit.

Finally: I have been resisting the urge to actually play with ChatGPT because it would be a massive time-sink, but earlier this week I tried to get it to explain monads to me, and despite my bad-faith attempts to steer it towards using the burrito metaphor, it gave me salad:

Me: I think I understand this a bit better but it would help if you could make the metaphor be about a specific sort of meal.

Sure, let's say you are trying to make a salad using various ingredients, such as lettuce, tomatoes, cucumbers, and dressing. Each of these ingredients has its own unique properties and flavors, and you need to combine them in a certain way to create a tasty and satisfying salad.

In this metaphor, the ingredients represent values of a certain type, and the salad recipe represents a monad that specifies how to combine those values in a structured and controlled manner.

Just like a salad recipe might specify that you need to chop the lettuce into bite-sized pieces, dice the tomatoes, and slice the cucumbers, a monad might specify certain operations that need to be performed on the values in order to transform and combine them in a structured way.

For example, a Maybe monad might be used to handle errors or missing data in the salad recipe. If you were missing an ingredient or if an ingredient was spoiled, the Maybe monad could be used to represent that situation and ensure that the rest of the salad recipe can still be executed without errors.

Similarly, a State monad might be used to keep track of the state of the salad recipe as it is being prepared. For example, the State monad could be used to keep track of how much of each ingredient has been added to the salad so far, to ensure that the recipe is executed correctly and consistently.

Overall, the salad recipe represents a monad that provides a step-by-step guide for transforming and combining the ingredients in a structured and controlled way, while preserving their properties and flavors. The monad ensures that the recipe can be executed consistently and predictably, and that it can be combined with other monads to create more complex and delicious salads.