social.skills
Provides functions for managing skillsets and user proficiency levels. These proficiencies can then be queried by other users on the same network to find help or advice.
iknow
Assigns or displays skill proficiency levels for the current user.
Description
Assigns a proficiency level to yourself for the named skill. If no skill is named, shows a list of all skills you possess (grouped by proficiency levels).
Skills which do not already exist will be automatically created. As such, it is recommended that users attempt to follow local naming conventions whenever possible.
Usage
[<skill name> [<proficiency level>]]
Examples
(iknow Perl novice)
theyknow
Displays all of the registered skills of the named person. You cannot modify another user's skills or proficiencies.
Usage
<nick>
Examples
(theyknow Beauford)
idontknow
Description
Unregisters your proficiency in the named skill.
Usage
<skill name>
Examples
(idontknow Perl)
whoknows
Description
For the named skill, displays all the users who have registered a proficiency. Users are grouped together by proficiency level and displayed in order. If the skill has a description or any related skills, those are listed as well.
If multiple skills are provided as arguments, then the intersection of users having registered proficiencies in them will be displayed.
Usage
<skill name> [<skill name> ...]
Examples
(whoknows Perl)
(whoknows Perl Apache PostgreSQL)
skills
Description
Displays the list of all skills currently registered by at least one person on the current network, if called with no arguments. Each skill in the list will also be shown with the number of people who claim to have some proficiency.
If called with a string argument, that value will be used to display only those skills which contain the value as a substring. Searching is case-insensitive.
Usage
[<search string>]
Examples
(skills)
(skills sql)
skill-add
Description
Adds a new entry to the skills database, without registering any proficiency level on your behalf. If the skill already exists, nothing is done.
Note that only skills with at least one registered user on the current network will be displayed when someone searches or displays the skill list.
Usage
<skill name>
Examples
(skill-add Perl)
skill-levels
Description
Displays the list of proficiency levels available for use when registering your knowledge of a given skill. The proficiency levels are displayed in increasing order with brief descriptions of each one.
Examples
(skill-levels)
describe-skill
Description
Permits the addition of a description to a skill. Descriptions are free-form strings, limited only by the current network's message length limits and formatting options. Because these descriptions are displayed every single time someone looks up the skill, it's recommended to keep them brief and to the point.
Usage
<skill name> <description>
Examples
(describe-skill PostgreSQL "An object-relational database management system.")
relate-skills
Description
Relating two skills causes the related skill to be shown whenever the other is displayed. Related skills are not displayed with their registered users, but simply referenced as potentially interesting additional skills for the querier to investigate.
Multiple related skills may be listed and they will all, in turn, be connected to the original skill.
Usage
<skill name> <related skill name> [<related skill name> ...]
Examples
(relate-skills PostgreSQL SQL)
(relate-skills Puppet CM Python)
clear-skills
Description
Clears the skills list for the given user. It would be wise for most instances of this software to restrict access to this function via (auth-deny).
Usage
<nick>