Developer Heterogeneity and Formation of Communication Networks in Open Source Software Projects