2009-11-03 12 views
17

Tworzyłem stronę podobną do reddita opartą na a very good article o algorytmach popularności. Myślę, że idzie mi całkiem dobrze, strona wygląda dobrze, a wdrożenie działa.System karmy/reputacji

To, czego mi brakuje, to algorytm karmy lub reputacji. Podobnie jak w przypadku SO, mam na myśli wdrażanie pewnych przywilejów dla najlepszych użytkowników.

Czy masz pomysł lub referencję, jak to zrobić?

EDIT
Mam pewne problemy ze znalezieniem się następujące punkty:

  • Jak dać karmę? Jeśli jakiś użytkownik ma 100 punktów karmy i przegrywa z użytkownikiem z 10, ile punktów przyznawanych jest w przeciwieństwie do wyższego z 1000?
    To samo dotyczy negatywów.
  • W jaki sposób mogę zapobiec wysyłaniu przez spamerów 1000 kont, aby zdobyć jedno konto i przyznać 1000 punktów karmy, aby uzyskać dostęp do przywilejów moderacji i stworzyć bałagan?
+0

Po co dalej? Implementacja (architektura/kod) lub filozofia (wymagania/projekt)? – APC

+0

Zasadniczo to, czego szukam, jest czymś, na czym mogę polegać. Mimo to byłoby świetnie, gdyby był to kod lub formuły :) – metrobalderas

+0

@metrobalderas Twoje zainteresowanie sprawia, że ​​wierzę, że jesteś w stanie odpowiedzieć na to pytanie. Czy możesz zajrzeć do niego: http://stackoverflow.com/questions/9075465/can-reputation-scoring-system-be-implemented-using-business-rule-management-syst –

Odpowiedz

19

Szwy systemowe Karma dość prosta:

  1. zrobić sobie stolik karma
  2. pozwolić użytkownikom upvote/downvote inni użytkownicy
  3. tabele karma śledzić karmy użytkownika

Teraz, wprowadzenie do bezproblemowego i bardzo przyjaznego użytkownikowi doświadczenia li ke StackOverflow ma ... no, że to zupełnie inny problem,. Ale kilka punktów, aby zachować:

  1. nie pozwól nowych użytkowników w dół lub w górę głosowania
  2. wykonać karę za głosowanie w dół (to zachować niektóre z trzaskanie użytkownika bez powodu)

Edit (na nowym update)

Do spamerów Unikaj z tworzenia wielu kont i tak dalej Chciałbym oprzeć się na co tak zrobił, nie pozwól nowych użytkowników, powiedzmy mniej niż 50 punktów użytkownicy, w górę lub w dół głosuj na innego użytkownika. Ci użytkownicy będą mogli zdobywać punkty tylko dzięki ludzkiemu zachowaniu - uczestniczącemu w forum - i otrzymają swoją karmę od swoich rówieśników. To powinno spowodować, że

Jestem oparta na utrzymywanie stałych punktów za głosowanie. Głosujący do góry przez każdego, kto zawsze otrzyma taką samą liczbę punktów, jak głosowanie w dół. Uczyń linię proporcjonalną, a nie wykładniczą i zasilaj społeczność jako całość bez przytłaczania niewielkiej liczby osób.

Daj potężnym użytkownikom, Big Karma Guys możliwość moderowania, ponownego tagowania, edycji i innych użytkowników.

Ale wszystko, co mówię ... jest dokładnie tym, co zrobił Stack Overflow.Matematyka, która się za tym kryje, nie jest aż tak skomplikowana, naprawdę ciężko jest dostarczyć polski taki serwis.

Karma dla Jeffa i reszty drużyny.

Mam nadzieję, że pomoże!

+2

Dzięki. Nie mam problemów z architekturą, ale z tego, jak użytkownik lub grupa użytkowników może źle wykorzystywać przywileje. To, o czym myślę, jest pokazane w PO. – metrobalderas