Overview of Duties

Here are the duties as defined in section 16.3 of the constitution.

1. to maintain an up to date register of the members of the Club and their postal or residential addresses and, upon the request of a member of the Club, make the register available for the inspection of the member;

We maintain an online database called MemberDB. We also keep paper copies of all membership forms in the top drawer of the filing cabinet for each year. It is a requirement of being an incorporation that we keep these details, so it is important to make sure all members fill in a new form, even if they are rejoining.

If someone who is not a club administrator wants to view the register, they are only entitled to see the name and postal address of other members, in which case it is best not to create a user for somebody who wants to view the register. If a member wants to view another members postal address they may ask an administrator (wheel or committee member), or if they want the entire list they must ask wheel to extract the relevant information. Other information about a person cannot be given away without the permission of that person, which requires them to either accept the club privacy policy (which doesn't exist) or for the person in question to give specific permission on a per-case basis.

2. A member may make a copy of or take an extract from the register but shall have no right to remove the register for that purpose.

Do not let people take the paper membership forms! They can have a copy of the postal/residential address info, but they can't have the originals

3. to carry out the administrative work of the Club for which the Committee does not appoint or elect an officer;

This is pretty much all the administrative work except what the Treasurer does.

4. to record the proceedings of all General Meetings and meetings of the Committee and make these minutes available in an easily accessible portion of the Club online presence;

The minutes should be uploaded to and emailed to ucc@ See Minutes.

5. to conduct and keep copies of all correspondence to the Club;

Most correspondence is by email. You can access ucc email at, or you can SSH to motsugo and run alpine, or you can forward your mail to another email address.

We have mailing lists. Most lists have archives, so you don't have to save copies. Mail sent to secretary@ should go to you, and won't be archived; forward it to committee@ or ucc@ if it is important.

You (and everyone else on committee-only@) should receive emails from mailman when a non-subscriber posts to a mailing list. Visit the URL and you can approve the message. Ask wheel or another committee member if you don't have the moderation password.

In addition to the list committee@, which anyone can subscribe to, there is a committee-only@. This is not actually a mailing list, and only the current year's committee members will get emails sent to the address. They will not be archived. Using this address is discouraged, but sometimes useful for sensitive conversations. Mostly we use it to give committee a chance to proof read important emails before they are sent.

We also have a post box with the guild. The address is:

University Computer Club
Box 22, M300
The University of Western Australia
35 Stirling Highway

This page should have that and other contact information if you need to supply it.

The mail should be checked at least once a week. To check it, go to guild reception, and tell the receptionist that you are the Secretary of UCC and need to check the mail in Box 22. The boxes are at the top of the stairs to the left of guild reception.

6. generally to carry out the instructions and decisions of the Committee relating to the administration of the Club;

This means to do things like organise clean-ups, notify people of meetings and events, contact people outside the club relating to non-financial matters, organising the AGM and SGMs, etc.

Normally anything important that needs to be done will be discussed at a Committee meeting. In fact it is important that Committee knows what you are doing.

You should also volunteer to do other tasks if you can, even if they are not administration related.

7. to ensure that an accurate copy of the Club constitution is maintained in an easily accessible portion of the Club online presence

The constitution is at

We should also have a pdf copy of the constitution in  /home/other/committee/somewhere , but [SZM] can't find it at the moment.

8. unless the members resolve otherwise at a general meeting, have custody of all books, documents, records and registers of the Club, other than those required to be kept and maintained by, or in the custody of, the Treasurer.

This effectively means that you can veto the throwing out of these things. Even though people seldom read the old books and documents, they are an important part of UCC's history.

Any member can borrow any book in the book shelves. Get them to add the details to

Duties as proposed under the 2014 Committee KPI Document:

  • to record all minutes of club meetings in a detailed manner and in a consistent format approved by the committee
  • to check the UCC mailbox on a regular basis
  • to communicate with the groups and membership of the club on behalf of the committee, including all emails to the mailing lists
  • advertise all UCC Events through UCC and Guild communication channels (Mailing Lists, Facebook, Guild Weekly)

Editing Things

Taking minutes can be done on any computer. However occasionally you might need to edit a file on one of the servers, for example the webpage, or the timetable data.

  • You can use nano or vim to do this.

    • nano might be easier, just move around with the arrow keys and type. There is a list of shortcuts at the bottom that look like ^X - the ^ means to press ctrl plus the key.

    • If you use the vigenda script, you will need to know how the basics of vim though

      • The arrow keys move the cursor
      • vim has things called "modes" for different tasks. Initially vim isn't in any mode.

        • Press i to start inserting characters

        • Press esc to go back to no mode.

        • Press a to append to the end of a line

        • Press :w to save the file

          • Add a file name if you want to save it to a different file name
        • Press :q to quit the file

          • Add a ! if you have made a change but don't want to save it

Where are the files

  • As of 2012 we are storing /home /away /services and /vmstore on Nortel.

    • You don't actually need to know how Nortel works (or doesn't work).
  • These directories are available on motsugo or mussel (and a few other servers). Use SSH to login to a server.

  • Important directories are:
    1. /home/other/committee - All committee related stuff. Feel free to dump things in here.

    2. /home/other/committee/agenda - Agenda related stuff.

    3. /home/other/committee/bin - Committee scripts

    4. /services/http - The website

    5. /services/http/infobase/minutes/ - Where meeting minutes go

  • Note that /home on motsugo or mussel is not the same as /home on a clubroom machine

    • If you store files in /home on a clubroom machine, you can get to it from a server by replacing /home with /away. From now on /home will refer to /home as seen by a server, not a clubroom machine.

  • A useful place to upload files for other people to view is your web director in /home/ucc/username/public-html

  • Upload and download files to and from servers with scp.


