Hurras karmischer Fluch

Der springende Punkt


Unvorhergesehene Folgen


"Das Habr-Karma-System und seine Auswirkungen auf die Benutzer" ist zumindest ein Thema fĂĽr einen Kurs
Thema ĂĽber Karma auf "Picaba"

Ich könnte diesen Artikel mit der Tatsache beginnen, dass ich Habr schon lange gelesen habe, aber dies wird keine vollständig genaue Aussage sein. Die richtige These wäre: „Ich habe lange Zeit Artikel von Habr gelesen“ - aber ich war nicht daran interessiert, was in der Community geschah, als ich mich entschied, diesen Frühling endlich zu registrieren. Dies ist ein typischer Fehler einer Person, die von einer Suchmaschine nach Habr kommt, um nützliche Artikel über die Feinheiten der Programmierung oder interessante Nachrichten aus der Welt der Technologie zu lesen. Solange Sie das Portal nur von dieser positiven Seite aus sehen, stellen Sie keine Fragen darüber, was unter der Haube passiert. Natürlich ist in den Kommentaren oder Artikeln die Erwähnung von Karma von Zeit zu Zeit verrutscht - aber schließlich ist Karma auf fast allen wichtigen Portalen (ich dachte naiv), dies ist normal für sich selbst regulierende Online-Communities.

Ich musste ernsthaft darüber nachdenken, nachdem ich plötzlich die Fähigkeit verloren hatte, mehr als einen Kommentar in fünf Minuten zu schreiben.

Gleichzeitig schien alles in Ordnung zu sein: Meine Kommentare waren immer beeindruckend, meine Bewertung stieg - und plötzlich stellte sich heraus, dass ich negatives Karma hatte. Meine langjährige Erfahrung mit Internetkommunikation, allen Benutzergewohnheiten und dem gesunden Menschenverstand hat mir gezeigt, dass dies ein Fehler ist: Der Genehmigungsindikator eines Site-Benutzers durch andere Site-Benutzer kann nicht gleichzeitig steigen und fallen! Aber ich beschloss, nicht die Schulter abzuhacken, sondern ein wenig zu recherchieren, sowohl analytisch (in Form der Untersuchung der Meinungen der Benutzer über Karma) als auch statistisch (in Form der Analyse von Kontoindikatoren).

Die Geschichte des Benutzerkrieges mit Karma erwies sich als sehr reichhaltig. Mit unterschiedlichem Erfolg besteht es seit mehr als einem Dutzend Jahren, auf seinem Konto Dutzende blockierter Opfer und mehrere gelöschte Artikel. Und seltsamerweise wird mein Problem (Diskrepanz zwischen Noten und Karma) in der Argumentation praktisch nicht verwendet - selbst während der offenen API wurden diese Berechnungen nicht verwendet. Näher an allen wurde in einem relativ neuen Eintrag nur ein Kommentator ausgewählt:
"Eigentlich, was ist interessant zu finden: Gibt es Menschen, die karmisch gesinnt sind und groĂźe Pluspunkte fĂĽr ihre Kommentare haben?"
https://habr.com/de/company/habr/blog/437072/#comment_19650144

Im statistischen Teil können Sie sehen, dass es solche Leute gibt. Aber auch ohne Statistik haben die Benutzer lange Zeit alles über Karma verstanden.

Hier ist eine Aufzeichnung von vor einem Jahrzehnt:
Das große Problem auf dem Hub ist, dass es viele Benutzer gibt, die ein Minus in Karma nach dem Prinzip setzen: "Ah, Sie haben eine andere Meinung als meine, hier ist ein Minus in Karma." Obwohl für mich ein gut begründeter Kommentar mit Gegenargumenten und einer gut formulierten Gegenposition nicht einmal ein Minus für den Kommentar selbst verdient, nicht für das Karma des Autors. Leider gibt es auf Habré praktisch keine Kultur begründeter Streitigkeiten und des Respekts vor einem starken Gegner. Viele neigen dazu, nur ihre Hüte zu werfen.
Im Allgemeinen bin ich der Meinung, dass die Aufteilung der Bewertungen in zwei Zähler „Bewertung“ und „Karma“ nicht intuitiv und daher falsch und ineffizient ist.
https://habr.com/de/post/92426/#comment_2800908

