How many side does a snowflakes have?

Snowflake

Most snowflakes have six sides. But why?
(Source: NationalGeographic)