Konsekuensi yang tak terduga
"Sistem karma Habr dan dampaknya pada pengguna" adalah topik untuk kursus setidaknyaTema tentang karma di "Picaba"Saya bisa memulai artikel ini dengan fakta bahwa saya telah membaca Habr sejak lama, tetapi ini tidak akan menjadi pernyataan yang sepenuhnya akurat. Tesis yang benar adalah: "Saya telah membaca artikel dari Habr sejak lama" - tetapi saya tidak tertarik dengan apa yang terjadi di dalam komunitas ketika saya akhirnya memutuskan untuk mendaftar musim semi ini. Ini adalah kesalahan khas seseorang yang datang ke Habr dari mesin pencari untuk membaca artikel bermanfaat tentang seluk-beluk pemrograman atau berita menarik dari dunia teknologi. Selama Anda hanya melihat portal dari sisi positif ini, Anda tidak mengajukan pertanyaan tentang apa yang terjadi di bawah tenda. Tentu saja, dalam komentar atau artikel menyebutkan karma menyelinap dari waktu ke waktu - tetapi karma ada di hampir semua portal utama (saya pikir naif), ini normal untuk komunitas online yang mengatur sendiri.
Saya harus serius memikirkannya setelah tiba-tiba kehilangan kemampuan untuk menulis lebih dari satu komentar dalam lima menit.
Pada saat yang sama, semuanya tampak baik-baik saja: komentar saya selalu meninju, peringkat saya tumbuh - dan tiba-tiba ternyata saya memiliki karma negatif. Seluruh pengalaman panjang saya dalam komunikasi Internet, semua kebiasaan pengguna, dan akal sehat yang umum berteriak kepada saya bahwa ini adalah semacam kesalahan: indikator persetujuan pengguna situs oleh pengguna situs lain tidak dapat secara bersamaan naik dan turun! Tetapi saya memutuskan untuk tidak memenggal bahu, tetapi untuk melakukan sedikit riset, baik analitis (dalam bentuk mempelajari pendapat pengguna tentang karma) dan statistik (dalam bentuk analisis indikator akun).
Sejarah perang pengguna dengan karma ternyata sangat kaya. Dengan berbagai keberhasilan, itu telah berlangsung selama lebih dari selusin tahun, di akunnya puluhan korban diblokir dan beberapa artikel yang dihapus. Dan, anehnya, masalah saya (perbedaan antara nilai dan karma) praktis tidak digunakan dalam argumentasi - bahkan selama API terbuka, perhitungan ini tidak digunakan. Lebih dekat dengan semua, hanya satu komentator dipilih dalam entri yang relatif baru:
"Sebenarnya, apa yang menarik untuk ditemukan: apakah ada orang yang berpikiran karma dengan nilai tambah yang besar untuk komentar mereka?"
https://habr.com/en/company/habr/blog/437072/#comment_19650144
Di bagian statistik Anda dapat melihat bahwa ya, ada orang-orang seperti itu. Tetapi bahkan tanpa statistik, pengguna pada dasarnya memahami segala sesuatu tentang karma untuk waktu yang lama.
Ini adalah catatan satu dekade yang lalu:
Masalah besar pada hub adalah bahwa ada banyak pengguna yang menaruh minus pada karma sesuai dengan prinsip: "Ah, Anda memiliki pendapat yang berbeda dengan saya, ini adalah minus dalam karma." Meskipun, bagi saya, komentar yang beralasan dengan kontra-argumen dan posisi berlawanan yang dinyatakan dengan baik tidak layak bahkan minus untuk komentar itu sendiri, tidak untuk karma penulis. Sayangnya, di Habré praktis tidak ada budaya perselisihan yang beralasan dan penghormatan terhadap lawan yang kuat, banyak yang cenderung hanya melemparkan topi mereka.
Secara umum, saya berpendapat bahwa membagi peringkat menjadi dua counter “rating” dan “karma” tidak intuitif dan karena itu salah dan tidak efisien.
https://habr.com/en/post/92426/#comment_2800908
Ini catatan lima tahun lalu:
Hanya kasus di mana karma diubah oleh setidaknya 15 unit dianalisis, tetapi ini tidak mengubah gambaran secara keseluruhan, karena dan dalam hal ini, rasio 30% hingga 70%. Rupanya, karma sebagian besar digabungkan karena komentar, tetapi dibangkitkan untuk artikel tertulis.
https://habr.com/en/post/192376/
Berikut adalah saran untuk meningkatkan tiga tahun lalu:
Saran:
Izinkan penulis artikel untuk memilih karma hanya dalam periode tertentu (misalnya, seminggu) setelah mereka menerbitkan artikel. Jika seseorang belum menerbitkan apapun dalam seminggu terakhir, dia tidak dapat dibocorkan karma untuk komentar. Aturan tidak dapat diperpanjang ke akun reed-only - mereka mendapatkan karma dengan komentar yang bermanfaat.
Komentar:
Terlalu sering, pengguna Habr mengeluh tentang pengeringan karma untuk komentar yang tidak pantas di pos orang lain. Misalnya, dalam posting ini masalahnya dijelaskan kembali pada tahun 2012. Woz dan sekarang di sana.
https://github.com/limonte/dear-habr/issues/49
Berikut adalah dialog lain tiga tahun lalu tentang topik yang sama:
Drmetallius
Saya dapat mengatakan mengapa saya berhenti menulis komentar (saya akan membuat ini pengecualian): karena sulit untuk mendapatkan karma, karena untuk itu Anda perlu terus-menerus menghasilkan beberapa artikel, tetapi kehilangan itu sangat mudah. Tidak benar bahwa jika Anda menulis dengan benar, itu tidak sia-sia. Itu dapat dikurangi karena berbagai alasan: Saya tidak setuju dengan Anda dalam perselisihan, saya menganggap bahwa beberapa fakta tidak benar dalam komentar, atau hanya karena dia sedang tidak senang.
maxshopen
Ya, ini adalah penyakit kuno dari sistem habras. Diasumsikan bahwa mereka yang memiliki karma positif adalah memadai dan tidak akan dikurangi siapa pun. Ketika semuanya menjadi lebih buruk - semakin banyak karma, semakin besar minus yang dapat dipertaruhkan oleh pengguna bahwa itu berakhir dengan sepasang habrauser “bintang” yang dibagikan ke kiri dan ke kanan yang mendapat -6, -8, setelah itu kemungkinan dipotong menjadi satu. Para pencipta ekonomi karma pada awalnya tampaknya tidak memperhitungkan kesesatan anonimitas
Tampak bagi saya bahwa untuk waktu yang lama sistem ini harus lebih seimbang dengan fakta bahwa ketika memberikan suara kepada seseorang, sejumlah tertentu darinya didebitkan dari karma pengguna. Banyak yang tidak perlu - 0,2-0,5 sudah cukup. Ini akan sangat meningkatkan tanggung jawab pemilih ketika memilih untuk memilih seseorang atau tidak.
https://habr.com/en/post/276383/#comment_8761911
Dan akhirnya, komentar pada posting dari awal tahun ini:
Karma bukanlah alat yang sangat baik untuk pengaturan sendiri sistem. Mereka yang tidak puas dengan seseorang (atau bahkan kedudukannya) sering menempatkan penilaian dalam karma. Hasilnya adalah mendapatkan karma sangat sulit, dan menggabungkannya sangat mudah. Ini membuat orang berpikir lagi - apakah ada baiknya mengekspresikan pendapat Anda jika itu tidak terlalu populer? Lagi pula, jika saya mengungkapkannya sekali, mereka akan berbelit-belit dan menggabungkan karma, dan tidak akan mungkin lagi untuk mengekspresikan lebih banyak. Ini mengarah pada fakta bahwa hanya ada satu pendapat yang tersisa tentang sumber daya, dan semua yang lain berdesakan.
https://habr.com/en/company/habr/blog/437072/#comment_19647340
Dan di sini ada komentar yang menjelaskan mengapa “menulis artikel” tidak benar-benar menyelamatkan sistem karma:
Artikel itu hampir tidak menghasilkan apa-apa dalam hal karma, dan untuk satu komentar yang tidak berhasil seseorang dapat sepenuhnya digabung.
Di sini masalahnya adalah pemisahan peringkat dan karma. Di kepala, orang bekerja seperti ini:
1. Peringkat konten adalah sikap saya terhadap artikel atau komentar.
2. Evaluasi karma adalah sikap saya terhadap seseorang secara pribadi
Pada akhirnya
1. Jika Anda menulis artikel terbaik di dunia, mereka akan memberi Anda banyak manfaat untuk artikel (di peringkat) dan menganggap misi Anda tercapai.
2. Jika Anda menulis komentar yang “tidak masuk ke arus”, maka Anda akan memiliki komentar minus, dan bahkan orang yang mungkin Anda pikir begitu-begitu karena Anda dan karma ini.
https://habr.com/en/company/habr/blog/437072/#comment_19649262
Banyak yang tidak puas dengan sistem karma mengekspresikan diri dalam arti bahwa ini adalah kebijakan administrasi yang disengaja -
misalnya, dalam komentar ini atau dalam
hal ini . Tentu saja ada banyak bukti tidak langsung:
- Menghapus API sehingga tidak mungkin untuk memantau dinamika;
- Kami membuat peringkat dinamis sehingga tidak mungkin untuk melihat total peringkat secara langsung di profil;
- Mereka terus-menerus merujuk pada "karmograf", yang menurutnya ada lebih banyak plus daripada minus (rasio karma dan peringkat bahkan tidak disebutkan);
- Banyak, tetapi tanpa alasan, mereka mengatakan bahwa karma mencerminkan kualitas publikasi dan komentar (yang bertentangan dengan statistik, seperti yang dapat kita lihat dari indikator evaluasi).
Saya juga mengingatkan Anda bahwa
tidak ada dasar pemikiran tentang keberadaan karma yang diberikan dalam bentuk keberadaannya.
Kami tidak dapat membuktikan teori konspirasi ini dengan cara apa pun. Tetapi bagi saya tampaknya masalahnya bukan pada mereka - ada masalah yang sama dengan orang-orang yang karma-negatif: keyakinan yang tak dapat ditembus dalam kebenaran mereka, sedemikian rupa sehingga mereka yang tidak setuju dengan Anda dianggap sebagai "orang jahat". Di sini para pemimpin Habr dengan cara yang sama memutuskan - kami akan mengevaluasi pengguna secara terpisah dari pesan mereka. Dan mereka tidak dapat dijelaskan kepada mereka selama lebih dari sepuluh tahun bahwa ini adalah pendekatan yang salah untuk pengguna peringkat. Mereka pintar, mereka telah membuat seluruh portal. Jadi, Anda menciptakan Habr Anda - dan kemudian kita akan berbicara (ngomong-ngomong, itu lucu bahwa
secara harfiah dalam istilah seperti itu pembela karma mengklaim kepada saya dan menjawab , "Pertama dapatkan")
Secara pribadi, saya berasumsi bahwa skema karma itu sendiri datang kepada kami dari
Lepra , di mana sebagian besar pemilik portal Internet besar
nongkrong pada satu waktu. Habr mulai sebagai Lepre yang sama - klub tertutup dengan undangan dan penilaian timbal balik, tidak puas - pergi dari klub. Hari-hari itu sudah lama berlalu, klub tidak ditutup untuk waktu yang lama, peringkat sejak lama diberikan bukan untuk "anggota klub lainnya", tetapi untuk pengguna biasa untuk komentar dan artikel biasa. Tetapi elitisme internal tidak melepaskan pemerintahan. Semua orang berpikir - memang, orang-orang telah menciptakan portal menguntungkan yang besar, telah menulis artikel tentang topik teknis selama bertahun-tahun - bagaimana mungkin mereka tidak tahu sesuatu? Jadi, jika semuanya buruk, maka mereka, para penjahat, dikandung. Tetapi pada kenyataannya, administrator hanya terjebak di masa kecil. Dan semakin besar dan semakin menguntungkan portal, semakin sulit untuk mengakui kesalahan bertahun-tahun dari kebanggaan yang dipahami secara keliru.
Kebingungan
Ini adalah perairan yang dalam, Watson, perairan yang dalam. Saya baru saja mulai menyelam.Edisi Khusus Sherlock HolmesDi bawah ini saya akan menggunakan istilah "Karma" untuk karma, dan istilah "Evaluasi" atau "Evaluasi Total" - untuk jumlah total semua pro dan kontra yang telah diterima oleh pengguna, baik untuk artikel dan komentar.
Setelah mengetahui sejarahnya, kita akan mencoba melihat angka-angkanya. Baru-baru ini ada seluruh siklus analisis statistik, tetapi hanya menyangkut tahun ini - saya perlu memahami peringkat total pengguna. Karena kami tidak memiliki API, dan alih-alih peringkat nyata di profil, mereka menunjukkan peringkat yang meragukan - Saya hanya bisa mempelajari setiap komentar dan mengumpulkan data tentang penulis dan memberi peringkat dari itu. Itulah yang saya lakukan.
Saya membuka setiap publikasi dari awal waktu, mengeluarkan nama panggilan penulis publikasi dan evaluasi artikel, dan kemudian nama panggilan para komentator dan peringkat komentar mereka.
Berikut adalah kode untuk parser utama.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'].
.

. , .
114 343 , - . , :

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

, , , , . , - . , , — 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/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.
-, , , (.. ). « » — , : , .
-, , .. « » — - . , , - « ». , ; , — .
-, , « ». . — , — . .
— , . - « , , » - .