Understanding Diversity and Complexity