Pull to refresh

Закат Stack Overflow

Level of difficultyEasy
Reading time6 min
Views44K
Original author: Priyam Mohanty

Недавно завирусился пост под названием The Fall of Stack Overflow («Падение Stack Overflow»), подробно рассказывающий о падении трафика этого сайта за последние полтора года на 35-50%.

Самой очевидной причиной этого можно назвать ИИ, потому что ChatGPT чрезвычайно полезен в качестве помощника в кодинге. Однако, мой дорогой разработчик, это не совсем правда.

Если приглядеться, то можно обнаружить, что самое существенное падение произошло примерно в апреле 2022 года, хотя ChatGPT вышел семь месяцев спустя, в ноябре. Хотя мы наблюдаем падения каждое лето (каникулы в школах и вузах) и зиму (праздничные выходные), это падение апреля 2022 года сохраняется и лишь усугубляется.

Падение, начавшееся в апреле 2022 года.
Падение, начавшееся в апреле 2022 года.

Здесь я наблюдаю неизменное падение, и это значит, что… ИИ заменил разработчиков навсегда.

Да нет, просто шучу, правда заключается в том, что фундамент для этого падения закладывался годами, и частично оно вызвано самим Stack Overflow.

Есть четыре причины, объясняющие медленное угасание Stack Overflow.

1. Изменения в Google Analytics

Первая причина повлияла быстрее всего. На самом деле, Stack Overflow не терял 50% своего трафика, истинные значения ближе к 35%. В мае 2022 года Google Analytics изменила способ хранения куки из-за законов о конфиденциальности, что привело к зафиксированной потере 15% трафика. По ссылке выше есть подробности.

2. Stack Overflow враждебен ко своим пользователям

Для места, где отвечают на вопросы, Stack Overflow на удивление один из самых токсичных и враждебных форумов в Интернете, но в пассивно-агрессивном смысле. За десяток лет мы видели тысячи жалоб на Stack Overflow, так что враждебность и упадок Stack Overflow — это не что-то новое. 

На Reddit есть сотни постов о враждебности Stack Overflow. «На нём удобно искать ответы, но когда я задал очень нишевый вопрос, меня заминусили; попытался отвечать на вопросы, меня заминусили. Я не могу ничего сделать.»
На Reddit есть сотни постов о враждебности Stack Overflow. «На нём удобно искать ответы, но когда я задал очень нишевый вопрос, меня заминусили; попытался отвечать на вопросы, меня заминусили. Я не могу ничего сделать.»

Уже почти десять лет люди говорят об «упадке Stack Overflow».

Но, похоже, всё наконец дошло до логического завершения.

«Почему StackOverflow — отстой.»  Это написано 14 ЛЕТ назад! В 2009 году! Сайта, на который ведёт ссылка, уже даже не существует.
«Почему StackOverflow — отстой.» Это написано 14 ЛЕТ назад! В 2009 году! Сайта, на который ведёт ссылка, уже даже не существует.

Часто когда ты пытаешься задать вопрос на Stack Overflow, его помечают как дубликат со ссылкой на вопрос, который точно ему не аналогичен. Или аналогичным вопросом может оказаться тот, на который так никогда и не ответили. 

В других случаях вполне приемлемые вопросы минусуют.

Если вы пытаетесь ответить, вас минусуют.

Если вы пытаетесь опубликовать комментарий... постойте, а ведь нельзя! У вас недостаточно кармы.

Для сообщества, регулируемого при помощи воображаемых Интернет-очков, на форумах присутствует невероятное количество неуважения, проявляемого не только посредством голосования, но и в комментариях, где люди пассивно-агрессивно называют тебя тупым.

Такое часто случается.«Вопрос: лямбда-ссылка на поле в Java8»«Я хотел бы понять, как получить лямбда-ссылку на поле. Я не хочу использовать метод, потому что моё поле public final. Подозреваю, что это невозможно, но нигде не нашёл чёткого утверждения.»«Зачем вообще использовать поля public?»«Мне нравятся поля public final в классах, которые используются как структуры данных. Они не реализуют интерфейсы и не имеют глубоких иерархий»«Ты усложняешь (как следует из твоего вопроса) себе жизнь (и своим коллегам). Это нарушает правила объектно-ориентированности (инкапсуляции), не соответствует стандартным практикам, делает код несогласованным, не позволяет его использовать всем стандартным фреймворкам и библиотекам, которые ожидают соблюдения стандартных договорённостей Java Beans. Если бы я был тобой, то не делал бы этого. Если тебя напрягает генерация геттеров, то используй хорошую IDE или пусть за тебя их генерирует Lombok.»
Такое часто случается.

