As a Delaware non-stock membership corporation, the ASF’s bylaws specify that we hold an annual meeting of the membership. Since the ASF is also a distributed organization of volunteers, we hold our meetings a little differently than most companies – meeting on IRC over three
Since we’re in the middle of our meeting this week, here are some answers to common questions. If these are valuable, we can add them to the ASF’s official member’s meeting process. I’ve also written a timeline of pre-meeting setup, as well as about the work after the meeting.
We use IRC (not voice calls), we have proxies for attendance, and we make all the important decisions asynchronously. The meeting on IRC is held in two parts, with a 40+ hour recess in the middle, allowing part of the meeting to be realtime, and part handled over email.
It’s probably a lot more boring than you imagine. Since we recess from the meeting to run balloting via email, the interactive IRC portions of the meeting are actually quite dry. Since most of our discussions happen asynchronously over mailing lists anyway, the interactive time is usually pretty limited. Typically the few questions we get serve mostly as prompts for the right people to have a
More specifically: the Member Meeting happens in two parts on IRC: Tuesday we review the first half of the agenda and announce the special orders for a vote. We then recess the meeting and handle voting via email over the next 40+ hours. We reconvene on Thursday for the second half to hear the results of the vote… and that’s it!
The Chairman formally opens the meeting, and then essentially runs through the agenda interactively on IRC.
After a Call To Order, we hold a Roll Call, where members mark attendance at the meeting. This is important to comply with Delaware corporate law: we need to show that a quorum of members are ‘present’ at the meeting to know that we can conduct official business.
Our ASFBot code logs the IRC
Once we count that we’ve reached
The member’s meeting does offer a brief Q&A period, although since most conversations happen on our mailing lists, there are rarely questions. Most questions here get a simple answer, which is partly a prompt for a deeper discussion amongst the members later on our lists.
Then we announce the Special Orders, which are the three sets of ballots that Members will be asked to vote on during the recess. They include an “Omnibus resolution” about basic corporate affairs, and then two elections: one for the board, and one for new members. All data for the elections was available to the members ahead of time, so this is merely a formal announcement during the meeting.
Then… we take a recess!
Once the Chairman formally calls the IRC meeting to a recess, our vote counting volunteers fire up the Apache STeVe code! STeVe is a complete election running system that sends an email to each member with a secure voting link. That way, members who can’t attend interactively on IRC (or, who live someplace where the meeting is in the middle of the night!) can simply read their email the next day to get their ballot. Members have about 40 hours to cast ballots during the recess.
All voting happens on the STeVe website with a simple UI, and the STeVe system also validates all ballots privately, with a small team of volunteer vote monitors.
Yes – on Thursday, after the 40+hour recess, the IRC meeting is formally reconvened. At the end of the recess our vote monitors have tallied the ballots and present them to the Chairman to announce during the meeting.
Important: at this point, we can announce the new board: as soon as they’re elected, they become the new directors of the ASF. However, newly elected members are not announced, because they haven’t been told yet.
Member candidates are not told ahead of time, in case the vote doesn’t elect them in. Once they have been formally elected, the member who nominated them reaches out to welcome them and send them the membership application. Newly elected members have 30 days to sign and return the application, at which point they become voting members of the ASF.
As our official corporate meetings, we need to keep records to ensure we’re fully compliant with Delaware law. Since we’re also software people, we store all our records in a private Apache Subversion repository. This allows for strong access control and tracking of all changes to our records as well.
Foundation Members all have access to our
/foundation repository, where the Meetings directory holds the agenda, README.txt, board and member ballots, a full raw IRC log, and more data about attendance and proxies. We save all data about membership meetings perpetually. Members can see the agenda and information about the March 2000 member’s meeting held at ApacheCon in Orlando!
No. While we publicly announce the newly elected board, and the list of any members who have been elected (and who accept the honor in the next weeks), the details of Member meetings are not public. Those interested in understanding ASF governance should instead see our published board meeting minutes, which is where the action is anyway.
Both to show compliance with corporate law, and for our internal records, we track attendance in a couple of ways.
During the first half of the IRC meeting, we take Roll Call. This lasts as long as it takes to show that we have a quorum (1/3) of members in the meeting – either who respond directly, or who have a proxy respond on their behalf. Note that members can announce their attendance at either half of the meeting (Tuesday or Thursday) to be ‘present’ during the meeting.
Separately, every member gets a ballot to vote in special orders, even if they don’t attend the meeting. Any member who actually submits their vote(s) is marked as voting at the meeting. Either attending, sending a proxy, or voting counts as participating in the meeting, which is what’s important for us internally.
Note that Emeritus members do not have a vote in our meetings, and don’t count for
- For more information:
- Official overview of Member Meetings
- Timeline before meetings, and after the meeting
- Details of how we count and process votes
One thought on “How Apache Runs Annual Member Meetings”