Yes.

I verify dynamic linking, ensure no superfluous dylibs are required. I verify ABI requirements and ensure a specific version of glibc is needed to run the executable. I double-check if the functions I care about are inlined. I consider if I use stable public or unstable private API.

But I don't mean that the author doesn't know what's going on in his snippet of code. I'm sure he knows what's going on there.

I mean that upvoters have no idea what's going on, by boosting vibe coding. People who upvote this are the reason of global software quality decline in near future.

All your stuff is still pretty high level compared to the pure metal inside CPU. Do you which register the compiler decied to use to store this variable, or does the CPU will take this execution branch or not ?

It's all abstraction, we all need to not know some low level layer to do our job, so please stop gatekeeping it.

What's your point? That we shouldn't care about anything at all because there is 1 thing we truly shouldn't care about?

That we shouldn't care about spending $1 for a sandwich therefore managing home budget is pointless?

My point is, you should care what you work with, and it's perfectly fine to not know the lower detail.

Different people will care different layers.

I don't agree to this, but even if we assume I do, then all abstractions are still leaky, so in practice it's often simply impossible to not care about lower details.

https://en.wikipedia.org/wiki/Leaky_abstraction

Not caring about lower details in the expert domain is simply carelessness. We also need to consider how the abstraction layers are merged and what is the outcome. Abstraction layers are a tool, they are not the immutable environment we are operating in.

Clients can have the luxury of not knowing what is in the details, but not programmers.