Как вы оцениваете популярность языка программирования?

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

Как профессиональные разработчики, мы должны знать о тенденциях в индустрии программного обеспечения - какие языки будут искать работодатели в ближайшие несколько лет, и мы должны быть опытными. Кроме того, это может позволить нам определить возможности - возможно, есть возможности для новых разработчиков переходить на программирование мэйнфреймов по мере выхода на пенсию старших представителей профессии. По этой причине нам важно отслеживать популярность языка программирования.

На Stack Overflow ( здесь и здесь) уже есть ряд вопросов о том, как SO можно использовать для измерения популярности языка (или сложности использования этого языка). Другие методы включают отслеживание объявлений о вакансиях (например, http://www.hotskills.net/) и статистику поисковых запросов (например, http://langpop.com/).

Может ли сообщество SO придумать какие-либо другие методы измерения этого?

Резюме

  • Используйте теги переполнения стека для измерения популярности языка
  • Статистика поисковых запросов
  • Объявления о работе
  • Репозитории с открытым исходным кодом

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

9 ответов

Решение

Как автор http://www.langpop.com/ мой подход состоит в том, чтобы найти как можно больше метрик (конечно, не ограничиваясь только результатами поиска! У нас есть книги, списки вакансий, irc, код Google, freshmeat и другие) и пусть люди увидят методологию, сделав все это максимально прозрачным. Вот почему я добавил функцию javascript, которая позволяет пересчитать нормализованные результаты с разными весами для каждой метрики.

Как кто-то еще отмечает, есть много разных способов измерения популярности. Другим важным, который он не упоминает, может быть "ускорение" данного языка: например, Cobol имеет большую установленную базу, но я не думаю, что запускается много новых проектов Cobol. Что-то вроде Ruby, вероятно, является противоположностью - оно не очень широко используется, но многие люди выбирают его для новых проектов.

Я не согласен с выводом, что цифры "бессмысленны". Рассматривая различные измерения и думая о них, я думаю, что можно сделать множество интересных выводов. Кроме того, не путайте "грубые" числа с "бесполезными" числами. Я думаю, что мы можем определенно сказать, что Java, например, более популярен, чем Tcl.

Я бы сказал, что популярность и успех языка экспоненциально зависит от количества людей, которые его ненавидят.

Не опровергайте этот вопрос, потому что многие люди спрашивают об этом. Тем не мение...

Следующие слова изо всех сил после этого должны звучать так: " Популярно у кого? ".

Популярное - бесполезное слово для обозначения языков программирования. Не существует общепринятого значения этого, поэтому есть объективный способ его измерить.

Например, очевидная вещь, которую нужно сделать, это пойти и подсчитать развернутый во всем мире LOC в каждом используемом программном проекте. Когда вы сделаете это, вы обнаружите, что самым популярным языком на языке кобальта является Cobol.

Кто-то еще может подумать, что очевидным способом измерения будут хиты Google. Делая это, они обнаружат, что Java получает 282 миллиона результатов, в то время как C# получает 48 миллионов, а Cobol - только 6,5 миллиона. Очевидно, что Java более популярна, чем C#, и намного популярнее, чем Cobol.

Третий человек может подумать, что очевидный способ проверить это посмотреть на SO теги. Они нашли бы самый используемый тег здесь - C# (34K использует до сих пор). Только Кобол был использован здесь 65 раз. Очевидно, что C# является самым популярным, и почти никто не использует Cobol.

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


Для тех, кто удивлен моим утверждением Кобола, я предлагаю прочитать эту статью (несколько датированную 2003 годом) на эту тему. Это будет настоящим откровением. Можно утверждать, что все мы, не являющиеся программистами на Cobol, работаем на полях гигантского мира Cobol.

Вы проверяете статистику тиоби

Что значит "популярный"? Вот несколько возможных способов его измерения:

  1. Количество разработчиков, пишущих на этом языке профессионально в данный момент времени.
  2. Число людей, которые часто экспериментируют с языком дома или используют его дома в любой конкретный момент времени.
  3. Количество разработчиков, которые хотели бы использовать язык X (или рады, что они используют).

Проблемы с некоторыми измерениями:

  • Использование SO вопросов или обращений Google может просто указать, какой язык (среди тех, кто работает для самых популярных) является самым сложным в использовании.
  • Считать объявления о работе было бы ужасно неточно, поскольку люди склонны переключаться на вещи, которые не попадают в их первоначальное описание работы, и вам будет не хватать всех людей, использующих в настоящее время язык (не претендующих на работу).

Лично я хотел бы использовать номер 3 для измерения популярности, но я не знаю, как бы вы это измерили. Интернет может показаться хорошим местом, но какой сайт сможет привлечь всех разработчиков, и как вы узнаете, что достаточно много из них ответили на опрос?

Эта статья блога аккуратно суммирует различные способы определения популярности языка программирования:

В статье описывается один из способов измерения популярности, который до сих пор не был упомянут:

С точки зрения способов, которые были упомянуты, статья предлагает конкретные способы сбора статистики:

  • Измерено Commits to Open Source проектов - использование сайта Ohloh.
  • Популярность по линиям кода - использование цифр, составленных BlackDuck

Вклад открытого источника возможно.

Вы можете использовать Google Trend, чтобы иметь идею. Конечно, это не очень точно, так как вы можете написать "C#" или "C Sharp", но это может дать вам краткое представление.

Количество сообщений об этом языке программирования при переполнении стека

Другие вопросы по тегам