This is about something that has been troubling me since I last flew with a friend.
My friend, who is a glider pilot in Germany, did a quick tour of the States, stopping by San Diego to meet me, look around the city and fly with me. He asked whether I could drop him off at Las Vegas, which was his next destination. I accepted to fly him there and I planned the flight. It was going to take us about 2:00 hours in the Piper Archer II.
Long story short, my friend is also passionate about aviation, likes to fly virtually with the Microsoft Flight Simulator, and is knowledge-hungry. I can definitely determine that, since he asked me tons of questions, to which I answered in German or English. The problem was when I was in a busy phase of the flight, or I was doing something that caused me to ignore him.
I told him politely to repeat his question or comment, but sometimes I couldn't figure out what he said because he lowered his voice. Maybe I felt that I was asking him in a rude way to repeat his question or to speak louder when I was busy, but it's never my intention to be rude. On the contrary.
I think what I should have done is to brief him about a sterile cockpit (no talking) below 3000ft. The problem with that is I also think that is a bit rude to say to a friend and/or someone who has a lot of questions and you would love to explain and interconnect every question he might have.
I should have told him as well that every time he hears my callsign, he should stop talking.
So that's basically it: I want to be a good person that answers and explains every question at the moment, but at the same time I'm very busy and don't want to look rude and make a bad impression by not answering him or telling him to wait.
The best solution is to make clear, before entering the airplane, that whenever the airplane is climbing below 3000 ft, and descending, he should only advise you of things he finds unusual, and you'll answer the questions he has above 3000 ft on the climb, or when exiting the airplane.