How Apache Directors Run ASF Board Meetings

I was recently fortunate enough to be re-elected to the ASF’s Board of Directorsalong with 8 other excellent candidates. Since there were two new directors elected – Isabel and Roman – we plan to have returning directors work together to improve our documentation of how we run our board meetings so smoothly.

This is my personal timeline of how I volunteer as a director, in terms of our monthly board meetings (there are a lot of other things directors do too!).

I’ve written overviews about Apache governance and the board, our board meeting process, and I’m also a PMC Member on the Apache Whimsy project that builds the tools that automate our meetings. So there’s plenty of overviews, but we don’t yet have a detailed written description of how a new director can use the Whimsy tool to simplify reviewing our giant monthly agenda with 80+ reports to review. So here goes!

Second Wednesday of the Month: Check Shepherd Reports

Board meetings are scheduled the third Wednesday of every month, so my director work starts about a week before the meeting. Some projects have already put their reports into the agenda, and special orders are often (but not always) available then. So I open up my web browser and head over to Whimsy’s board agenda tool:

https://whimsy.apache.org/board/agenda/ (Note: Private to ASF Members only, sorry!)

After I login, this brings up the agenda homepage, which is a listing of every item in the monthly board agenda in order. The agenda list includes items like any corporate board agenda, like a Roll Call, officer reports, and discussion items. It also includes any Special Orders (resolutions the board is considering), and importantly a list of 70+ Apache PMC project quarterly reports. The ASF publishes all board meeting minutes after approval; check them out.

Whimsy color-codes each Agenda item, so I know if it’s been posted to the agenda yet, or if there are any issues raised on that item or comments from other directors.

How I Review My Assigned Shepherd Reports

I’m the Shepherd for my randomly assigned 1/9th of all reports, just like each of the 9 directors, so I first want to review reports I’m the primary watcher for. Whimsy makes this easy – I just select Navigation – Queue from the top menubar. That takes me to a detail page that lists only the agenda items I’m assigned as Shepherd for.

Here, I have a list of ‘my’ reports for the month, with detailed status for each: has the PMC chair submitted it yet, are there comments or issues with any of them, etc. So I read through the list, and for each report:

  • If it’s red – not submitted yet – then I head over to that PMC’s private@ mailing list.
    • If the PMC has already drafted a report – either on private@ or dev – I skip it, trusting that they’ll submit the report to the agenda soon.
    • If I can’t find evidence the PMC is writing their report, I press the blue (send email) button on the page. That opens up my mail client to email the PMC Chair, the private@ list, and the board list with a preformatted email reminding them to submit reports on time.
  • If the report is yellow, it’s in the agenda. Click on the PMC name open the agenda page with their report.
    • There are a lot of factors in reviewing reports; I tend to focus on the community aspects first, and making sure the project has provided a picture of their activity.
    • Most PMC reports are fine, so I’d press the blue (approve) button at the bottom of the report. That saves my ‘preapproval’ locally, ready to commit later on to the agenda on the server.
    • Sometimes, things in the report aren’t clear, or I have additional questions. In that case, I press the blue (add comment) button, and enter a short question in the dialog. That gets saved to commit later.
    • At this point, the top navbar has a little red ‘1’ box – showing that I have local approvals or comments to commit. I’ll do that later.
  • I’m ready for my next Shepherd report, so I look at the bottom navbarand click theĀ  (next) button with the name of my next Shepherd report (in agenda order) Whimsy knows which projects are assigned to me this month! I press that button (or just hit right arrow).
  • That opens up the next project report for me to review – read it and approve or comment.
  • Eventually, I’ve read the 8-10 reports I’m assigned as Shepherd for the month. When I press next/right arrow now, it brings me back to the Shepherd queue overview page again!

I’ve probably sent one or two emails for late reports, approved the rest of my Shepherd reports, andĀ entered a comment or question on one. Each of the actions I’ve queued up is listed here on the Shepherd queue page. Now I just click (commit) at the bottom of the page. That opens a dialog with a preformatted checkin comment – press Commit, and I’m done. Whimsy automatically ensures that all the actions I’ve taken are committed to the right place in the agenda. I’m done for today.

That Weekend: I Review the Whole Agenda

By the weekend, most reports are submitted in the agenda, so I find time to tackle the whole agenda. Open up the agenda tool again, and I instinctively press (refresh) at the bottom – mostly superstition: Whimsy usually keeps everything updated behind the scenes magically.

