Список сайтов машинного перевода stackoverflow (аналоги qaru.site)?
В последнее время с гуглом твориться совсем какое-то непотребство — qaru.site процентов наверное на 80% вытеснил из поиска stackoverflow. Что ежедневно причиняет мне душевные страдания.
Решил расширение запилить для авторедиректа с подобных сайтов на stackoverflow.
Накидайте список аналогичных сервисов, чтоб совсем ничего глаза не мозолило в поиске.
С того же qaru.site найти оригинальный вопрос можно вбив последнюю часть url в поиске на stackoverflow — вполне по силу браузерному расширению.
- Вопрос задан более трёх лет назад
- 11824 просмотра
4 комментария
Средний 4 комментария
Покажите пример запроса
Можно вопрос (просто интересно) чем уж так плох qaru (кроме откровенно халтурного перевода местами — ведь смысл понять можно и код насколько знаю, не переводится)
Лично я нахожу его местами даже удобным: можно сформулировать вопрос на русском, зайти на qaru (если гугл предлагает), почитать вопрос на плохом, но все же русском (иногда даже быстрее въехать в смысл, а я знаю программистов, у которых с инглиш гораздо хуже, чем у меня), и если что-то осталось непонятно, то совсем несложно, как вы указали, получить ссылку на оригинальный вопрос.
Если qaru не нужен в результатах поиска, его можно исключить добавив в запрос что-то типа -qaru, либо есть способы исключения определенных сайтов из выдачи Гугла.
Ещё слышал, что qaru выдает переведенные вопросы со stackoverflow за свой оригинал. В таком случае конечно да, некрасиво. Но наверно это скорее не наши проблемы (тех, кто кликает и поднимает qaru в топ), а проблемы stackoverflow, что не судится с qaru (наверно могут?), не развивают подобные сервисы и тд или проблемы Гугла, который не пресекает такую «несправедливость». А если подумать, то даже наоборот, может оказаться что qaru вовсе не зло, ведь по-моему, заходя на него вместо stackoverflow, мы повышаем конкуренцию, а значит и качество сервиса вопрос-ответ. Как считаете?
Александр Таратин @Taraflex Автор вопроса
Альберт, Для меня qaru — зло, просто личная неприязнь.
И конкретно для себя я проблему решил.
Если мне что-то не понятно на буржуйском, то просто использую https://quest-app.appspot.com/
spaceatmoon @spaceatmoon
Альберт, лично мне неприятно как сайт зарабатывает на чужом контенте при этом вставляет рекламу. Такие сайты по хорошему надо выпиливать из рунета.
Закат Stack Overflow
Сайт Stack Overflow был создан в 2008 году Джеффом Этвудом и Джоэлем Спольским как более открытая альтернатива возникшим ранее аналогичным сайтам, таким как, например, Experts-Exchange. Название для сайта было выбрано голосованием в апреле 2008 года читателями популярного блога по программированию Coding Horror, который вёл Этвуд.
Многие годы сайт Stack Overflow был одним из самых популярных ресурсов для программистов, пытающихся решить какую-то проблему. Поскольку вопросы, размещавшиеся на Stack Overflow, часто оказывались среди первых, которые выдавал Google в каком-либо поиске, относившемся к программированию, то пользователи массово приходили на сайт и начинали задавать свои собственные вопросы.
На июль 2015 года у Stack Overflow было более 4 млн. зарегистрированных пользователей и почти 10 млн. вопросов (без учёта удалённых пользователей и вопросов). Однако в исследовании 2013 года было выявлено, что 77% пользователей задают только один вопрос, 65% отвечают только на один вопрос и лишь 8% пользователей дают ответы на более чем 5 вопросов. В настоящей статье я хотел бы рассмотреть возможные причины такого чрезвычайно низкого процента.
Джоэль Спольский и Джефф Этвуд на конференции MIX09 в 2009 году
Stack Overflow ненавидит новых пользователей
Новые пользователи ощущают себя особенно неуютно, входя на Stack Overflow. Процитируем Иона Бишопа:
Stack Overflow всегда был ресурсом с уровнем выше среднего для нахождения ответов на вопросы по программированию. В частности, на этом сайте я нашёл немало полезных ответов на действительно трудные вопросы, многие из которых помогли мне преодолеть проблемы на работе или с программными проектами, которыми я занимался «для души». Поэтому я решил зарегистрироваться на сайте, чтобы увидеть, могу ли быть чем-нибудь полезен. Никогда прежде ни один сайт не производил на меня худшего первого впечатления.
Чтобы сохранить это сообщество максимально «чистым» и организованным, новые пользователи с самого начала имеют очень мало прав. По замыслу это, конечно, хорошая идея. На практике это делает трудной задачу хоть как-то развиваться для новых пользователей. Я прочитал несколько вопросов сегодня и хотел бы написать несколько комментариев для оригинального поста. К сожалению, я не в состоянии оставить мои комментарии, поскольку новые пользователи не имеют права комментировать не свои собственные статьи (пользователь обязан заработать «репутацию», чтобы получить такое право). Размещение моего комментария как «ответ» на оригинальный вопрос представляется мне не очень подходящей формой, поэтому я не делаю этого.
Постранствовав по сайту, я нашёл несколько вопросов, на которые я, как мне кажется, мог ответить. Как только я вошёл, чтобы ответить на эти вопросы, вдруг ворвался кто-то ещё (в некоторых случаях, несколько человек) и просто избил меня. У меня не было никакой возможности дать полезный ответ. Мало того, что вы должны очень хорошо знать обсуждаемый предмет, но вы также должны быть очень быстрыми в предоставлении указанного ответа. В конце концов, я дал ответ на вопрос, но понял, что мой подход не будет работать. Прежде чем я смог принять меры и подкорректировать мой ответ, моя записка была уже заминусована несколькими людьми, некоторые из которых оставили язвительные замечания. Ну, очень тёплый приём нового пользователя! Я впоследствии удалил мой ответ.
Источник
Вопросы новичков воспринимаются весьма недоброжелательно
Stack Overflow также ненавидит большинство других своих пользователей
Не только новые пользователи испытывают чувство враждебности на сайте. Некто на Hacker News выразил общее ощущение, получаемое многими программистами (опытными или не очень) при их попытках участвовать в активности Stack Overflow.
Когда я только начал программировать, я мог использовать SO, не задавая вопросов, поскольку то, что мне хотелось выяснить, было довольно простым. Это было замечательно, потому что многие ответы помогли мне понять больше о «необъятной вселенной» проблем, с которыми я мог бы встретиться в ходе разработок, и эти ответы подтолкнули меня глубже изучить язык.
После того как я начал задавать вопросы, я старался отвечать на комментарии, отмечал и плюсовал лучшие ответы. Я хотел быть хорошим участником этого сообщества. И взаимность была частью этого: в конце концов, я решил, что сам могу отвечать на вопросы; помню, какое было прекрасное ощущение, когда первый раз увидел +25 в моём профиле, потому что кто-то принял мой ответ.
В наши дни, если я задаю вопрос, то это потому, что я потратил немало времени на поиск ответа и не смог найти его сам. Что же происходит, когда я задаю вопрос на SO:
1. Я задаю вопрос, размещаю код и полученное сообщение об ошибке.
2. Вопрос заминусован.
3. Отвечаю на комментарий, в котором говорится, что мой вопрос уже был ранее (это не так, что я и разъясняю, чтобы избежать ситуации «снято как повтор»).
4. Отвечаю на комментарий об отсутствующей точке с запятой, которая была удалена, когда я вырезал/вставлял/форматировал мой код. (Хотя сообщение об ошибке ясно показывает, что проблема не в отсутствующей точке с запятой).
5. У вопроса появился лайк.
6. Ответ! Написано, что я должен читать документацию, и дана ссылка на раздел, не имеющий отношения к теме вопроса (документацию я, разумеется, уже читал).
7. Наконец, полезный ответ! Выглядит довольно хорошо; я тестирую его, и — проблема решена. Я принимаю и лайкаю ответ.
8. Замечаю, что менее чем через 1 минуту после принятого мною ответа пришёл дублирующий. Его автор выражает недовольство, сообщая, что его запись была размещена раньше. Я ссылаюсь на отметку времени, показывающую, что другой отправитель был первым, и получаю ответ, что это баг, связанный с часовыми поясами.
9. Позже я перепроверяю и замечаю сообщение: «Вопрос снят, как неточный, ответ на него невозможен».
10. Перепроверяю ещё раз и вижу, что кто-то заминусовал мой вопрос.
11. Отправляю письмо модератору, чтобы снять минусование.
Источник
Стивен К. Хикс указал 8 причин, почему он почувствовал себя не в состоянии больше участвовать в этом сообществе, после того как был очень активным пользователем довольно долгое время:
— Вечная проблема в сентябре. Многие новые пользователи Stack Overflow [SO] чрезвычайно редко соблюдают правила сообщества. Я не знаю, как решить эту проблему, но раздражает видеть вопросы, звучащие как послание о помощи. SO позиционирует себя как сайт с очень лаконичными вопросами и ответами. Он — не дискуссионный форум. [Он, скорее, поддержка и подарок]. Другая проблема в том, что снова и снова идут повторы, несмотря на сердитых модераторов, борющихся с этим. Одним из примеров являются вопросы о том, где найти бесплатные данные по котировке акций.
— Вопросы, относящиеся к разработке ПО, которые, по сути, не являются техническими, часто заминусовываются и/или снимаются. Примером может быть вопрос о специфическом наборе данных [для целей обучения/разработки], который был снят по причине, что он «не соответствует сообществу». Хотя существует сайт StackExchange, связанный с наборами данных, куда мог бы быть перенаправлен этот вопрос, сам вопрос, несомненно, относится к разработке ПО. Написав «сайт StackExchange,…, куда мог бы быть перенаправлен этот вопрос», я имел в виду полностью функционирующий сайт, а не тот, что в настоящее время «разработан» / на Зоне 51. Снятие вопроса как «нерелевантного» не помогает ни автору, ни тем людям, которые ищут аналогичный набор данных.
— Минусование как средство для снятия вопроса. Пользователь, чтобы получить право голосовать за снятие вопроса, должен иметь 250 репутационных баллов. Если вы участвуете в сообществе, то на их накопление не требуется много времени. Минусование должно быть способом отметить, что имеет место ошибочная, дезориентирующая или бесполезная информация. Если пользователь полагает, что вопрос должен быть снят, но его репутации недостаточно для этого, то следует написать комментарий и привести аргументы за снятие.
— Минусование правильных, но отличающихся от привычных ответов. Проблема возникает, когда вопросы могут иметь несколько ответов. Пример: обычным ответом на вопрос об оптимизации Java-приложения является предложение использовать более эффективный алгоритм. За этот ответ проголосует, скорее всего, большинство. Однако другим правильным ответом является предложение переписать процесс на языке более низкого уровня и подсоединить его через программный канал [Socket, inproc, JNI и т.п.] к основному приложению. Такое предложение лучше применимо для довольно необычных ситуаций, но оно всё же является правильным и осуществимым. Из моего опыта могу сказать, что этот второй ответ будет заминусован, несмотря на то, что он даёт правильную информацию. Я обсуждал ситуацию с одним модератором [Shog9], и, по его мнению, такая стратегия является вполне приемлемой стратегией заминусовывания ответа, заслуживающего уважения.
— Сдвинутые по времени / повторные ответы. Поскольку я прекратил свою активность в сообществе, я не могу сказать, насколько часто это происходит. Однако при появлении вопроса часто возникает лавина ответов. Через некоторое время кто-то помещает повтор ответа и получает за него голосов больше, чем за первоначальный ответ. Такое труднее выявить, но оно происходит и очень раздражает.
— Неправильно приписываемая репутация ответам: если есть другие ответы, которые помогают вам в ответе на вопрос, то, пожалуйста, цитируйте тех других авторов. Это — проявление вежливости и правдивости. [Также тех, кого вы цитируете, необходимо отметить за их ответ].
— Здесь ещё один из странных случаев на Stack Overflow. Некоторые из вопросов, отнесённых к «Точным повторам», являются, на самом деле, не повторами в силу небольших, но важных различий. Я не могу сейчас привести пример, но комментаторы часто быстро без тщательной проверки решают, что имеет место точный повтор. Иногда такое обвинение не подкреплено никаким доказательством. Ссылки на другие вопросы считаются достаточным доказательством.
— Значение репутации: после глобального пересчёта создатели сайта сделали решительное заявление, что участие не оценивается на сайте. Пересчёт обесценил вопросы, и новая политика была применена ретроспективно. Это привело к потере репутации. Создатели сайта заявили, что «репутация была бесполезной», что противоречило их предыдущей формулировке, что репутация является «показателем того, насколько сообщество доверяет вам». Основываясь на предшествующем заявлении, можно было бы утверждать, что пользователь, имеющий 500 репутационных баллов, оценивается как Джон Скит [хорошо известный в сообществе пользователь и автор многих технических книг].
Стоит ли теперь удивляться, что многие программисты, которые много лет были зарегистрированы на Stack Overflow, всё чаще уходят с платформы?
Господство привилегированных троллей
В блоге Michael’s Techbox анонимный комментатор оставил следующее замечание:
Сайты Stack Exchange объявлены местом «бесплатного и открытого» обмена информацией, но в действительности они захвачены некоторым небольшим количеством участников, которые просто пытаются получить оценочные баллы, «бейджики» и статус модератора, желая выступать «экспертами» и претендовать на удалённую работу.
Например, посмотрите на активность этого пользователя, которая вместо выдачи полезных технических ответов состоит исключительно из осуждения ответов других людей:
В блоге The Programming Works было высказано аналогичное мнение
Я когда-то высказался на этом посту: «Если у вас есть вопрос по программированию, то Stack Overflow, вероятно, самое лучшее место, чтобы задать ваш вопрос». Так было, когда SO стартовал несколько лет назад; теперь — нет.
Сейчас ваши шансы получить полезный ответ на ваш вопрос на SO близки к нулю. Вместо этого вы получите ворох комментариев, утверждающих, что ваш вопрос, например, не соответствует SO или неправильно сформулирован или ещё что-то — и ничего полезного.
SO сейчас — ещё один зоопарк троллей и агрессивно-самоуверенных новичков.
Оба материала иллюстрируют, по-моему, коренную проблему Stack Overflow. Имеется некоторое количество демократически избранных модераторов, которые, как предполагалось, обязаны следовать некоторым довольно чётко сформулированным указаниям о том, как быть хорошими модераторами. Сайт имеет также весьма большое число пользователей с привилегиями:
- 39 000 пользователей с репутацией 2 000 или больше имеют возможность редактировать вопросы других людей.
- 26 000 пользователей с репутацией 3 000 или больше имеют возможность снимать вопросы. Пять голосов за снятие переводят вопрос в состояние «заблокирован».
- 6 900 пользователей с репутацией 10 000 или больше имеют возможность удалять вопросы.
Смеёмся нервно — как иначе на это реагировать?
В то время как я пишу эту статью, Jason Sachs (известный также как Jason S) находится под № 503 в списке пользователей с самой высокой за все времена репутацией — 70 688 баллов. Он также является одним из наиболее уважаемых пользователей Stack Overflow, которые решили прекратить затрачивать свою энергию на этом сайте. Вспоминая вышедший в 1995-м году выпуск сериала Seinfeld, он называет этих маленьких фюреров «супными фэнами»:
Поклонники сериала Seinfeld помнят его выпуск в ноябре 1995-го года «Супный фэн», в котором герой узнаёт о ресторанчике, где готовят фантастические супы. Ресторанчик ведёт экстравагантная персона, у которой есть чрезвычайно строгие требования к своим клиентам; если клиент не выдерживает надлежащий ритуал и моления, то хозяин кричит: «Не будет тебе супа!» — и у вас стремительно отнимают тарелку с супом, прежде чем вы сможете что-то возразить.
Наличие строгих стандартов этого типа само по себе не является «супным фанатизмом»; проблема появляется, когда такое отношение распространяется и начинает воздействовать на основную часть сообщества.
Источник
Дальше в этой статье Sashs приводит цитаты от нескольких пользователей сайте, дополнительно иллюстрирующих проблему. Возьмите такую сторону:
… сначала большинство задаваемых вопросов находило положительный отклик: дружелюбные комментарии и ответы, люди пытались помочь независимо от того, как вы сформулировали вопрос. В последнее время наблюдается тенденция просто снять или заблокировать большинство вопросов, заминусовать их, высмеять форму или стиль.
Источник
… или такой комментарий:
Я вижу, что люди обычно снимают или минусуют вопрос немедленно, если считают этот вопрос хоть сколько-нибудь неправильным; требуется лишь 5 человек, чтобы признать ваш пост неправильным, хотя более 20-ти других пользователей сайта будут считать ответ правильным. Сообществу не нравится это, но не бывает никаких поясняющих комментариев, если вы не запросите их. Просто снять, спасибо, и приходите снова.
Источник
… или такой комментарий:
Майкл Рихтер сделал хорошую работу по выявлению этой тенденции и её причин в своём посте «Почему я больше не участвую в работе StackOverflow» — он называет пользователей сайта, стремящихся к очень высокой репутации, «тусовкой распальцованных школяров» .
Источник
… или такой комментарий:
Я думаю, что вы полностью правы, утверждая: «Этот сайт был предназначен обеспечить образцовый ресурс, позволяющий программистам найти ответы на их вопросы. Целые книги (причём очень хорошие) могут быть написаны на основе содержания самых лучших вопросов/ответов, размещённых здесь.» К сожалению, все они утонули в море бессмыслицы. Успех сайта привлекает к нему людей с вопросами о программировании (таких посетителей великое множество на Гугле). Это снижает способность системы к саморегулированию. Возникает потребность иметь нечто вроде «вступительного экзамена» для тех, кто желает отправить вопрос.
Источник
В своём блоге Джефф Этвуд, соучредитель Stack Overflow, объясняет значение слова «троллинг»:
1. Приходит, чтобы породить конфликт.
2. Его, на самом деле, не заботит тема обсуждения.
Некоторых троллей, может показаться, заботит тема, потому что они высказывают пусть крайние, но взгляды на неё и подолгу рассуждают о ней в мельчайших деталях для тех, кто готов их воспринимать. Такое может продолжаться дни, недели, месяцы … Но всё это — обман.
Наиболее поразительной особенностью худших троллей является то, что их позиция по данной теме абсолютно «твёрдокаменная», незыблемая и они отстаивают её насмерть, несмотря на любую критику, доказательства или соображения.
Источник
Основываясь на этом определении, я предложил бы альтернативное название для «супных фэнов» или «тусовки распальцованных школяров»: «сверхпривилегированные тролли». Да, вы прочитали правильно. Мало того, что сайт Stack Overflow страдает от фанатичных троллей, но и он является сообществом, где тролли, на самом деле, главные. Неудивительно, что враждебность и инфантильное поведение стали нормой, определяющей взаимодействие на Stack Overflow! Ясно, что никто не стережёт самих сторожей.
Meta.StackOverflow — сообщество, предназначенное для вопросов о StackOverflow. Это то место, куда, как вам говорят, можно обратиться с любыми претензиями к Stack Overflow, но там проблема, возможно, ещё хуже.
Латинская фраза «Quis custodiet ipsos custodes?» или «Кто устережёт самих сторожей?» является крылатым выражением в сатире и политической литературе, по крайней мере, с античного времени. Это означает, что любая система легко перестаёт выполнять функции, для которых она была создана, если её хранители имеют неограниченную власть.
Чтобы ещё более ухудшить ситуацию, сетевое программное обеспечение Stack Exchange автоматически удаляет вопросы, которые отвечают следующим критериям:
- Снят более 9 дней назад
- Не снят как повтор
- Счёт
- Не заблокирован
- Нет ответов со счётом > 0
- Нет принятого ответа
- Нет подвешенных вновь открытых голосов
- Редактирование в последние 9 дней не проводилось
Я думаю, что любой вопрос на Stack Overflow может быть охарактеризован, как не относящийся к теме сайта, если достаточно, чтобы только привилегированные тролли проголосовали за его снятие.
Есть ли какая-нибудь альтернатива?
Quora может показаться очевидным выбором, но этот сайт имеет много проблем, схожих с проблемами Stack Overflow, хотя и менее очевидным образом. Например, заминусованные ответы умело укрыты от большинства пользователей, и не редкость удаление ответов без какого-либо объяснения или уведомления и/или без видимых следов для всех, кроме автора ответа. Quora даёт некоторым пользователям абсолютно анонимные полномочия редактировать сайт так, как они считают целесообразным, но почти никто, кажется, не знает об этом.
Таким образом, в то время как Quora может показаться более демократичным и более здравым сайтом, на самом деле это только поверхностное впечатление. Троллинг и прямой мелкий авторитаризм привилегированных пользователей не менее часто встречается и на этом сайте. По многим из тех же самых причин, по каким антиутопия Хаксли «Дивный новый мир» представляется более страшной и беспокоящей, чем антиутопия Оруэлла «1984», сообщество на Quora страшит и беспокоит больше, чем на сайте Stack Overflow.
По крайней мере, Stack Overflow не заботится о том, чтобы скрыть свою тоталитарную природу от тех, кто готов уделить больше, чем несколько минут внимания внутренней работе сайта. По крайней мере, диктаторы на Stack Overflow как-то публично известны и должны дать открытое объяснение, когда они решают снять какой-то вопрос. И, возможно, ещё более важно то, что Stack Overflow не выводит нас из себя бесчисленными дурацкими вопросами типа: «Шерил Сандберг когда-нибудь что-нибудь откладывает на потом?». Несмотря на все недостатки, его слабые попытки сделать управляемым контроль качества, осуществляемый сообществом, не так плохи, как то же на сайте Quora.
- сайт Stack Overflow
- программирование
- вопросы и ответы
- ресурс по программированию
- популярность
- сообщество сайта
- Исследования и прогнозы в IT
- Читальный зал
Как находить кандидатов на Stack Overflow
Мы поговорили про сорсинг на Stack Overflow с Русланом Сарваровым из компании Evrone.
Руслан рассказал, чем Q&A-сервис для разработчиков полезен рекрутерам, как вести внутренний и внешний поиск кандидатов, а также объяснил, как составлять SQL-запросы к базе данных пользователей, если не знаешь SQL.
Руслан Сарваров, Recruitment Lead в Evrone, автор канала SR4HR
Что такое Stack Overflow и кого там искать
Stack Overflow — это Q&A-сервис для айтишников, где одни люди задают вопросы, а другие отвечают. По сути, это огромная база знаний, с помощью которой IT-специалисты решают свои боевые задачи.
Аудитория сайта насчитывает свыше 100 миллионов человек со всего мира. Среди пользователей не только разработчики, а все, кто пишет код, в том числе ML-инженеры и автотестировщики.
Особенности сервиса
Легче оценить экспертность кандидата
Если зайти в профиль пользователя на GitHub, то можно посмотреть написанный им код и понять, какие языки программирования он знает. Но зачастую рекрутеры недостаточно глубоко разбираются в коде — им сложно определить, чем конкретно занимается кандидат и в чем он эксперт.
Эту задачу легче решить на Stack Overflow: здесь можно почитать ветки по вопросам, в обсуждениях которых участвует пользователь. Это позволяет более детально проанализировать его опыт, понять интересы и проблемы.
Сложно искать информацию о кандидате
В целом это сервис, где айтишники могут обмениваться знаниями и опытом, не подвергаясь атакам рекрутеров. Именно поэтому внутренний поиск Stack Overflow ориентирован на сбор информации по конкретным темам, а не на сканирование профилей пользователей. К счастью, эти ограничения можно обойти — еще расскажу как.
Еще недавно на Stack Overflow были инструменты для работодателей:
- Jobs — можно было публиковать вакансии, разбирать отклики и писать кандидатам;
- Salary Calculator — калькулятор зарплат и аналитика вилок по каждому стеку технологий;
- Developer Story — резюме в профиле пользователя.
Ни один из этих продуктов больше не работает: создатели Stack Overflow решили, что не стоит превращать сервис в очередной джоб-сайт.
Stack Overflow — не основной, а дополнительный канал поиска
У вас не получится отправить пользователю личное сообщение внутри сервиса: такой функции нет. Скорее всего, вы не сможете понять, открыт ли кандидат к предложениям — если только он сам не напишет об этом в профиле.
Типичный сценарий использования сервиса: нашли кандидата на LinkedIn или GitHub, а потом перешли в его аккаунт на Stack Overflow, чтобы оценить опыт и понять, за что стоит зацепиться на интервью. Или наоборот: встретили подходящего специалиста на Stack Overflow, а потом нашли его аккаунты в других соцсетях и платформах.
X-ray-поиск по Developer Story
Раньше внутри профиля пользователя был специальный раздел Developer Story. Он выглядел как полноценное резюме с контактными данными и информацией о предыдущих местах работы и образовании:
Сейчас все эти страницы недоступны, но благодаря кэшу гугла их можно просматривать. Например, найдем резюме golang-разработчиков, которые в своих навыках указали Kubernetes. Запрос будет таким:
site:stackoverflow.com/cv (“golang * “|“go * “) “kubernetes“
Раньше Developer Story (резюме) хранились по адресу stackoverflow.com/cv. А с помощью символа * мы сообщаем гуглу о том, что после ключевого слова может идти какой угодно текст.
В результате мы получаем поисковую выдачу. Но при попытке перейти по любой ссылке система сообщает, что Page not found. К счастью, все удаленные страницы еще хранятся в памяти гугла: чтобы открыть страницу, нажмите на значок с треугольником и кликните по ссылке «Сохраненная копия»:
В основном таким Х-ray-запросом я находил резюме разработчиков уровня «сениор» и выше — с опытом от 3 до 5 лет в определенном стеке. Реже встречаются джуны и мидлы.
Чтобы сохранить поисковую выдачу, советую использовать расширение Instant Data Scrapper. Оно сформирует таблицу, где будут ссылки на кэшированные страницы:
X-ray-поиск по профилям пользователей
Профили всех пользователей хранятся по адресу stackoverflow.com/users. Причем помимо глобального Stack Overflow есть русскоязычный сегмент — он находится на поддомене ru.stackoverflow.com.
Искать только по русскоязычным пользователям можно двумя способами:
Поиск по поддомену ru позволяет сузить выдачу. Например, если написать site:ru.stackoverflow.com/users ios swift, то гугл покажет около 200 профилей, а по запросу site:stackoverflow.com/users ios swift Russia — более 500.
Далеко не во всех профилях есть контакты. Но можно поискать среди пользователей, которые указали свой LinkedIn: cсылка будет в блоке About или в информации под фото. Составляем запрос:
site:stackoverflow.com/users ios|swift “linkedin.com/in/ *“ Russia
Stack Overflow — это не джоб-сайт, поэтому большинство пользователей не ищут работу. Но те, кто открыт к предложениям, иногда используют фразу looking for — за это можно зацепиться в запросе:
site:stackoverflow.com/users “Data Science“ “looking for“
Поиск через Stack Exchange Data Explorer
Stack Exchange Data Explorer — это сервис для поиска по базе пользователей Stack Overflow с помощью SQL-запросов. Если вы не знаете язык SQL, не беда, есть инструменты, которые помогут сформировать нужный запрос.
Генератор SQL-запросов
Этот сервис создает запрос под ваши требования. Можно задать местоположение и скиллы, выбрать обладателей конкретных бейджей от Stack Overflow:
В правой колонке автоматически формируется SQL-запрос. При нажатии на голубую кнопку текст копируется в буфер, а вас перекидывает на Stack Exchange Data Explorer, где можно отправить запрос.
Готовые скрипты
Скорее всего, нужный вам запрос уже кем-то написан — осталось только найти и подправить его под свои задачи.
Например, я нашел интересный скрипт, который необходимо настроить: указать локацию поиска в User.Location и скиллы (язык программирования или фреймворки) в Tags.TagName. Скрипт формирует таблицу, где по каждому пользователю есть информация:
- Ссылка на профиль в Stack Overflow.
- Репутация — формируется за счет ответов на вопросы и является частью системы геймификации Stack Overflow.
- Ссылка на веб-сайт, который указан в профиле.
- Предполагаемые ссылки на GitHub, LinkedIn и Telegram — формируются путем подстановки никнейма пользователя на Stack Overflow. Это сработает, только если человек использует один и тот же никнейм в разных соцсетях.
Есть готовый запрос для поиска по стеку и локации — надо только заполнить поля TagName и LocationName, а потом нажать кнопку Run Query. Например, если вбить Rust и Moscow, то получим выдачу из 50 профилей.
Внутренний поиск
Поиск по темам
Внутренний поиск Stack Overflow ориентирован не на людей и их навыки, а на темы и сообщения. Допустим, вам требуется информация по какой-то проблеме — делаете запрос и смотрите решения.
А вот получить выборку из всех java-разработчиков из Москвы не получится: этих фильтров просто нет во внутреннем поиске. С такими запросами лучше сразу идти на GitHub, LinkedIn или классические джоб-борды.
Но зато вы можете найти человека, который разбирается в узкой теме. Сценарий поиска такой:
- Рекрутер знает о проблеме, которую решает команда разработки.
- Он вбивает запрос по этой проблеме в поисковую строку на Stack Overflow.
- Затем читает обсуждения и пытается связаться с людьми, которые его заинтересовали.
Однажды таким способом я искал Reverse Engineer — это редкий специалист, который занимается информационной безопасностью и исследованиями. Я нашел кандидата и довел его до оффера, который тот, увы, так и не принял.
Для понимания работы операторов поиска по темам нужно изучить официальную документацию Stack Overflow.
Поиск синонимов
Stack Overflow можно использовать не только для поиска кандидатов — это еще и полезная база знаний для рекрутера, который начал работать с новой вакансией.
Допустим, вы впервые ищете ML-инженера и не знаете, какие ключевые слова использовать. Можно отправиться в гугл: разбираться в статьях, где обычно много воды, вычленять ключевики, пытаться докопаться до сути. Но есть более простой и быстрый способ — перейти в раздел «Метки» на Stack Overflow, найти нужную технологию, посмотреть описание и связанные с ней ключевые слова:
Для чего подходит Stack Overflow
Если нужен редкий специалист
Если ищете специалиста с редкой экспертизой или сочетанием скиллов, то Stack Overflow — хороший выбор. За классическими джавистами, питонистами, php-разработчиками и гошниками можно отправляться в другие источники, более удобные для рекрутинга.
Если нужна «звезда»
Здесь могут обитать популярные в комьюнити разработчики — они отвечают на вопросы, участвуют в обсуждениях, зарабатывают себе бейджи и репутацию.
Если вы охотитесь за конкретным кандидатом, то можете найти его на Stack Overflow. Почитайте, что он пишет в обсуждениях, чем интересуется — это помогает понять, как построить диалог со звездным собеседником.
Если надо изучить стек технологий
Чтобы построить конструктивный диалог с кандидатом, рекрутер должен говорить с ним на одном языке. А для этого нужно хотя бы минимально, но разбираться в предметной области: знать свой стек технологий, основные фреймворки и обсуждаемые темы.
Stack Overflow можно использовать для того, чтобы глубже погрузиться в предметную область, понять, чем живет сообщество, какие проблемы решает и что обсуждает.
Еще про сорсинг в блоге Хантфлоу:
- Рекрутинг в LinkedIn: часть 1 и часть 2
- Сорсинг на GitHub
- Инструменты сорсинга: обзор для начинающих
- 25 ресурсов для обучения сорсингу
- 11 нестандартных источников для сорсинга
- Руководство по сорсингу от Нарека Асликяна
- Как развиваться сорсеру
Главное про сорсинг на Stack Overflow
- На Stack Overflow можно найти любых специалистов, которые пишут код.
- При этом сервис не очень удобен для рекрутеров: нет возможности писать личные сообщения, контакты часто отсутствуют, сложно понять, ищет ли кандидат работу.
- Stack Overflow удалил страницы с резюме (Developer Story) из профилей пользователей, но они остались в памяти гугла и все еще доступны для X-ray-поиска.
- Профили хранятся по адресу stackoverflow.com/users. Чтобы в выборке были только русскоязычные пользователи, ищите по русскоязычному сегменту (ru.stackoverflow.com/users) или используйте ключевое слово Russia.
- Применяйте Stack Exchange Data Explorer, чтобы искать по всей базе пользователей с помощью SQL-запросов. Если не знаете SQL, то воспользуйтесь готовыми скриптами или генератором запросов.
- Внутренний поиск Stack Overflow довольно бесполезен, потому что ориентирован на темы и вопросы, а не на людей и их скиллы. Однако его можно использовать, чтобы найти экспертов для решения какой-то специфической проблемы.
- Поиск по меткам — спасение для рекрутера, который хочет подобрать синонимы, но не готов копаться в гугле, вычленяя ключевые слова и разбираясь с новым для себя стеком.
- Если вам нужна «звезда», ее можно встретить среди пользователей с высокой репутацией.
Stackoverflow что с сайтом
Stack Overflow является любимым многими программистами сайтом, где можно задать профессиональный вопрос и получить ответы от коллег. Этот проект был написан двумя никому не известными парнями, о которых никто никогда раньше не слышал. Хорошо, не совсем так. Stack Overflow был создан топовыми программистами и звездами блогосферы: Jeff Atwood и Joel Spolsky. В этом отношении Stack Overflow похож на ресторан, владельцами которого являются знаменитости. По оценкам Joel’а около 1/3 программистов всего мира использовали этот интернет-ресурс, так что должно быть он представляет собой что-то достаточно полезное и интересное.
Одним из ключевых моментов в истории Stack Overflow является использование вертикального масштабирования, как достаточно работоспособного решения достаточного большого класса проблем. Не смотря на то, что публика на сегодняшний день больше склоняется к подходу с использованием горизонтальным масштабирования и не-SQL баз данных.
Если Вы стремитесь к масштабу Google, у Вас нет другого выхода, как двигаться в направлении не-SQL. Но Stack Overflow — это не Google, ровно как и подавляющее большинство других сайтов. Когда Вы задумываетесь о возможных вариантов дизайна Вашего проекта, попробуйте учесть и историю Stack Overflow, она тоже имеет право на жизнь. В этот век многоядерных машин с большим объемом оперативной памяти и невероятными темпами развития методов параллельного программирования, вертикальное масштабирование все еще является жизнеспособной стратегией и не должна сразу же отбрасываться в сторону просто так как это теперь больше не модно. Возможно в один прекрасный день мы получим лучшее из обоих миров, но на сегодняшний момент перед нами лежит большой болезненный выбор стратегии масштабирования, от которого определенно зависит судьба Вашего проекта.
Joel любит похвастаться тем, что они достигли производительности, сравнимой с другими сайтами аналогичных размеров, используя в 10 раз меньше оборудования. Он удивляется, работали над этими сайтами по-настоящему хорошие программисты. Давайте взглянем на то, как им это удалось, и дадим Вам возможность побыть судьей.
Перевод статьи, автор оригинала — Todd Hoff. Возможно будет еще один пост с менее формальной информацией на ту же тему.
Статистика
- 16 миллионов просмотров страниц в месяц
- 3 миллионов уникальных пользователей в месяц (для сравнения: Facebook насчитывает около 77 миллионов уникальных пользователей в месяц)
- 6 миллионов посещений в месяц
- 86% трафика приходит с Google
- 9 миллионов активных программистов во всем мире и 30% пользуются Stack Overflow
- Более дешевые лицензии были получены через программу Microsoft BizSpark. Скорее всего они заплатили около 11000\$ за лицензии на ОС и MSSQL.
Стратегия монетизации: ненавязчивая реклама, вакансии, конференции DevDays, достижения других смежных ниш (Server Fault, Super User), разработка StackExchange и возможно каких-то других систем рейтингов для программистов.
Платформа
- Microsoft ASP.NET MVC
- SQL Server 2008
- C#
- Visual Studio 2008 Team Suite
- jQuery
- LINQ to SQL
- Subversion
- Beyond Compare 3
- VisualSVN 1.5
- Веб уровень:
- 2 x Lenovo ThinkServer RS110 1U
- 4 ядра, 2.83 Ghz, 12 MB L2 cache
- 500 GB жесткие диски, зеркалирование RAID1
- 8 GB RAM
- 1 x Lenovo ThinkServer RD120 2U
- 8 ядер, 2.5 Ghz, 24 MB L2 cache
- 48 GB RAM
Подводим итоги
Данный список является сборником уроков от Jeff и Joel, а также из комментариев к их записям:
- Если Вы комфортно себя чувствуете в деле управления серверами — не бойтесь покупать их. Две основных проблемы с издержками аренды оборудования:
- невероятные цены на дополнительную оперативную память и жесткие диски;
- хостинг-провайдеры на самом деле не могут управлять чем-либо за Вас.
- Делайте одноразовые более крупные инвестиции в оборудование, чтобы избежать быстро растущих ежемесячных издержек по аренде, которые окажутся более высокими в долгосрочном периоде.
- Обновляйте сетевые драйвера. Производительность запросто может удвоиться.
- Использование 48GB RAM требует обновления до MS Enterprise edition.
- Оперативная память невероятно дешевая. Используйте возможности по её расширению по максимуму для получения практически бесплатной производительности. У Dell, например, переход от 4GB памяти до 128GB стоит всего 4378\$.
- Stack Overflow скопировали ключевую часть структуры базы данных у Wikipedia. Это обернулось огромной ошибкой, для исправления которой потребуется большой и болезненный рефакторинг базы данных. Основным направлением изменений будет избавление от излишних операций по объединению данных в большом количестве ключевых запросов. Это ключевой урок, который стоит усвоить у гигантских много-терабайтных схем (вроде Google BigTable), которые полностью избавлены от операций объединения данных. Этот вопрос был достаточно важен для Stack Overflow, так как их база данных практически полностью располагается в оперативной памяти и операции join по прежнему требуют относительно много вычислительных ресурсов.
- Производительность CPU оказывается на удивление важным фактором для серверов баз данных. Переход от 1.86 GHz, к 2.5 GHz, и к 3.5 GHz процессорам дает практически линейный прирост к времени выполнения типичных запросов. Исключение: запросы, которые затрагивают не только оперативную память.
- Когда оборудование арендуется, обычно никто не платит за дополнительную оперативную память, если только вы не на помесячном контракте.
- В 90% случаев наиболее узким местом является база данных.
- При небольшом количестве серверов, ключевым компонентом издержек становится не место в стойках, электроэнергия, интернет-канал, сервера или программное обеспечение, а СЕТЕВОЕ ОБОРУДОВАНИЕ. Вам потребуется как минимум гигабитное соединение между уровнями веб-серверов и баз данных. Между интернетом и веб-серверами потребуется firewall, маршрутизатор и VPN. К моменту добавления второго веб-сервера понадобится решение для балансировки нагрузки. Суммарная стоимость такого оборудования может запросто вдвое превосходить стоимость пяти серверов.
- EC2 предназначен для горизонтального масштабирования, для того чтобы нагрузка могла быть распределена между большим количеством машин (достаточно хорошая идея, если Вы планируете расширяться). Еще больше смысла в таком подходе появляется, если вы планируете масштабироваться по необходимости (то есть добавлять и убирать машины в зависимости от уровня нагрузки).
- Горизонтальное масштабирование может проходить относительно безболезненно только при использовании open source программного обеспечения. В противном случае вертикальное масштабирование значит сокращение издержек, связанных с лицензиями, в ущерб стоимости оборудования, а горизонтальное масштабирование — наоборот: экономия на оборудовании, но требуется существенно больше лицензий на программное обеспечение.
- RAID-10 отлично работает для баз данных с высокой нагрузкой операций чтения и записи.
- Разделяйте работу приложений и баз данных таким образом, чтобы они могли масштабироваться независимо друг от друга. Например, базы данных могут масштабироваться вертикально, а сервера приложений — горизонтально.
- Приложения должны хранить все информацию о своем состоянии в базе данных для обеспечения возможности роста путем простого добавления серверов приложений в кластер.
- Одна из основных проблем со стратегией вертикального масштабирования — недостаток избыточности. Кластеризация добавляет надежности, но когда стоимость каждого сервера высока — это не так просто реализовать.
- Некоторые приложения могут масштабироваться линейно относительно числа процессоров. Но зачастую будут использоваться механизмы блокировки, что приведет к сериализации вычислений и в итоге к существенному уменьшению эффективности приложения.
- С более крупными серверами, занимающими от 7U в стойке, электроэнергия и охлаждение становятся критичными вопросами. Возможно использование чего-то среднего между 1U и 7U может облегчить Ваши взаимоотношения с датацентром.
- С добавлением все новых и новых серверов баз данных издержки на лицензии SQL Server могут стать очень существенными. Если Вы начнете с вертикального масштабирования и постепенно начнете переходить к горизонтальному с использованием не open source продуктов, возможно это сильно ударит по Вашему финансовому состоянию. Это справедливо, что в этой заметке речь идет не совсем об архитектуре проекта. Мы знаем об их серверах, об используемом наборе инструментов, об их двухуровневой схеме, где база данных используется напрямую из кода веб-серверов. Но мы не знаем практически ничего о самой реализации, например таких мелочей как теги. Если Вам интересен этот вопрос, возможно Вам удастся получить интересующую Вас информацию из описания их схемы базы данных.