IPv6: The Protocol of the Present
Hopefully in this article you've seen that IPv6 provides some compelling features that make it worth supporting and, importantly, that supporting it is not much effort. There is no excuse for writing new socket code that doesn't support IPv6, and updating old code to support it is quite easy too.
I had to look up the getaddrinfo() function when I wrote this article, because I wrapped it up in a class that just takes the host and protocol names as arguments and returns a connected socket a while ago, and now I just use that class in all networking code.
With IPv4 addresses becoming increasingly scarce, it looks like more consumer ISPs are going to start implementing NAT for all of their customers, at which point the only ones that will be able to make end-to-end connections to each other will be the ones using apps that support IPv6 out of the box. If your code doesn't yet, now would be a good time to get hacking.