Heterogeneous environments