I've seen a lot of questions and answers acknowledging the dangers of inventing your own crypto algorithms — and even of implementing proven algorithms yourself. And, I don't disagree. I might even argue most of us don't even know how to safely use the existing libraries!
But, who should do it? What education, experience, or environment warrants writing your own crypto?
We dogmatically tell everyone who asks "don't roll your own! Use an existing library" But, somebody writes cryptographically secure algorithms and code. Who?
Who wouldn't we scold for "not using an existing library"? (And why do we trust them?)
As an aside, is there any place for the "common" developer to learn and contribute in a safe and beneficial or non-destructive manner?