Nail on the head. They're just weird, at least in the context of English phonetics. That's the reason I discourage their adoption. I'd much rather we just all agree that kilobyte means 2^10 bytes. Or find words that aren't weird.
If I remember correctly, a big motivation for this change was the fact that disk manufacturers intentionally used base-10 definitions so they could advertise larger numbers for disk capacity. But presumably they still do that, and presumably people still often don't notice.
Sure; there are a lot of distinctions that serve to frustrate casual users. And this is hardly limited to computers - the rant that sticks in my memory is that of a family friend being absolutely infuriated that nuts and bolts can be the same size but have different threads.
The difference does matter, though, and matters a lot when you're working with storage at any scale. So people tend to use the right labels just to avoid ambiguity.
> I'd much rather we just all agree that kilobyte means 2^10 bytes.
Kilo means 10^3 though. I use a lot of SI units every day and that's what it always means for every one of them, just like Mega is always 10^6. These prefixes shouldn't have different meanings depending on the unit being used; that breaks SI. The SI prefixes were first adopted in 1795, before computing even existed as a concept, let alone computers existing as actual objects. The overloading of already very-well-established prefixes to mean something different was always a mistake, and can probably partially be blamed on the US's failure to adopt the metric system.
Why should we use 2^10? Bits matter in the small—a machine with a 12-bit word and 1024 words of memory or whatever was popular in the ’70s—but at the scale of gigabytes, individual bits don’t matter anymore, so may as well just use decimal because that’s what our number system is based on. I don’t see any point besides retro nostalgia to use base 2 after you move out of the each bit counts space.
SI prefixes are fine for mass/block storage and network speeds, because there's no particular reason they would fall precisely into buckets of powers of 2. But for CPU cache and system/GPU memory in particular, and maybe even some flash memory, it does continue to make sense to use MiB and GiB, because of the particular way that memory itself is addressed and packaged. Memory very much does fall precisely along power of 2 boundaries.
For example, I recently bought two 32 GiB DIMMs for my computer. I guess you could call them 34.3597 GB DIMMs, but that's strictly worse! Knowing that they're exactly 32 GiB makes it makes it obvious that it takes 2^35 bit pointers to address every location by byte in one of those DIMMs (so they obviously require a 64-bit architecture to take advantage of!), or 2^36 bit pointers to address memory locations across both of them.