IRC meetings are one of the most common forms of communication in the Fedora Project. All of the teams use the Python IRC Limnoria, nicknamed Zodbot, for running and managing meetings. Zodbot is using the MeetBot plugin for supybot/Limnoria to run and manage meetings. You can read more information about meetings, MeetBot, møte, Limnoria, or other details in their respective places.
This page explains how to run an effective meeting, steps you should follow when setting up meetings, and other useful information and tips to make sure you convey the most important info so it gets seen. This page follows and explains how one contributor, jflory7, runs meetings.
One of the most important things you can do for running a focused and directed meeting is planning an agenda ahead of time. There are various ways you can do this, whether it's with a simple mailing list post, a wiki page, or an Etherpad. Communicating an agenda before the meeting or having a defined list of things to focus on (as compared to figuring that out on the spot) will keep things focused and sequential.
What you include in an agenda can depend on various teams. The strategy that CommOps, Diversity, and Marketing have used is having times for participants to share news, to follow up on previous tasks, and to move forward on new tasks. The meeting format used is summed up in this list.
- Roll call / introductions
- See who is attending and offer new visitors or members a chance to introduce themselves to the rest of the team
- Share any news or announcements that may affect your team, either within the team or elsewhere in the community
- Action items from previous meeting
- Look back on a meeting's previous action items and check if they were completed, are in progress, or need to be re-actioned
- If your team uses a ticketing system, select a set of tickets to discuss during the meeting
- Open Floor
- Chance for anyone to discuss something that wasn't covered while everyone is present
When choosing tickets for a meeting, make sure you are choosing tickets that will drive conversation forward. Selecting tickets that only have brief updates (but nothing to be discussed among the team) can be covered either by a new comment in the ticket or in the announcements part of the meeting. Since everyone is taking the time out of their busy day to be in the meeting, make sure you're having discussion that benefits by having multiple people together at the same time.
Additionally, do not forget time management. If the meeting is an hour, make sure everything being discussed can be completed in the hour. Don't fit so much in the meeting where you are rushing through the discussion to cover everything that is on the agenda. It's important to take the time to properly discuss and focus on a particular task or goal. Don't forget that it's a virtual environment, and sometimes you might need to wait for people of various typing speeds. On the other hand, make sure you do actually have things to cover and discuss. If the meeting is only for the sake of following formalities but there's no real issues to discuss or spend people energy on, then there's probably no point in holding a meeting.
Running an effective meeting
Before jumping into the process and the steps you can follow, it's important to understand how to run an effective meeting and understanding your toolbox. MeetBot combined with møte will make a pretty HTML summary of your meeting for you, but only if you help MeetBot write it for you. Utilizing the summary and minutes feature of MeetBot enables your remote contributors or absent participants from getting the information they need from your meeting by a quick glance. Writing clean, to-the-point meeting minutes will help communicate goals, ongoing actions, and coordinating plans easier for participating and absent members.
Some general tips on taking MeetBot notes:
- Keep summary lines short and the to the point
- If discussing a hot topic, make sure to note agreement or some kind of end to the discussion
- Be consistent - if you're not consistent, it will become impossible to read the minutes
All commands are taken from the MeetBot manual and displayed here for convenience.
|#startmeeting||<"pretty" name of meeting>||Starts a meeting. The calling nick becomes the chair. If any text is given on the rest of the line, this becomes the meeting topic (see below).||#startmeeting Fedora CommOps - 2016-08-30|
|#meetingname||<"short" name of team>||Provide a friendly name which can be used as a variable in the filename patterns. In møte, this is used for categorizing your meetings together over time. It is extremely important to be consistent with this command, every time!||#meetingname commops|
|#chair||<IRC nick>||Add new chairs to the meeting. Can be one or multiple people.||#chair jflory7 puiterwijk mizmo|
|#unchair||<IRC nick>||Removes chair status from a user in the meeting. Can be one or multiple people.||#unchair jflory7 puiterwijk mizmo|
|#topic||<discussion topic>||Set the current topic of discussion. MeetBot changes the topic in the channel (saving the original topic to be restored at the end of the meeting). Useful for organizing discussion and remaining focused to the current discussion topic.||#topic Action items from last week|
|#info||<anything to make note of>||Add an INFO item to the minutes. The simplest way to make note of general information.||#info Fedora 25 releases in one more week|
|#link||<url>||Add a link to the minutes. The URL must be the first thing on the line, separated by a space from the rest of the line, and it will be properly hyperlinked. Using other commands to note links will not render them as links.||#link https://pagure.io/fedora-commops/issue/84|
|#action||<IRC nick> <task>||Add an ACTION item to the minutes. Use IRC nicks of active people in the meeting and MeetBot will generate a listing of action items sorted by nick at the end of the meeting. Helpful for clearly communicating expected tasks and giving responsibility for something in a meeting.||#action jflory7 Contact Fedora Spins for information about new features this Fedora release|
|#agreed||<final agreement / conclusion>||Mark something as agreed on. Useful for notating a final decision, a vote on an issue, or anything with group consensus. Especially useful for communicating decisions.||#agreed Issue #22 in pagure-importer blocking Trac migration; will postpone migration by two weeks|
|#help||<something you need help with>||Add a HELP item to the minutes. Communicates when you or your team needs help with something.||#help Wiki gardening is needed on our sub-project page - volunteers needed!|
|#undo||-||Remove the last item from the meeting minutes. Only applies to commands which appear in the final output.||#undo|
|#nick||<any name>||Make a nick be recognized by MeetBot, even though it hasn't said anything. Useful for making a list of action items be grouped by this nick at the end of the meeting. Also useful for assigning work to a team.||#nick mattdm OR #nick commops|
|#endmeeting||-||End a meeting, save logs, restore previous topic, give links to logs.||#endmeeting|
Many times, meetings aren't the best time to get actual work done, but the planning and direction that is needed for the work to be done. Meetings that are goal-driven will be more successful for directing work across the sub-project or team. Especially for ticket-based discussion, take care to focus on reaching the next step. If the topic is a problem, how can the problem be solved? What will move us forward?
Also be cautious and set realistic goals for the work. There's a time and place for starry-eyed big goals, but those goals only happen from careful planning and execution (and often with smaller goals that work towards accomplishing the bigger one). Try to make sure the ideas and tasks that come out of your meeting are things that can be realistically completed within a week or a month. Have a method in place to follow-up on this goals during the interim period as well.
If you use the commands explained above, you should have a pretty page generated at the end of your meeting that summarizes the discussion accurately. However, it's not enough to just have the minutes created. You should also send them out to your community members who may not have been in attendance! Be sure to communicate the minutes out to your team with a link in the main IRC channel and a summary on the mailing list. This will enable people following along remotely a chance to see the discussion and participate on the mailing list or in ticket comments as necessary.