«Вопрос: лямбда-ссылка на поле в Java8»

«Я хотел бы понять, как получить лямбда-ссылку на поле. Я не хочу использовать метод, потому что моё поле public final. Подозреваю, что это невозможно, но нигде не нашёл чёткого утверждения.»

«Зачем вообще использовать поля public?»

«Мне нравятся поля public final в классах, которые используются как структуры данных. Они не реализуют интерфейсы и не имеют глубоких иерархий»

«Ты усложняешь (как следует из твоего вопроса) себе жизнь (и своим коллегам). Это нарушает правила объектно-ориентированности (инкапсуляции), не соответствует стандартным практикам, делает код несогласованным, не позволяет его использовать всем стандартным фреймворкам и библиотекам, которые ожидают соблюдения стандартных договорённостей Java Beans. Если бы я был тобой, то не делал бы этого. Если тебя напрягает генерация геттеров, то используй хорошую IDE или пусть за тебя их генерирует Lombok.»

Хотя проведённое Stack Overflow в 2018 году исследование показало, что недоброжелательно лишь 7% комментариев на Stack Overflow, на самом деле этого достаточно, чтобы отпугнуть разработчика и не дать ему сделать свой вклад.

Распространённость в пределах от 5% до 10% может иметь большое влияние на сообщество. Давайте выполним приблизительные расчёты. Если среднестатистический разработчик посещает Stack Overflow для решения задачи один-два раза в неделю, под найденным им вопросом есть ответ, а каждый пост (вопрос и ответ) имеет по два комментария (помните, что комментарии виднее посетителям, чем ответы), то по консервативным оценкам этот разработчик при посещении Stack Overflow каждый месяц работы кодером будет видеть 1-3 снисходительных, недружелюбных комментариев. Отпугнёт ли кого-то один враждебный комментарий в месяц? Очевидно, что нет, потому что Stack Overflow по-прежнему многим полезен. Но он убедит некоторых, что здесь не стоит помогать, а комментарий в следующем месяце убедит в этом ещё сильнее, и так далее. И это мы учитываем только читателей таких комментариев; на тех, кому направлены эти комментарии, они, естественно, повлияют гораздо сильнее.

Источник

Из-за этого большинство программистов пользуется сайтом только в режиме чтения. Вместо него они переходят на Reddit, где сообщество программистов гораздо дружелюбнее.

А теперь вы даже можете обратиться к ChatGPT, который с уверенностью даст ошибочный ответ, который выглядит таким правильным, что вы потратите ещё семь часов на отладку вашего неработающего кода.

3. Теперь поиск Google оценивает Stack Overflow ниже.

Результаты Stack Overflow упали и в Google, как в буквальном числовом выражении (они теперь не всегда бывают первым результатом), но и в смысле «цифрового объекта» (иногда их даже не видно на экране).

Давайте проведём маленький эксперимент? Возьмём три самых популярных вопроса о программировании и зададим их Google в окне режима инкогнито.

Примечание: очевидно, результаты могут сильно разниться. Персонализированный поиск Google может возвращать Stack Overflow первым чаще или реже, в зависимости от ваших действий.

Тест 1/3: «Как отцентрировать div?»

Здесь Stack Overflow стоит на третьем месте, на моём стандартном 27-дюймовом мониторе чуть ниже середины страницы.

Stack Overflow здесь на третьем месте.
Stack Overflow здесь на третьем месте.

Тест 2/3: «Что делает yield в Python?»

Это пятый по популярности вопрос на Stack Overflow.

Здесь Stack Overflow занимает четвёртое место, но мне даже не нужно нажимать на ссылку, потому что featured snippet наверху отвечает на мой вопрос.

Если бы у меня не было вертикального монитора, то пришлось бы скроллить.
Если бы у меня не было вертикального монитора, то пришлось бы скроллить.

Тест 3/3: «Как отменить локальные коммиты git?»

Это второй по популярности вопрос на Stack Overflow.

Вот в чём проблема:

У Google есть элементы featured snippet, позволяющие отвечать на некоторые из самых популярных вопросов даже без необходимости клика.

