Behave according to your actual utility function

Adam Zerner
Sat, 25 Apr 2026 06:44:39 GMT

1

I really like wearing hoodies.

I'm not sure exactly why I like wearing hoodies so much. They make me feel kinda cozy. Insulated. Protected.

Maybe it's the feeling of having something in contact with my skin. Maybe it's the former poker player in me. Maybe something to do with autism. I dunno. But without a hoodie I feel a twinge of vulnerability, I think.

I wear hoodies a lot less frequently than I should though. My brain semi-consciously makes these dumb arguments that somehow persuade me:

You're outdoors and it's a nice day. Why would you wear a hoodie?

You're indoors and it's room temperature. Why would you wear a hoodie?

You always wear hoodies. Why even keep all of those t-shirts that you like? No one ever sees them.

It's not that these arguments have zero merit. The issue is that in weighing considerations, I incorporate a lot of "shoulds" and discount a lot of "actuals".

Should: Hoodies "shouldn't" make me so comfortable.

Actual: For whatever reason, hoodies do make me feel damn comfortable.

Should: Hoodies make you warmer. If I'm comfortable indoors at room temperature or outdoors on a nice day in t-shirts, hoodies should probably make me uncomfortably warm.

Actual: Sometimes they make me warm, but a lot less than you might expect. Last weekend I was walking around the park on a beautiful day — 73℉ and sunny. It was cooler earlier in the day and I had my hoodie on. As it got warmer and sunnier I usually would take the hoodie off but I decided to keep it on and see if I get hot. I ended up feeling fine.

Should: I need to "get my money's worth" from my t-shirts.

Actual: Not getting "my money's worth" bothers me a bit, but not very much.

2

Hoodies aren't the only example of this. Another one is cleanliness.

I was talking to a friend about cleanliness the other day. He isn't very clean. He never cleans his kitchen floors, for example. I, on the other hand, am very clean. I've watched almost all of the Clean That Up videos, have reminders set for things like dusting, and never leave dishes in the sink.

In talking to my friend, I began thinking that "I was right". That the "correct" thing to do for most people is to clean roughly as much as I do. However, in discussing it further, I came to realize that this cleanliness likely doesn't have much of a "functional" benefit. It probably doesn't move the needle in terms of preventing illness, for example. It's more so an aesthetic preference.

For a moment I found myself tempted to clean less frequently. After all, there isn't really a "good" reason to clean so much. If I could self-modify the wiring of my brain — just reach in there and dial the knobs to different positions — it'd probably be good to dial the "to feel comfortable I need things to be clean" knobs down.

Then I realized that I can't self-modify like that. At least not easily. In practice, my utility function is what it is. It yields less utility when random corners of my apartment haven't been dusted. It yields less utility when my gas stove gets oily. What makes sense is for me to behave according to my actual utility function, not the utility function that I "should" have.

3

Speaking of cleaning, I also like to clean codebases. Y'know, software.[1]

It's actually pretty similar to my feelings about clean apartments. When the space that I "exist in" is clean — physical or digital — I feel more at ease and can think more clearly. I maintain inbox zero and don't keep many browser tabs open, in case you were wondering.

I feel less inclined to "behave according to my utility function" here though. It's not that I've given up on utilitarianism. No. I guess what I'm trying to say is that I'm more inclined to spend the effort to modify my utility function here.

The thing is, with my apartment, it's really not a big deal that I spend five minutes once a week walking around with my duster, or that I wipe down the counters every time I finish cooking. But with coding, the effort to keep things clean is much more costly. Relatedly, the fact that I am meaningfully less motivated to poke around in codebases that are messy is also not ideal.

I'm not sure what to do about this. How can I modify my utility function here? Apply OCD treatments to it? Maybe commenters will have advice for me.

Ultimately, I'm not optimistic about my ability to self-modify here, so this example about clean codebases probably isn't a great one. Regardless, my point is that there are times when the spending the effort to self-modify might make sense. Feelings about clean codebases might be one of them. Feelings about hoodies and dusting probably aren't.

But I don't think the stuff about self-modification changes the advice in the title of this post: regardless of whether you plan to self-modify, what makes sense to do in a given moment is to behave according to your actual utility function. Not the utility function that you "should" have, that is "reasonable", or that you are in the process of working towards.

1. ^

Imagine if people hired "codebase cleaners" in the same way that people hire house cleaners.

Discuss