Блог Stack Overflow только что показал, что Perl является самым нелюбимым языком программирования, который будет спорным в некоторых кругах. Но, если использовать избитое клише, в этом есть нечто большее.
Вот диаграмма, представленная Дэвидом Робинсоном, исследователем данных Stack Overflow, которая попадает в заголовки газет:
(нажмите в диаграммах, чтобы получить увеличенный вид)
Да, Perl определенно является явным победителем — или, скорее, проигравшим. Но обратите внимание на масштаб. Он колеблется от 0% до менее чем 25%, поэтому, несмотря на то, что он является выбросом, Perl имеет показатель неприязни всего 22%, что означает, что на каждого человека, которому он не понравился, приходилось более 4 человек.
Важно понимать, что баллы рассчитываются как количество раз, когда тег выбирается как «не нравится», как доля от общего количества «нравится» плюс «не нравится» на сайте заданий переполнения стека, когда вы создаете историю разработчика, и не являются спонтанным выражением ненависти.
Вы должны придумать по крайней мере две технологии, с которыми вы хотите работать, т. Е. «нравится», чтобы настроить свой профиль, а также указать по крайней мере две технологии, с которыми вы не хотите работать, т. е.» не нравится», ограничиваясь тегами, которые существуют в переполнении стека.
Для целей анализа в диаграмме Дэвид Робинсон рассмотрел языки, которые имели по крайней мере 2000 упоминаний в историях разработчиков, поэтому в определенной степени языки должны быть популярными, чтобы вообще быть в диаграмме, поскольку неясные, которые не нравятся, не будут достаточно упомянуты.
В другом анализе рассматриваются наиболее нелюбимые технологии — расширение сферы охвата операционных систем и платформ, а также языков и сообщение о 20 наиболее нелюбимых тегах для технологий, упомянутых не менее 1000 раз. Это обнаружило гораздо более сильную степень неприязни. 82% Internet-Explorer означает, что его не любили более трех человек на каждого, кому он нравился. Во всех восьми технологиях показатель неприязни превысил 50% — это означает, что их не любили чаще, чем любили, — и это в основном устаревшие технологии Microsoft, а также Flash и Cobol.
Когда вы рассматриваете контекст определения того, какие технологии вы хотите использовать, и те, которые вы предпочитаете избегать, очевидно, что между парами вариантов выбора, которые образуют очевидных конкурентов (немного похоже на дихотомию TABS и Spaces, о которой мы сообщали ранее в этом году), будет существовать связь. Это исследуется на этой диаграмме:
Это подчеркивает некоторые “соперничества”, лежащие в основе экосистемы программного обеспечения: Linux и OSX против Windows, Git против SVN, vim против emacs и (что неудивительно для меня) R против SAS. Большинство из этих пар не представляют “противоположные” технологии, а вместо этого отражают два подхода к сходным проблемам. Многие из них предполагают переход от ранее популярной технологии к более современной (SVN заменен Git, XML заменен JSON, VB заменен C#). Это имеет смысл с точки зрения того, что люди будут перечислять в резюме; разработчики обычно указывают, что они предпочли бы не работать с тем, что они считают устаревшим.
Что-то, что для меня не имеет смысла, так это то, почему симпатия к бэкенду : неприязнь к интерфейсу имеет третью по силе связь, но это для frontend : backend намного слабее. Предположительно, бэкенд — программисты избегают вопросов о том, какого цвета должен быть этот текст comic sans, и программисты frontend просто предполагают, что бэкенд-это то же самое, что они уже делают. Однако это наводит на мысль, что, возможно, неправильно использовать «нравится» и «не нравится» в этом контексте, даже несмотря на то, что ярлыки являются полезной стенографией.
Наконец, вас может заинтересовать эта сетевая схема поляризационных меток. Снова Perl появляется как выброс — что, возможно, и есть, — но он продолжает занимать свою единственную нишу в экосистеме разработчиков.