Экосистема Stack Overflow больше, чем просто ответы


Оглавление (нажмите, чтобы открыть):

Blogerator.org

Эксклюзивные ИТ-новости, обзоры и интервью

Опрос StackOverflow 2020: экосистема айтишника под микроскопом

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

Итак, это данные самого свежего опроса Stack Overflow Developer Survey от 2020 года, в котором поучаствовало свыше 50 тысяч программистов со всего бела света. Такая высокая репрезентативная выборка позволяет лучше понять тренды — внимательному читателю я обещаю множество инсайдов и интересных деталей, рассказанных про самих себя самими айтишниками:

  • самые популярные языки мира;
  • самые ненавистные языки, а также самые любимые для домашних проектов;
  • самые востребованные области (направления) и технологии разработки;
  • носители какого языка программирования сейчас зарабатывают больше всех? (никогда не угадаете кто);
  • средние зарплаты в ИТ по США;
  • процент самоучек и дипломников в ИТ-индустрии;
  • причины наибольшего удовлетворения от работы в ИТ;
  • какие операционки и среды разработок предпочитают программисты;
  • и другие детали предпочтений мировых айти-масс.

В заключение добавлю, что это один из самых масштабных опросов от Stack Overflow за все время его существования. Если вам интересно колупаться в сухих цифрах и графиках, если нравится быть в курсе современных веяний ИТ, то именно для вас под катом собрано воедино много свежей статистики и графиков (трафффик)!

1. Языки программирования

Самые популярные и часто используемые языки программирования. Подчеркну, что это не самые лучшие, а просто наиболее часто встречаемые в 2020 году. Здесь должен отдельно заметить, что в этом году Javascript лидирует практически во всех категориях языковых замеров, окончательно покорив индустрию.

JavaScript уже четвёртый год подряд (столько проводится исследование) остаётся самым популярным языком разработки. При этом авторы исследования обращают внимание на падение популярности PHP (-4%) и рост Node.js (+2,9%) и AngularJS (+4,6%).

Далее опрос с ответами на гипотетическую тему: какой бы язык программирования выбрали вы лично для своего любимого pet-проекта? И наоборот — назовите самое г@вно, с которым вы не стали бы связываться ни за какие коврижки.

Как видно выше, самым «обожаемым» языком разработчиков назван Rust, самым «ужасным» — Visual Basic, а самой востребованной на рынке технологией — Android.

Ниже — самое частое (типичное для рынка) сочетание набора скиллов для ролей «фронтенда» и «бэкенда». Или говоря иначе, когда мы говорим «фронтед» или «бэкенд», то чаще всего в реальной жизни мы получаем следующий набор-совокупность знаний (вероятности связок конкретных технологий):

Далее идет относительный рейтинг технологий-языков. То есть здесь замерялось, что по сравнению с прошлым годом само заметно выросло, и, наоборот — ушло в минус в пользовательских предпочтениях.

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

Супер-посещаемая по своей популярности площадка Stack Overflow проанализировала посещение тематик своих страниц-материалов за 2015-2020 годы, и как результат суммировала в виде графика какие именно технологии были наиболее востребованы её посетителями — вот популярность тем (сгруппированных на основе посещаемости) за последний год:

2. Инструменты и среда

Самые популярные ОС и среды разработки (редакторы) у опрошенных программистов:

3. Зарплаты айтишников

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

Типичные должности-позиции в ИТ и их примерные зарплаты-оклады в США.

