Even with all of the cryptologic and cryptographic technology that has existed in the world for the past 60 years, we still don't really know what encryption is good for or how to use it -- or, more importantly, why it's important. Maybe it's time for people and coders to actually start practicing how to use it, like any other skill.
I would love to see the design rationale document behind X.509. Perhaps if I saw that, I'd be able to be less angry and hateful towards it.
As it stands, though, many of the design decisions just Don't Work. Not in the Internet realm, where X.509v3 was defined to make up for some of the annoyances, and still didn't do a good job.