Hier ist ein Rekord vor fĂĽnf Jahren:
Es wurden nur Fälle analysiert, in denen sich das Karma um mindestens 15 Einheiten verändert hat, aber dies ändert das Bild insgesamt nicht, weil und in diesem Fall das Verhältnis von 30% zu 70%. Anscheinend wird Karma größtenteils aufgrund von Kommentaren zusammengeführt, aber für schriftliche Artikel erhoben.
https://habr.com/de/post/192376/

Hier ist ein Vorschlag zur Verbesserung vor drei Jahren:
Vorschlag:
Erlauben Sie Autoren von Artikeln, nur in einem bestimmten Zeitraum (z. B. einer Woche) nach Veröffentlichung des Artikels für Karma zu stimmen. Wenn eine Person in der letzten Woche nichts veröffentlicht hat, kann ihr kein Karma für einen Kommentar zugespielt werden. Die Regel kann nicht auf reine Reed-Konten erweitert werden - sie gewinnen mit nützlichen Kommentaren an Karma.
Kommentar:
Zu oft beschweren sich Habr-Benutzer über Karma-Abfluss wegen anstößiger Kommentare in den Posts anderer Leute. In diesem Beitrag wurde das Problem beispielsweise bereits 2012 beschrieben. Woz und jetzt da.
https://github.com/limonte/dear-habr/issues/49

Hier ist ein weiterer Dialog vor drei Jahren zum gleichen Thema:
Drmetallius
Ich kann sagen, warum ich aufgehört habe, Kommentare zu schreiben (ich werde dies zu einer Ausnahme machen): Weil es schwierig ist, Karma zu verdienen, weil man dafür ständig einige Artikel generieren muss, aber es sehr leicht zu verlieren ist. Es ist nicht wahr, dass wenn Sie richtig schreiben, es nicht verschwendet wird. Es kann aus vielen Gründen reduziert werden: Ich stimmte Ihnen im Streit nicht zu, ich war der Ansicht, dass eine Tatsache im Kommentar falsch war oder dass er einfach schlechte Laune hatte.

maxshopen
Ja, dies ist eine alte Krankheit des Habrasystems. Es wurde angenommen, dass diejenigen, die positives Karma haben, angemessen sind und einfach niemanden ausschließen werden. Wenn alles noch schlimmer war - je mehr Karma, desto größer minus der Benutzer kann wetten, dass es ein paar "markierte" Habrauser gab, die links und rechts verteilt wurden und -6, -8 bekamen, wonach die Möglichkeiten auf eins reduziert wurden. Die Schöpfer der karmischen Wirtschaft haben die Perversität der Anonymität anfangs offenbar nicht berücksichtigt
Es scheint mir, dass dieses System lange Zeit ein wenig mehr durch die Tatsache ausgeglichen werden musste, dass bei der Abstimmung mit jemandem ein bestimmter Betrag vom Benutzer abgebucht wird. Viel ist nicht nötig - 0,2-0,5 ist genug. Dies würde die Verantwortung der Wähler bei der Entscheidung, ob sie für jemanden stimmen oder nicht, erheblich erhöhen.
https://habr.com/de/post/276383/#comment_8761911

Und zum Schluss noch Kommentare zum Beitrag vom Anfang dieses Jahres:
Karma ist kein sehr gutes Werkzeug zur Selbstregulierung des Systems. Diejenigen, die mit einer Person (oder sogar ihrer Position) unzufrieden sind, legen oft Einschätzungen in das Karma. Das Ergebnis ist, dass es sehr schwierig ist, Karma zu erlangen, und dass es sehr einfach ist, es zu verschmelzen. Das bringt die Leute zum Nachdenken - lohnt es sich, Ihre Meinung zu äußern, wenn sie nicht sehr beliebt ist? Wenn ich es einmal ausdrücke, werden sie schließlich Karma knicken und verschmelzen, und es wird nicht mehr möglich sein, mehr auszudrücken. Dies führt dazu, dass nur noch eine Meinung zu der Ressource übrig bleibt und alle anderen verdrängt sind.
https://habr.com/de/company/habr/blog/437072/#comment_19647340