Ниже попытка посмотреть на этот же вопрос через специальную оптику — топовые языки-технологии, которым платят само много (F# удивляет!). Вообще, обратите внимание на засилье новомодной функциональщины в списке.

Как видно, в топе высокооплачиваемых технологий в США оказались Apache Spark (годовая зарплата специалиста — $125 000), Scala ($125 000), Cassandra ($115 000), F# ($115 000) и Hadoop ($115 000). В топ-30 остальных стран больше всего получают те, кто владеют F# (131.7% — процент от средней зарплаты разработчика в стране респондента), Dart (131.1%), Cassandra (130.9%), Spark (130.5%), Hadoop (128.5%).

Дополнительно и более подробно про выгодные специализации можно почитать у меня здесь: Linkedln IT Skills Top25: памятка для айтишных валильщиков.

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

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

4. Поиск работы в ИТ

Тема трудоустройства и поиск работы в ИТ словами самих собеседуемых — отдельно для США и Германии. Что где рулит и как приходят в индустрию большинство айтишников?

Ниже идёт тема образования и самообразования — впереди обилие самоучек + рейтинг критериев для выбора (поиска) работы своей мечты.

Пожалуй, самой неожиданной здесь стала статистика образовательного уровня разработчиков. Так 69% респондентов признались, что по крайней мере частично являются самоучками (13% — полностью самоучки). При этом, 43% разработчиков имеют университетский диплом в области компьютерных наук или смежных сферах.

5. Удовлетворение от работы

Что айтишников большего всего «торкает» на своей работе, что мотивирует и вдохновляет на новые подвиги и эффективную работу? В одной куче как вполне себе материальные пряники, так и обилие нематериальных стимулов и идеалистичных устремлений:

Здесь уместно кинуть ссылкой в мой другой материал по аналогичной теме: Опрос: что, кроме большой зарплаты, привлекает айтишников?

Направления и подразделения ИТ-индустрии, где у тамошних айтишников наблюдается максимальное удовлетворение от своей работы:

Один из важных аспектов выявленных прошлым (от 2015 года) опросом, который выявил кардинальное влияние на удовлетворение от работы — наличие возможности удаленной работы прямо из дома.

Поэтому далее пару отдельных слов (графиков) про удаленку в ИТ — насколько она распространена в мире прямо сейчас?

6. Личные данные и предпочтения программистов

И, наконец — про типичного коллективного программиста, то есть отчасти про нас с вами тоже. На эти графики и статистику можно посмотреть в том плане, что это качественный срез мирового ИТ-комьюнити, и вот что оно на данный момент из себя представляет —


Видно, что средний ИТ-разработчик имеет возраст 27-29 лет. Не спрашивайте меня, куда деваются все остальные (вероятно, здесь уместна ссылка на мой давний пост: После 35 лет: есть ли жизнь в программировании?).

Напомню ещё раз, что это самый свежий на данный момент опрос программистов со всего мира — Stack Overflow Developer Survey 2020. И хотя он проводился глобально с опросом более 50 000 разработчиков, тем не менее, большинство из них выходцы из стран североамериканского рынка, что лучше иметь в виду глядя на многие цифры. Его оригинальные материалы доступны по этой прямой ссылке (копия).

Ключевые слова к посту: Свежая статистика зарплат в области ИТ, новые данные и опросы среди работающих в области программирования и системного администрирования. Данные и статистика опросов компьютерщика по трудовому рынку информационных технологий, какие им нравятся языки программирования и лучшие инструменты (среды) разработки. Замеры и данные о популярности языков программирования — самые свежие на 2020 год. Список лидирующих и самых популярных языков программирования — это мировой топ популярности языков программирования. Что нравится в работе программистов, какие есть бонусы, преимущества, выгоды и возможности. Оплата и заработки, возраст и предпочтения айтишников, как получают образования и находят работу в ИТ — только цифры, факты, анализ и статистика. Поиск работы и трудоустройство в ИТ, прохождение собеседований и интервью на должность программиста и кодера. Область знаний, запросы работодателя и образование необходимое для айтишников (программисту) для его устройства на работу— мировой опыт и статистика. На какой язык программирования самый большой спрос на рынке и само много платят денег и валюты на удаленке? Психологический портрет и характеристика программистов и айтишников, данные исследований зарплатных амбиций и эмиграции компьютерщиков.

Как избежать Stack overflow?

Весь код программы:

12.11.2020, 16:31

Program stack overflow ( простые числа)
Задание : найти заданное количество простых чисел (начиная от 2) Решение : (defun issimple (a.

Stack overflow
Написал #include «stdafx.h» #include using namespace std; #include #include.

Stack overflow!
Привет всем! если кто знает, как побороть ошибку «stack overflow»? пишу: procedure.

Stack overflow.
У меня в программе есть реверсивная функция (много параметров) она вызывает себя очень много раз.

stack overflow in C++
#include #include using namespace std; int main() < int n,i,n1,j,a1,b1;.

12.11.2020, 17:26 2 12.11.2020, 17:59 [ТС] 3

Функция решает задачу по типу Системы продукций. Вначале задается набор правил (список со списками), это переменная
production. В этом списке есть подсписки. Каждый представляет собой пару чисел, где первое число — точка (назовём её q), а второе число это точка в которую мы можем перейти из точки q. Функция flatten вспомогательная, чтоб вытащить из иерархических списков тупо набор атомов, например она вернет из ‘((10) ((7)) 6) -> (10 7 6).

Функция ableToUse получает на вход число (наше q). Затем берет переменную production и отбирает из этого большого списка подсписки в которых первая цифра (q). Далее у нас получается список со списками в виде пар (q, и какое то число), в итоге обрубаем все q и получаем список где только от пар остались вторые числа. Функция route принимает
currentSt — текущее положение
Haventbeen — там, где ещё не были
lastSt — предыдущее положение. (изначально можно задать nil)

Сама работа функции route: Принимает currentSt, для него считает список командой (ableToUse currentSt), затем из списка берет первый элемент и сравнивает его с lastSt. Если они равны то условие обрывается, если нет — идём дальше и смотрим является ли наше CurrentSt членом списка Haventbeen. Если является то мы это currentSt записываем в список (который потом выведется), и хвост к этому списку это рекурсивный вызов той же функции, только теперь параметры будут currentSt =(first (ableToUse currentSt)), из haventbeen выкидываем наше currentSt, и lastSt = currentSt
Остальные условие в cond схожи. В каждом мы проверяем то же самое, только из списка (ableToUse currentSt) берём сначала первый элемент. Если не подошел то второй, если не подошел второй — берём третий.
Дело в том, что нужно пройти все точки от 1 до 16, при этом побывав в каждой хотя бы раз. И вот данным набором правил программа совершает работу, которая на выходе даёт путь, придерживаясь которого мы обойдём все точки.

Добавлено через 6 минут
И вот теперь смотрите в функцию route.
Там есть такие сточки везде

Исследование Stack Overflow: самые нелюбимые языки программирования

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

На сайте Stack Overflow в разделе «Работа» каждый пользователь может создать «Историю разработчика», чтобы продемонстрировать окружающим свои достижения и, вполне возможно, продвинуться по карьерной лестнице. При этом в качестве одной из доступных опций выступает возможность отметить тегами языки программирования, с которыми пользователь хотел бы работать, а с какими — нет.

Благодаря подобной опции изучается мнение огромного количества разработчиков. Популярность языка можно измерить самыми разными способами: ранее редакция официального блога stackoverflow.blog использовали в качестве основного критерия количество просмотров статьи или вопроса, которые были посвящены какому-либо из языков программирования. Но подобным образом крайне сложно отметить, какой же язык является наименее любимым.

Языки программирования

Итак, каким же образом мы будем определять, какой язык любимый, а какой нет? Все просто: возьмем определенный отрезок времени и посмотрим, как часто за это время выбранный язык был отмечен тегом «Disliked» и «Liked». То есть 50% будут означать, что ровно половине участников данный язык нравится, и ровно половине не нравится. А 1% будет означать, что на одного человека, не выражающего симпатию определенному языку, приходится 99 человек, которым этот язык нравится (для подобных расчетов мы пользовались эмпирическим Байесовским методом, который позволяет рассчитать доверительный интервал с вероятностью 95%).

Начнем со списка тех языков программирования, которые имеют как минимум 2000 упоминаний в «Историях разработчика».

Согласно данной статистике, наименее любимыми языками (причем с большим отрывом) являются Perl, Delphi и VBA. За ними идут PHP, Objective-C, CoffeeScript и Ruby. Наша команда порадовалась, узнав, что R занимает последнее место в этом списке, а, значит, количество людей, отметивших его как «Любимый», максимально превысило количество тех, кто не хотел бы с ним работать.

Если вы хорошо осведомлены, какие языки сейчас популярны, а какие теряют свои позиции, то наверняка заметили, что наименее нелюбимые языки чаще всего являются быстро набирающими популярность. R, Python, TypeScript, Go и Rust — это как раз те языки, которые в рамках сайта становятся все более популярными. И наоборот: языки, занимающие верхние строчки таблицы — Perl, Objective-C and Ruby — стремительно теряют свой авторитет.

Также мы попытались вывести общую статистику на основании того, как часто используется язык и сколько человек выразили желание работать с ним (отметив тегом «Like»). Статистика взята на основе выборки стран с высоким уровнем дохода, таких как Америка, Великобритания, Германия и Канада.

Как правило, существует обратная связь между тем, насколько широко используется язык, и тем, насколько часто ему ставят «Disliked». Почти все языки, которые в большинстве «Историй» были отмечены как «Нелюбимый», согласно статистике Stack Overflow, теряют свою популярность (кроме VBA, который более-менее находится в позиции равновесия). В то время как те языки, которые реже всего отмечали тегом «Disliked» (а именно R, Rust, TypeScript и Kotlin), как раз и составляют группу самых быстро набирающих популярность. TypeScript и Kotlin набирают популярность настолько быстрыми темпами, что мы решили их и вовсе убрать с графика.

На фоне данных закономерностей достаточно ярко выделяется функциональный язык Clojure. Его почти не отмечали тегом «Disliked», но на данный момент он один из наименее актуальных языков, хотя терять популярность начал лишь год назад или около того (согласно статистике посещаемости контекстных вопросов нашего сайта). Другим исключением из правил является MATLAB — данный язык продолжает терять актуальность, хотя совсем немного людей выразили к нему свою нелюбовь. Вполне возможно, что это связано с областью действия: почти у каждого разработчика существует сложившееся мнение насчет широко распространенных и используемых PHP, C# и Ruby, в то время как у людей, не связанных со сферой анализа данных, мнение касательно MATLAB сложиться просто не может. Вполне возможно, что подобное действует в отношении языка R, и поэтому его так редко отметили тегом «Disliked».

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

Наиболее и наименее актуальные технологии

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

Мастер Йода рекомендует:  Приложения от Google интегрируют в операционную систему gOS Gadgets 3

В список самых нелюбимых вошли некоторые из технологий Microsoft, в частности Internet Explorer и Visual Basic. Да и Microsoft вместе с тегом «Disliked» употреблялось достаточно часто. Apple хоть и входит в этот список, но занимает нейтральную позицию в середине. Одну из лидирующих позиций занимает Flash, вместе с «более старыми» языками COBOL, Fortran и Pascal.

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

Кроме того, мы решили сделать расширенный график с так называемыми «универсалиями» — технологиями, которые почти не отмечались в качестве нелюбимых. На этот раз список выбранных технологий был ограничен лишь упомянутыми как минимум 10 000 раз.

У многих разработчиков может вызвать недоумение Git, но тут скорее дело в том, что его просто редко указывают в резюме. Как видим, R также входит в список. Машинное обучение отметили в качестве любимого около 23 тысяч человек — это значит, что данная технология крайне редко отмечалась как нелюбимая. Такие теги как Python-3.X, CSS3 и HTML5 могут всего лишь означать, что разработчики крайне редко указывают, какая именно версия им не нравится. И, конечно же, jQuery, как и всегда, пользуется популярностью на сайте Stack Overflow.

Экосистема тегов

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


Совместив результаты, собранные из «Историй разработчика», можно увидеть, какие технологии и языки в своей подсистеме являются наиболее и наименее актуальными. Так, в подсистеме Microsoft к опасно-оранжевому цвету стремятся C# и .NET, огромная связка PHP с WordPress и Drupal горит слабо-оранжевым, а в сфере мобильной разработки особенно выделяется Objective-C. В кластере операционных систем (в правом нижнем углу) можно заметить, что OSX и в особенности Windows раскрашены в крайне заметный оранжевый, в то время как Linux, Ubuntu и Unix могут похвастаться спокойным синим цветом.

Основные соперники

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

Подобную закономерность можно проследить, используя фи коэффициент:

Представленные в виде графика результаты скорее подчеркивают некоторое «противостояние» в экосистеме программного обеспечения: Linux и OSX против Windows, Git против SVN, Vim против Emacs, R против SAS. Вряд ли можно сказать, что многие из этих соперников представляют «противоположные» технологии — они скорее отражают различные подходы к решению одной и той же проблемы.

Кроме того, многие из них показывают переход от популярной ранее технологии к более современной: так Git заменил собой SVN, JSON заменил XML, а C# заменил собой VB. В таком случае подобное «противостояние» становится обоснованным: крайне логичным является решение разработчика отметить устаревшие технологии тегом «Disliked» и указать в своем резюме, что он бы предпочел работать с современными технологиями.

Опубликованы результаты опроса разработчиков Stack Overflow: Python обогнал Java

Stack Overflow — известный и популярный во всём мире портал вопросов и ответов для разработчиков и IT-специалистов, а его ежегодный опрос является крупнейшим и наиболее полным среди людей, которые пишут код, по всему миру. Каждый год Stack Overflow проводит опрос, охватывающий всё: от любимых технологий разработчиков до их предпочтений в работе. В этом году опрос проводится уже девятый год подряд, и в нём приняли участие более 90 000 человек.

Ключевые результаты:

  • Python — самый быстрорастущий язык программирования. В этом году он снова поднялся в рейтинге, потеснив Java, и стал вторым по популярности языком после Rust.
  • Более половины респондентов написали свою первую строку кода до того, как им исполнилось шестнадцать лет, хотя этот результат варьируется в зависимости от страны и пола.
  • Специалисты DevOps и инженеры по надёжности сервисов (site reliability engineer) являются одними из самых высокооплачиваемых и наиболее опытных разработчиков, которые более всех довольны своей работой и реже всего ищут новые рабочие места.
  • Среди участников опроса разработчики из Китая наиболее оптимистично настроены и считают, что люди, родившиеся сегодня, будут жить лучше, чем их родители. Разработчики из стран Западной Европы, таких как Франция и Германия, смотрят на будущее с долей скептицизма.
  • На вопрос о том, что мешает их продуктивности, мужчины чаще всего указывают на обилие задач, не связанных непосредственно с разработкой, в то время как представители сексуальных меньшинств недовольны «токсичностью» рабочего окружения.

Не обошлось и без доли самопиара. Stack Overflow попросил респондентов вспомнить, когда они в последний раз решали проблемы, связанные с разработкой, при помощи портала и без него. Результаты показали, что Stack Overflow экономит разработчику от 30 до 90 минут времени в неделю.

Немного фактов

Stack Overflow используют разработчики по всему миру

Каждый месяц около 50 миллионов человек посещают Stack Overflow, чтобы учиться или делиться своим опытом, а также строить свою карьеру. 21 миллион из этих людей являются профессиональными разработчиками или студентами университетов, которые готовятся стать таковыми. Около 4 % респондентов считают программирование своим хобби, а не профессией, и чуть менее 2 % респондентов раньше были профессиональными разработчиками, но сейчас сменили род деятельности.

Веб-разработчиков значительно больше, чем прочих IT-специалистов

Около 50 % респондентов назвали себя full-stack разработчиками, т. е. специалистами, которые пишут как клиентский, так и серверный код, как правило связанный с веб-технологиями, и около 17 % считают себя разработчиками мобильных приложений. Чаще всего специалисты по фронтенд-разработке также пишут бэкенд-код, и наоборот. Другие популярные сочетания IT-профессий — администратор баз данных и системный администратор, DevOps-специалист и инженер по надёжности сайтов (Site Reliability Engineer), дизайнер и фронтенд-разработчик, университетский исследователь и научный работник.

Большая часть сообщества Stack Overflow периодически участвует в открытых проектах

Около 65 % профессиональных разработчиков среди пользователей Stack Overflow участвуют в проектах с открытым исходным кодом (например, LibreOffice или Gimp) один раз в год и более. Участие в открытых проектах часто зависит от языка программирования. Так, разработчики, работающие с Rust, WebAssembly и Elixir, делают это чаще всего, в то время как работающие с VBA, C# и SQL помогают открытым проектам примерно в два раза реже.

Многие разработчики программируют даже вне работы. Около 80 % респондентов считают программирование своим хобби. Другие обязанности вне разработки значительно коррелируют с этим утверждением. Например, программисты, у которых есть дети, с меньшей вероятностью указывают разработку своим хобби. Женщины-респонденты также с меньшей вероятностью считают программированием своим хобби.

В Соединенных Штатах почти 30 % респондентов заявили, что имеют проблемы с психологическим здоровьем, причём этот показатель выше, чем в других крупных странах, таких как Великобритания, Канада, Германия или Индия.

Reddit и YouTube — наиболее популярные социальные сети среди разработчиков

В этом году респондентов спросили, какие социальные сети они используют чаще всего. Reddit и YouTube стали самыми распространёнными ответами. При этом предпочтения IT-специалистов не соответствуют общим данным по популярности социальных сетей, где Facebook занимает первое место, а Reddit даже не входит в Топ-10 (Reddit имеет около 330 миллионов активных пользователей по сравнению с 2,32 млрд ежемесячных пользователей Facebook).

Рейтинг популярности языков программирования

Седьмой год подряд JavaScript становится наиболее популярным языком программирования, а Python снова поднялся в рейтинге. В этом году Python обогнал в общем рейтинге Java, так же, как он превзошел C# в прошлом году и PHP ещё годом ранее. Таким образом, сегодня Python является самым быстрорастущим языком программирования.

Самые любимые, «страшные» и «желанные» языки программирования

Четвертый год подряд Rust становится самым любимым в сообществе языком программирования, за ним следует Python. Так как популярность Python стремительно растёт, то нахождение и в этом рейтинге означает, что разработчиков Python не только становится всё больше, но они так же при этом хотят продолжать работать с данным языком.

VBA и Objective-C признаны самыми «страшными» языками в этом году. Это означает, что большой процент разработчиков, которые в настоящее время используют эти языки, не выражают заинтересованности в том, чтобы продолжать это делать.

Python является наиболее «желанным» языком третий год подряд, и это означает, что разработчики, которые ещё не используют его, указывают на то, что хотели бы его изучить. На втором и третьем месте находятся JavaScript и Go соответственно.

Что насчёт блокчейн?

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

На вопрос, что они думают о технологии блокчейн, разработчики в основном с оптимизмом оценивают её полезность. Однако этот оптимизм в основном сосредоточен среди молодых и менее опытных специалистов. Чем опытнее респондент, тем более вероятно, что он скажет, что технология блокчейна — это «безответственное использование ресурсов».

Самые высокооплачиваемые языки программирования

Clojure и F# — хороший способ разбогатеть, но мы бы посоветовали вам Ruby или Go

Среди опрошенных разработчиков те из них, кто использует Clojure, F#, Elixir и Rust, получают самые высокие зарплаты среди проживающих в США программистов: в среднем около 70 000 долларов США. При этом есть региональные различия. Разработчики Scala в США являются одними из самых высокооплачиваемых, в то время как разработчики Clojure и Rust зарабатывают больше всего в Индии.

Больше интересных данных и цифр вы можете посмотреть в оригинальном отчёте на английском языке.

Результаты исследования Stack Overflow среди разработчиков. Зарплаты и технологии

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


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

Шестой год подряд JavaScript – самый часто используемый язык программирования. Python в этом году улучшил свои позиции, обогнав в этом году C # (стремительнее, чем в прошлом году C # обогнал PHP. Таким образом Python стал самым быстро растущим из всех основных языков программирования.

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

Node.js и AngularJS продолжают оставаться наиболее часто используемыми технологиями, и вместе с React и .Net Core остаются важнейшими инструментами разработчиков.

Как и в прошлом году, MySQL и SQL – наиболее распространенные системы управления базами данных.

Linux и Windows Desktop или Server являются наиболее распространенными платформами, используемыми при разработке профессиональными программистами.

Третий год подряд Rust – самый любимый язык программирования среди наших респондентов, за которым последовал Kotlin, язык, о котором впервые спрашивали в данном опросе в этом году. Большинство разработчиков отметили, что хотят продолжать работать с этими языками больше, чем с другими.

Также третий год подряд Visual Basic 6 отмечен программистами, как самый “страшный” язык программирования. Подавляющее большинство программистов, использующих эту технологию в настоящее время, отметили, что не хотели бы работать с Visual Basic 6 в дальнейшем.

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

TensorFlow – одна из самых быстрорастущих технологий в Stack Overflow, больше всего нравится разработчиками. Cordova – лидирует как технология, с которой разработчики не хотели бы работать дальше. React был отмечен большинством разработчиков как фреймворк, который они планируют изучить и использовать.

Второй год подряд Redis – самая любимая база данных, пропорционально большее количество разработчиков хотели бы продолжить работать с ней (в сравнении со всеми остальными базами данных). IBM Db2 является самой “страшной” базой данных, а MongoDB второй год подряд является самой востребованной БД.

Linux в очередной раз признана разработчиками самой любимой платформой для разработки, безсерверная инфраструктура также позитивно отмечена большинством опрошенных. Sharepoint является самой нежелательной платформой для разработки уже второй год подряд. Многие разработчики заявили, что хотят заниматься разработкой для платформ Android и Raspberry Pi.

Visual Studio Code позволил Visual Studio занять место самого популярного инструмента среды для разработчиков всех направлений, но есть различия в выборе инструментов по типу и роли разработчика. Разработчики, которые пишут код для мобильных приложений, с большей вероятностью будут выбирать Android Studio и Xcode, самым популярным выбором DevOps и системных администраторов является Vim, аналитики данных с большей вероятностью будут работать в IPython / Jupyter, PyCharm и RStudio.

Респондентов спросили, какие операционные системы они используют для работы. Около половины сказали, что они в основном используют Windows, большая часть остальных опрошенных разделились между MacOS и Linux.

Более 65% респондентов используют два или более мониторов для работы на своем основном рабочем месте.

В среднем в мире разработчики, которые используют F #, Ocaml, Clojure и Groovy, получают самые высокие зарплаты, их средние зарплаты превышают 70 000 долларов США. Существуют региональные различия. Так, например, разработчики Erlang и Scala в США являются одними из самых высокооплачиваемых, а разработчики Clojure, Erlang и Haskell зарабатывают больше всего в Индии.

Технологии объединяются в связанные экосистемы, которые, как правило, используются разработчиками в их совокупности. На этой диаграмме можно увидеть большой центральный кластер для веб-разработки (с JavaScript, HTML и CSS), подключенный через SQL к Microsoft (с C #, Visual Studio и .NET Core). Слева мы видим систему, соединяющую Java, Android и iOS с Linux, bash / shell и Python. Другие скоррелированные кластеры включают Scala / Spark, C / C ++ и другие более мелкие технологии.

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

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

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

Риски, которые разработчики отмечают как проблемы, связанные с искусственным интеллектом, зависят от того, какую работу они выполняют. Например, аналитики данных в 1,5 раза более склонны рассматривать проблемы, связанные со справедливостью алгоритмов, более опасной, чем любая возможная сингулярность (когда компьютеры становятся умнее людей). В опросе дали возможность разработчикам написать свой ответ на этот вопрос; особого беспокойства по поводу Skynet никто не высказал, но многие разработчики обсудили системное смещение, связанное с алгоритмом принятия решений, и опасность использования ИИ без возможности проверки и обоснования путей принятия решений.

Более 90% разработчиков работают по крайней мере неполный рабочий день.

В Германии необычайно высокая доля разработчиков, работающих неполный рабочий день. Разработчики в США несколько менее склонны работать в качестве самозанятых или фрилансеров. В Индии, Великобритании, Германии и Канаде от 70% до 80% разработчиков работают в штате полный рабочий день.

Разработчики программного обеспечения работают в самых разных отраслях (настолько разнообразных, что их сложно перечислить в одном вопросе). Как внутри, так и за пределами индустрии технологий. В этом году предложенные нами варианты опроса были сосредоточены на технической индустрии, и из этих вариантов профессиональные разработчики чаще всего выбирали компании, занимающиеся веб-разработкой, ИТ и SaaS. Разработчики, работающие в таких отраслях, как консалтинг и здравоохранение, имеют многолетний опыт профессионального кодирования. Разработчики в этих отраслях в два раза чаще имеют более чем 20-летний опыт работы, в сравнении с разработчиками, работающими в области веб-разработки / дизайна или электронной коммерции.

Цели карьеры разработчиков в основном сосредоточены на технической работе, причем чуть более половины респондентов заявляют, что хотят быть в той же или другой технической роли в будущем. Около четверти наших респондентов говорят, что хотят основать свою собственную компанию, но это наиболее распространено среди разработчиков старше 25 лет.

Разработчики, как правило, более довольны своей карьерой, чем своей текущей работой. В целом, удовлетворенность карьерой не сильно отличается в зависимости от отрасли. Однако нынешняя удовлетворенность работой значительно ниже для разработчиков, работающих в сфере финансовых услуг и ИТ. Удовлетворение карьерой является самым высоким для разработчиков старшего возраста (50 лет и старше), а также для специалистов с опытом работы более 20 лет. Самый высокий показатель удовлетворенности работой отметили разработчики в возрасте от 35 до 44 лет.

Мастер Йода рекомендует:  Управление сценариями просмотра Web-страниц Javascript

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

По словам наших респондентов, вопрос о том, что делать дальше после возникновения этической проблемы, является еще более сложным. Наиболее распространенный ответ – почти половина респондентов – решение о том, сообщать об этической проблеме или нет, зависит от особенностей конкретной ситуации.

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

Почти 80% респондентов утверждают, что рассмотрение того, для чего их код может быть использован, является верным для разработчиков. Те, кто сказал, что они не уверены в этом, на 40% чаще говорят, что им не нужно никому сообщать о каких-либо этических проблемах.

Только 16% респондентов активно ищут работу, но около трех четвертей разработчиков гипотетически заинтересованы в новых интересных предложениях.

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

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

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

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

Различные типы разработчиков выделили разные наборы приоритетов при рассмотрении вакансии. Разработчики, принадлежащие к гендерным меньшинствам, отметили корпоративную культуру и офисную среду как самые серьезные проблемы при оценке новой работы.

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

Специфика того, как разработчики приоритезируют зарплату и преимущества, отличается в различных странах, поэтому ответы разработчиков зависят от географии. Медицинское страхование имеет приоритет в странах без национальной системы здравоохранения (например, в Соединенных Штатах), а пособия на компьютерное оборудование необычайно важно для разработчиков в Индии и Великобритании.


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

Agile и Scrum являются самыми популярными методологиями для контроля за выполнением проектов среди разработчиков.

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

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

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

Материал опубликован пользователем.
Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

blog.mgsxx.com

07.11.2012

Вы — программист? И вы владеете английским? Тогда вам будет очень интересен сайт вопросов/ответов по программированию Stack Overflow.

Если вы не владеете английским, то… а ничего. Рунет — пустыня с редкими оазисами. Так что учите английский, если вас интересует профессиональный рост.

Stack Overflow мегапопулярен потому, что это не просто очередной форум по программированию. Это вообще не форум, раз на то пошло. Создатели (один из них — глубоко уважаемый мною Джоэл Сполски) придумали новый формат, специально для сайта вопросов/ответов. Читать сайт может кто угодно, а вот писать можно, только зарегистрировавшись. Так что на сайте нет анонимных комментариев. А что есть — так это система выставления плюсов. Вам понравился вопрос или ответ — ставите +1. При этом автору вопроса/ответа капает репутация. Можно, конечно, и минусовать, с соответсвующими последствиями для репутации автора. Социальные моменты системы хорошо проработаны (например, минусовать есть занятие небесплатное, с минусующего тоже немножко репутации списывается), и в результате, после того как сообщество поработает над вопросом, лучший ответ определяется сам собой. В этом и заключается ключевая фишка заведения: поскольку ответы отсортированы по полученной оценке, вы сразу можете прочитать лучший ответ на вопрос, без необходимости перелопачивать бесконечный топик форума. Зверски удобно, и народ оценил.

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

Так что сайт очень полезный. Но получением знаний польза от него не исчерпывается.

Профиль

Вместо того, чтобы писать скучное и ничего толком о вас не говорящее работодателю резюме, дайте ему ссылку на свой профиль на Stack Overflow. По крайней мере, включите ссылку в резюме. Для просмотра профилей пользователей регистрироваться не надо, так что получатель ссылки не будет тратить время на ненужную ему ерунду. Вот, для примера, мой профиль.

Ваши вопросы и ответы скажут потенциальному работодателю много больше, чем перечень знакомых вам технологий, который может скопипастить кто угодно. А вот по вашим текстам специалисту сразу будет гораздо понятнее, каков ваш уровень. Даже просто репутация на Stack Overflow — это уже репутация. Если уровень у вас хороший, то профиль вам сильно поможет в том, чтобы попасть на собеседование и пройти его.

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

Careers

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

Их бизнес-модель строится на том, что у них есть площадка, где тусуются сливки программистского общества, и наличие какой-никакой репутации вполне показывает «сливочность». А кому глубоко, до доставания денег из кошельков, интересны эти самые сливки? Работодателям. Естественно, не всем программистам интересна смена работы, но многим — интересна вполне. Осталось отделить одних от других, собрать в базу, и взимать нещадно баблос с рекрутеров за доступ к ней. Они заплатят, это для них выгодно.

Каким образом отделяются интересующиеся сменой работы от не интересующихся? Естественно, НЕ рекламными рассылками от рекрутеров на почтовые адреса, указанные при регистрации на Stack Overflow. Помимо того, что такой шаг подорвал бы репутацию заведения, рассылки противоречат идее. В базу не нужны «все, кто хочет». Просто хотящими заполнены улицы, а ихними резюме — офисы рекрутеров. Поэтому база пополняется строго по приглашениям. Если у вас есть что предъявить на Stack Overflow, GitHub, CodePlex или где-то еще, вы можете запросить инвайт на Careers. Зарегистрировавшись, заполняете данные, пишете о себе, и выставляете (или пока не выставляете) галку «ищу работу». Если галка стоит, вас увидят работодатели, когда будут искать кандидатов по базе.

Но главный способ пополнения базы — полуавтоматический через Stack Overflow. Так я, собственно, и узнал о Careers. Когда репутация вырастает до какого-то уровня, вам — один раз — присылают письмо с инвайтом. Мне пришло что-то в духе: «какая репа знатная по C++, если интересно — вот инвайт на Careers, welcome.» Так я узнал о Careers — и впечатлился. Если буду искать работу, я там зарегаюсь. И я не один такой, так что база знатная получается. Итого, и волки сыты, и овцы целы, и доход нехилый капает — при том, что система работает вполне сама собой. Умный мужик этот Сполски.

Если вас интересует трудовая эмиграция в Америку, Careers вполне может быть вариантом. Самый безгеморный вариант уехать — это по приглашению работодателя. Лично я пока не созрел… но, боюсь, я могу к этому прийти.

Опрос StackOverflow 2020: экосистема айтишника под микроскопом 25.03.2020 15:46

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

Итак, это данные самого свежего опроса Stack Overflow Developer Survey от 2020 года, в котором поучаствовало свыше 50 тысяч программистов со всего бела света. Такая высокая репрезентативная выборка позволяет лучше понять тренды — внимательному читателю я обещаю множество инсайдов и интересных деталей, рассказанных про самих себя самими айтишниками:

  • самые популярные языки мира;
  • самые ненавистные языки, а также самые любимые для домашних проектов;
  • самые востребованные области (направления) и технологии разработки;
  • носители какого языка программирования сейчас зарабатывают больше всех? (никогда не угадаете кто);
  • средние зарплаты в ИТ по США;
  • процент самоучек и дипломников в ИТ-индустрии;
  • причины наибольшего удовлетворения от работы в ИТ;
  • какие операционки и среды разработок предпочитают программисты;
  • и другие детали предпочтений мировых айти-масс.

В заключение добавлю, что это один из самых масштабных опросов от Stack Overflow за все время его существования. Если вам интересно колупаться в сухих цифрах и графиках, если нравится быть в курсе современных веяний ИТ, то именно для вас под катом собрано воедино много свежей статистики и графиков (трафффик)!

1. Языки программирования

Самые популярные и часто используемые языки программирования. Подчеркну, что это не самые лучшие, а просто наиболее часто встречаемые в 2020 году. Здесь должен отдельно заметить, что в этом году Javascript лидирует практически во всех категориях языковых замеров, окончательно покорив индустрию.

JavaScript уже четвёртый год подряд (столько проводится исследование) остаётся самым популярным языком разработки. При этом авторы исследования обращают внимание на падение популярности PHP (-4%) и рост Node.js (+2,9%) и AngularJS (+4,6%).

Далее опрос с ответами на гипотетическую тему: какой бы язык программирования выбрали вы лично для своего любимого pet-проекта? И наоборот — назовите самое г@вно, с которым вы не стали бы связываться ни за какие коврижки.

Как видно выше, самым «обожаемым» языком разработчиков назван Rust, самым «ужасным» — Visual Basic, а самой востребованной на рынке технологией — Android.

Ниже — самое частое (типичное для рынка) сочетание набора скиллов для ролей «фронтенда» и «бэкенда». Или говоря иначе, когда мы говорим «фронтед» или «бэкенд», то чаще всего в реальной жизни мы получаем следующий набор-совокупность знаний (вероятности связок конкретных технологий):

Далее идет относительный рейтинг технологий-языков. То есть здесь замерялось, что по сравнению с прошлым годом само заметно выросло, и, наоборот — ушло в минус в пользовательских предпочтениях.

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

Супер-посещаемая по своей популярности площадка Stack Overflow проанализировала посещение тематик своих страниц-материалов за 2015–2020 годы, и как результат суммировала в виде графика какие именно технологии были наиболее востребованы её посетителями — вот популярность тем (сгруппированных на основе посещаемости) за последний год:


2. Инструменты и среда

Самые популярные ОС и среды разработки (редакторы) у опрошенных программистов:

3. Зарплаты айтишников

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

Типичные должности-позиции в ИТ и их примерные зарплаты-оклады в США.

Именно по этой денежной теме более подробно можно почитать мои посты: Самые денежные ИТ-специализации/роли в США в 2015 году + Top-25: ИТ-компании с рекордными зарплатами программистов.

Ниже попытка посмотреть на этот же вопрос через специальную оптику — топовые языки-технологии, которым платят само много (F# удивляет!). Вообще, обратите внимание на засилье новомодной функциональщины в списке.

Как видно, в топе высокооплачиваемых технологий в США оказались Apache Spark (годовая зарплата специалиста — $125 000), Scala ($125 000), Cassandra ($115 000), F# ($115 000) и Hadoop ($115 000). В топ-30 остальных стран больше всего получают те, кто владеют F# (131.7% — процент от средней зарплаты разработчика в стране респондента), Dart (131.1%), Cassandra (130.9%), Spark (130.5%), Hadoop (128.5%).

Дополнительно и более подробно про выгодные специализации можно почитать у меня здесь: Linkedln IT Skills Top25: памятка для айтишных валильщиков.

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

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

4. Поиск работы в ИТ

Тема трудоустройства и поиск работы в ИТ словами самих собеседуемых — отдельно для США и Германии. Что где рулит и как приходят в индустрию большинство айтишников?

Ниже идёт тема образования и самообразования — впереди обилие самоучек + рейтинг критериев для выбора (поиска) работы своей мечты.

Пожалуй, самой неожиданной здесь стала статистика образовательного уровня разработчиков. Так 69% респондентов признались, что по крайней мере частично являются самоучками (13% — полностью самоучки). При этом, 43% разработчиков имеют университетский диплом в области компьютерных наук или смежных сферах.

5. Удовлетворение от работы

Что айтишников большего всего «торкает» на своей работе, что мотивирует и вдохновляет на новые подвиги и эффективную работу? В одной куче как вполне семе материальные пряники, так и обилие нематериальных стимулов и идеалистичных устремлений:

Здесь уместно кинуть ссылкой в мой другой материал по аналогичной теме: Опрос: что, кроме большой зарплаты, привлекает айтишников?

Направления и подразделения ИТ-индустрии, где у тамошних айтишников наблюдается максимальное удовлетворение от своей работы:

Один из важных аспектов выявленных прошлым (от 2015 года) опросом, который выявил кардинальное влияние на удовлетворение от работы — наличие возможности удаленной работы прямо из дома.

Поэтому далее пару отдельных слов (графиков) про удаленку в ИТ — насколько она распространена в мире прямо сейчас?

6. Личные данные и предпочтения программистов

И, наконец — про типичного коллективного программиста, то есть отчасти про нас с вами тоже. На эти графики и статистику можно посмотреть в том плане, что это качественный срез мирового ИТ-комьюнити, и вот что оно на данный момент из себя представляет —

Видно, что средний ИТ-разработчик имеет возраст 27–29 лет. Не спрашивайте меня, куда деваются все остальные (вероятно, здесь уместна ссылка на мой давний пост: После 35 лет: есть ли жизнь в программировании?).

Напомню ещё раз, что это самый свежий на данный момент опрос программистов со всего мира — Stack Overflow Developer Survey 2020. И хотя он проводился глобально с опросом более 50 000 разработчиков, тем не менее, большинство из них выходцы из стран североамериканского рынка, что лучше иметь в виду глядя на многие цифры. Его оригинальные материалы доступны по этой прямой ссылке (копия).

Ключевые слова к посту: Свежая статистика зарплат в области ИТ, новые данные и опросы среди работающих в области программирования и системного администрирования. Данные и статистика опросов компьютерщика по трудовому рынку информационных технологий, какие им нравятся языки программирования и лучшие инструменты (среды) разработки. Замеры и данные о популярности языков программирования — самые свежие на 2020 год. Список лидирующих и самых популярных языков программирования — это мировой топ популярности языков программирования. Что нравится в работе программистов, какие есть бонусы, преимущества, выгоды и возможности. Оплата и заработки, возраст и предпочтения айтишников, как получают образования и находят работу в ИТ — только цифры, факты, анализ и статистика. Поиск работы и трудоустройство в ИТ, прохождение собеседований и интервью на должность программиста и кодера. Область знаний, запросы работодателя и образование необходимое для айтишников (программисту) для его устройства на работу— мировой опыт и статистика. На какой язык программирования самый большой спрос на рынке и само много платят денег и валюты на удаленке? Психологический портрет и характеристика программистов и айтишников, данные исследований зарплатных амбиций и эмиграции компьютерщиков.

Как избежать Stack overflow?

Весь код программы:

Мастер Йода рекомендует:  Таблица для определения квалификации разработчика
12.11.2020, 16:31

Program stack overflow ( простые числа)
Задание : найти заданное количество простых чисел (начиная от 2) Решение : (defun issimple (a.

Stack overflow
Написал #include «stdafx.h» #include using namespace std; #include #include.

Stack overflow!
Привет всем! если кто знает, как побороть ошибку «stack overflow»? пишу: procedure.

Stack overflow.
У меня в программе есть реверсивная функция (много параметров) она вызывает себя очень много раз.

stack overflow in C++
#include #include using namespace std; int main() < int n,i,n1,j,a1,b1;.

12.11.2020, 17:26 2 12.11.2020, 17:59 [ТС] 3

Функция решает задачу по типу Системы продукций. Вначале задается набор правил (список со списками), это переменная
production. В этом списке есть подсписки. Каждый представляет собой пару чисел, где первое число — точка (назовём её q), а второе число это точка в которую мы можем перейти из точки q. Функция flatten вспомогательная, чтоб вытащить из иерархических списков тупо набор атомов, например она вернет из ‘((10) ((7)) 6) -> (10 7 6).

Функция ableToUse получает на вход число (наше q). Затем берет переменную production и отбирает из этого большого списка подсписки в которых первая цифра (q). Далее у нас получается список со списками в виде пар (q, и какое то число), в итоге обрубаем все q и получаем список где только от пар остались вторые числа. Функция route принимает
currentSt — текущее положение
Haventbeen — там, где ещё не были
lastSt — предыдущее положение. (изначально можно задать nil)


Сама работа функции route: Принимает currentSt, для него считает список командой (ableToUse currentSt), затем из списка берет первый элемент и сравнивает его с lastSt. Если они равны то условие обрывается, если нет — идём дальше и смотрим является ли наше CurrentSt членом списка Haventbeen. Если является то мы это currentSt записываем в список (который потом выведется), и хвост к этому списку это рекурсивный вызов той же функции, только теперь параметры будут currentSt =(first (ableToUse currentSt)), из haventbeen выкидываем наше currentSt, и lastSt = currentSt
Остальные условие в cond схожи. В каждом мы проверяем то же самое, только из списка (ableToUse currentSt) берём сначала первый элемент. Если не подошел то второй, если не подошел второй — берём третий.
Дело в том, что нужно пройти все точки от 1 до 16, при этом побывав в каждой хотя бы раз. И вот данным набором правил программа совершает работу, которая на выходе даёт путь, придерживаясь которого мы обойдём все точки.

Добавлено через 6 минут
И вот теперь смотрите в функцию route.
Там есть такие сточки везде

Как найти сильного разработчика с помощью StackOverflow и Kaggle

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

StackOverflow

StackOverflow — это сайт, на котором собираются IT-специалисты со всего мира (около 20 миллионов пользователей). Разработчики ресурса утверждают, что в первую очередь это самый большой форум вопросов и ответов для программистов. Люди со всего мира могут бесплатно разместить любой вопрос, касающийся сферы технологий и получить на него подробный ответ от своих коллег.

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

Кроме того, в анкете есть очень важный раздел для рекрутеров — теги, которыми помечаются вопросы, которые задаются на форуме. С их помощью можно понять, в каких сферах человек наиболее силён, какими технологиями он больше всего заинтересован. При поиске кандидата можно использовать ключевые слова, в параметрах задавать требуемый уровень рейтинга («репутация» в терминах StackOverflow), местоположение и необходимые навыки.

Kaggle

Ещё один сайт, на котором много сильных разработчиков. По своей сути, это площадка для соревнований, на ней есть большое количество инженеров в области больших данных и машинного обучения. Различные компании размещают на этом ресурсе определённые задания, связанные с data science, которые предлагается выполнить пользователям за деньги или «за опыт». В рамках конкретного задания специалисты предлагают свои варианты решения, пользователь, предложивший лучший ответ, получает гонорар, а его рейтинг растет.

Например, компания Red Hat предлагает разработать алгоритм по классификации клиентов, которые представляют интерес для компании, на основе их деятельности и характеристик. Автор лучшего алгоритма получает 50 тысяч долларов.

В профиле у пользователей есть три раздела: соревнования, «ядро» и дискуссии. В каждом из этих разделов своя система рангов:

— соревнования — это то, о чём мы писали выше,

— «ядро» — навыки по написанию кода,

— дискуссии — это участие в различных обсуждениях.

В каждом из этих разделов есть недавно выполненные задания, а также биография, место работы, геолокация и активность на сайте по дням.

В первую очередь следует обращать внимание на место, которое пользователь занимает на сайте среди всех остальных (current rank). Кроме того, в Kaggle есть топ-100 пользователей, и если человек входит в сотню — это очень хороший показатель (всего около пяти российских юзеров попали в этот топ).

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

X-RAY поиск

X-Ray search (“рентгеновский” поиск) позволяет искать конкретную информацию на определённых сайтах по заданным параметрам через традиционный поиск в Google. Например, в поисковой строке набираем site:stackoverflow.com/users location * united kingdom и находим только пользователей stackoverflow, живущих в Великобритании. Также в поле можно добавить интересующие нас навыки.

Можно ли упростить поиск

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

Чтобы упростить задачу, был разработан поисковик AmazingHiring. Это приложение, которое автоматически осуществляет поиск кандидатов по всем сервисам. То есть просматривает все источники (включая ресурсы для разработчиков, на которых довольно сложно искать кандидатов, а также LinkedIn и другие соцсети), автоматически оценивает квалификацию и подбирает кандидата, который более всего подходит компании. Оценка производится с помощью алгоритмов машинного обучения, через анализ его программного кода и рейтинга на профессиональных сайтах.

Таким образом, сервис позволяет свести к минимуму время, затрачиваемое на сёрфинг ресурсов, делая это автоматически. В том числе приложение охватывает “пассивных пользователей” — юзеров, у которых нет популярных профилей в соцсетях и которые не привыкли заявлять публично о том, что они рассматривают предложения, например, опубликовав свое резюме на работном портале.

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

Благодаря AmazingHiring для найма специалистов в IT не требуется специальных знаний, достаточно только задать начальные параметры, которым должен соответствовать кандидат. Система анализирует более 50 источников, среди которых есть и StackOverflow, и Kaggle, и составляет объединенную карточку кандидата.

Для того, чтобы попробовать сервис, запросите бесплатную демо-версию!

Топ-10 самых полезных ресурсов для IT-шников (Хабрахабр, Stackoverflow, bootstrap 4, RadioJS, CSS-tricks и другие)

Приветствуем всех начинающих и не очень, и совсем не начинающих, а вполне себе крутых разработчиков на нашем замечательном портале видеоуроков по самым современным IT-технологиям – Loftblog.

Сегодня мы с радостью готовы представить вам наш новый выпуск DevShow, посвященный 10 самым полезным и самым популярным, на наш взгляд, сайтам, информация которых может оказаться весьма необходимой web-developer’у любого уровня. Об этих важных порталах вам по традиции расскажут позитивные, всегда настроенные на волну общения с вами основатели Loftblog и Loftschool – Дмитрий Ковальчук и Николай Чернобаев.

1. Pocket – сайт-копилочка

Самый первый сервис, который предлагается к рассмотрению ведущими DevShow, — это сайт Pocket. Полезность этого ресурса для расширения вашей «оперативной памяти» весьма бесспорна.

Pocket — своеобразный сайт-копилочка. Туда вы можете сохранять ссылки на любые понравившиеся вам веб-сайты, на которые вы забредете, прогуливаясь по бескрайним просторам интернета. Таким образом, любой полюбившийся вам контент, будь то видео, изображения или просто очень-очень полезная статья, будет у вас всегда «под рукой».

2. Хабрахабр – главный сайт IT-шников и его подпроекты

Для большинства разработчиков сайтом «Number one» является, конечно же, Хабрахабр. Данный ресурс интересен не только актуальной информацией размещаемых там статей, но и также тем, что в процессе его становления и развития он был разделен на несколько подпроектов.

Хабрахабр

Одним из подпроектов является сам Хабрахабр, снабженный очень удобным поиском по темам IT. Подпроект постоянно пополняется новыми статьями и переводами с англоязычных ресурсов, благодаря чему держит своих пользователей в курсе всех происходящих событий в мире разработки. Очень часто важную необходимую именно вам информацию можно найти в комментариях к статьям.

Geektimes


Интересным подпроектом Хабрахабр является Geektimes. Туда добавляются материалы, связанные с наукой, с космосом и т.п. Таким образом, если вас интересует информация из мира научной разработки – пожалуйте на Geektimes.

Toster – вопросы и ответы

Очень немаловажное значение для разработчиков имеет такой подпроект, как Toster. На нем можно задать любой возникший у вас вопрос, связанный с IT-тематикой, и своевременно получить на него ответ. По мнению одного из ведущих программы, Николая Чернобаева, Тостер – один из самых классных подпроектов на Хабрахабр, замечательный аналог англоязычного ресурса вопросов и ответов в области IT — Stackoverflow.

Мой круг и Фрилансим – соискателям и работодателям

Если вы ищете работу в какой-либо IT-компании или вас очень интересует фриланс, то вам прямая дорога на такие подпроекты Хабрахабр, как «Мой круг» и «Фрилансим». Здесь имеются разделы не только для работодателей, но и для соискателей.

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

3. Stackoverflow — сайт вопросов и ответов по IT-тематике

Следующим сервисом, подвергшимся разбору по косточкам ведущими DevShow, будет Stackoverflow. Ресурс этот существует в двух вариантах – англоязычном Stackoverflow и русскоязычном Stackoverflow. Как уже упоминалось выше, это портал вопросов и ответов в сфере информационных технологий. На нем разработана очень даже привлекательная система поощрений за ответы на вопросы пользователей ресурса, чем больше ответов вы дадите (конечно же, правильных), тем больше привилегий и плюшек вы получите для себя, а это, согласитесь, очень приятно.

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

На Stackoverflow можно даже налаживать связи, основываясь на рейтинге пользователей, и создавать стартапы – такой совет дают ведущие DevShow.

В общем, классный сайт, пользуйтесь на здоровье!

4. RadioJS — подкаст

А знаете ли вы, что такое подкаст? Знакомы ли вы с таким словом? Если нет, то теперь точно оно должно войти в список вашего словарного запаса, потому что любой веб-разработчик должен хотя бы иногда слушать подкасты.

Итак, подкаст — это трансляция чего-либо в интернете по принципу тематической или жанровой радиостанции. Слово PodCast происходит от iPod (популярный музыкальный плеер) и Broadcast (трансляция). А следующим рассматриваемым ресурсом будет сайт RadioJS.

Это подкаст о веб-разработке, javascript, фронтенде и client-side. Подкасты необходимо слушать всем, кто хочет постоянно быть на пике тренда развития современных технологий. Это очень удобный формат подачи материала, подкасты можно прослушивать просто по дороге куда-нибудь.

5. Awwwards — сайт для вдохновения

На этом выпуске DevShow вам будет представлен сайт – настоящий источник вдохновения для людей с творческим полетом мыслей, с богатой фантазией. Это замечательный ресурс под названием Awwwards. На нем собраны все самые красивые сайты мира.

Есть на Awwwards рубрика «Сайт дня», где каждый день представляют один из самых красивых сайтов, как бы награждают его. Это своеобразная премия «Оскар» в мире сайтостроения. Очень часто сайт дня бывает с музыкальным сопровождением. Это в корне разрушает стереотип о том, что качественный ресурс должен быть беззвучным.

Обязательно заходите на Awwwards, ищите на нем идеи для своего вдохновения, создавайте прекрасные сайты и тем самым несите радость людям!

6. Bootstrap 4

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

Не так давно bootstrap обновился, выпустил новую версию, сетка его построена теперь по технологии Flexbox. Возможно, этот фреймворк будет вам полезен, если вы захотите быстро запустить какой-нибудь проект.

7. CSS-Tricks — все о CSS

Если вы хотите глубоко погрузиться в CSS, знать все ее возможности, ориентироваться во всех нововведениях, то сайт CSS-Tricks — это именно то, что вам нужно. Здесь вы сможете найти обсуждения любых сложностей, любых нюансов, возникающих у разработчиков при создании сайтов.

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

8. Subtlepatterns — ресурс фонов

Следующим рассматриваемым ресурсом будет Subtlepatterns. Он предлагает своим посетителям огромнейшую коллекцию фонов, или паттернов. Вы можете скачать любой понравившийся вам паттерн и сделать его фоном вашего проекта. Subtlepatterns относится к одной из трастовых фриланс-бирж – Toptal.

9. Mighty Deals — сайт возможного заработка

Mighty Deals — англоязычный сайт, где можно купить или продать свои, т.е. разработанные вами, продукты. Это могут быть разнообразные дизайны, темы WordPress, шрифты и т.п.

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

Таким образом, любой дизайнер, любой разработчик может реально подзаработать на этом портале. Естественно, ничего в наше время не дается даром, и Mighty Deals не исключение. Они берут за свои услуги 60%, а это означает, что вы получаете всего 40%. Но количество желающих разместить свою сделку, несмотря на такой высокий процент, настолько велико, что очередь на размещение достигает 2-3 месяца.

10. Frontendhandbook — все о фронтенде и для фронтендеров

И напоследок ведущие DevShow представят вашему вниманию один из лучших сайтов для фронтенд-разработчика — Frontendhandbook. Здесь собрана вся информация, необходимая фронтендеру, это своеобразная настольная книга для него.

От вопросов, касающихся того, с чего начать изучение фронтенда и до информации о самых последних тенденциях в мире разработки – все можно найти на этом портале. Но без ложки дегтя в бочке меда не обойтись – ресурс этот англоязычный.

Вместо заключения…

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

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

Как всегда с вами был канал Loftblog. До скорой встречи на следующем выпуске DevShow!

Добавить комментарий