[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lojban] Re: CLL and modern Lojban





2017-12-11 12:06 GMT+03:00 <sukender1@gmail.com>:
coi

(I'm making some progress in creating a prototype for a submission system (in order to show you all, test, validate, etc.). But I have a few pending issues. I'll let you know!)
Meanwhile...

Protection against bashing and other biases
I had a discussion with someone and he told me the current system design may be subject to a (small) risk of "user bashing". If someone doesn't please people (for instance by saying things unrelated to Lojban, about religion, politics, etc.) he/she may be unfairly "punished" by other people, lowering their grade towards this user. As a result he/she may quickly loose permissions even though the contribution from that user was important and his/her Lojban level is very high.
Some other biases of the same kind may exist, such as the opposite behavior (a numerous group of people with no knowledge, getting over the community with unfair voting), similar to the "51% attack".

Actually the risk is supposedly very low at the beginning (initial people are generally fair about each other, because very involved). Then the risk grows as newcomers arrive, but decreases with the number of users (the more users, the smaller impact each will have). So this is quite important to address this issue now, in my opinion.

However, I'm convinced there is no way to predict all "unfair" behaviors, and that even powerful and costly algorithms can't help us much. This is why I'm relaying the solution which was proposed to me (with minor adaptations):
  • Let N people be "guardians":
    • They would have the role of fighting unfair behaviors (and only this role).
    • And they would have administrative privileges (over the system) for this: ban people, restore some permissions, etc.
    • Hopefully, they would almost never have to do so...
  • Make sure all their actions (as "guardians") are logged and documented, and publicly accessible. Everyone could then ensure their role is respected (= that they do not use their permissions to tackle other topics, such as Lojban-related ones).
  • One user may have various roles AND a "guardian" role at the same time, of course.
    • Maybe that would require two distinct user accounts?
  • Elect those "guardians" periodically (say each 6 months? 1 year?). Election would use common rules:
    • Everyone can be candidate.
      • If there are less than N candidates, then missing candidates are algorithmically found (Maybe the ones with most permissions? Or simply randomly?).
    • Each user can vote.
      • Can he/she can vote for N candidates? Or maybe just one?
    • The N users with most votes "win".
What do you think about it?

That you are not going to become a guardian anytime soon?
 

la .sykyndyr.



Le jeudi 23 novembre 2017 10:34:59 UTC+1, Benoit Neil a écrit :
@Gregorio, @all

First of all, I thank you A LOT for having taken time for this detailed answer and proposal.

If I rephrase correctly, the first issue you point out is that the number of Lojbanists is too low for such a workflow. If your numbers are correct, then I agree. That's unfortunate for the proposal, but this is exactly what I said when I answered Gleki: I'm "relying on statistics and probability". That means the result of voting (and such) is less prone to be far away from "the absolute truth" (whatever it is) when there are many people. Said otherwise, there is higher chance of having a biased result with a limited amount of users. Question is: what is an "acceptable threshold"? I don't know.

I propose to make a very basic implementation of the system, ask for Lojbanists to register, and check about the number of accounts. That would give us a first idea of the feasibility.

***

About current LLG/BPFK/Coders' Group: Well, I'm TRYING to propose something transversal, which could be immune/insensitive to the organization the user comes from. Of couse, that sounds quite obvious the ones in BPFK (for instance) would receive very high "language kudos scores" from the community. So yes, you're right about it. But the proposed system would make it possible to exclude one of them (I hope this won't be the case), and include someone from the outside (I hope there will be candidates).

Actually, I guess you're right about saying BPFK+Robin will be the core people. Maybe with some LLG guys in addition?

Maybe the system would hard-code some roles (see below) in the first months/years of its existence?... To be discussed...
Maybe the system is to be administrated by one of the current organization in the future? I don't know yet.

What I feel is that the currently missing mechanism is a clear submission & integration workflow (hence the proposal, of course). I hope that if people agree with a "systematic" workflow, then it would help sorting out the "semi-official" things and start a new "era".

***

