عواقب غير متوقعة
"نظام حبر الكرمة وتأثيره على المستخدمين" هو موضوع للدورة على الأقلموضوع عن الكرمة على "بيكابا"أستطيع أن أبدأ هذا المقال بحقيقة أنني كنت أقرأ هابر منذ فترة طويلة ، لكن هذا لن يكون بيانًا دقيقًا تمامًا. ستكون الرسالة الصحيحة هي: "لقد قرأت مقالات من هبر منذ فترة طويلة" - لكنني لم أكن مهتمًا بما كان يحدث داخل المجتمع عندما قررت التسجيل أخيرًا في فصل الربيع. هذا خطأ نموذجي للشخص الذي يأتي إلى Habr من محرك بحث لقراءة مقالات مفيدة حول تعقيدات البرمجة أو الأخبار المثيرة للاهتمام من عالم التكنولوجيا. طالما أنك ترى البوابة من هذا الجانب الإيجابي فقط ، فلا تسأل أسئلة عما يحدث تحت الغطاء. بالطبع ، في التعليقات أو المقالات التي ذكرت أن الكرمة انزلقت من وقت لآخر - ولكن بعد كل شيء ، الكرمة موجودة على جميع البوابات الرئيسية تقريبًا (اعتقدت بسذاجة) ، وهذا أمر طبيعي بالنسبة لمجتمعات الإنترنت ذاتية التنظيم.
كان علي التفكير بجدية في الأمر بعد أن فقدت القدرة على كتابة أكثر من تعليق في خمس دقائق.
في الوقت نفسه ، بدا أن كل شيء يسير على ما يرام: كانت تعليقاتي مثقوبة دائمًا ، وكان تصنيفي ينمو - وفجأة اتضح أني أصبت بالكرمة السلبية. لقد صرحت لي تجربتي الطويلة في مجال الاتصال بالإنترنت ، وجميع عادات المستخدم ، والحس السليم العام ، أن هذا كان نوعًا من الخطأ: لا يمكن لمؤشر الموافقة على مستخدم الموقع من قبل مستخدمي الموقع الآخرين أن يرتفع ويسقط في وقت واحد! لكنني قررت عدم تقطيع الكتف ، ولكن لإجراء القليل من البحث ، سواء التحليلي (في شكل دراسة آراء المستخدمين حول الكرمة) والإحصائية (في شكل تحليل لمؤشرات الحساب).
تبين أن تاريخ حرب المستخدمين مع الكرمة غني جدًا. وبنجاح متفاوت ، ظل يحدث منذ أكثر من عشر سنوات ، على حسابه عشرات الضحايا المحظورين والعديد من المقالات المحذوفة. ومن الغريب أن مشكلتي (التناقض بين الدرجات والكرمة) لا يتم استخدامها عملياً في الجدال - حتى أثناء API المفتوحة ، لم يتم استخدام هذه الحسابات. أقرب إلى الكل ، تم اختيار تعليق واحد فقط في إدخال حديث نسبياً:
"في الواقع ، ما هو المثير للاهتمام أن تجده: هل هناك أشخاص ذوو أفكار كارمية ولديهم إيجابيات كبيرة لتعليقاتهم؟"
https://habr.com/ru/company/habr/blog/437072/#comment_19650144
في الجزء الإحصائي ، يمكنك أن ترى نعم ، يوجد هؤلاء الأشخاص. ولكن حتى من دون إحصائيات ، فهم المستخدمون كل شيء عن الكرمة لفترة طويلة.
هنا سجل منذ عقد:
المشكلة الكبيرة في المحور هي أن هناك العديد من المستخدمين الذين وضعوا ناقص في الكرمة وفقا للمبدأ: "آه ، لديك رأي مختلف عن رأيي ، وهنا ناقص في الكرمة." على الرغم من أنني ، بالنسبة لي ، فإن التعليق المنطقي جيدًا والذي يحتوي على مواقف مضادة وموقف معاكس واضح لا يستحق حتى طرحًا للتعليق نفسه ، وليس أن المؤلف هو كتابي. لسوء الحظ ، لا يوجد في حبري ثقافة للنزاعات المنطقية واحترام الخصم القوي ، ويميل الكثيرون إلى إلقاء قبعاتهم.
بشكل عام ، لدي رأي مفاده أن تقسيم التصنيفات إلى تصنيفين "تصنيف" و "الكرمة" غير بديهي وبالتالي غير صحيح وغير فعال.
https://habr.com/ru/post/92426/#comment_2800908
هنا سجل قبل خمس سنوات:
فقط الحالات التي تغيرت فيها الكرمة بنسبة لا تقل عن 15 وحدة تم تحليلها ، ولكن هذا لا يغير الصورة ككل ، لأن وفي هذه الحالة ، فإن نسبة 30 ٪ إلى 70 ٪. على ما يبدو ، تم دمج الكرمة في معظمها بسبب التعليقات ، ولكن أثار للمقالات المكتوبة.
https://habr.com/ru/post/192376/
إليكم اقتراح لتحسين منذ ثلاث سنوات:
عرض:
السماح لمؤلفي المقالات بالتصويت للكرمة فقط في فترة معينة (على سبيل المثال ، أسبوع) بعد نشر المقال. إذا لم ينشر شخص ما أي شيء في الأسبوع الماضي ، فلا يمكن تسريبه للتعليق. لا يمكن توسيع القاعدة لتشمل حسابات القصب فقط - فهم يكتسبون الكرمة بتعليقات مفيدة.
تعليق:
في كثير من الأحيان ، يشتكي مستخدمو Habr من استنزاف الكرمة للتعليقات غير المقبولة في مشاركات الآخرين. على سبيل المثال ، في هذا المنشور ، تم وصف المشكلة في عام 2012. وو والآن هناك.
https://github.com/limonte/dear-habr/issues/49
هنا حوار آخر منذ ثلاث سنوات حول نفس الموضوع:
DrMetallius
أستطيع أن أقول لماذا توقفت عن كتابة التعليقات (سأجعل هذا استثناءً): لأنه من الصعب كسب الكرمة ، لأنك تحتاج إلى توليد بعض المقالات باستمرار ، لكن فقدانها أمر سهل للغاية. ليس صحيحًا أنك إذا كتبت بشكل صحيح ، فلا تضيع. يمكن تقليله لعدة أسباب: لم أتفق معك في النزاع ، واعتبرت أن بعض الحقائق غير صحيحة في التعليق ، أو أنه كان في حالة مزاجية سيئة.
maxshopen
نعم ، هذا هو مرض قديم من نظام habrasystem. كان من المفترض أن أولئك الذين لديهم كارما إيجابية كافية ولن فقط ناقص أي شخص. عندما كان كل شيء أسوأ - كلما زاد طول الكرمة ، كلما قل المستخدم أنه يراهن على أن الأمر انتهى به إلى اثنين من الرماة "المميّزين بالنجوم" الذين تم توزيعهم على اليسار وإلى اليمين الذين حصلوا على -6 ، -8 ، وبعد ذلك تم تقليص الاحتمالات إلى واحدة. من الواضح أن المبدعين في الاقتصاد الكرمي لم يأخذوا في الاعتبار انحراف الهوية
يبدو لي أنه منذ فترة طويلة كان يجب موازنة هذا النظام أكثر بقليل من حقيقة أنه عند التصويت لشخص ما ، يتم خصم مبلغ معين منه من كارما المستخدم. الكثير ليس ضروريًا - 0.2-0.5 يكفي. هذا من شأنه أن يزيد بشكل كبير من مسؤولية الناخبين عند اختيار التصويت لشخص ما أم لا.
https://habr.com/ru/post/276383/#comment_8761911
وأخيراً ، تعليقات على المنشور من بداية هذا العام:
الكرمة ليست أداة جيدة جدًا للتنظيم الذاتي للنظام. أولئك الذين غير راضين عن شخص (أو حتى منصبه) غالبًا ما يضعون تقييمات في الكرمة. والنتيجة هي أن اكتساب الكرمة أمر صعب للغاية ، ودمجها سهل للغاية. هذا يجعل الناس يفكرون مرة أخرى - هل يستحق التعبير عن رأيك إذا لم يكن مشهورًا جدًا؟ بعد كل شيء ، إذا أعربت عنها مرة واحدة ، فإنها ستربط karma وتدمجها ، ولن يكون من الممكن التعبير عن المزيد. هذا يؤدي إلى حقيقة أن رأي واحد فقط لا يزال قائما على الموارد ، وجميع الآخرين مزدحمة.
https://habr.com/ru/company/habr/blog/437072/#comment_19647340
وهنا تعليق يشرح لماذا "حفظ المقالات" لا ينقذ حقًا نظام الكرمة:
لا تجلب المقالة أي شيء تقريبًا من حيث الكرمة ، وبالنسبة للتعليق غير الناجح ، يمكن دمج الشخص بالكامل.
هنا تكمن المشكلة في الفصل بين التصنيف والكرمة. في الرأس ، يعمل الناس مثل هذا:
1. تصنيف المحتوى هو موقفي من المقال أو التعليق.
2. تقييم الكرمة هو موقفي تجاه شخصيا
في النهاية
1. إذا كنت قد كتبت أفضل مقال في العالم ، فسوف تضع لك الكثير من المزايا لهذه المقالة (في التصنيف) وستعتبر أن مهمتك قد أنجزت.
2. إذا كتبت تعليقًا "لا يدخل في البث" ، فسيكون لديك تعليق ناقص ، وحتى شخص ربما تعتقد ذلك بسبب هذا الأمر أنت والكرمة.
https://habr.com/ru/company/habr/blog/437072/#comment_19649262
كثيرون غير راضين عن نظام الكرمة يعبرون عن أنفسهم بمعنى أن هذه سياسة متعمدة للإدارة -
على سبيل المثال ، في هذا التعليق أو في
هذا . هناك بالطبع الكثير من الأدلة غير المباشرة:
- أزلت واجهة برمجة التطبيقات (API) بحيث لم يكن من الممكن مراقبة الديناميات ؛
- لقد أجرينا تصنيفًا ديناميكيًا بحيث كان من المستحيل النظر إلى إجمالي التصنيفات مباشرةً في الملف الشخصي ؛
- وهم يشيرون باستمرار إلى "الكرموجراف" ، التي تنص على أن هناك إيجابيات أكثر من السلبيات (لم يتم ذكر نسبة الكرمة والتصنيفات) ؛
- كثيرًا ، لكن بدون سبب ، يقولون إن الكرمة تعكس جودة المنشورات والتعليقات (التي تتناقض مع الإحصاءات ، كما نرى من مؤشرات التقييم).
كما أنني أذكرك بأنه
لم يتم تقديم مبررات وجود الكرمة في
أي مكان ولم تظهر على الإطلاق .
لا يمكننا إثبات نظريات المؤامرة هذه بأي شكل من الأشكال. ولكن يبدو لي أن الأمر ليس في نفوسهم - فهناك نفس المشكلة مع الأشخاص الذين يعانون من الكرمة السلبية: اعتقاد لا يمكن اختراقه في برهم ، لدرجة أن أولئك الذين يختلفون معك يُنظر إليهم على أنهم "شخص سيء". هنا قرر قادة Habr بنفس الطريقة - سنقوم بتقييم المستخدمين بشكل منفصل عن رسائلهم. ولا يمكن شرحها لهم لأكثر من عشر سنوات أن هذه طريقة غير صحيحة لتصنيف المستخدمين. إنهم أذكياء ، وأنشأوا بوابة كاملة. إذن أنت تُنشئ هبر الخاص بك - وبعد ذلك سنتحدث (بالمناسبة ، من المضحك أن
حرفيًا في مثل هذه العبارات يدعي لي مدافع الكرمة ويجيب ، "أولاً احصل عليه")
شخصيا ، أفترض أن مخطط الكرمة نفسه جاء إلينا من
Lepra ، حيث كان معظم أصحاب بوابات الإنترنت الكبيرة
معلقين في وقت واحد. بدأ هبر كحارس Lepre نفسه - نادي مغلق بدعوات وتصنيفات متبادلة ، غير راضٍ - ذهب بعيداً عن النادي. لقد ولت تلك الأيام منذ وقت طويل ، ولم يتم إغلاق النادي لفترة طويلة ، ومنذ ذلك الحين لم يتم منح التصنيفات "لعضو آخر في النادي" ، ولكن لمستخدم عادي للتعليقات والمقالات العادية. لكن النخبوية الداخلية لا تتخلى عن الإدارة. يعتقد الجميع - في الواقع ، أنشأت الشباب بوابة كبيرة مربحة ، وكتبوا مقالات عن مواضيع تقنية لسنوات عديدة - كيف لا يعرفون شيئًا؟ لذا ، إذا كان كل شيء سيئًا ، فسيتم تصورهم هم الأشرار. ولكن في الواقع ، فإن المسؤولين عالقون ببساطة في مرحلة الطفولة. وكلما كانت البوابة أكبر وأكثر ربحية ، أصبح من الصعب قبول سنوات عديدة من الأخطاء من الكبرياء الفهم الخاطئ.
مشاركة
هذه هي المياه العميقة ، واتسون ، المياه العميقة. لقد بدأت الغوص.عدد خاص من شيرلوك هولمزأدناه ، سأستخدم مصطلح "Karma" في karma ، ومصطلح "Evaluation" أو "تقييم كلي" - للمبلغ الإجمالي لجميع إيجابيات وسلبيات التي تلقاها المستخدم ، للمقالات والتعليقات.
بعد معرفة التاريخ ، سنحاول إلقاء نظرة على الأرقام. في الآونة الأخيرة ، كانت هناك دورة كاملة من تحليل الإحصاءات ، لكنها كانت تتعلق بالعام الحالي فقط - كنت بحاجة إلى فهم التصنيف الكلي للمستخدم. نظرًا لعدم امتلاكنا لواجهة برمجة تطبيقات ، وبدلاً من التصنيفات الحقيقية في الملف الشخصي ، فإنهم يعرضون تصنيفًا مشكوكًا فيه - لا يمكنني إلا دراسة كل تعليق وجمع بيانات حول المؤلف والتصنيف منه. هذا ما فعلته.
لقد فتحت كل منشور من بداية الوقت ، وأخذت لقب مؤلف المنشور وتقييم المقال ، ثم ألقاب المعلقين وتصنيفات تعليقاتهم.
هنا هو رمز للمحلل الرئيسي.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.
-, , , (.. ). « » — , : , .
-, , .. « » — - . , , - « ». , ; , — .
-, , « ». . — , — . .
— , . - « , , » - .