We are defining a meeting as a time where you and the customer sit down to discuss something about the project. It is not a design session between you and a designer or a pair programming session with you and another developer.
The enemy of productivity is interruption . Meetings cause interruption for all involved. Instead of getting real work done, meetings are used to to talk about that work. We know that some meetings are necessary. We can't be cowboy coders. We must all be on the same page. The problem is that a lot of meetings are unnecessary.
Most meetings are unnecessary because they are used to try to solve problems that are not problems yet. They are used to talk about ideas that do not yet need to be talked about. Those ideas may change down the road as more information is discovered, so it is more then likely a waste of time. Talk about things when the time is right, not before.
Meetings are toxic. Meetings beget other meetings. How many times have you been in one meeting and someone says 'Let's schedule another meeting for that'? Be mindful of this.
Meetings are too long. The problem stems from the defaults in all calendar applications. The default for a meeting is 30 minutes. Why is this the appropriate length for a meeting? Next time, you create a meeting, set it for 15 minutes. 25 minutes. 40 minutes. This will help speed the meetings along if the attendees know they only have 15 minutes to complete the goal of the meeting.