Und hier ist ein Kommentar, der erklärt, warum das „Schreiben von Artikeln“ das Karmasystem nicht wirklich rettet:
Der Artikel bringt fast nichts in Bezug auf Karma, und für einen erfolglosen Kommentar kann eine Person vollständig zusammengeführt werden.
Hier ist das Problem die Trennung von Bewertung und Karma. Im Kopf arbeiten die Leute so:
1. Inhaltsbewertung ist meine Einstellung zum Artikel oder Kommentar.
2. Die Bewertung von Karma ist meine Einstellung zu einer Person persönlich
Zusammenfassend
1. Wenn Sie den besten Artikel der Welt geschrieben haben, werden Sie viele Vorteile fĂĽr den Artikel (in der Bewertung) haben und Ihre Mission als erfĂĽllt betrachten.
2. Wenn Sie einen Kommentar geschrieben haben, der "nicht in den Stream gelangt", haben Sie einen Minus-Kommentar und sogar eine Person, die Sie wahrscheinlich aufgrund dessen fĂĽr Sie und Karma so lala halten.
https://habr.com/de/company/habr/blog/437072/#comment_19649262


Viele, die mit dem Karmasystem unzufrieden sind, äußern sich in dem Sinne, dass dies eine bewusste Politik der Verwaltung ist - zum Beispiel in diesem Kommentar oder in diesem . Es gibt natürlich viele indirekte Beweise:
  • Die API wurde entfernt, sodass die Dynamik nicht ĂĽberwacht werden konnte.
  • Wir haben eine dynamische Bewertung vorgenommen, sodass es unmöglich war, die Gesamtbewertung direkt im Profil anzuzeigen.
  • Sie beziehen sich ständig auf den „Karmographen“, wonach es mehr Pluspunkte als Minuspunkte gibt (das Verhältnis von Karma und Bewertungen wird nicht einmal erwähnt);
  • Viel, aber ohne Grund, sagen sie, dass Karma die Qualität von Veröffentlichungen und Kommentaren widerspiegelt (was der Statistik widerspricht, wie wir aus den Bewertungsindikatoren ersehen können).

Ich erinnere Sie auch daran, dass nirgendwo und nie die BegrĂĽndung fĂĽr die Existenz von Karma in der Form gegeben wurde, in der es existiert.

Wir können diese Verschwörungstheorien in keiner Weise beweisen. Aber es scheint mir, dass die Sache nicht in ihnen liegt - es gibt das gleiche Problem wie bei Menschen, die karma-negativ sind: einen undurchdringlichen Glauben an ihre Gerechtigkeit, so dass diejenigen, die mit Ihnen nicht einverstanden sind, als „schlechte Person“ wahrgenommen werden. Hier haben die Habr-Führer auf die gleiche Weise entschieden - wir werden Benutzer getrennt von ihren Nachrichten bewerten. Und ihnen kann nicht länger als zehn Jahre erklärt werden, dass dies ein falscher Ansatz für das Ranking von Benutzern ist. Sie sind schlau, sie haben ein ganzes Portal erstellt. Also erschaffst du dein Habr - und dann reden wir (übrigens ist es lustig, dass der Verteidiger des Karma buchstäblich so behauptet und antwortet : "Hol es dir zuerst")

Persönlich gehe ich davon aus, dass das Karma-Programm selbst aus Lepra zu uns kam, wo die meisten der derzeitigen Besitzer großer Internetportale gleichzeitig rumhingen. Habr begann, als derselbe Lepre - ein geschlossener Club mit Einladungen und gegenseitigen Bewertungen, unzufrieden - aus dem Club ausschied. Diese Zeiten sind lange vorbei, der Club ist schon lange nicht mehr geschlossen, Bewertungen wurden längst nicht mehr „einem anderen Clubmitglied“, sondern einem normalen Benutzer für normale Kommentare und Artikel gegeben. Aber der interne Elitismus lässt die Verwaltung nicht los. Jeder denkt - tatsächlich haben die Jungs ein großes profitables Portal geschaffen, schreiben seit vielen Jahren Artikel zu technischen Themen - wie können sie etwas nicht wissen? Wenn also alles schlecht ist, werden sie, die Bösewichte, empfangen. Tatsächlich stecken Administratoren jedoch einfach in der Kindheit fest. Und je größer und profitabler das Portal ist, desto schwieriger ist es, jahrelange Fehler aus falsch verstandenem Stolz zuzugeben.

Verwirrung



