Who does what?
In the "About" box of PCGen, you'll quickly notice the PCGen has a monkey theme. Bryan McRoberts chose "Chief Code Monkey" as his title when he first made PCGen available to the public, and later adopted the title of Benevolent Dictator. Other teams formed to focus on different aspects of PCGen, and all have taken to referring to themselves as monkeys. In the About box we try to list everyone who has contributed to PCGen in chronological order, and the monkeys are grouped into Code, Content, Test and Engineering.
Here's a primer on what each team does, see the Board of Directors page for a list of those in charge of each team:
Code Monkeys
This team works on the java code. Their issues are located at
http://jira.pcgen.org
.
Content
This team encompasses all content published with PCGen. This
includes Data, Docs and Output Sheets.
Data Monkeys
The Data Monkeys work on the data for all the books you load in
PCGen. They help answer data questions at the PCGenListFileHelp.
They have pcgen_experimental group where they actually work on the
different books we're trying to get into PCGen. Their issues are
located at
http://jira.pcgen.org
.
Doc Monkeys
The Doc Monkeys work on the documentation. Their issues are located
http://jira.pcgen.org
.
Output Sheet Monkeys (OS
Monkeys)
The Output Sheet Monkeys work on the output sheets which are used
to export to character sheets in PCGen. These templates involve
xml, xsl and html. Their issues are located at
http://jira.pcgen.org
.
Public Relations Monkeys
This team encompasses all public relations work with PCGen. This
includes Publisher Liaison, Data License and Advertising.
Publisher Liaison Monkeys
This team servers as the contact for all the publishers. This way
all contact with publishers can be more easily managed and
consistent.
Data License Monkeys
This team makes sure that all material included in PCGen meets any
license requirements (not just the OGL).
Advertising Monkeys
This team deals with Advertising PCGen in magazines etc.
Admin Monkeys
This is the team that monitors the pcgen yahoo site for bug reports
and feature requests. They also prioritize all issues submitted at
the JIRA site and generally organise the project.
More Detailed Listing of what each team does:
Code Monkeys
Requirements:
Java (any amount)
Some code monkeys work on the interface (GUI), some work on the
engine (business logic), some work on optimizations and others
perform routine maintenance. All levels of java (even newbie) are
accepted and if you've got the time, we've got plenty to do! There
is a Developer's Forum where questions from really basic to very
advanced can be asked. I'm generally happy to let people work on
the section of code that most interests (or irritates!) them,
though I ask that all developers help out with the high priority
issues (bugs or feature requests at
http://jira.pcgen.org
) since that's
what has been deemed to be necessary for the next production
release of PCGen.
Data Monkeys
Requirements:
Accurate typing, preferably some amount of
experience with a computer language of any kind
Newbie data monkeys are generally asked to do an initial swipe on a
book. Most data monkeys develop a mastery of one area of data (like
classes or feats or races), and as they advance they are asked to
check the work of other newbie data monkeys. All work currently is
done in a proprietary data language called LST (after the adopted
extensions of all the data files) and most of it is pretty easy to
pick up. There are some bits of it that are more difficult to
master, and data gurus are highly prized. :) As data is worked on,
it's uploaded to pcgen_experimental so the Data License and
Publisher teams can check them. Once a source is completed and
checked, it's added to the PCGen releases.
Doc Monkeys
Requirements:
Ability to describe clearly how to use
software and to present it in an appealing manner.
The Documentation team is responsible for making sure that the
screen pics are up-to-date and that the descriptions of how to use
the interface makes PCGen understandable for first-time users. They
also update the documentation on the LST language to help data
monkeys do their work. The documentation is done in html.
Output Sheet Monkeys
Requirements:
Familiarity with xml/xsl/htm, preferably
some java
Some OS Monkeys work in xml/xsl, and others work in html. It's
helpful if they also know java so they can look at the code of
PCGen itself to better understand (and even modify) what it's doing
when it outputs a character sheet.
Publisher Liaison Monkeys
Requirements:
Desire to communicate to publishers and
ability to communicate clearly
Since this group is our contact point with all publishers, it's a
small group.
Data License Monkeys
Requirements:
Ability to understand and explain licenses
like the OGL, LGPL and other licenses with which PCGen must
comply.
This team checks all data to make sure that it complies with the
OpenGamingLicense
,
the
Lesser GPL
and
any other licenses that apply to PCGen. Any issues found are
immediately reported - to pcgen_experimental if it's a data issue,
to the
JIRA issue tracker
if it's a code issue.
Admin Monkeys
This is the team that monitors the pcgen yahoo group for bug and
feature requests. Any bugs that are confirmed are entered as a
issue in the appropriate areas. After the confirm/reject a report,
they respond to the user's post to indicate the issue number or to
indicate that they couldn't reproduce it. Some Admin staff help
monitor the Files folders where users can upload character files
that exhibit a bug they're reporting. Other Admin staff help
monitor all items submitted to the various groups and make sure
they're not duplicates, and adjust the priority on the item
according to the list of rules supplied by the Board of
Directors.
If you have time and talent, which team should you join? All the teams are always looking for new people to join. It's understood that there's a learning curve for anyone new, but we were all there once so we're all glad to help mentor any willing volunteers. PCGen is a lot of fun because it helps make our games more manageable and because the teams get along so well. If you get tired of one team, it's no problem to switch to another. If you're not sure which team to join and you think you fit the needs for a few of them - let us know and we'll be glad to put you wherever the most dire need currently resides.