Hello everyone!


I have been a somewhat active user of wikipedia and other wikimedia websites, and a while ago, I found out about wikifunctions. (As well as the Mailing lists!!)


At first, I thought it would be a useful programming tool, a repository of useful functions; however a lot of the functions there are seemingly trivial. 

Examples of such "trivial" functions are:
substring exists
To Uppercase (as well as "To lowercase")

and most of the other functions "advertised" (for lack of a better term) in the "Functions to try out" section.


Then I go to more functions... and there are a lot of just string and boolean functions (*).


And then there are a lot of "functions" to do with natural languages. Which take up a good (70% at a guess) chunk of all of the functions.


Finally at the bottom of this there are some list based functions, which all seem trivial as well.


So now I want to ask a few questions.

  1. In the "What Wikifunctions is not" page it says: "Wikifunctions is not an encyclopædia of algorithms". Why not? Would it not be better to have a concentrated, standardised place for useful algorithms (like Dijkstra's or sorting algorithms)?
  2. Why are pretty much all of the functions trivial or just use built-in functions/modules?
    I get why the languages used (Python and Javascript) are the ones that are used (easy to read, high-level, popular languages) however I feel it would be better to use less
    built-in functions/modules, for example there is this function for SHA-256 encryption which literally imports a module, which feels like a bad thing to do.
  3. Why are all the functions named something like `Z10124(Z10124K1)`?
  4. Why so many natural language functions? It seems to me to be many more than all of the actual programming language functions? And, why?
  5. In the FAQ, it says: "Wikifunctions is the first step towards building Abstract Wikipedia." what is meant by this? And, once again, why?
  6. What can I do to help it reach it's full potential? This feels like it could be used in future to help (newer) programmers, which would require a lot more (complex) functions.

I want to finish this by saying that I do not think this is bad; just extremely unfinished! I think it has lots and lots of potential, it just needs more love from the community, which I hope it gets.


Thanks,

Noah Poulton.


(*) I am aware that in the FAQ it says "

"

With no explanation other than it being a new project.