Jump to content

Wikifunctions:Valuable

From Wikifunctions

Wikifunctions is a free library of functions to support the Wikimedia movement. That means that content is allowed only if it is valuable for the mission. Here are three ways of thinking about what it means to be valuable – if you're proposing a new Function, is it…

  • Applicability — … something that works in many situations?
  • Utility — … something that lots of people can use, without needing lots of expertise?
  • Re-usability — … something that can be used in many different contexts?

Examples of low-value ideas

  • ❌ A function that takes a list of strings, and outputs a formatted list in German.
    • Instead, take the language as an argument, so over time it applies to more locales and contexts.
    • ✅ A function that takes a list of strings and a language, and outputs a formatted list in that language.
    • ✅ A function that takes a list of language-typed strings, and outputs a formatted list in that language.
  • ❌ A function that takes a string, and outputs a Boolean if it looks like the English string 'true' or 'false'.
    • Instead, use the normal types expected, or if processing human input, add the locale as an input
  • ❌ A function that takes five Booleans, ANDing the first three, NOTing the fourth, and XORing the lot against the fifth.
    • Instead, help users combine more general Boolean functions (AND, NOT, XOR) together.

Examples of high-value ideas

  • a function that is used in many compositions in Wikifunctions, e.g. same Integer (Z16688) which compares two integers.
  • a function that is general and accepts input that make it specific and useful. E.g. (!) carbon dioxide emissions of journey (Z18421) which takes both the liter/kWh/kg gas consumed and carbon dioxide equivalent multiplier and can thus be used to calculate emission for any mode of travel where those two are known (no matter the distance traveled, number of passengers or other factors).