"You are a good boy."
Translation:Vous êtes un bon garçon.
Some adjectives go before, some after: http://french.about.com/od/grammar/a/adjectives_4.htm
As songwriter said your error was in your use of the verb, not the pronoun. Duo machines are poor at correctly identifying the error. They find the error but sometimes point to other things as being wrong. EG: it may say that tu is incorrect even when it is more likely, in context, that your actual mistake was in using est with tu rather than mistakenly using tu when you correctly wanted to use est.
"Bon" is singular and "bons" is plural. The noun is garçon = boy - singular. Therefore you use the singular adjective bon. ((On the other hand, if it was garçons = boys - bons garçons.))
Other info in the sentence to cue that it's singular: - "Tu" - used as informal "you" and only if you're talking to one person. It would be "vous" if there are a lot of addressees. - "Un/e" - Indefinite articles are used on singular nouns. :D
Just a guess, but chances are you made a spelling mistake. The Duo robot is pretty hit and miss about identifying the exact mistake that was made. Eg: sometimes it will indicate you had a gender or number mismatch etc. when actually you used the wrong word or even misspelled something.
Both bon and bons (and bonne/ bonnes) are equally good translations as long as they match the noun they are modifying. It's your job to find the target noun, determine it's gender and number and then select the proper form of the adjective.
Is there any difference between "tu" and "vous"?
I tried "Vous es un bon garçon" and it said it should be "Vous êtes un bon garçon". I got confused and checked in dictionary, êtes is plural while es is singular, "vous" and "tu" accordingly. So I guess that's a duolingo's mistake, because that's not a good translation, right?
Check the Conjugation table on http://www.duolingo.com/#/word/fr/être/Verb
"Tu es" is singular, "vous êtes" is plural. "Vous es" is invalid.
"Vous êtes", is also a formal way of speaking "You are" (singular). So it can be either:
Tu es un bon garçon (informal)
Vous êtes un bon garçon (formal)
Plural would be:
- Vous êtes des bons garçons
A google search showed a half million hits for tu es bon garçon. None of the entries in the first three pages were suggestive in any way. Most were examples from French lessons. The rest were lines from various plays etc.
In English, if I put my hand on my grand daughter's forehead and say she's hot, everyone will assume I mean that I think she might have a fever. If I say that about a particularly good looking woman without any elaboration, then people will make obvious assumptions about my intent. Bon/ bonne is just such a word in French.
If I say Elle est bonne about a woman who I know to be good at tennis in a French group where we are talking about tennis players there is no problem. If I say the same thing for the same reason to a group of teenage boys, speaking in manner that suggests I know something about her they don't, hoping they will ask me what it is that I think she is good at, well, they won't ask.
If your French teacher was thorough, then he was warning you that while bon/ bonne can look innocuous to an English speaker, in some situations it can cause embarrassment. Not all situations, just some. Just as in English, there are some words that in some contexts and situations you automatically screen for whether they can be taken the wrong way. If you heard that and chose to never use bon/ bonne because of possible misinterpretation when speaking French, that is your choice. But I doubt your teacher said ...."never say you are good to someone because they will always think you mean something sexual".....
More likely you took his warning to be careful as suggesting total avoidance.