Nearly six years ago, my wife and I decided to create email accounts for my then five-year-old son and two-month-old daughter. Since my wife and I had been using Google's gmail for several years at that point, we set them up with their own gmail accounts. Now we understood then and now that at 5 years old and 2 months old they would have very little need for their own email accounts, but we figured they would need them eventually and wanted to grab their preferred usernames if available.
Now, at 10 years old, my son is starting to actually use his gmail address. Just recently during a family vacation on Disney Cruise Line (my other passion), he exchanged addresses with a few new friends he made during the trip. He also uses the address to create accounts on online sites that interest him. He also often corresponds with his grandmother who lives in Tennessee.
Now, there are a few concerns with providing a ten-year-old with his own email address. So, I created a filter that forwards all incoming messages to me. This serves two purposes. One, I can keep an eye on his online (email, accounts) activity to ensure that he isn't doing anything dangerous. And two, I can let him know when he receives messages. So far, this system works out well.