hm.. dx8 to dx9 is no problem to convert really.. mainly adds features, only some stuff changed. but dx8 was a full redesign of the dx api, because microsoft realised dx is messy, not structured, and old style done. dx8 is a great construct, but logically, a full redesign forces to recode old apps if you want to convert to the new versions. the same is currently in plans with opengl with gl2.0, and every extension forces you to recode paths. espencially vendorspecific extensions. take gl code from me, one year old. not runable anymore because i used an nvidia ext. thats why i only use arb exts from now on..
and gl is bloated as well btw.. its just hw vendors "forget" to implement quite a bit of it, because its not doable in (gamers) hw. but gl is big.. ever looked at the specs? (okay, nvidia extension specs are bigger than the gl specs.. hehe )
anyways. i don't vote. i know both, and i can suggest both. i prefer personally opengl, espencially in small scale stuff. but both are great currently, both have great features, and are easy to use. if you code in windows, you can choose from both.
actually, dx is much more structured than gl.. code gets quite a bunch cleaner. on the other side, gl code is more "simple" most the time. shorter, and more easy to follow. depends on what you look at..
and currently the ARB is working on a general cleanup of gl.. hehe