![image](https://habrastorage.org/getpro/habr/post_images/ea5/c89/662/ea5c89662512497396f9f930b4e3c9cb.jpg)
Рассказывает Джефф Этвуд, сооснователь Stack Overflow и автор Coding Horror. Эссе 2009 года.
Hacker News Пола Грэма — отличный веб-сайт, на котором можно найти полезные ссылки для программирования и разумные обсуждения. Сайт, в какой-то степени, представляет собой усовершенствованную версию Reddit. Дизайн был непосредственно разработан с целью избежать недостатков программирования reddit.com, и сделано это было не кем-то со стороны (Reddit в свое время был стартапом, профинансированным фондом Пола Грэма Y Combinator). Поэтому мы внимательно изучили данный сайт в процессе разработки Stack Overflow.
Действительно, обсуждения на Hacker News гораздо серьезнее и не такие провокационные, как своего рода анархия на reddit.com. Я лично наблюдал дискуссии, возникающие под моими статьями, опубликованными на обоих сайтах. В эссе “Чему я научился у Hacker News” (рус) Пол пишет:
Очевидно, что Теория разбитых окон применима и к интернет-сообществу. Теория заключается в том, что мелкие правонарушения порождают более серьезные: в районе, где много граффити и разбитых окон происходит больше грабежей. Я жил в Нью-Йорке, когда Джулиани предложил свои реформы, после которых теория разбитых окон стала популярной, а общественное поведение чудесным образом улучшилось. И еще я был пользователем Reddit и наблюдал абсолютно противоположную, но столь же резкую трансформацию там.
Я не пытаюсь критиковать Стива и Алексиса. То, что случилось с Reddit, случилось не от недостатка внимания со стороны разработчиков. С самого начала ничего, кроме спама, не подвергалось цензуре. К тому же, у Reddit и Hacker News изначально были разные цели. Reddit был стартапом, а не сторонним проектом; его целью было быстрое развитие и рост. Сложите быструю раскрутку и нулевую цензуру и получите абсолютную свободу действий для каждого. Но будь у создателей возможность начать сначала, не думаю, что они бы что-то поменяли. Согласно статистике, Reddit намного успешнее, чем Hacker News.
Но то, что случилось с Reddit, может и не случиться с HN.
Всем, кто заинтересован в создании онлайн-сообществ, рекомендую почитать эту статью. Как Вы можете себе представить, я подошел к изучению данного эссе с особым интересом, ведь мы последние 7 месяцев работали с полномасштабным (в разы больше, чем я представлял) сообществом программистов.
Возможно, самое заметное различие между Hacker News и Reddit заключается в том, что в первом отсутствует функция «минусования»/даунвоута. Высказать свое отношение можно только одним способом — “плюсования”/апвоутом. Соответственно, Вы можете либо что-то “лайкнуть”, либо не делать ничего. Это дизайнерское решение интересное, но, на мой взгляд, плохое. (Новая информация: оказывается, “минусануть” комментарии все же можно, чего я не заметил. Это прописано где-то в недрах F.A.Q.).
Почему я не вижу стрелку вниз?
На постах нет стрелки вниз. Они появляются только тогда, когда пользователь зарабатывает определенный уровень кармы [Добавление: это, по какой-то непонятной мне причине, не указано, но в настоящее время надо набрать карму 100].
(Прошу прощение за мое упущение, но нет никакого видимого пользовательского интерфейса, который бы позволил понизить пост, и за все время я на Hacker News не видел ни одного комментария с негативной отметкой! И еще, я специально взял в скобки все свои комментарии, чтобы они звучали максимально “по-лиспски” и Пол Грэм мог увидеть мои поправки).
Должен сразу сделать несколько важных замечаний: сравнивать Hacker News и Stack Overflow надо аккуратно, потому что это принципиально разные сайты. Наш работает в формате вопроса-ответа с иногда случающимися обсуждениями, а Hacker News — сайт, существующий исключительно для дискуссий и обмена ссылками. Соответственно, поскольку у нас разные цели и задачи, подходы, которыми пользуемся мы, могут быть неприменимы для HN, и наоборот.
В Hacker News каждый пост фактически начинается с нуля (технически, с одного апвоута — Вашего, но мы будем называть это нулем) и может повышаться до бесконечности.
![image](https://habrastorage.org/getpro/habr/post_images/1ad/35b/2e5/1ad35b2e5facc1767f0447ed2f3cefb3.png)
Преимущество этой системы в том, что никто не получает отрицательную оценку, но такая система обходится дорого: теряется половина потенциально полезной информации. Если у поста 0 апвоутов, значит ли это, что он плохой? Или неверный? Неинтересный? Невозможно дать однозначный ответ, потому что ноль каждым воспринимается по-разному.
![image](https://habrastorage.org/getpro/habr/post_images/788/4df/01b/7884df01bbd8ac27016bd844be08f1c4.png)
Но стоит добавить негативные отметки, и диапазон сразу удваивается. Теперь грубый или неверный пост визуально отличается от неинтересного, потому что у него будут стоять отрицательные показатели.
Но никто не хочет получать даунвоуты. Появляется желание отказаться от идеи понижения постов, чтобы избежать подобного обсуждения:
Пожалуйста, сделайте что-нибудь, чтобы люди реже ставили даунвоуты. Как вариант, увеличьте “стоимость” понижения сообщения (для желающих без остановки ставить даунвоуты уже существует автоматическое “declined/отказано”).
Речь идет не о баллах, а об участии. Понижать нужно только грубые/ оскорбительные / глупые / плохо продуманные/ совершенно необоснованные комментарии. Если кто-то искренне хотел дать хороший совет, но получилось так себе, просто не ставьте ничего… Даунвоуты как бы говорят “Нам не нравится этот ответ. Вы потратили свое драгоценное время на написание ответа, но нас это не очень-то колышет”. Сразу начинаешь думать, а зачем я вообще пытаюсь кому-то на этом форуме помочь?
Я бросил писать посты в нескольких новостных группах Usenet, потому что большинство их участников только и хочет, что поиздеваться над тобой. Не допустите, чтобы то же самое случилось с Stack Overflow.
Вы можете поспорить, что адекватная манера обсуждений на Hacker News связана как раз с отсутствием понижения постов. Я в этом не совсем уверен. Мне кажется, это скорее связано с тем, что HN — довольно молодая, запущенная в феврале 2007 года платформа с небольшим (но растущим) сообществом.
В процессе создания Stack Overflow мы осознали всю важность полнодиапазонной оценки информации. Даунвоуты дают критически важную способность различать хорошие, плохие и оскорбительные посты. Как без них отличить безобидный, но скучный пост от неправильного и грубого? Бесспорно, получать даунвоуты неприятно. Мне тоже на Stack Overflow ставили негативные отметки. И каждый раз это заставляет меня задуматься. И это правильно! Это необходимо! Вы должны понимать, что у Ваших действий всегда есть последствия — и хорошие, и плохие. Мы в детстве в песочнице играли по тем же правилам — почему же наша интернет-песочница должна чем-то отличаться?
Идея мира, в котором нет даунвоутов, звучит для меня утопической. Реально ли ожидать, что люди будут публиковать посты, если не установлены определенные лимиты и санкции, если их соратники не могут высказать несогласие или недовольство? Без возможности поставить анонимный даунвоут появляется желание выразить свое недовольство язвительным комментарием под записью. Вот поэтому отказ от негативных отметок на деле только вредит сообществу.
Проблема заключается не в самих даунвоутах, а в том, как заставить людей ответственно подходить к понижению постов. Поэтому на Stack Overflow работает следующая система:
- Апвоуты добавляют 10 баллов к репутации автора поста
- Даунвоуты отнимают 2 балла от репутации автора и 1 балл — от Вашей
Хитрость в том, что даунвоуты в основном носят информационный характер. Плата за понижение репутации (или, говоря на языке Slashdot/Reddit, кармы) достаточно низкая. Потребовалось бы пять раз понизить чей-то пост, чтобы отнять баллы за один-единственный апвоут. И, вдобавок ко всему, отрицательный отзыв стоит Вам балл репутации тоже. В результате данная система заставляет Вас хорошенько подумать, прежде чем ставить даунвоут к чьему-то посту. Даунвоуты — дело серьезное, и их не стоит недооценивать. Мы разрабатывали нашу систему вокруг этого принципа.
Но работает ли она? Думаю, данные говорят сами за себя. Вот показатели по положительным и отрицательным отметкам на Stack Overflow на 07.03.2009:
Апвоуты — 1 251 020
Даунвоуты — 122 141
В среднем количество апвоутов превышает даунвоуты в 10 раз. Это даже оптимистичнее, чем можно было математически предсказать (10/2 = 5x). Это потому, что у нас есть и некоторые другие формы контроля оценок:
- Мы ограничиваем общее количество голосов до 30 в день для каждого пользователя.
- Вы не имеете права ставить даунвоут до тех пор, пока не заработаете эквивалент 10 апвоутов, то есть 100 баллов репутации.
Мы познали проблемы, связанные с бесконечным приростом посетителей без ограничений в оценке постов, еще в самом начале нашего пути. Установление четких рамок оценки имеет много преимуществ, помимо снижения уровня обесценивания отметок. Даже если Вы хотите отомстить и намеренно попытаетесь понизить чью-то репутацию, Вы за день сможете отнять только 60 баллов, параллельно потеряв и 30 своих. И Вам придется подождать еще 24 часа, чтобы снова попытаться поставить даунвоуты, что является неплохим тайм-аутом и дает возможность Вам остыть.
Я понимаю, чего хотел добиться Грэм при создании Hacker News. Он хотел создать атмосферу, в которой никого не будут задевать негативные оценки; эта цель похвальна, и ее, безусловно, легко реализовать. Но нужно ли это? Честно ли это? Отсутствие отрицательных отметок не дает достаточной обратной связи для сообщества. И в долгосрочной перспективе это скорее навредит Вашему сообществу, чем поможет.
![image](https://habrastorage.org/webt/rd/kl/lr/rdkllrbtrth_kdpceb-vxzrxl1o.jpeg)
Узнайте подробности, как получить востребованную профессию с нуля или Level Up по навыкам и зарплате, пройдя платные онлайн-курсы SkillFactory:
- Курс по Machine Learning (12 недель)
- Курс «Профессия Data Scientist» (24 месяца)
- Курс «Профессия Data Analyst» (18 месяцев)
- Курс «Python для веб-разработки» (9 месяцев)