You have to give it to IPv4 and NAT that it makes some things simple. As a home user, you get your 192.168.88.0/24 LAN (or whatever subnet you have) and it’s only yours, static, and completely separated from ISP. You can connect to ten ISPs, one after another or all at once, and no matter how your WAN addresses change, you still have the same one LAN subnet. And ISP couldn’t care less what subnet you have in LAN.
IPv6 kind of ruins this, but it’s not directly its fault. If you get public IPv4 subnet, it’s statically routed to you, so even though your network is not completely independent on ISP, it’s still predictable, once you assign some addresses, they stay the same. It could work the same with IPv6, but ISPs seem to prefer prefix delegation using DHCPv6. I get this this part, users are usually not networking experts, so the less manual steps required, the better for most of them. What I don’t get at all, why some ISPs insist on squeezing most from the “dynamic” part and randomly change prefixes. It’s terribly annoying and there’s no good reason for that.
Another problem with IPv6 is multihoming support, or the lack of it. It’s not entirely true, you can have several ISPs and devices in LAN can have addresses from each. But it’s up to device to decide what address (and as a result what ISP) it will use for each outgoing connection. With IPv4 it’s simple, LAN device doesn’t even know about multiple ISPs and everything is controlled by router. But this only became popular lately for home and other smaller users. The solution for IPv4 was simple, but so far it seems that nobody thought much about some elegant solution for IPv6. It can use NAT too, in a simpler and more predictable form of mapping one prefix to another, but it’s still kind of NAT, so nothing for purists. In theory, there are provider-independent addresses, so you can have a static subnet of yours and use it with different ISPs at once, but it’s not something you’ll easily get at home.
That said, NAT is not great, it causes many problems and it’s only because we mostly got used to it, it may seem ok. The sooner we move to IPv6, the better, because we will be able to focus on improving something that has any hope for bright future. Unlike IPv4, where we’re just trying to find millionth way how to get through NAT.