Rating-Kontrolle

  • Ich gebs ja zu, ich bin kein Programmierer. Aber da z.B. in der Bewertung von Alt-Geschichten die Votings von nicht mehr registrierten Nutzern stecken, ist fraglich, ob das so glatt liefe.


    Doch vor allem ist das - abgesehen vom Aufwand - nicht so wichtig wie das 2. Argument. Entscheidend sind keine Zahlenspielereien, sondern die Absicht, gewissen Leuten das Handwerk zu legen oder doch unerfreulich schwer zu machen.


    Nico S.

  • Zitat

    Original von baer66
    Ich habe zwar von Programmieren keine Ahnung, aber es ist doch nur eine einfache Multiplikation vorhandener Felder und eine Umreihung nach dem neuen Schlüsselfeld.
    Die bisherigen Benotungen fließen dann in die Reihung ein.


    Du hast anscheinend wirklich keine Ahnung, denn die von dir erwähnte Felder gibt es nicht, weil es eine Verschwendung wäre, wenn man bedenkt, dass bei manchen Geschichten mehr als 100 Leser ihre Voten abgegeben haben:

    1. Es gibt bisher keine Felder für einzelne Voten, sondern nur ein Summenfeld aller abgegebener Punkte und ein Summenfeld für die Anzahl der Stimmen
    2. Die Summe der Punkte wird durch die Anzahl der Stimmen geteilt, was arithmetisches Mittel der Punkte ergibt
    3. Nur dieses arithmetische Mittel der Punkte und die Anzahl der Stimmen werden angezeigt.
    4. Stimmt ein neuer Leser ab, werden seine Punkte auf die Punktesumme addiert (wie auch die Anzahl Stimmern um 1 erhöht) und das weitere läuft ab wie ab Punkt 2 beschrieben.

    Ich habe dir schon am 01.02.2013 12:56 diese Problematik aufgezeigt

    Zitat

    Original von Erpan
    Das klingt gut, baer. Doch ich bezweifle, ob das realisiert werden kann. Erstens müsste man alle abgegebene Wertungen speichern, was Speicherplatz benötigte, und zweitens müsste die Berechnung samt der ev. Eliminierung der höchsten und der niedrigsten Wertungen bei jeder neuer Wertung aufs Neue erfolgen, was mehr Rechenzeit auf dem Server erforderte. Und nicht zuletzt: Was geschieht mit den Wertungen der "alten" Geschichten?


    worauf du allerdings nicht geantwortet hast. Stattdessen berufst du dich auf eine Umfrage, bei der die meisten Abstimmenden von der Problematik nichts wussten, weil diese ja auch mit keinem Wort erklärt wurde.

    In Kleinigkeiten wundern wir uns nicht über die Geschmacksunterschiede. Aber sobald es sich um die Wollust handelt, geht der Lärm los. - Marquis de Sade in Justine oder die Leiden der Tugend

  • Naja, SO schwierig ist das nun auch wieder nicht...


    Der benötigte zusätzliche Speicherplatz, um Votes einzeln abzuspeichern, betrüge beim derzeitigen Volumen des Geschichtenarchivs weniger als ein einziges Bild des Bilderbereichs und die Rechenzeiten zur Erstellung der aktuellen Bewertungsanzeige liegt im unteren Millisekundenbereich...


    Mit der SQL-Anweisung "ALTER TABLE" lässt sich jede Datenbanktabelle um beliebige Felder erweitern und der Algorithmus wäre auch in einem Zusatzschritt in der Lage, die "alten Votings" in den Mittelwert zu integrieren... keine 5 Minuten "programmier"-arbeit...
    Mit weiteren 5 Minuten könnte man bei Lust und Laune sogar noch die Verteilung der einzelnen Bewertungen anzeigen, die seit der Erweiterung abgespeichert wurden ;)

    Hier gibt es Leute, die im Namen der political Correctness ehrliche Menschlichkeit vernichten um sich zu profilieren.


    So lange diese wandelnde Beleidigung hier sein Unwesen treibt, bin ich hier weg!
    Ciao

  • @ Leseratte


    Herzlichen Dank für den positiven Zugang!
    Vielleicht ist das ja doch leicht zu machen?


    @ Erpan


    ad 1. Ich habe nie geglaubt, daß jedes einzelne Voting abgespeichert wird.
    ad 2. und 4. Eben. Und dann teilt man eben nicht und führt einfach die Summe an und die Anzahl der Stimmen.


    Die Idee mit der Eliminierung von einzelnen Wertungen ist zugegeben komplizierter. Sorry, daß ich Dich auf meine Antwort habe warten lassen.


    baer

    Lector, intende,
    laetaberis!
    (Lieber Leser, paß auf, Du wirst Deinen Spaß haben! – Apuleus)

  • Zitat

    Original von Leseratte 
    Der benötigte zusätzliche Speicherplatz, um Votes einzeln abzuspeichern, betrüge beim derzeitigen Volumen des Geschichtenarchivs weniger als ein einziges Bild des Bilderbereichs und die Rechenzeiten zur Erstellung der aktuellen Bewertungsanzeige liegt im unteren Millisekundenbereich...


    Plattenspeicherplatz fällt in der Tat nicht so ins Gewicht, aber Server-Millisekunden summieren sich und kosten verhältnismäßig viel.


    Zitat

    Original von Leseratte 
    Mit der SQL-Anweisung "ALTER TABLE" lässt sich jede Datenbanktabelle um beliebige Felder erweitern und der Algorithmus wäre auch in einem Zusatzschritt in der Lage, die "alten Votings" in den Mittelwert zu integrieren... keine 5 Minuten "programmier"-arbeit...


    Mit deinen 5 Minuten kommt man nicht weit. Erstens brauch man ein Programm, das die ganze Datenbank einmalig durchforstet, die Tabelle erzeugt und die alte arithmetische Wertung auf einzelnen Stimmenplätze verteilt, was mit auf- und abrunden verbunden sein wird, wenn man nicht einzelne Wertungen kommabehaftet haben will.

    Die Prozente zu errechnen ist rechenintensiv und bei geringer Anzahl der Stimmen ineffektiv, denn das baer-System sieht ja vor – Zitate:

    Beispiel 1 (wenige Wertungen): 6+5+4 5,0 (keine Streichung)
    Beispiel 2 (viele Wertungen):
    5+6+7+8+2+3+4+5+6+7+6+5+9+6+7+8+3+7+5+6
    5,89 (bei Streichung von 1x2 und 1x9) sonst 5,85

    Die besten 5% und die schlechtesten 5% (zusammen 10%) werden gestrichen.
    Bei 3 Wertungen wären das jeweils 0,15 Wertungen also 0.
    Bei 20 Wertungen die beste (oben 9) und die schlechteste (oben 2).
    Bei 100 Wertungen eben die besten 5 und die schlechtesten 5.
    So muß jemand schon oft (down)voten, um den Schnitt merkbar zu senken.


    Wie man sieht, sind die Unterschiede bei 20 Stimmen gering: 5,89 zu 5,85. Und bei 50 und mehr Stimmen ist der Einfluss mehrerer 1 oder 10 auch beim arithmetischen Mittel gering, wie baer selbst mal festgestellt hat - Zitat:

    Die statistische Relevanz des arithmetischen Mittels benötigt allerdings eine größere Anzahl an Teilnehmern (>50), damit die Wirkung einzelner Ausreißer abgeschwächt wird. Über einen längeren Zeitraum lassen sich ohnehin nur schwer Vergleiche ziehen, da ganz andere User abstimmmen.


    Ich frage mich also, wozu der ganze Aufwand?

    In Kleinigkeiten wundern wir uns nicht über die Geschmacksunterschiede. Aber sobald es sich um die Wollust handelt, geht der Lärm los. - Marquis de Sade in Justine oder die Leiden der Tugend

  • Jetzt bist du aber wieder beim arithmetischen Mittel (mit meinen Modifikationen), Erpan.


    Warum es so kompliziert sein soll, einfach alle Wertungen aufzusummieren (oder den Mittelwert mit der Stimmenanzahl zu multiplizieren) und daneben wie bisher die Anzahl der Stimmen anzuführen, erschließt sich mir trotz Deiner ausführlichen Erläuterungen nicht. Aber das liegt möglicherweise an meinen mangelnden EDV-Kenntnissen.


    Trotzdem Dank für Deine Mühe!


    baer

    Lector, intende,
    laetaberis!
    (Lieber Leser, paß auf, Du wirst Deinen Spaß haben! – Apuleus)