NAT was developed as essentially a hack, originally more to solve tricky routing situations, but later more to allow broad use of reserved range IPs. But the original intent was always that all hosts would have a unique address, regardless of where they were or were not reachable form (or advertised to). This is a significantly better situation than the modern world of widespread use of reserved ranges and NAT, because it meant that there would not be addressing conflicts even between two private networks. Or, more practically, it meant that setting up tunneled connectivity (VPN, MPLS, whatever) between networks not advertised to the public internet always works properly, because those networks are using IP addressing as intended and thus can simply advertise their routes to each other.
Private IP ranges for "private" hosts are an adaptation to the limitations of IPv4 space, not any kind of design ideal. It's an awkward solution to a bad problem that makes numerous real-world IT situations more difficult, most commonly the case of setting up VPNs between private networks and being forced to introduce NAT because they are both using overlapping private IP space.
A very common but small example of this is the need to choose "unusual" private IP prefixes for VPN networks (like 10.106.41.0/24 or something else sort of randomly selected), because if you use something "simple" like 192.168.1.0/24 or 10.0.0.0/24 you are 100% guaranteed to run into route conflicts because of people's home and small business networks using these ranges internally. If everyone used properly allocated IPs, even on private networks, we simply wouldn't have this problem!
IPv6 offers us a bit of a reset opportunity since it was designed to have enough /64s available to allow use on private networks. Hopefully people understand this and use IPv6 the way it was intended!
Well, no. The word "Internet" is short for "Inter-network exchange".
The original idea of the internet was to allow LANs to talk to each other. Not to give every single device on Earth its own unique key.
For a real-life example of that: according to documentation which can be found at its website, the Brazilian Central Bank has been allocated a full /18 for the national inter-bank network; each financial institution connected to that network receives a /27 or a /28 (or a pair of them) from that range. If you look up that address range on bgp.he.net, you'll find out that it's not announced to the public Internet at all.
And that 9/8 allocation predates RFC1918 by at least four years.
IBM is basically hoarding a bunch of addresses where there's no technical reason to. I get that they aren't required to do anything about it, but it does seem topically relevant.