Рейтинг языков программирования № 5, январь 2014
В опросе приняло участие 6068 человек. Из них 92% живут в Украине, 8% — за ее пределами. Треть проголосовавших принимала участие и в предыдущих опросах по этой теме: 2013, 2012, 2011, 2010.
Краткая сводка: — Java по прежнему занимает первое место;— Увеличился разрыв между C# и Java;— JavaScript обогнал Python;— Scala возглавляет индекс удовлетворенности;— В пятерку основных дополнительных языков вошел T-SQL.
Первичные данные опроса вместе со скриптами на языке R лежат на гитхабе.
Основные языки разработки-2014
По сравнению с данными прошлого года:— JavaScript стал популярней Python’а;— PL/SQL потеснил ActionScript и вошел в первую десятку;— популярность 1С упала.
Увеличилось количество упоминаний CoffeeScript и SAP ABAP.
Динамика ТОП-15 языков за последние 4 года:
По сравнению с прошлым годом произошли статистически значимые изменения в доле С#, JavaScript, Objective-C и PL/SQL. По сравнению с позапрошлым — увеличилась доля Scala.
Предпочитаемые технологиии
Если сравнивать предпочитаемые технологии с реально используемыми, изменения повторяют тенденции прошлого года: — Python стал популярней, чем PHP;— возросла доля Scala;— Haskell ушел из ТОП-15.
Индекс удовлетворенности (процент людей, которые работают на данном языке и предпочитают выбрать его же для следующих проектов) возглавляет Scala с результатом 89%.
Общая картинка для ТОП-10:
Распространение языка и изменения его доли на рынке не связано с индексом удовлетворенности: у C# с высоким ИУ доля распостранения сократилась. Похоже, сектор MS-стека технолоий разработки растет медленнее рынка.
Дополнительные языки
Как и раньше, JavaScript вне конкуренции. Также в качестве дополнительных языков программисты используют Shell, T-SQL и PL-SQL. И на CoffeeScript таки реально что-то пишут.
Динамика за 4 года:
JavaScript теряет позиции как дополнительный язык. Вероятно, для многих он перешел в область основного. В пятерку «основных дополнительных», кроме Java и Shell, вошли T-SQL и PL-SQL.
В предыдущих опросах разработчики мало указывали Shell и T-SQL. Вряд ли они стали массово использоваться эти технологии именно в 2013 году. Скорее, это результат того, что они появлились в предложонном списке, и их не приходилось набирать вручную в поле Other. Поэтому в 2015 году мы усовершенствуем методологию опроса и проведем его в два этапа: сначала определим оба списка языков, и потом используем их для непосредственно опроса.
Pet Projects
Для собственных проектов программисты используют:
JavaScript лидирует и здесь, однако безудержный рост прекратился. Основные тенденции — те же, что и в коммерческой разработке.
Финальная таблица результатов
№ Язык Доля рынка Изменение по сравнению с прошлым опросом Рабочий сейчас Дополнительный В своих проектах Индекс удовлетворенности 1 Java 25.15 1297 775 1377 0.77 2 C# 18.83 -2.45 971 558 1131 0.84 3 PHP 14.35 -0.85 740 568 1112 0.64 4 C++ 8.96 462 602 745 0.66 5 JavaScript 7.56 2.12 390 2702 1533 0.64 6 Python 6.26 323 643 705 0.83 7 Objective-C 4.93 1.01 254 174 344 0.80 8 Ruby 3.78 195 250 350 0.85 9 C 1.65 85 511 269 0.41 10 PL-SQL 1.53 79 702 171 0.35 11 Pascal/Delphi 1.35 70 109 221 0.41 12 ActionScript 1.04 -0.78 54 99 123 0.53 13 Perl 49 143 106 0.51 14 Scala 47 138 189 0.89 15 T-SQL 36 705 219 0.47 16 Basic 19 53 30 0.15 17 Erlang 18 43 69 0.83 18 SAP ABAP 11 3 5 0.36 19 Groovy 9 177 69 0.55 20 CofeeScript 8 189 108 0.75 21 Haskell 5 9 33Первый язык
Похоже, эра Pascal/Delphi уходит из нашего образования.
Демография
Однако основные параметры все те же: • большинству от 20 до 30 лет (67% в 2014); • лет — 26%; • лет — около 2.5%;• > 50 лет — меньше чем 0.5%;• самые молодые (< 20 лет) — 2.9%.
Опыт работы программистом
Пик 5 лет опыта работы сглаживается. Новички вытесняют сеньйоров и разработчиков с опытом > 10 лет.
Украина/мир
92% участников работают в Украине, 8% — за рубежом. Опыт в диаспоре выше:
Распределение языков также отличается: — использование JavaScript — ниже,— Python и Ruby — выше.
Это можно объяснить тем, что зарубежная аудитория старше, и не всякий молодежный тренд находит у нее немедленную поддержку.
Маєте важливу новину про українське ІТ? Розкажіть спільноті. Це анонімно. І підписуйтеся на Telegram-канал редакції DOU
До обраного В обраному 0
Схожі статті Рейтинг мов програмування 2022. C# обійшов Java, TypeScript зрівнявся з PHP, а Dart — найбільш комфортна моваPython вже другий рік поспіль демонструє негативну динаміку. Java теж втрачає позиції — цього року вона на третьому місці за популярністю. Натомість на друге вийшла мова C#. Частка JavaScript після невеличкого падіння у 2021-му цього року знову зростає.
Топ-10 мов програмування в Україні, Динамічна інфографіка11 років ми складаємо рейтинг мов програмування. Уперше ми взяли дані за всі роки та подивилися, як змінювалася популярність мов серед українських програмістів. 71
«Что учить, Java или C#?» Востребованность и перспективы популярных языковЧтобы ответить на популярные вопросы начинающих программистов о том, стоит ли учить такой-то язык и связывать с ним карьеру, мы расспросили разработчиков на Java, JavaScript, PHP, C#, C++, Python и Swift/Objective-C. 88
DOU News #12
62 коментаріИнтересно а почему никто не вспомнил про Golang который довольно круто набирает обороты
Помню как на уроке информатики нас заставляли писать программы на Паскале.
Змушували? Я любив Паскаль :-)
Виталий, уровень преподавания был на столько убогий, что даже элементарно понять зачем вообще это нужно не представлялось возможным. + в том возрасте я никогда бы не подумал что буду заниматься ИТ
Имеем некоторое несоответствие их тенденциям :-) mashable.com/. ming-languages
Статистика это отражение ситуации на сегодняшний день. Грубо говоря речь идет об инструментах которыми зарабатывают на жизнь и никак не говорит о тенденциях, и тем более, о перспективах. Если появятся унитазы требующие ключа на 17, то ясный перец возрастет количество сантехников пользующихся этим ключем. Мне очень жаль что практически отстуствуют производители сантехники. Т.е. системщики которые знают архитектуры процессоров, несколько ассемблеров, понимающие и знающие как делать систему, знающие теорию трансляторов, как вот эти все гуи, и прочее реализовываются, и способные предложить реально что-то лучше. Увы. Если таковые есть, просьба отозваться.. Есть тема..
А где же «mobile»?
Самим надо направлять своих детей на путь истинный. И помогать/учить, по мере сил, конечно. Однозначно начинать надо с С/С++ - это фундамент «что бы ехать», а остальное просто шашечки, которые молодые осваивают практически незаметно для себя по мере надобности.
Лично я эту задачу выполнил :)
ни строчки кода на С/С++ не написал за свою жизнь. И «еду» себе..
. ну вот подарят Вам iPad и с радостью начнете писать<StringNS> :)
За что вы так детей не любите?
Прежде всего они должны научиться декомпозировать и алгоритмизировать задачи, коль скоро хотят попробовать себя в программировании, а не управлять памятью на низком уровне и обходить ограничения статической типизации. Ребёнок сначала играет игрушкой, а лишь потом начинает её разбирать, чтобы понять как она устроена. Абстрагирование от деталей реализации — наше всё, пока не требуется оптимизация.
Первым языком из мэйнстрима я бы посоветовал Python с какой-то библиотекой/фреймворком, позволяющим без особого труда создавать простые игрушки. И TDD/BDD с самого начала — сначала опиши что ті хочешь получить, а потом опиши как ты будешь это получать.
Против Python, indent, __main__ напугают кого угодно. Уж лучше JavaScript.
Навеяно вчерашними разборами полетов в домашнем задании по программированию на Pascal у ребенка, который ходит на IT-курсы и этим :)
На вопрос, почему не дают основ С/С++/Java, ответа я не получил :)
P.S. компилятор, который не может показать в какой строке ошибка, не для детей однозначно :)ибо никак не может помочь найти где у начинающего дева ошибка :)P.P.S. программа, которая успешно скопилилась на виндовой версии под линуховым компилером не собралась и самая большая печаль была в том, что даже преподаватель на этих курсах, НЕ СМОГ, объяснить почему :)
Да, с образованием беда!IT сфера — это динамичная сфера, где развитие и изучение нового — залог работы как таковой.К сожалению в институтах у нас работают большей частью преподаватели не нюхавшие пораха коммерческой разработки и тем более не нагруженные бременем опыта разработки как таковой. Pet-projects — это предел. :(Нужен новый механизм формирования учебной программы и технического образования как такового.
Беда однозначно :)Собственно я писал даже не про институт.Непонятно зачем детям давать учить язык, который не только НИГДЕ уже не используется, но и не имеет сколько-нибудь внятных средств для разработки.Ребенок полчаса бился над тем, что не мог найти ошибку в коде, пришлось сидеть с ним вместе и вычитывать код, потому что сообщение «Undefined identifier», было понятно только мне :)При этом компилер не указывал в какой строке ошибка :) Дальше можно еще продолжать: компилятор под дос с невозможностью расширить окно на фулскрин и увеличить шрифт, и сидеть всматриваться в «козявки» в маленьком окне, тоже не большое удовольствие :)Собственно такие ситуации на мой взгляд сильно демотивируют детей продолжать заниматься программированием. Насколько я помню из того, с чего я начинал (С++ в Visual Studio 6.0), там таких проблем и близко не стояло.
v7.1 ? Тоже на нем преподавали основы программирования. Проблем с подсветкой ошибок не было никогда. Возможно у вас дистрибутив корявый, стандартных либ не хватает или *.dcu файлов. Я даже не знаю, никогда такого не было.
версия 7, качал в инете.может и корявый :)я написал, только то, что увидел и заметил.
Ну а вообще, прогресс образования так и поражает, учитывая что мне паскаль преподавали в 2000 году. А сколько еще лет до этого — даже не знаю.
Вы сравниваете образование для взрослых с образованием для детей, а это не одно и то же.Тут важны два фактора: 1. должна быть интересной подача материала.2. ДОЛЖНО ПОЛУЧАТЬСЯИначе, очень велик шанс просто отбить охоту заниматься программированием, как таковым.
И по факту, да, преподаватели за ту зарплату, которую им платят, вероятно просто не хотят эволюционировать, хотя курсы коммерческие, что очень странно.
Ну. Вы вот себе поймите, что реально любой ВУЗ должен быть сперва НИИ, а потом уже «по обучению студентов». Так было при Союзе, так на западе.Если ВУЗ специализируется по «доению родителей студентов на бабки» — то тут чем запутаннее обучение — тем лучше — больше денег родители заплатят.
Если есть проекты, которые делаются ВУЗом по НИИР, будут самые оптимальные варианты и с MathLab, и с Java\Scala\Groove, и с LISP, и с другими решениями.
так и вижу как дети в школе учат C++ собирают кроссплатформенные программы, выделяют память, используют множественное наследование и т.д.
паскаль используют потому, что он как язык очень простой.
Та ну, ещё TP 5.5 очень чётко показывал.
В определенных кругах живут и Фортран, и Ада, и Пролог. Только вот это все — языки — лишь инструменты.Главное — модель того, что нужно. в твоей голове.
Потому язык который нужно изучать — английский с американским диалектом.Для поиска заказчиков. А уже имея ЧТО ДЕЛАТЬ — инструмент подобрать легче.
наличие English — must have но тред не об этом.
На скольких коммерческих проектах Вы принимали участие ?Судя по суждениям, на никаких.
Вообще я пытался донести то, что НУЖНО качать скилы и учить новые технологии.Это как в повести Джека Лондона, где были люди которые говорили что нужно что-то строить и учиться, а другие звали жить обратно на деревьях :)
. а вот представляете как раньше?У нас на первом курсе Машиностроительного Факультета МВТУ была большая такая машина ЕС (уже номера не помню) на которой работал весь факультет.В начале «пары» по программированию (Фортран) ставишь задачку «на выполнение», а к концу «пары» приходит ошибка — «пропущена запятая».
Пробую с старшим (15 лет) что-то делать под Андроид.Но пока я Доте не конкурент )
Должен быть интерес сделать/научиться, а как раз этот фактор и есть самый трудноформируемый у начинающих.
К доте скоро должна появится возможность делать моды, вот с них можно будет и начать )
Чем меньше будущий программист будет видеть «что-то от Микрософт», тем больше вероятность что он станет программистом.
Иногда перед тем как писать, бывает неплохо почитать про что дискуссия .Майкрософт и обучение ребенка программированию через моды к ru.wikipedia.org/wiki/Dota_2 не имеет никакого отношения.
Паскаль — в большей степени процедурный язык программирования, потому зачастую его использование оправдано в учебном процессе, поскольку схема туду-лист в голове укладывается гораздо легче, абстракций, инкапсуляций, полиморфизмов, наследований. Например, отсутствие реализаций коллекций дает возможность ученикам думать на массивах, не запутывая их выбором корректного использования необходимых для оптимального решения классов. Вообще в учебном процессе не используют фреймворки или спецлибы, которые упрощают жизнь программистам. Учить думать, искать решения исходя из имеющихся инструментов и пробуждать желание создавать инструменты облегчающие процесс разработки в будущем (не для кого-то а в-первую очередь для себя)
Давать детям возможность создавать законченый программный продукт (игру типа фермы, калькулятор с ГУИ и т.д.) не имеет собственно смысла — технологии изменятся и знания окажутся бесполезными
Учите детей шевелить мозгами, поясняя, что языки программирования всего лишь инструмент, да нужно привыкать, что не ручка, а компьютер. Не спешите давать готовые решения (в той же Jave их слишком много).
Я бы посмотрел для своего ребенка в сторону Lisp (интересен своим нестандартным подходом) и Python (простота в чтении кода, возможность работы в режиме командной строки, поддерживает несколько парадигм программирования, в том числе структурное — что на начальном этапе обучения программированию является наиболее важным как мне кажется)
Позволю себе сильно не согласиться :)Поскольку первый изученный язык и подход, который используется при изложении материала, оказывает очень сильное впечатление и мотивацию на изучение других языков в дальнейшем. Особенно для детей, которые не знают, что есть ЕЩЁ ДРУГИЕ языки программирования. И то, что материал, который они учили ранее может никак не пригодиться +100500 в копилку демотиваторов :)Речь не шла про изучение ОПП вообще.Хотя на ютубе я видел ролики мальчика, который изучал обжективси и выкладывал скринкасты, когда я сам только начинал пилить под iOS :)Учить тот же С, гораздо полезней и интересней.К тому же он является основой для большинства актуальных ныне языков и знания полученные при изучении смогут пригодиться в дальнейшем.Спасибо за советы, приму к сведению.Я бы тоже посмотрел на что-нибудь поинтересней, но речь шла об изучении на коммерческих IT-курсах, и по факту детям более интересней учиться в коллективе, чем самостоятельно.
С с его указателями самое оно для мозга ребенка и уж точно не С в крайнем случае С++ :) Изучение паскаля не может быть демотиватором так как они ничего не знают о других языках, я в свое время с бейсика начинал, и это не было демотиватором. А то что один мальчик осилил уровень абстракции обжектив с — молодец, но далеко не всем это под силу и как раз это может стать демотиватором. Еще раз программирование для детей — это просто обучение использованию языка программирования как средства мышления и задачи должны быть соотвествующими. А сведя деятельность к решению задач типа вставь сюда поставь сюда отредактируй здесь скопируй это (Делфи, Билдеры всякие . ) - это не обучение программированию.