I have ADHD and autism.
I seem to be playing the same board game as everyone else, just with a slightly different rule set on my side of the table. Same board, same pieces, some of the rules swapped for different ones. And most of them I do not even get myself.
My girlfriend asks if I want to go out for lunch this weekend.
I do. I say yes, and I mean it. I can picture it, it sounds good, and last time we did it I had a genuinely nice time. So of course. Saturday.
And sometimes it works. I show up, I am present, I sit in a room full of people and stay fine, and I have the good time I promised her we would have. It happens often enough that both of us quietly file it away as something I can just do.
And then some other Saturday the same yes goes nowhere. I did not decide anything, the day just arrives and there is nothing there. I still want to go. I reach for it and nothing comes out. And I have to cancel a thing I wanted, that I promised, that she was looking forward to.
the 200 ok
It is a bit like dealing with an unreliable API.
When she asks, I return a 200 OK. The request looks like it went through, but there is no durable state behind it. The yes was real when I sent it. It just came from a version of me that happened to have the capacity, and nothing guarantees that is the version who has to show up on Saturday.
Whether Saturday actually happens has very little to do with that one request. Everything I do pulls from the same small pool. The week, the noise, other people, a hundred tiny decisions. So by Saturday the answer to almost everything is 429, too many requests, even to things that have nothing to do with each other. Lunch is one more call that does not get served. There was just nothing left to answer it with.
from the outside
I think that is the part that is hardest to explain.
It is not that I cannot do the things. I can. It is that I can do a lot of them only intermittently, under conditions that make no logical sense. Sleep, food, noise, whether the last thing ended cleanly, some variable I probably cannot even see myself. And from the outside you cannot tell which one you are getting, because a good day and a bad day sound like the exact same confident yes.
And it is not only about which day you catch me on. What I can and cannot do does not sort the way you would expect either. You watch me do one thing well and assume the thing next to it is covered too. It is basically the same task from where you stand. It is not the same task to me. One runs clean and the next one over just fails, and that looks arbitrary, because you just watched me do the first one.
I cannot really tell from the inside either.
If I could feel it coming, I could warn people. I could say, honestly, do not count on me for this one. But I do not get that signal. I get the same sincere sense that of course I will manage, right up until I do not. So I cannot protect anyone from it, including myself.
And because the good days are real, the bad ones look like choices. He was fine last month. He just bailed this time. Can’t have wanted to be there that much.
I wanted to be there. I just got rate limited that day.
cuts both ways
I do not have a fix for this. I am not sure there is one.
It would almost be easier if I visibly could not do these things. If it failed the same way every time, people could plan around it and nobody would feel let down.
But I would not take that trade.
The same wiring that cancels the Saturday is also what lets me, on a good day, be completely in whatever is in front of me. On the good Saturdays that is what she gets. And I cannot keep those days and hand the bad ones back. It is one thing, showing up at different times.
So it cuts both ways, and I have mostly made my peace with that.
And I do not fully get it myself either. Sometimes I do. Most of the time there is no clean pattern I can point to. There are rules in there somewhere, I just do not know most of them. I am slowly getting better at working them out.
It is just nice to get this out of my head and onto a page. Maybe someone reads it and recognizes their own version. None of it is new. It has been said before, but I wanted to write it down anyway. The API is still unreliable. At least it has documentation now.