I've been in enough meetings to know that not everybody knows how to run them. (or at least how I think they should be run ;) Meetings are important, especially face to face, in order to define actions or gather requirements, build consensus in order to make decisions, keep people updated on where things are at, make sure the project is running smoothly and on time, catch problems before they're catastrophes, etc. Unlike some people, I don't think meetings are evil, but I do think that they can be misused and be unproductive when not run correctly.
Here's some things I try to keep in mind:
Have an agenda
Always, always have an agenda, and share it with everybody. If it's only two people, then you can probably get away without one, but an agenda marks out what's going to be talked about, who's going to talk about it, and what everybody hopes to get out of the meeting, usually a list of action items but sometimes also just a list of questions answered and clarified. Having an agenda helps people come prepared, either with questions to ask or information to present, and keeps the meeting moving forward, rather than a bunch of unproductive shrugs when people ask "so what are we talking about next?", or worse, a free for all with everybody fighting for the floor.
Respect people's time
Time spent in a meeting is time spent not working on actions and task lists. This goes for those who tend to be late for things, as well as for those people who like to talk. Show up on time and be prepared, and try to end on time. If you didn't cover everything, or something came up that needs to be done, then try and punt it to the next meeting or take it "off line" in another meeting with only the relevant stakeholders involved. (see below)
Unless you're running a workshop or big requirements gathering sessions, you're meeting shouldn't be longer than an hour. There are exceptions of course, but generally once you get past an hour, people start to lose focus and you need breaks.
UPDATE: My friend Laurence pointed out something I missed: get your tele-conference software/phone connections set up and working with all participants before the meeting start time. For anyone who's connecting remotely, meet with them 15 mins before the start time and get the connections sorted out so you can start on time. (Geez, can't believe I missed that one)
Try to speak efficiently
When you're talking and debating in the meeting, try to be efficient with your communication and get to the point. A key danger zone is using examples. When illustrating examples to drive home your point, remember that you're trying to make a point, not tell a nice, detailed story. I had a co-worker who often would go off on distracting tangents when he started using examples to illustrate his point. The story ended up being longer than the point he was making, and created a distraction since the story raised other, unaddressed issues that took as away from the original discussion. Which leads to...
Stay on topic
At least recognize when you're going off on a tangent and get back to the task at hand. Also don't be offended if someone speaks up and tries to reign things back in. It's important to stay focussed on a topic or problem, solve it, before going off to other things and getting ahead of yourself. (Note that this doesn't apply to brainstorming sessions, that's a whole other thing. There you want to be flying off in all directions and have the freedom to make random leaps of logic or pitch half-baked ideas, and have someone recording all the key, interesting points to look at later)
Take it Off Line
If a discussion or debate (or even an arguement) is not going anywhere, it's going on too long, or it's really just something that needs to be hashed out by part of your team, then take it "off line" by picking it up in a separate sub-meeting for that team, or action item the discussion as a research issue that the team needs to figure out and report back on, rather than having them sit and struggle to come up with an answer on the spot.
This also applies to knowing when members of your team don't need to stick around for parts of the meeting and can leave to get started on their action items.
Know what you want
If you're running the meeting and organizing the agenda, know what it is that you ultimately want to get out of the meeting; is it a commitment from team members on the current task list, or are you trying to answer some key questions or validate a use case scenario? Always keep that mission in mind and use it to keep the conversation on track
After the meeting, send out an email with a quick summary of what was discussed, key decisions that were made and what everybody's tasks are. Don't spend a lot of time on this. In fact, go back to that agenda that you defined earlier, just post an update after each point about what was decided or what needs to be done still.
If everybody was taking notes properly, they won't need the summary :), or at least they'll only need a reminder, not the details. The main purpose is to provide a "paper trail", just in case. Paper trails are really important for reaching consensus. If it's crunch time in the project and nobody's bothered to keep the documentation up to date, then at least you can go back to some of those meeting notes and figure out what you, the team and the client decided to go with.
Do you have your own ideas and tips on how to run a meeting? Leave a comment!