Suno, and the Elimination of Struggle
February 20, 2026
I recently watched Adam Neely’s video on Suno, and it was one of those cases where I just couldn’t stop my brain from thinking about it. There’s one thing in particular I want to get off my mind here: Suno’s primary selling point is the elimination of struggle, and I’m not convinced this is a good thing.
For the uninitiated, Suno is one of the many AI startups that have come out of the woodwork in recent years. They sell (well, lease) a software product (coincidentally also called Suno) that allows you to generate music by chatting with an AI model rather than playing an instrument. This has obviously incited a lot of conversation about the value of art as a commodity, craftship in the age of generative AI, and the power of Big Tech over artistic and cultural expression. But the thing that really strikes me about Suno is exactly what it is marketed to do: it is made to eliminate struggle from musicianship. Company CEO Mikey Shulman has said as much:
It’s not really enjoyable to make music now. It takes a lot of time, it takes a lot of practice, you need to get really good at an instrument or really good at a piece of production software. And I think the majority of people don’t enjoy the majority of the time they spend making music. (video source)
This statement sparked quite a bit of ridicule, and honestly, I think that’s kind of justified. A music software CEO saying music isn’t fun is just dystopically ironic and freakishly out-of-touch in a way that only Silicon Valley can provide. But I think this is interesting beyond ‘rich CEO talk funny’. It’s part of what strikes me as a broader pattern of the gradual elimination of struggle in all areas of life through technology, from ordering food on your phone (can’t be expected to walk all the way to my pizza place!) to excessive tutorialization in video games. About a year ago, I played through Super Metroid for the SNES (which was released in 1994, when I was −1 years old), and I was struck by how many parts of the game were either difficult or opaque in a way that would never be acceptable for a best-selling game today. Parts of it sucked to play through, honestly. And yet… the game had character in a way very few modern high-budget games do. It challenged me, it frustrated me, it had rough edges, and at the end of the day, I was proud of myself for beating it.
I think modern life requires us to be cognizant of this tension. Suno is just the most recent development in a gradual turn towards convenience over struggle, and it is becoming all too easy to spend our days just sitting behind a computer and swiping at things on our phones (videos, restaurants, prospective life partners), rather than, for instance, going for a run, learning an instrument or a language, or walking up to a stranger in real life.
This isn’t a Luddite argument. I, too, order food sometimes. But I do think there is value in negative experiences, and intentionally exposing yourself to them may be an increasingly important skill in building a happy life.
Mug cakes are good
January 7, 2026
This is your reminder that if you, like me, are desirous of a sweet dessert from time to time, yet you, like me, are not in the habit of procuring them, mug cakes are an amazing solution. Will a quick mix of flour, sugar, cocoa, oil, and water, microwaved for a minute and a half, be the best cake you’ve had this year? Hopefully not. But by god, does it hit the spot.
(One could make a point here about ‘high’ and ‘low’ culture [cf. Die Hard 2, which enjoys a 4.5 star rating on my Letterboxd profile], but I’m not going to do that. Sometimes a mug cake is just a mug cake.)
Does knowledge diminish enjoyment?
October 15, 2025
I like to know how the sausage is made.
It is a truth universally acknowledged that watching movies is good and fun, but who could resist learning the fundamentals of filmmaking, curating a playlist of YouTube videos on color grading in Davinci Resolve, and having 20 issues of American Cinematographer delivered to their house? Nobody, that’s who.
All this may come at a cost. I was watching Gilmore Girls with my girlfriend the other day when I noticed that the color grade between a shot of Lorelai and the reverse shot of Rory didn’t match, making Lorelai appear slightly blue compared to Rory. As I paused the show to explain this to my girlfriend (she loves it when I do this), the realization dawned on me: my (extremely limited) knowledge of color grading has actually diminished my enjoyment of watching Gilmore Girls! From a 10 to a 9.5, but still.
This led to the following question: does learning about art actually make you more critical, thus diminishing your enjoyment?
This question bung banged around in my head for a while, when suddenly the answer came to me as I was watching Apocalpyse Now. Having learned about lighting, lenses, cameras… knowing how absurdly hard it is to shoot anything… it made me appreciate Apocalypse Now so much more. I have tried and failed many times to record a simple four-bar chord progression on guitar, and that experience has made listening to Snarky Puppy shredding Lingus even more jaw-dropping. And so on.
The conclusion I have come to for now is this: the more experience you have in an art form, the greater your dynamic range of enjoyment of the art. The highs will be higher, and the lows will be lower.
Timing how long a function takes in Python
October 8, 2025
Sometimes, in Python, it can be nice to know how long a function takes. Perhaps it’s a function you’re going to be calling lots of times and want to squeeze every last ounce of performance out of, or maybe, like me, you just want to know if you have time to go for a quick walk in the Utrecht University Botanical Gardens after running your code.
This is pretty trivial in Python! We can use the time module to subtract the time we started running the code from the time it finished:
import time
start_time = time.time()
calculate_complicated_things()
end_time = time.time()
duration = end_time - start_time:.2f
print(f"Calculating complicated things took {duration} seconds")
This works fine, but you have to remember the exact incantation and write it by hand each time. It would be nicer if we could abstract this away into a function, you know, like a programmer. Thankfully, we can, thanks to the magic of first-class functions! In Python (and most languages worth a damn), you can assign a function to a variable just like any other value, so we can pass in the function we want to call to our new time_function.
import time
def time_function(complicated_function):
start_time = time.time()
complicated_function()
end_time = time.time()
duration = end_time - start_time:.2f
print(f"This really complicated function took {duration} seconds")
We call it like this:
time_function(calculate_complicated_things)
But what if our long and complicated function takes arguments? In that case, we can pass those in to time_function as well, using positional (*args) and keyword arguments (**kwargs):
def time_function(func, *args, **kwargs):
start_time = time.time()
complicated_function(*args, **kwargs)
end_time = time.time()
duration = end_time - start_time:.2f
print(f"This really complicated function took {duration} seconds")
And now we call it like this:
time_function(calculate_complicated_function, first_argument, second_argument, keyword_argument=value)
And, just to be fancy, let’s include the name of the function in the output, so we can see what took so damn long:
def time_function(func, *args, **kwargs):
start_time = time.time()
result = func(*args, **kwargs)
print(f"Function '{func.__name__}' took {time.time() - start_time:.2f} seconds")
return result