Now, I need to review all the items that are actually submitted. That’s easy: select Navigation – Queue. This brings me to a similar page like the Shepherd queue, except it includes all the reports that are actually in the agenda by now.

I’ll spend an hour reading reports one by one (sometimes I start from Z and work backward – the Queue works both ways). When my eyes get tired from reading reports and following links, it’s time to take a break – now I hit the red ‘xx’ marker in the top navbar telling me how many reports I’ve marked. That brings up a page where I can (commit), and checkin all the work I’ve done. Time for a break.

If there are any important questions that come up at this point, I’ll often put a comment on the agenda, and then use my email client to email the question to the PMC directly. Sometimes, a PMC will write back quickly enough that we can get the question answered in the report itself before the board meeting. Sometimes, there will be a serious issue with a PMC’s report – in addition to adding a comment, I’ll also press the (flag) button. This marks the report for special discussion during the meeting.

I’ll also review all the Special Orders (formal resolutions proposed) and Discussion Items (topics for the board to discuss new proposals) to see if anything needs questions asked before the meeting.

Monday or Tuesday – Before The Meeting

By now, all reports should be submitted, so I’ll come back to the agenda tool and Navigation – Queue. This will walk me through just the remaining reports that are submitted and I haven’t yet preapproved. I’ll spend the time to read and review all the rest, and then commit my work here again.

Now it’s time to look at the whole agenda again, and see if there are any remaining issues still:

  • Anything red is not submitted yet. Double-check that some Director has contacted the PMC or officer to ask them to submit (either ASAP, or plan to submit for next month).
  • Anything in dark yellow has a ‘flag’, meaning at least one director has serious questions or comments on the report. I’ll read that director’s comments, and briefly review the report again, so I’m prepared for the meeting.
  • What about other director’s comments? I’m curious if someone else spotted smaller issues, so I’ll click on Navigate – Comments. This brings me to a listing page, by report, of all the comments everyone has entered about reports. Once you read all the comments (and can reply by adding your own comments on any item), you can also ‘Mark Read’ all current comments.
  • I sometimes remember that I have Action Items assigned from the previous month – so at this point, I’ll click on that section of the Agenda. Directors with Action Items can click on the Status: right in the page to get an edit box to type in status or notes – and then commit the changes.

Wednesday – Board Meeting Day!

I always make sure to look for last-minute traffic on the board@ mailing list, and to login to our IRC backchannel well before the meeting starts. That helps answer a lot of minor questions or changes that might have been made. I’ll also make sure the headset for my phone is setup for dialing into the conference line.

Once the meeting starts, everyone will have the agenda tool open in a web browser – sometimes two copies. I also often have a list archive browser page open, in case questions come up about mailing list traffic in a specific project.

I usually follow along hitting Next or right arrow to view the current item or report that we’re discussing on the call. This shows all the information – the report, any comments, any comments or mail discussions from past months – on each project or officer report page, so it’s a great resource.

When it comes time for special orders, we get to see even more Whimsy magic. While votes on board resolutions are by voice – the Secretary asks us each to vote yes/no on the call – the Secretary is recording the vote live in the Whimsy tool. Right after the last director votes ‘yes!’, your local copy of the agenda tool will update with a new Minutes section at the bottom of the resolution, noting it passed unanimously.

After The Board Meeting

After the meeting, the Chairman sends out a brief report to committers, and the Secretary uses Whimsy to send all director comments to the relevant PMC’s private@ mailing lists. In the next day after the board meeting is also the time for directors with Action Items to follow up on them.

Often if a serious question about a report comes up during the meeting, a director (by default, the Shepherd for that report) will be assigned an Action Item for it. The action is to ensure the PMC sees the board’s feedback, and follow up to ensure that an answer or reply gets to board@ before the next meeting.

Being able to do everything in the Whimsy agenda tool is a lifesaver for reviewing the agenda. Everything is always kept up to date, and I can do everything quickly directly from a single web browser. Even better, in the hectic hour before the meeting, Whimsy is smart enough to resolve most checkin conflicts (if someone else is doing preapprovals at the same time!) for you.

While the code is customized to the ASF and our specific board agenda format, the Apache Whimsy project is almost at the point that we could provide the software to other organizations if there was a need. Experience with Ruby, Rails, Sinatra, httpd, and Subversion or Git is required to run the server.

Published by

Shane

Briefly, Shane is: a father and husband, a friend, a geek, a Member and director of the ASF, a baker, an ex-Loti, a BMW driver, a punny guy, a gamer, and lifelong resident within the 495 belt. Oh, and we have cats.

What do you think?