You also raised an interesting issue in your answer: roles. I propose to add some more rules and definitions, to tackle that:
  • Define some "roles", which are roughly "jobs" or "responsibilities".
    • Ex: Proposal validator, submission validator (= voting member), GitHub integrator (= merge pull requests), release manager, etc. The list is to be debated.
    • Relation is N-N with users: multiple users can be assigned to a role, and each user may have multiple roles.
    • As you proposed, maybe a "chair/root/super-admin/lead" role would be to be added, with the ability to have a "super-weighted" vote if-and-only-if a voting procedure doesn't fulfill the minimum requirements (ex: 50% / 66.7% / N% of "yes", and a minimum of M votes).
  • System would check periodically for accounts activity, to automatically un-assign inactive users.
    • Ex: Each month/year/whatever, an email with a link is sent. The user must then update its roles assignations within days/weeks, or else (s)he is automatically unassigned.
  • Each role has some requirements (language level, logic knowledge, etc.), as defined before.
    • Ex: Proposal validator needs to be at least "B1".
  • Each role is assigned a minimum number of people, to ensure the tasks are executed (point I mentioned in a previous post).
    • Ex: There should be at least 10 "proposal validators".
    • If there are not enough people to fill a role, then the "closest" (regarding to requirements) are chosen.
  • As kudos may be added/modified/removed at any time, user is notified of new available roles, and roles un-assignations.
Of course, this is still tied to the community size... That point induces that the system must be worked on at the same time Lojban is promoted (maybe a coordinated "advertising campaign" will be necessary? Ex: all "users" are asked to share/post/relay a unique text to various mediums, such as social networks?).

la .sykyndyr.


Le jeudi 23 novembre 2017 01:23:36 UTC+1, Gregorio Guidi a écrit :
On 11/22/2017 09:58 AM, suke...@gmail.com wrote:
Alright. Time for my v0.2 proposal about submissions. I integrated what Gleki and Gregorio said, from the "simplified v0.1" version.
To avoid having "actual experts" situation or the "anyone is expert" situation, I'm proposing a balanced way. I thought about algorithms determining the implication of each one in the Lojban project but rules ended to be way too complex, not taking all important aspects into consideration, and unmaintainable. So I changed my mind and I am now proposing a king of "merit" mechanism:
  • Each user can self-evaluate about the language. This is purely informational. Grades would be (for instance): zero, A1, A2, B1, B2, C1, C2 (as per CERF, with the addition of "zero").
    • Level is rounded by default (so that "A1+" is not A2 but A1).
    • Ex: I'm pretty sure I'm "zero", because I cannot say I reached the A1 level.
  • Each user can give "language level" kudos to anyone else, asserting the target is AT LEAST the given level.
    • Ex: I don't know much aout Gleki, but I'm 100% convinced I can give him B2 level. Maybe much more, but B2 is the highest level I'm 100% confident with.
    • Given kudos can be changed at any time.
  • All kudos are gathered to determine the "granting" level. If an user gets at least "X% votes" and at least "N votes", (s)he get that level.
    • Ex: Gleki has 2 "C1", 5 "B2", and 3 "B1".
      • If we require "50% / 5 votes", then he would be B2.
      • For "50% / 6 votes", he would be "B2" too (C1 count, as it is greater, leading to the "70% / 7 votes" B2 score).
      • For "90% / 5 votes", he would be B1.
    • That doesn't mean one is really "B2" for instance. That means the community grants the rights associated with B2 level to someone.
  • Same thing (self-evaluate & kudos) should be applied to "logic knowledge", with grades from 0 to 5 (for instance). This would also be a requirement to validate submissions.
  • Maybe the system can be extended to other things, such as "technical level", and/or "general community kudos" (maybe others?). The level would grant access to some features, to be determined.
Going from that, the submission protocol can be more precise about the former "expert" term. In the following diagram:
  • "[B1]" means "the authenticated user must be granted the language level B1 or more".
  • "[logic 2]" means "the authenticated user must be granted the logical level 2 or more".
  • Please note that all levels (B1, C1, logic 2, etc...) are purely arbitrary for now, and may be adapted.
  • "Technical level" kudos are not integrated in the diagram, nor anything about who may tag versions and edit roadmaps. Your ideas are welcome!
  • The current system DOESN'T ensure there is at least one person able to validate or vote. I guess a simple rule taking "N best graded users" may be added.



@all: Your thoughts?

Thanks a lot for the proposal! I see you are taking a clear "top-down" approach, imagining an organization to put on top of the existing users and experts within the Lojban community. I like the goal that you have in mind. What I doubt, however, is whether the approach can fit with the limited size of the Lojban community.

