It's not monoculture, there is also bitbucket which IMHO is much better product. Problem is that all the cool kids are now using github and if you want to look cool you also have to use github. Or you could just ignore the hype and use bitbucket.
Bitbucket has much better review tools - hierarchical comments, approve button, side-by-side diff (GitHub has added that recently).
You can see commit log as a "graph", not just a simple list. It's easier to identify merges.
And it does not charge for personal private repositories.
AFAICT they haven't, at least i don't see any way to upload release tarballs. they certainly let anybody download tarballs generated for any annotated tag. but those tarballs are not immutable! once in a while, these tarballs start coming down with different hashes, presumably as github changes the code which generates those tarballs. that makes them less than ideal as package sources.