You will probably find it easiest to take minutes on a linux machine using a simple text editor (gedit or kate). The scripts to automate tasks will only work on linux machines. You can use a clubroom machine or your own laptop.

If you don't want to use linux, you can perform the tasks manually with PuTTY, but this will take a lot longer.

The scripts will only work if you continue the style of minuting used from 2009 to 2012.

Advanced users: OK, if you really want, you can change minutes-push and agenda-pull so that they work with whatever style you want to use. But why would you want to change perfection?

Setting up scripts

  1. Login to any linux clubroom machine, or if you have linux on your laptop you can use that.
  2. Make a directory to put the minutes and related scripts into:
  3. mkdir ~/minutesYYYY
    • (The ~ will automatically be interpreted as /home/ucc/username)

  4. Copy scripts from motsugo or mussel into the directory:
  5. scp username@motsugo:/home/other/committee/bin/agenda-pull ~/minutesYYYY/
    scp username@motsugo:/home/other/committee/bin/minutes-push ~/minutesYYYY/
    • These two scripts automate most of the work involved with the minutes (other than writing them).
    • How to perform the tasks manually is explained below

  6. Edit variables in the scripts
    • agenda-pull should not need modification.

    • Open minutes-push in a text editor, look for these lines near the top:

    • # Future secretaries: 
      # Change your name, tla and username here
    • And change the variables after them:
    • name="Your Name"

Before the meeting starts

  1. Obtain a copy of the agenda; this will be the template for the minutes
    • Use the agenda-pull script for this:

    • cd ~/minutesYYYY
      • Enter username and password.
      • The agenda will be downloaded to ~/minutes2013/YYYY-MM-DD.txt

      • If that file already exists you will get an error; make sure you haven't already pulled the agenda by viewing the file.
      • The file should contain a first line of what and when the meeting is, followed by all the various sections of the meeting.
      • See Agenda for how to change this template.

  2. Add attendance of the meeting at the top of the minutes
    • Include members present, committee members who sent apologies, and committee members who are absent without an excuse in seperate lists.
      • Optional: Seperate the committee members present from ordinary members present.
    • If people arrive late (after the meeting is actually opened, not after when it was supposed to open), add another list later for them.
  3. Add a line "Meeting opened at HH:MM" once the President or acting President opens the meeting

    • 24 hour time format is probably the best to use.