В других ситуациях Stack Overflow не находится даже в двух верхних или даже в пяти верхних ссылках на странице.

К этому добавляются featured snippet, связанные вопросы и видео с YouTube, что обычно опускает Stack Overflow ещё ниже на экране.

Из-за featured snippet и связанных вопросов SO опустился ниже чем на половину экрана.
Из-за featured snippet и связанных вопросов SO опустился ниже чем на половину экрана.

Данные показывают, что первый результат в Google получает 27,6% от всех кликов, а верхние три результата получают почти 55% от всех кликов.

Если вы не в трёх верхних результатах... трафик снижается экспоненциально.

Источник: backlinko.com

4. ИИ тоже влияет

И, наконец, очевидный ответ — ИИ. ChatGPT действительно хорошо справляется с помощью в кодинге. Теперь я даже не использую его ни для чего другого. 

Судя по резкому падению с 30 ноября 2022 года, ИИ тоже ускорил падение SO.

ChatGPT был выпущен 30 ноября 2022 года.
ChatGPT был выпущен 30 ноября 2022 года.

Справедливо ли это? Не особо. Stack Overflow предоставляет все свои данные свободно, поддерживает этот сайт в течение полутора десятка лет, а потом приходит OpenAI, скрейпит его и обучает на нём свои модели. Как бы вы ни относились к пользователям и модераторам Stack Overflow, обеспечение работы такого сайта — недешёвое мероприятие. 

Это может стать проблемой в будущем. Чем меньше вопросов и ответов на них будет появляться онлайн, тем меньше данных будет для обучения ИИ. А как сможет совершенствоваться ИИ, если человеческих данных станет меньше? Поэтому если каждый будет обращаться к ChatGPT за помощью в отладке своей непонятной проблемы с React 18 или C++21, то когда выйдет C++72 или React 37, у нас могут возникнуть небольшие затруднения.

И ситуация для скрейперов данных будущего тоже будет непростой. Компании наподобие Reddit и Twitter (X?) адаптируются к скрейперам данных для ИИ, начиная взимать оплату за свои API.

Но логично, что программисты предпочитают ИИ сайту Stack Overflow.

ИИ быстр — не нужно ждать, пока на ваш вопрос ответят.

ИИ дружелюбен — вам не нужно ждать, пока ваш вопрос пометят, как дубликат.

ИИ работает с вами вежливо — вас не назовут тупым за ваш вопрос или за публикацию последующих комментариев.

«На этот вопрос уже отвечали»«А вы пробовали сначала загуглить?»«Повтор вопроса»«Читай документацию»ChatGPT: «Вот ответ»
«На этот вопрос уже отвечали»
«А вы пробовали сначала загуглить?»
«Повтор вопроса»
«Читай документацию»

ChatGPT: «Вот ответ»

Но помните, очень часто ИИ ошибается. Однако ИИ — это лишь инструмент, а не замена способностей.

Будущее

Упадок Stack Overflow может продолжиться, особенно учитывая бета-версию Google Search Labs. Теперь нам вообще не нужно кликать и даже читать. Просто отправить поисковый запрос и скопировать.

На самом деле, Stack Overflow находится прямо под этим ответом, но... одним кликом меньше плюс удобная кнопка копирования? Как бы ни желал я SO выживания... это действительно очень здорово.
На самом деле, Stack Overflow находится прямо под этим ответом, но... одним кликом меньше плюс удобная кнопка копирования? Как бы ни желал я SO выживания... это действительно очень здорово.

В ответ на утверждения об упадке. Stack Overflow выпустил OverflowAI.

И я попробовал его, вот первое впечатление:

«Мой GET-запрос HTTP работает в Postman, но не работает в Django. Я постоянно получаю вот такое сообщение об ошибке. Что происходит?»OverflowAI: «Да как ты этого не знаешь? Ты что, тупой? Я не буду отвечать, на этот вопрос уже отвечали. Удачи (она тебе понадобится).»
«Мой GET-запрос HTTP работает в Postman, но не работает в Django. Я постоянно получаю вот такое сообщение об ошибке. Что происходит?»

OverflowAI: «Да как ты этого не знаешь? Ты что, тупой? Я не буду отвечать, на этот вопрос уже отвечали. Удачи (она тебе понадобится).»

Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
Total votes 81: ↑74 and ↓7+89
Comments249

Articles