Beat friends to it. In our society, children and adults are inundated with unhealthy messages about intimacy, violence, drugs, etc. Take the opportunity to talk with your kids, at an age-appropriate level, about these topics, when they present themselves over media or in conversation. The younger you start, the more natural these conversations will be, and the more likely they'll turn to you when they're older.
Sooner than later. As not to date myself; and not having been given the 'talk' myself i remember friends of mine sharing their experiences of the 'talk' with me around the time we were 12-13 years of age. However, in today's shall we say different times it is never to early in my opinion; depending upon the maturity level of the individual child. Anyone who watches news even occasionally should keep this in mind.
As Soon as ..... As early as possible with age appropriate discussions. This includes touching issues for school age kids for example.Waiting too long is what creates misinformation and misunderstandings. Remember that while your 11 y/o may not be developing, his friends may already be changing.Do not shirk this subject.
When she's curious. You want her to learn from someone she knows/trusts, rather than some kid who misinforms her on the bus, right? Who better to teach her than a loving parent, who can also share values? Don't wait until she asks; you can also bring it up when you watch tv/movies together, or when topics arise in the news. (un)fortunately, there are many opp'ties nowadays. There are also helpful books.