Dies sind tiefe Gewässer, Watson, tiefe Gewässer. Ich habe gerade angefangen zu tauchen.
Sonderausgabe von Sherlock Holmes

Im Folgenden werde ich den Begriff "Karma" fĂĽr Karma und den Begriff "Bewertung" oder "Gesamtbewertung" verwenden - fĂĽr die Gesamtsumme aller Vor- und Nachteile, die der Benutzer sowohl fĂĽr Artikel als auch fĂĽr Kommentare erhalten hat.

Nachdem wir die Geschichte herausgefunden haben, werden wir versuchen, die Zahlen zu betrachten. Vor kurzem gab es einen ganzen Zyklus der Statistikanalyse, der jedoch nur das aktuelle Jahr betraf - ich musste die Gesamtbewertung des Benutzers verstehen. Da wir keine API haben und anstelle von echten Bewertungen im Profil eine zweifelhafte Bewertung angezeigt wird, konnte ich nur jeden Kommentar studieren und Daten ĂĽber den Autor und die Bewertung daraus sammeln. Das habe ich getan.

Ich habe jede Veröffentlichung von Anfang an geöffnet, den Spitznamen des Autors der Veröffentlichung und die Bewertung des Artikels sowie die Spitznamen der Kommentatoren und die Bewertungen ihrer Kommentare herausgenommen.

Hier ist der Code fĂĽr den Hauptparser.
import requests
from bs4 import BeautifulSoup
import csv

def get_doc_by_id(pid):
    fname = r'files/' + 'habrbase' + '.csv'
    with open(fname, "a", newline="") as file:
        try:
            writer = csv.writer(file)
            r = requests.head('https://habr.com/ru/post/' +str(pid) + '/')
            if r.status_code == 404: #   
                pass
            else:
                r = requests.get('https://habr.com/ru/post/' +str(pid) + '/')
                soup = BeautifulSoup(r.text, 'html5lib')
                if not soup.find("span", {"class": "post__title-text"}):
                    pass
                else:
                    doc = []
                    cmt = []
                    doc.append(pid) #
                    doc.append(soup.find("span", {"class": "user-info__nickname"}).text) #
                    doc.append(soup.find("span", {"class": "voting-wjt__counter"}).text) #
                    writer.writerow(doc)
                    comments = soup.find_all("div", {"class": "comment"})
                    for x in comments:
                        if not x.find("div", {"class": "comment__message_banned"}):
                            cmt.append(x['id'][8:]) #
                            cmt.append(x.find("span", {"class": "user-info__nickname"}).text) #
                            cmt.append(x.find("span", {"class": "voting-wjt__counter"}).text) #
                            writer.writerow(cmt)
                            cmt = []
        except requests.exceptions.ConnectionError:
            pass

x = int(input())
y = int(input())

for i in range(x, y):
    get_doc_by_id(i)
    print(i)



habrbase:



« — » habrauthors.csv. . , - , , .

:
import requests
from bs4 import BeautifulSoup
import csv
import pandas as pd

def len_checker():
    fname = r'files/' + 'habrdata' + '.csv'
    with open(fname, "r") as file:
        try:
            authorsList = len(file.readlines())#   
        except:
            authorsList = 0
        return authorsList

def profile_check(nname):
    try:
        r = requests.head('https://m.habr.com/ru/users/' +nname + '/')
        if r.status_code == 404: #   
            pass
        else:
            ValUsers = []
            r = requests.get('https://m.habr.com/ru/users/' +nname + '/')
            soup = BeautifulSoup(r.text, 'html5lib') # instead of html.parser
            if not soup.find("div", {"class": "tm-user-card"}):
                valKarma = 0
                valComments = 0
                valArticles = 0
            else:
                valKarma = soup.find("span", {"class": "tm-votes-score"}).text #
                valKarma = valKarma.replace(',','.').strip()
                valKarma = float(valKarma)
                tempDataBlock = soup.find("div", {"class": "tm-tabs-list__scroll-area"}).text.replace('\n', '') # 
                mainDataBlock = tempDataBlock.split(' ')
                valArticles = mainDataBlock[mainDataBlock.index('')+1]
                if valArticles.isdigit() == True:
                    valArticles = int(valArticles)
                else:
                    valArticles = 0
                valComments = mainDataBlock[mainDataBlock.index('')+1]
                if valComments.isdigit() == True:
                    valComments = int(valComments)
                else:
                    valComments = 0
            ValUsers.append(valKarma)
            ValUsers.append(valComments)
            ValUsers.append(valArticles)
    except requests.exceptions.ConnectionError:
        ValUsers = [0,0,0]
    return ValUsers