During the Meeting

  1. Reports come first, in the order: President, Vice-President, Treasurer, Secretary , Fresher Representative
    • These people have the option of writing their own reports using vigenda. Encourage them to do this, since it will save you a lot of time, and speeds up the meeting, because they have to think about what they will say before hand. Make sure you add anything extra that they say though.

  2. Other sections
    • The exact layout of the rest of the meeting will probably vary with the Committee and how they want to do things. This layout should be in the agenda already.

    • Typically (at least, since 2009) sections are:
      1. Committee Member Reports
        • May or may not include OCM reports
      2. Machine and Technical Reports
        • In this section, a wheel member will typically say things like "We have servers" or "The servers are fucked"
      3. Drink and Snack Reports
        • Normally the Treasurer will talk about how well things are selling, and what we need more of
        • Committee will then organise a coke run if necessary
      4. Mail Guild and SOC Reports
        • The Secretary will say "We have mail" or "We don't have mail" or "I didn't check it"
          • Note what the mail was
        • Attendees for upcoming Guild/SOC related meetings or busy bees will be organised
      5. Action Items
        • We have a rather militaristic system of "assigning actions" to committee members
        • In this section people report on how much of what they "volunteered" to do has actually been done
        • Usually make the first note "Not Done", "In progress", or (occasionally) "Done"
        • Then add more detail on the current status if required
      6. General Business (also known as General Shouting)
        • In this section, committee members yell at each other a lot
        • Occasionally new Action Items (that aren't covered by the previous sections) will be assigned
      7. Current Action Items
        • Don't add this until the meeting is finished. It is used to summarise all action items that still have to be done, including any new ones.
  3. Add a line "Meeting closed at HH:MM"

General advice

  1. The President is supposed to be the chair, but if things are not on track feel free to bring people back to the current topic
  2. You can paraphrase people's words to make them clearer and more concise.
  3. Some people think the minutes should not be humourous. Others disagree strongly.
  4. Note times at which members arrive/leave the meeting.
  5. Use indenting to show sub-topics: two spaces for each level followed by a hyphen '-' and a space
  6. In meeting minutes, refer to people by their TLA like this: [TLA]

  7. See for an example of meeting minutes.

After the Meeting

  1. Add an extra section "Current Action Items" after the "Meeting Closed" line
    • Put any action items that are still in progress as well as any new action items in this section.
  2. Edit the minutes
    • You may want to remove:
      • jokes that aren't as funny as people thought at the time
      • swear words (although those are often just left in)
      • snarky comments that you wrote while everyone was shouting and not paying attention to each other
      • offensive comments (unfortunately people do make them)
    • You should also rephrase poorly worded lines
    • Complete anything that you didn't have time to finish noting during the meeting
  3. Upload the minutes and email ucc@
    • You should do this as soon as possible after the meeting finishes, on the same day if possible.
    • cd ~/minutesYYYY/
    • The script will automatically look for a file YYYY-MM-DD.txt based on the current date.

    • If it doesn't exist (because you are running it a day or so after the meeting), you will have to enter the date.
    • You will get an error if you try to upload a previous meetings minutes on the same day as a later meeting. You can fix it by temporarily renaming files:
    • mv YYYY-MM-DD.txt YYYY-MM-DD.txt.old
      mv YYYY-MM-DD.txt.old YYYY-MM-DD.txt
    • Otherwise, the script should "Just work" (TM). If it doesn't you can see a wheel member (preferably [SZM], [GOZ] or [DTK]), or try and fix it.


Any member who participates in a Committee or General Meeting should have a Three Letter Acronym (TLA).

If they don't have a TLA, try and get them to choose one before the meeting. If that isn't practical (say at a General Meeting where there are 20 people without a TLA), refer to them using their full name, get them to pick a TLA later, and then replace the name with the TLA.

The TLA list is here.

It might be faster to run tla on motsugo or mussel to check TLAs.

To learn how to add new TLAs see or /services/http/member/tla.README on motsugo or mussel. Unfortunately it is a bit complicated, you might want to get a past Secretary to demonstrate.


  • The agenda serves as a template for meeting minutes. It can be downloaded to any linux machine by using the agenda-pull script.

  • Any member may add items to the agenda with the agenda script. Committee members may edit the agenda to insert their reports directly using vigenda.

  • If Committee decides to remove or add sections from all meetings, you will need to manually edit /home/other/committee/agenda/agenda.default on motsugo or mussel.


There are a number of scripts that automate secretarial tasks. These can be found in  /home/other/committee/bin  on motsugo or mussel.

Most of the scripts are written in bash or zsh (which is pretty similar).

If there are problems with the scripts and you can't fix them yourself, ask a wheel member.

The scripts are all in  /home/other/committee/bin 

agenda - Allows anyone to view and add items to the current agenda
agenda-pull - Make a template for meeting minutes from the current agenda
minutes-push - Upload minutes to website and send email to ucc@
meeting-reminder - Sends a reminder of the next meeting. This should be run automatically as a cronjob
agenda.weeklyrotate - Resets the agenda. This should also be run as a cronjob
vigenda - Allows committee members to directly edit the agenda. Should only be used to insert reports.

Windows Versions

[GOZ] kindly worked out how to make agenda-pull and minutes-push work under Windows. A zip file should be found at /home/other/committee/bin/

If you ever change the original scripts, rebuild the zip file using /home/other/committee/bin/win-minutes/

Other Scripts

tla - Enter a username, TLA, or full name to find out the others (and variants) - Alter this and run it to complain at people who haven't paid up membership fees (and variants) - Alter this and run it to lock accounts when people still won't pay the membership fee

Scripts in /usr/bin

Some scripts have symbolic links in /usr/bin so that you just have to type its name on motsugo or mussel to run it from anywhere (as opposed to the full path).

These are:


Meeting Reminders

The script meeting-reminder will do send out a single email reminder. Supply the day of the week and time; eg:

 ./meeting-reminder Weekday time
  • You should find and change the source email:



The Secretary is required to give four (4) days advance notice of meetings. It would be tedious to have to send an email manually every week. This is what cron is for.

  • Run this on motsugo:

  • crontab -e
    • Edit the crontab as follows lines:
    • # Meeting reminders:
      # 4 day warning
      M H * * D-4 /home/other/committee/bin/meeting-reminder Weekday H:M
      # 24 hour warning
      M H * * D-1 /home/other/committee/bin/meeting-reminder Weekday H:M
      # 6 hour warning
      M H-6 * * D /home/other/committee/bin/meeting-reminder Weekday H:M
      # 1 hour warning
      M H-1 * * D /home/other/committee/bin/meeting-reminder Weekday H:M
    • Replace H and M with the hour and minute of the meeting (24 hour format)
    • Replace Weekday with the full name of the day of the week the meeting is on; eg "Tuesday"
    • Replace D with a number indicating the day of week. 0 is Sunday
    • I've shown -1, -6, +1, etc to indicate you should change the value by that number
      • Remember to wrap things around, eg: 4 days before Tuesday is Friday, so D-4 == 5

    • For Example, a meeting at 5PM on a Thursday afternoon should look like:
    • # Meeting reminders:
      # 4 day warning
      0 17 * * 0 /home/other/committee/bin/meeting-reminder Thursday 17:00
      # 24 hour warning
      0 17 * * 3 /home/other/committee/bin/meeting-reminder Thursday 17:00
      # 6 hour warning
      0 11 * * 4 /home/other/committee/bin/meeting-reminder Thursday 17:00
      # 1 hour warning
      0 16 * * 4 /home/other/committee/bin/meeting-reminder Thursday 17:00


There is a timetable script at: And a script to look up the results at:

Currently the timetable only does weekdays and only from 9:00am to 6:00pm. Someone should probably fix this.

Organising a Meeting Time

  1. Add a new event to the timetable by adding it to the top of /services/http/cgi-bin/.timetable on motsugo or mussel.

    • Comment out any previous events that aren't needed.
  2. Make a new file in /services/http/cgi-bin/ttdat with the same name that you chose in the previous step
  3. Run chmod 664 on that file
  4. Send an email to committee@ telling people to fill in the timetable with their availability.
  5. Pick the best time, and send an email to committee@ saying that this will be the new meeting time
    • Normally committee meetings run for at least one hour. It is not unusual to have two hour meetings.


UCC Events Page will show the current year's events page.

  • Make sure that /services/http/infobase/events/index.ucc is a symbolic link to the current year's events page before editing it. Otherwise you might over write the history of previous events.

  • cd /services/http/infobase/events/
    ls -al index.ucc
  • Should show something like this:
  • lrwxrwxrwx 1 matches wheel 14 Mar  7 09:40 index.ucc -> events2013.ucc
  • The important part is the index.ucc -> events2013.ucc.

  • If the symbolic link is in the wrong place:
    • Check that there is actually an events page with ls eventsYYYY.ucc

    • Copy a previous year's if there isn't:
    •     cp events2013.ucc eventsYYYY.ucc
    • Remove the symbolic link (won't delete the page it points to)
    •       rm index.ucc 
    • Add a new symbolic link:
    •     ln -s eventsYYYY.ucc index.ucc
  • Edit eventsYYYY.ucc to make it up to date.

Facebook Events

  • Other people probably know more about these than [SZM]
  • There is a UCC Facebook Group that you should be an administrator for.

    • Once you are, you can create events there. Be sure to add a link from the UCC Events page to the Facebook one.


  • You can advertise events in Pelican or G-News, but we rarely do this
  • There is a requirement that General Meetings be added to the Guild Calendar. [SAS] and [GOZ] know how to do this.

Manual Minutes

In special cases such as a General Meeting, or when the scripts are broken, you can follow this guide for how to manually do what the scripts do.

The scripts do a lot of unnecessary error checking... that is why they are a lot longer than this section would suggest they need to be.


  • Run the following:
  • scp username@motsugo:/home/other/committee/agenda/agenda ~/minutesYYYY/$(date +%F).txt


  • Run the following (or do the equivalent with PuTTY):
  • scp ~/minutesYYYY/$(date +%F).txt username@motsugo:/services/http/infobase/minutes/YYYY/
  • Send an email to ucc@ with subject "Minutes of Meeting YYYY-MM-DD" and copy the minutes into the body
  • Manually edit /services/http/infobase/minutes/YYYY/index.ucc to contain a link to the new minutes file.


  • Just send an email to committee@
  • The script will add "Current Action Items" automatically, you can do this manually by copying from the previous meeting minutes.

The Club Seal

As an incorporated entity, UCC has a club seal which is supposedly kept in the custody of the Secretary, and used on all mail sent by the club.

The seal is actually kept in the safe. The Treasurer, Vice President and President will have keys.

Things don't work because I don't have permissions

Tell a wheel member!

I need more help!

Talk to a past secretary and/or wheel member.