And technically, part of the nvidia binary driver IS open. I patch every nvidia driver for linux-rt. Plus, semi-recently (circa linux-3.10 release time-frame), patching an older driver to support a newer kernel...but yes, obviously it's still somewhat closed / not an ideal situation.
anyway, I am hopeful, even somewhat confident that Nvidia is getting onto the right track, as far as linux development. It may take a while, but they do seem to be shifting mentality, a little.