Page MenuHomePhabricator

Function search + browse interfaces: As someone who would like to use or build functions on Wikifunctions, I need a way to find relevant functions, so that I can find an answer to my query or know that I am not duplicating work.
Open, Needs TriagePublic

Description

User stories

  • As someone who would like to use or build functions on Wikifunctions, I need a way to find relevant functions, so that I can find an answer to my query or know that I am not duplicating work.
  • As someone who would like to use or build functions on Wikifunctions, I need a way to search in the language I understand, so that I can painlessly find the answers I am looking for. (Sukhwinder)
  • As someone who would like to use or build functions on Wikifunctions, I need a way to find functions relevant to my areas of interest, so that I can freely share my own knowledge. (Jae-Hee)

Why are we doing this?

We want to enable users to locate functions that can help them find answers to their question and also ensure that users will not duplicate work that has already been completed

Proposed functionality or features

  • Search (possible or necessary to support natural language search?)
  • Sort (date created, last updated, etc )
  • Filter (language, programming lang, etc)
  • Tags/categories
  • Preview outputs / functionality
  • Description of some kind

Community needs

  • Ability to categorize or tag functions
  • Documentation around categorizing functions
  • Notifications / monitoring tools
  • A code of conduct

Questions

  • Is it preferable to have function writers tag/categorize their own functions?
  • Can we detect if a function is a duplicate?
    • User story: As an editor writing a function, I want to learn if there are almost-identical functions that already exist. E.g. Perhaps something like Bugzilla's "Possible duplicates" feature.
    • User story: As an admin, I want to find and merge duplicate functions, to keep the wiki clean.
  • Can we suggest tags/categories to editors?
  • Can we support natural language search?

Event Timeline

I believe we will eventually need a central "browse all functions" experience, which ended up being beyond the scope of what I could explore in the fellowship but... some of these points are addressed in my work here on: "Homepage- Day 1 Functions" and also in "Function Documentation"

1. Find relevant functions, so that I can find an answer to my query or know that I am not duplicating work.

  • On the function page, as part of the documentation, allowing users to link or add similar functions (or perhaps this is something we can automatically suggest) as a way of easily jumping from one relevant function to another, and also get a sense of what is already out there in that particular space so as not duplicate a function that already exists.

Screen Shot 2023-01-03 at 9.40.43 AM.png (1×618 px, 128 KB)

Screen Shot 2023-01-03 at 9.41.19 AM.png (912×1 px, 105 KB)

2. Find functions relevant to my areas of interest, so that I can freely share my own knowledge.

  • Highlighting several categories on the homepage that we know are of interest to certain groups - (and we can determine which groups we want to prioritize) for example, "functions for editing wikipedia" and "functions for natural language" and "functions to get started with"...

Screen Shot 2023-01-03 at 9.31.03 AM.png (1×1 px, 233 KB)