company_banner

Вводим рейтинг участника GitHub и StackOverflow на «Моём круге»

    Две недели назад мы на «Моём круге» ввели рейтинги участников «Хабра» и «Тостера», о чём рассказали в нашей прошлой публикации. А сегодня рады сообщить о добавлении рейтингов участия ещё в двух сообществах: GitHub и StackOverflow.

    На профиле пользователя это выглядит следующим образом:

    image

    На поиске кандидатов или на откликах к вакансии — так:

    image

    Добавление двух мощнейших международных ИТ-сообществ позволит разработчикам раскрыть свой профиль ещё лучше, и ещё более эффективно взаимодействовать с потенциальными работодателями. Да и вообще, на наш взгляд, это круто: наверное, впервые можно увидеть сразу в одном месте и в одном формате все свои заслуги участия в ИТ-сообществах!

    Чтобы вывести свои рейтинги нужно привязать учетные записи соответствующих сообществ к своему профилю на «Моём круге». Делается это в кабинете своего профиля, в «Ключнице»

    Далее расскажем, какие данные мы выводим из GitHub и StackOverflow и что они означают.

    Итак, блок участника GitHub или StackOverflow появляется на профиле пользователя «Моего круга», если у него есть хотя бы 1 репозиторий или 1 ответ соотвественно. Из блока участника можно перейти в профиль пользователя в данном сообществе и посмотреть подробней, какие именно репозитории и на каких языках он поддерживает, на какие темы и как именно отвечает.

    GitHub


    В блоке GitHub мы показываем число репозиториев пользователя и число его вкладов в них. Учитываются все репозитории, в которые пользователь делал вклады: это могут быть свои собственные или форкнутые репозитории, а также принадлежащие организациям. Вкладами мы назвали то, что на GitHub называется contributions.

    Далее мы выводим 10 языков программирования, с помощью которых пользователь вносил вклад в репозитории. Впереди идут языки, которые были использованы в большем числе репозиториев. Каждый язык — ссылка на список всех репозиториев, в которых пользователь этот язык использует.

    StackOverflow


    В блоке StackOverflow мы показываем число вопросов и ответов пользователя в этом сообществе.

    Далее мы выводим 10 тем, в которых пользователь внес наибольший вклад, с сортировкой о наибольшего вклада к наименьшему. Если в сообществе StackOverflow пользователь заработал золотой, серебряный или бронзовый бэйдж по данной теме, то мы обозначаем это звёздочкой соответствующего цвета. При наведении на звёздочку видна статистика пользователя по данной теме. Подробней о бэйджах на SO (смотри секцию Tag Badges). По каждой теме можно перейти и просмотреть список ответов пользователя по ней.



    Напоминалочка


    Посмотреть всех пользователей, по которым в базе «Моего круга» есть информация об их участии в ИТ-сообществах, можно на поиске по специалистам, выбрав среди фильтров соответствующий пункт «Участник ИТ-сообществ».

    Блоки участника ИТ-сообществ подключаются и отключаются в кабинете своего профиля на «Моём круге», в разделе «Ключница».
    Метки:
    Мой круг 128,15
    Сервис вакансий в IT-индустрии
    Поделиться публикацией
    Комментарии 71
    • +3
      Ждем статьи «Как накрутить рейтинг на Круге»
      • +2
        Ну я бы тогда разбил на 4 части:
        1) Как накрутить на Хабре
        2) Как накрутить на Тостере
        3) Как накрутить на GitHub
        4) Как накрутить на StackOverflow

        (=
        • +1

          накружить :)

        • +12
          C GitHub'ом плохо сделали. Там выводится список языков, на которых я якобы пишу. А по факту — это список языков из самых популярных реп, которые я форкнул, хотя туда даже ни разу не контрибьютил.
          • 0
            Хм… А возможно ли вообще с Гитхаба получить информацию о языках, которыми контрибьютил?
            • 0
              В любом случае, нужно смотреть на два показателя: как на список языков, которые встречаются в репозиториях, так и на число общего вклада. Если пользователь нафоркал репозиториев, но ничего с ними не дела, то мы увидим, что у него 0 вклада.
              • +1
                У меня там на первом месте язык Haxe, я про него вообще впервые слышу.
                • +1

                  но тем не менее, форкнули репу с таким языком

                  • 0
                    Ну да. Но я на этом языке не пишу. Точно также, как я форкаю не мало проектов на тех же python или elrnang, чтобы сбилдить и потестировать сборки, которые ещё не ушли в релиз. При этом, я на этих языках не пишу.
                    • +8

                      а зачем их форкать? разве не достаточно просто склонировать необходимую ветку?

                      • +1

                        Можно потом этот форк и удалить.

                    • 0
                      А какие репозитории для вас самые ценные? Те, где вы автор и где есть звёзды? Вот эти?
                      https://github.com/Suvitruf/libgdx (Java +128 звёзд)
                      https://github.com/Suvitruf/Android-sdk-examples (Java +24)
                      https://github.com/Suvitruf/Android-ndk (C&C++ +23)
                      https://github.com/Suvitruf/docker-grafana-graphite-diamond (JavaScript&Nginx +6)
                      • 0
                        Тут зависит от того, с какой стороны смотреть. Как разработчику мне интересны звёзды в моих проектах.
                        Когда я нанимаю сотрудника, то ещё интересен его вклад в другие проекты. Но при этом количество звёзд проекта, куда он контрибьютил, мало о чём говорит.
                        • +1
                          Ага, понял про звёзды, спасибо. А скажите, как на Гитхабе вы смотрите вклад разработчика в проекты, куда заходите, на какие вещи смотрите?
                  • 0
                    Подправили логику вывода статистики по гитхабу. Теперь мы считаем только то число репозиториев, в которых у вас есть вклады. А затем выводим список языков этих репозиториев: чем больше репозиториев, в которых вы делади вклады, тем раньше выводится язык этого репозитория. Ок?

                    https://moikrug.ru/Suvitruf

                    Suvitruf: 201 вклад в 9 репозиториев, связан с языками:
                    Java • JavaScript • C • C# • Ruby


                    Похоже на вас? (=
                    • 0
                      Да, теперь похоже.
                      А затем выводим список языков этих репозиториев: чем больше репозиториев, в которых вы делади вклады, тем раньше выводится язык этого репозитория.
                      То есть, к примеру, если у меня 3 репы на js, у которых по 1 звезды, и 1 репа на Java с 1000 звёзд, то на первом месте в списке будет js? =\
                      • 0
                        Дада, на первом месте будет JS, потому что больше репозиториев с этим языком.

                        Звёзды мы решили пока не учитывать из-за их противоречивого восприятия. А оценить, в какие языки было больше всего вкладов мы тоже не можем из-за ограниченности АПИ у гитхаба. Мы можем определить только репозитории, в которых был ваш вклад, узнать языки этих репозиториев, и посчитать число репозиториев. А ваш вклад можем посчитать только суммарно по всем репозиториям сразу.

                        Поэтому, решили сортировать языки по числу репозиториев, в которых они встречаются.
                        • 0
                          Вполне логично. Вот только какие языки из реп берутся? К примеру, если я контрибьючу в проект на Java, а там какие-то скрипты используются для сборки или ещё чего-то на Ruby или Python. В списке языков репозитория они отображаются. Следовательно, когда вы подсчёт ведёте, то тоже их учитываете, хотя я на этих языках даже не пишу? Или вы берёте языки с репы по большему проценту?
                          • +1
                            Берем только один язык из репозитория, у которого самый большой процент. Посмотрели, что так делает GitHub, решили далеко не уклоняться от его собственной логики.
                  • +8
                    А если к примеру человек отвечает только на ru.stackoverflow, это никак не попадет в статистику?
                    • +1
                      Очевидный пиар тостера. Хотите отвечать на русском и получать плюшки в статистику на моем круге — сделайте правильный выбор.
                      • +2
                        Да, пока не будем делать другие сообщества SO. Пока технически это не очень понятно. Да и нужно пока разобраться с тем, что сделали, будет ли оно востребовано разработчиками и эйчарами. Ну и конечно нам не очень хочется продвигать русский SO, когда у нас есть свой собственный «Тостер» (=
                        • +1
                          Если человек админ и отвечает на serverfault, например, он тоже пролетит. Лучше брать данные со всей сети stackexchange.
                          • +1
                            Там у них засада с АПИ. Чтобы получить данные по каждому из подсообщесв, нужно авторизоваться внутри этого подсообщества отдельно. Таким образом, если мы хотим вывести еще десяток подсообществ из SO нам нужно для каждого делать свою кнопку привязки. Пока такое решение представляется неуклюжим и громоздким.
                            • +1
                              Сделайте хотя бы выбор. У меня тоже основной рейтинг на ru.stackoverflow, 2 ответа и 111 рейтинг на stackoverflow.com — это совсем не то, что я бы хотел добавить в список.
                              • 0
                                Как предлагаете сделать: нажимаешь на кнопку SO, после чего тебя спрашивают, в какое именно сообщество хотите привязать, выбираешь сообщество, и тебя привязывает именно к нему?
                                • +1
                                  Тут вопрос — какие возможности у вас есть по API.
                                  Если есть возможность сделать так, как вы предлагаете — вполне хороший вариант, если только там не будет список всех возможных сообществ (очень их много уже).
                                  Или если вы можете после привязки к SO получить список всех аккаунтов пользователя — то после привязки можно показывать список таких аккаунтов (как этот список выглядит в интерфейсе — ниже на скриншоте) и предлагать один из них выбрать.
                                  • +1
                                    Попробуем придумать, как предложить выбор нужного SO сообщества. Но не очень быстро получится сделать пока.
                        • 0

                          Не попадет, я проверил. И соревнования тоже не попадут :)

                        • –9
                          Отличная задумка. Теперь будущий работодатель видит не только то, что Слава Фомин работал в компании BestSoftEver с февраля 2014го года по март 2016го года, но и то, что он сидел на StackOverflow в рабочее время, отвечая на вопросы интернет-пользователей, хотя наверно мог бы помогать коллегам.
                          • +1

                            а тот, кому надо это и так увидит. А собирают они информацию, судя по всему, из открытых источников

                            • +3

                              Работодатель это видит только если сам Слава разрешил и настроил. И для многих работодателей такое поведение (желание и возможность помогать другим) является плюсом.

                            • +4
                              Если я являюсь контрибутором и при этом после пул реквеста и коммита удаляю форк под исправление, то ваш баннер показывает что я не являюсь контрибутором.
                              • 0
                                Вы форкнули проект, сделали исправление и отправили автору проекта? Он принял вашу правку и вы удалили форк? Так происходит?
                                • +11
                                  Ну да, зачем мне бессмысленный форк, исправление по которому уже закомичено в мастер? При принятии пулреквеста будет выполнен мердж и сами патч файлы останутся для истории в том репозитории, в который вносится исправление.
                                  • –11
                                    Да, в таком случае АПИ Гитхаба нам не отдаст вашего удаленного вклада. Но по-моему, никто как правилло не удаляет форки после внесения правок и отправки их автору репозитория.
                                    • +8

                                      Я удаляю, как минимум.


                                      И да, форкнув репу, и закоммитив в нее бинарный код (результат компиляции под Darwin всего лишь), я у вас получил метку TypeScript, приятно, но незаслуженно :)


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

                                      • +7

                                        И я удаляю. У кого вы взяли это правилло?

                                        • +5
                                          Ну на самом гитхабе можно нажать «Customize your pinned repositories» и выбрать «Repositories you contribute to» который покажет в том числе и проекты, форки которых были удалены.

                                          Так что как минимум эта информация у них есть, хотя, возможно через API напрямую она не доступна.

                                          Ну вот эти же ребята сделали :)
                                          https://opensourcecontributo.rs/
                                          • +1

                                            Их данные очень хорошо отражают реальность. И главное, это open source, и Мой Круг может ими оперировать аналогично.


                                            Спасибо и от меня :)

                                            • 0
                                              Спасибо за ссылку. Поизучали этот сервис, но не увидели пока в нём надежный источник информации, к сожалению. Как минимум, не нашли там некоторых пользователей, у которых точно есть вклад на гитхабе.
                                    • 0
                                      А Вы сделаете синхронизацию с hh.ru?
                                      Я понимаю, что это конкурирующие площадки, но копипастом переносить из одного в другое правда не удобно :)
                                      • 0
                                        Вы имеете в виду возможность авторизоваться на МК через HH и подгружать все первичные сведения?
                                        • 0
                                          Либо так либо загрузить профиль по публичной ссылке (где-то для hh я это видел, но вот где не вспомню сразу).
                                      • +1

                                        То есть не показываются ни звезды гитхаба (хотя бы его личных репозиториев), ни фоловеры гитхаба, ни ранк у SO? Или это планируется сделать в будущем?

                                        • 0
                                          Было интересно по этому поводу узнать ваше мнение, а также других разработчиков. Пообщавшись немного, я понял, что звёздами Гитхаба особенно никто не пользуется, точнее не понимает или считает, что они мало чего сообщают о разработчике. Вы как считаете?

                                          Под ранком SO вы подразумеваете общую репутацию пользователя? Но ведь во внешнем мире она мало что скажет, разве нет? Точно также с кармой и рейтингом Хабра — они мало понятны непосвящённому. Потом, нам не нужны агрегированные показатели, нам важен рейтинг именно как разработчика в тех или иных технологиях.

                                          Если понимаем, что в этом направлении можно показать, то и делаем.
                                          • +2

                                            Количество звёзд гитхаба показывает количество лайков у репа, количество других разработчиков, которые оценили вклад и которым понравился этот реп / модуль / etc. С другой стороны это не помогает оценить качество кода, т.к. реп может набрать 100+ звёзд и не развиваться несколько лет.


                                            Может просто показывать Pinned repositories из профиля? Или ещё популярные репы, в которые слал PR. Например, есть есть коммиты в ядро линукса, этом стоит поделиться

                                            • +6
                                              Вы как считаете?

                                              Я не могу судить адекватно, так как у меня 3k звезд и 17k рейтинга на SO :), но на мой взгляд как первый показатель о вовлеченности разработчика в OpenSource и SO. На моей текущей работе (крупная международная фирма в Германии) несколько человек подходило и спрашивало "это ты тот новый русский чувак с большим рейтингов в SO?" при том что в офисе тысяча человек, то есть на репутацию и звезды часто смотрят и очень внимательно.


                                              Естественно, звезды и рейтинг не могут быть главным и единственным показателем, я бы при высоком рейтинге/звездах посмотрел бы внимательно профайл на гитхабе и SO, что человек спрашивает и отвечает, какие проекты развивает.


                                              А вот такой показатель как вклад может не очень хорошо отражать реальную работу в OpenSource, так как был у меня мелкий проект где я делал много десятков push'eй ежедневно (требовался сильный рефакторинг и т.п.), а в другом куда более важном проекте делал один большой и важный коммит в месяц.


                                              Под ранком SO вы подразумеваете общую репутацию пользователя? Но ведь во внешнем мире она мало что скажет, разве нет?

                                              Ну не знаю сколько программистов вообще не знают про SO и про его рейтинг, на мой взгляд тех.лиды, которые собеседуют и принимают решение должны знать основы SO и гитхаба. Иначе как они могут оценивать вклад кандидата в OpenSource, если вообще ничего в нем не понимают?


                                              Потом, нам не нужны агрегированные показатели, нам важен рейтинг именно как разработчика в тех или иных технологиях

                                              В гитхабе можно получать данные о языках в которые контрибьютил разработчик, в SO тоже легко можно получить рейтинг разработчика (и кол-во вопросов и ответов) по каждой технологии или языку.


                                              На мой взгляд, рейтинг SO и звезды github'а тоже были бы полезны для первой оценки программиста (для второй все равно надо идти и смотреть профайлы)

                                              • +1
                                                Благодарю за развернутый ответ!
                                                • +1
                                                  но на мой взгляд как первый показатель о вовлеченности разработчика в OpenSource и SO

                                                  Рейтинг на SO нивелируется элементарными ответами на элементарные вопросы в самом начале "хайпа" той или иной технологии. Типа такого вопроса и ответов.


                                                  Поэтому для SO важнее сколько ответов и по каким темам, чем его попугаи.

                                                • +1
                                                  У SO есть еще общие оценки, которые показывают понятные данные, а не ранк в SO-шных попугаях. Например: «Влияние: ~123k людей затронул», «репутация: в лучших 9% за всё время». Но репутация сайтозависима, т.е. быть в 10% лучших на ru.stackoverflow и на stackoverflow.com — это две большие разницы, так что, наверное, не очень показательный параметр.
                                                  • +2
                                                    «Влияние: ~123k людей затронул»

                                                    С влиянием там другая проблема, у меня сейчас влияние на SO: 4.5m, потому что я написал ответ на очень популярный вопрос, которому много много лет, в котором было 4.5 миллиона визитов. Естественно, мой ответ висел не так долго и прочитало его намного, намного меньше людей. Там конечно есть ограничение, что влияние учитывается только после нескольких плюсов за ответ, но все равно влияние очень сильно зависит от древности вопроса на который отвечаешь и очень легко "накручивается", так как ты получаешь в плюс все просмотры вопроса на который отвечаешь за все время.

                                                    • +1
                                                      Согласен, влияние тоже не очень хорошая метрика.
                                                      SO-попугаи, имхо, все же лучший вариант, потому что люди, которые знают об SO, понимают, о чем идет речь, а тем, которые не знают, и вся эта плашка не очень интересна будет.
                                              • +3
                                                Ну ра такая пьянка, то и Kaggle прикрутите :)
                                                • 0
                                                  Записали в список потенциальных сервисов на подключение, спаисбо!
                                                • 0
                                                  Возраст и стаж: 8 лет и 6 месяцев опыта работы

                                                  С первого класса на JS!
                                                  • +1
                                                    Спасибо за работу) выглядит круто
                                                    С успехом приявзал SO и Github. Но гитхаб не отображается на странице. Как сделать чтобы отобразилось?

                                                    • 0
                                                      У вас на GitHub 0 репозиториев: https://github.com/raiym. А мы отображаем блок гитхаба только если есть хотя бы один репозиторий. Почему у вас так? Вкладов-то у вас много, а репозиториев ни одного. Удалили их все или как? Мы можем понять по АПИ, к каким языкам вы имеете отношение только через ваши репозитории (собственные или форкнутые). Напрямую через ваши вклады (contributions) АПИ не позволяет смотреть.
                                                      • 0
                                                        Понял. Например,

                                                        https://github.com/postaddictme/instagram-php-scraper
                                                        https://github.com/postaddictme/instagram-java-scraper
                                                        https://github.com/adhell/android


                                                        Это репозитории, которые я создавал сам (ничего не удалял). Я создал организации на гитхабе и перенес репо туда. (мне кажется, вполне стандартная ситуация).

                                                        • 0
                                                          Видимо можно получить список организаций в которых участвует юзер и потом получить список репо этих организаций. (https://developer.github.com/v3/orgs/)
                                                          • +2
                                                            Благодарю за разъяснения, проблема ясна, попробуем её решить. Попробуем считать все репозитории пользователя, в которых тот делал вклады: будь то его репозитории или репозитории организаций. Может только уткнуться в ограничения по лимиту обращений к АПИ у Гитхаба. Но посмотрим, что получится сделать.
                                                            • 0
                                                              Супер!
                                                              • 0
                                                                Кажется, у нас получилось, смогли учитывать вклады как в свои репозитории, так и в те, которые находятся в организациях пользователя. Проверьте, пожалуйста, этот человек похож на вас? (=

                                                                https://github.com/raiym

                                                                raiym: 610 вкладов в 10 репозиториев, связан с языками:
                                                                PHP • Dart • HTML • JavaScript • Java
                                                                • 0
                                                                  karaboz
                                                                  Да, это я) Спасибо!
                                                                  А как сортируется языки? Я думаю, что у меня больше всего вклада в Java (в том числе Android) и PHP. А Dart только один репозиторий, но он на втором месте.
                                                                  • 0
                                                                    Мы берем все репозитории, в которые вы делали вклады, группируем репозитории по основным использованным в них языкам, и дальше в вашем блоке выводим эти языки в том порядке, что вначале идут те, которые применялись в наибольшем числе репозиториев.

                                                                    То есть у вас должно быть больше всего репозиториев с PHP, и меньше всего с Java. При этом число вкладов легко может быть больше в Java. Но мы не можем сортировать языки по числу вкладов в них, потому что гитхаб отдает информацию только по общему числу ваших вкладов по всем репозиториям сразу.
                                                    • +2
                                                      Жду статьи, как вывести рейтинг с рутрекера и линкедина на Круге без vpn и загранкомандировок.
                                                      • 0

                                                        Что-то ключница у вас сломалась. В профиле данные с хабра и тостера показываются.


                                                        Скрин

                                                        image

                                                        • 0
                                                          Хм. Сейчас проверил, всё ок и у остальных, и у вас лично. Наверное какая-то проблема со связью просто была. Мы ничего не выкатывали нового с момента анонса.
                                                          • 0

                                                            Разобрался, у меня uBlock блокировал блоки из-за наличия social в названиях классов

                                                        • 0
                                                          Есть ли планы добаления GitLab?
                                                          У меня больше активности на gitlab.com, чем на github.com

                                                          Спасибо.
                                                          • 0
                                                            Спасибо за предложение, занесли в список потенциальных подключаемых сервисов, нужная штука, согласен.

                                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.