I try to explain... In the end, it all comes down to who has control on the main resources of the project (the website, the official pages of the wiki and the associated material, the lojban github account, the mailing lists) and how they decide to develop those resources. How many community members are candidates to fill those key roles?... How many people speak Lojban and are currently actively involved in the project? I don't know... maybe 10? Is it possible to build a complex structure on top of this set of core people that would need to fill all key parts of the workflow? Given the size, perhaps it would be reasonable to just check with them one by one, and see what they would like to do...

Hoping to be constructive, I will try to elaborate more on this "bottom-up" approach (i.e. what can be proposed on the basis of the community as it exists now) and see what comes out of it. As a disclaimer, I note that the following observations come from me as an external observer of the dynamics of the Lojban community, so I apologize in advance for not being completely informed on some of the inner workings.

Let us start with the main actors involved... consider the LLG. It is my impression that in recent years, and in particular after the BPFK Reauthorization, the LLG is distancing itself somewhat from the previous role of active driver of the development of the language, essentially leaving future developments in the hands of the BPFK members (while maintaining the power of approval for "official standards"). From what I can see, the LLG has resources for carrying out only the bare minimum of activities: the legal duties to continue existing as a legal entity, managing the finances and the printing and distributions of the physical copies of the CLL.

This situation leaves the focus mostly on the BPFK members. If the wiki is not in error, they are:
  • la selpa'i (Chair of BPFK since March 16, 2015)
  • Pierre Abbat
  • la gleki
  • Durka42
  • Ilmen
  • la .xorxes.
  • Adam D. Lopresto, aka la xalbo
  • la .guskant.
  • la mezohe (Joined November 17, 2015)
It is natural to see them as the best candidates to exert control on the core lojban resources.

Then there is the Lojban Coder's Group. What/who is it in practice? I can see from the github pages that for the cll repository this is mostly Robin Powell. Other members of the organization do not seem very active, at least in comparison. Indeed Robin almost single-handedly managed to produce version 1.1 of the CLL with years of dedicated work, clearly a huge accomplishment, and this was done in addition to maintaining most of the infrastructure (and being the previous BPFK Chair). I have the impression, though, that after 1.1 he expects that someone else will step up to the role (please correct me if I am wrong).

Then there is the maintenance of the semi-official parsers in the ilmentufa repository, mostly by Ilmen. Here I honestly find it difficult to explain the conflicts between BPFK and Coder's Group... (after all Ilmen is also a member of the BPFK, right?). I do not really find anything clearly to blame on all sides, from a superficial perspective it seems natural that community members work on their parsers while an official fully-specified grammar and an associated parser is still not available (and this is due since ~15 years, I believe?). In a sense, the problem will solve itself once the BPFK releases an official final baseline grammar with an associated parser.

So, who should have control of the core lojban resources (wiki, github repositories, ...)? If I had to put down a proposal, I would say all the members of the BPFK plus Robin. They should be empowered to apply bugfixes as they see fit, and set roadmaps for future releases, while continuing the discussions on the more technical points. It is painful to see trivial bugfixes pending in pull requests with no one to pick them up.

What if there is no consensus? Well, the BPFK has a formal Chair. Why not having him have the final word on what goes in and goes out, when consensus cannot be reached?

To complete the proposal, the LLG should just acknowledge the current dire situation. The BPFK should stop being considered as a formal committee (for some reason they always remind me of this sketch) and just be taken for what it is: a group of volunteers that is given control of some core resources, in the hope that the group will develop them and make the Lojban ecosystem better over time. The BPFK should be free to set its preferred direction for the project, subject to the usual pressures of open source communities: the threat to lose users/contributors if they are too much alienated, or be subject to debilitating forks. A simple way to manage conflicts would be to give one member the power to have the final say on what goes in, as said before. This would also be subject to the usual counterbalancing pressures of open source communities. This role could be seen as a sort of "lead developer" within a group of "core developers", to continue the analogy with software projects. Or a "release manager", as said in another post.

Just my 2 cents...

--
You received this message because you are subscribed to a topic in the Google Groups "lojban" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/lojban/e94H-wdh5gc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to lojban+unsubscribe@googlegroups.com.
To post to this group, send email to lojban@googlegroups.com.
Visit this group at https://groups.google.com/group/lojban.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "lojban" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lojban+unsubscribe@googlegroups.com.
To post to this group, send email to lojban@googlegroups.com.
Visit this group at https://groups.google.com/group/lojban.
For more options, visit https://groups.google.com/d/optout.