Yes, of course, there are many gaijin who speak Japanese well, especially, in a big city like Tokyo. But when they talk with Japanese people in person, then it often happens that Japanese are very surprised to hear them speak Japanese. 'Surprise' may not be a good word, it's hard to explain, but it looks like 'Wow, he / she speaks Japanese!! I'm so amazed!' That kind of feeling often makes us say, "Nihongo jozu desu ne!" ( You're good at Japanese! ) with chuckling or giggling. My wife always says so whenever I bring my friend from a foreign country to my house. But when I started to learn English, I was often told I am good at English by my gaijin friends. I knew it's complement, but I thought the difference is whether chuckling or giggling is seen when they say, "You are good at...". Japanese people often chuckle when they say it, so gaijin may regard it as mocking or even insulting. Don't you think so?