def get_author_by_nick(x):
    finalRow = []
    df = pd.DataFrame
    colnames=['nick', 'scores']
    df = pd.read_csv(r'files\habrauthors.csv', encoding="ANSI", names = colnames, header = None)
    df1 = df.loc[x:]

    fname = r'files/' + 'habrdata' + '.csv'

    with open(fname, "a", newline="") as file:
        writer = csv.writer(file)
        for row in df1.itertuples(index=True, name='Pandas'):
            valName = getattr(row, "nick")
            valScore = getattr(row, "scores")
            valAll = profile_check(valName)
            finalRow.append(valName)
            finalRow.append(valScore)
            finalRow.append(valAll[0])
            finalRow.append(valAll[1])
            finalRow.append(valAll[2])
            writer.writerow(finalRow)
            print(valName)
            finalRow = []

n = len_checker()
get_author_by_nick(n)



, , - . , 2001 ? , , , : « (intermediate value).map is not a function». , , 2001 . , — . 250, — .

habrdata : ['nick', 'scores', 'karma', 'comments','articles','regdate']. .



. , .

20062007200820092010201120122013201420152016201720182019
204511668124635028534613686116109614970365948926782559123673


114 343 , - . , :



, , tabloo.

, . , alizar (UPD) 268 ! , - 30 . — Zelenyikot 1509, - 500. , , .



-10



, , , , . , - . , , — CSV R, SPSS. , — , , ( ). 4235 . . 2866 , , .



3-4 114 , . , . 4652. , , .

: 114 343
< 5: 89 447
.. : 67 890
.. : 4 652
>= 5 : 24 896

, «». " ", . , . , « , » — .

:
: 114 343
<5: 57 223
.. : 26 207
.. : 9 737
>=5 : 57 120

, , , , . , , .. ! — , 90.

, , « », . — >=5 24 ( 900 - 5 ; ). 36 — .

, ? , , 90% , , 4 — . , « ». , , « ». . « , » .

, 2016 2018 , « ». 90% , 5 . « » 60-70% .

, :

78205 114 343 0. , .
24 896 114 343 . , , , .

. , , — , . , . , , « ».


     ,       !


, , , .

:
  1. , .
  2. 1/3 , .
  3. , ( 10-20 )

, , ?

, . , :
, , … :
— .
—
—
—
, , .
.
, — , .
https://habr.com/ru/post/467875/#comment_20639397

, — , .

,



, ?


, . , ( ).

.

1.
. : . , — : .

: , , , «» . — . . , . .

. , . — — . — . , , , — ; — , , , . , . — . — .

. . . . . , — .



. .

2.
.

— . , . , . , . , : , — , , . 2013 , , . ; , , , .

— , , . « », , , . — , . , , .

, «» «», . , , . — , .

, . , , — ? — , ? . , . , — , , .

— . , « », . , , . -, .

, , : , . .

— . , , . — (), , , . « » — — , .

, . . , — , .
, — . .
https://habr.com/ru/company/habr/blog/437072/#comment_19649328

, , — -, « ». , , .

.

3.
, . — , -, , .. . , .

— , . . — « », . , « »; , — , ( ) .

. , — , , , , . , , , , .

pragmatik,
, ., , - / — .

, , . , +100, -10? ? , , - ? .

. , . , , , . . «», « » , .

, . , . «-25», , . — , « ». , , . , , . ! .
« :
: «, , . , , , . — , . .»
, — . andorro : « ».»
https://habr.com/ru/company/habr/blog/437072/#comment_19822200

, . — (.. ). « ». — , . « », . , , IRC, , « » « ». — , .

Episode Three



— ?
— , ,

« »

?

-, , , , . , , . — , , , , . , , , .

-, . 10 20 , ? 118, - 100, -100 , , , 10.

-, , , (.. ). « » — , : , .

-, , .. « » — - . , , - « ». , ; , — .

-, , « ». . — , — . .

— , . - « , , » - .

Source: https://habr.com/ru/post/de468491/


All Articles