Python став найпопулярнішою мовою на GitHub. Посунути JavaScript допоміг штучний інтелект
GitHub опублікував звіт Octoverse. В ньому компанія досліджує активність розробників у публічних та відкритих проєктах на GitHub. Зібрали для вас короткий переклад основних тез.
Основні тенденції:
Сплеск глобальної активності у сфері генеративного AI
Штучний інтелект зростає і швидко розвивається, а розробники по всьому світу виходять далеко за межі генерації коду за допомогою сучасних інструментів та моделей. Хоча США лідирують за контрибюшенами в проєкти генеративного AI на GitHub, дослідники спостерігають більше загальної активності за межами США.
У 2024 році кількість внесків у проєкти генеративного AI на GitHub зросла на 59%, а кількість проєктів загалом збільшилася на 98% — причому багато внесків надходило з таких країн, як Індія, Німеччина, Японія та Сінгапур.
Швидке зростання кількості розробників у всьому світі, особливо в Африці, Латинській Америці та Азії
Значне зростання спостерігається в Індії, яка, як очікується, матиме найбільшу спільноту розробників на GitHub до 2028 року, а також по всій Африці та Латинській Америці. Спільнота розробників у Бразилії теж швидко зростає. Частково це завдяки студентам. Наприклад, у програмі GitHub Education взяли участь понад 7 мільйонів підтверджених учасників.
Аналітики також спостерігали 100% річний приріст серед студентів, викладачів та підтримувачів відкритого коду, які використовують GitHub Copilot як частину нашої програми безкоштовного доступу. Це вказує на те, що AI не лише допомагає більшій кількості людей навчатися писати код чи створювати програмне забезпечення швидше, але й сприяє залученню більшої кількості людей до професії розробника.
Python тепер є найпопулярнішою мовою на GitHub
Оскільки глобальна активність з відкритим кодом виходить за межі традиційної розробки програмного забезпечення. Python широко використовується у сферах машинного навчання, науки про дані, наукових обчислень, хобі та домашньої автоматизації, серед іншого.
Зростання використання Python корелює з тим, що великі спільноти людей з наукових і технічних галузей приєднуються до спільноти відкритого коду, відмінної від традиційної спільноти розробників програмного забезпечення.
Цього року також відбулось зростання використання Jupyter Notebooks на 92%. Це може свідчити про те, що все більше людей з галузей науки про дані, AI, машинного навчання та академічних кіл використовують GitHub. Мови системного програмування, такі як Rust, також набирають популярності, навіть коли Python, JavaScript, TypeScript і Java залишаються найпоширенішими мовами на GitHub.
На початку 2023 року на GitHub святкували досягнення 100 мільйонів розробників — і ця кількість з того часу стрімко зросла. У 2024 році розробники з усього світу зробили понад 5,2 мільярда контрибюшенів у більш ніж 518 мільйонів проєктів.
Отже, в яких країнах розробники на GitHub є найбільш залученими, і де спостерігається найбільше зростання
Серед 20 країн із найбільшою кількістю розробників на GitHub спостерігається як стабільність, так і зміни. Хоча Індія продовжує наближатися до першого місця (згідно з оновленими прогнозами, очікується, що вона його досягне до 2028 року — про це далі), Сполучені Штати все ще мають найбільшу кількість розробників на GitHub у світі. Попри це, з 2013 року зростання кількості розробників поза межами США щороку перевищує зростання в самих Штатах, і ця тенденція лише прискорилася останніми роками.
Спостерігається значне зростання спільнот розробників по всьому світу. Особливо швидко зростають Бразилія, Індія та Нігерія, що є помітним, враховуючи, що це найнаселеніші регіони своїх континентів з мовно різноманітним населенням.
Загалом, 20 країн із найбільшими спільнотами розробників здебільшого зберегли свої позиції, за кількома помітними винятками. Серед них — Філіппіни (#18), які обігнали Австралію (#19), та Пакистан (#20), який обійшов Польщу (#21).
💡 Зверніть увагу: зростання таких густонаселених, не англомовних регіонів особливо примітне на тлі поширення генеративних AI-інструментів, які дедалі більше дозволяють розробникам працювати з кодом рідною мовою.
Прогнозуючи топ-10 спільнот розробників на GitHub до 2030 року
Щоб визначити спільноти розробників із найбільшим потенціалом зростання на наступні п’ять років, GitHub створили прогнози, ґрунтуючись на поточних тенденціях. Минулорічний прогноз змінився: тепер Індія випередить Сполучені Штати за кількістю розробників на GitHub до 2028 року (раніше прогнозували, що це станеться до 2027 року на основі лінійного зростання чисельності населення).
Найшвидше зростаючі спільноти розробників у Європі та на Близькому Сході
Європа та Близький Схід формують майбутнє AI по-різному. Країни Близького Сходу інвестують у штучний інтелект із метою стати глобальними центрами AI. Тим часом за останні п’ять років Європейський Союз розробив низку нормативних рамок та законів для регулювання технологій, платформ і генеративного AI, зокрема Закон про цифрові послуги, Закон про цифрові ринки, Закон про AI та Закон про управління даними.
- Техсектор Нідерландів з 1,3 мільйона розробників на GitHub демонструє десятилітнє зростання кількості IT-компаній та розвиток цифрової інфраструктури.
- Іспанія також нарощує спільноту розробників, займаючи
15-те місце у світі за кількістю користувачів GitHub. Країна активно просуває національну AI-стратегію, розробляючи моделі AI для іспанської мови. - Франція демонструє відкритість до AI та техноінновацій через національний план до 2030 року, який включає інвестиції в перекваліфікацію кадрів та залучення AI-талантів, а також підтримку стартапів у межах програми French Tech 2030.
- Швейцарія, маючи понад 519 000 розробників на GitHub, зробила важливий крок для позиціювання себе лідером у державному секторі з відкритим кодом, встановивши вимогу до всього федерального програмного забезпечення бути відкритим, де це можливо. За даними The Economist, Швейцарія визнана найбільш інноваційною країною, частково завдяки її внескам у проєкти з відкритим кодом на GitHub.
- Туреччина продемонструвала значне зростання в секторі інформаційних і комунікаційних технологій, плануючи розвивати банківську, медичну та медіа галузі за допомогою 5G і залучення місцевих телеком-операторів для прискорення проєктів Інтернету речей (IoT) і розумних міст.
- Об’єднані Арабські Емірати також привертають увагу завдяки своєму прагненню стати глобальним лідером у сфері AI та передових технологій. У них спостерігалося зростання кількості розробників на GitHub на 32% за рік.
Деталі щодо інших регіонів — в статті.
The state of open source
У 2024 році розробники з усього світу здійснили майже 1 мільярд контрибюшенів у відкриті та публічні репозиторії на GitHub (це включає проєкти з відкритим кодом, які мають ліцензію, та публічні проєкти без ліцензії, прийнятої Open Source Initiative). Ці контрибюшени охоплювали популярні проєкти, такі як home-assistant/core, генеративні AI-проєкти, такі як ollama/ollama (про це детальніше далі), та комерційно підтримувані проєкти, як-от vercel/next.js.
Як і минулого року, найбільше контрибюшенів у 2024 році було зроблено саме у комерційно підтримувані та генеративні AI-проєкти. Проте особливу увагу привертає те, звідки надходили ці контриб’юшени: регіони за межами Північної Америки та Європи демонструють значний приріст активності.
Все більше розробників використовують відкритий код, що проявляється у 15% зростанні пакетів JavaScript через реєстр npm. Топ-50 пакетів показали позитивний ріст, що сигналізує про укріплення екосистеми JavaScript. Це також свідчить про те, що все більше людей використовують відкритий код.
Топ-10 відкритих та публічних проєктів, які привабили найбільше нових контриб’юторів у 2024 році на GitHub.
- microsoft/vscode
- home-assistant/core
- microsoft/PowerToys
- Kas-tle/java2bedrock.sh
- ultralytics/ultralytics
- flutter/flutter
- langchain-ai/langchain
- Ultimaker/Cura
- platformio/platformio-home
- Koenkk/zigbee2mqtt
The state of generative AI in 2024
Протягом минулого року генеративний AI вийшов за межі ажіотажу 2023 року, оскільки розробники та організації шукають результати, а не експерименти — і дані на GitHub це підтверджують. У 2024 році розробники на GitHub створили понад 70 000 нових публічних та відкритих проєктів у сфері генеративного AI та зробили майже на 60% більше загальних контрибюшенів до всіх проєктів генеративного AI на GitHub.
Моделі AI стають частиною технологічного стеку розробника. Інновації в генеративному AI на GitHub переходять у публічні репозиторії. Роль моделей генеративного AI в розробці програмного забезпечення змістилася з допомоги у написанні коду до нової основи для розробки застосунків.
Проте серед розробників зростає потреба в менших моделях з хорошими показниками продуктивності та нижчими витратами на обчислення, що зумовлено бажанням використовувати моделі AI в смартфонах. Найшвидше зростаючим відкритим AI-проєктом у 2024 році за кількістю контриб’юторів став ollama/ollama — це свідчить про зростання експериментів з локально запущеними LLM.
Топ-10 публічних генеративних AI-проєктів у 2023 році та 2024 році.
Хоча спостерігається стабільний інтерес розробників до генерації зображень через AUTOMATIC1111/stable-diffusion-webui та розробки AI-агентів через Significant-Gravitas/AutoGPT, також помітні деякі зміни в роботі з AI на GitHub:
- Зростання інтересу до менших моделей. Протягом останнього року розробники на GitHub працювали з моделями LLaMA від Meta, що свідчить про зростаючий інтерес до менших, відкритих моделей.
- Спеціалізовані AI-інструменти. Через проєкти, такі як binary-husky/gpt_academic, також спостерігається зростаючий інтерес до розробки AI-інструментів для спеціалізованих випадків використання, таких як академічні дослідження.
- Фокус на розробці AI-агентів для автоматизації процесів. Зростання кількості проєктів, пов’язаних з AutoGPT, свідчить про те, що автоматизація залишається важливою сферою досліджень, а розробники зосереджуються на покращенні можливостей AI-агентів.
Присутня кореляція між збільшенням активності серед розробників, які регулярно використовують GitHub, з моменту запуску GitHub Copilot. Серед розробників, які регулярно користуються GitHub та використовують GitHub Copilot, є вища активність (від 12% до 15% серед розробників, які використовують GitHub п’ять днів на тиждень, та від 8% до 15% серед розробників, які користуються GitHub один раз на тиждень) у відкритих та публічних проєктах.
The state of security and automation in 2024
У 2024 році розробники на GitHub використали сканування секретів для виявлення понад 39 мільйонів вразливостей. Розробники та спільноти з відкритим кодом швидше реагують на інциденти безпеки завдяки новим генеративним AI-інструментам, автоматизованим сповіщенням та проактивним заходам. Це не лише допомагає зробити програмне забезпечення більш безпечним, а й призводить до швидших виправлень.
Найпоширеніші вразливості безпеки у 2024 році. Injection, безумовно, була найпоширенішим типом вразливості, виявленим у публічних та приватних репозиторіях за допомогою CodeQL — механізму аналізу коду, розробленого GitHub для автоматизації перевірок безпеки. Тим часом вразливості Security Logging and Monitoring Failures частіше виявлялися у приватних репозиторіях.
The most popular programming languages
Python стає найвживанішою мовою на GitHub, випередивши JavaScript після 10 років перебування на позиції найпопулярнішої мови.
Це перша масштабна зміна з 2019 року, і вона свідчить про зростання Python, яке супроводжує бум генеративного AI.
Shell також випередив C у 2024 році. Хоча мови, такі як Rust і Go, набирають популярність, більш традиційні мови все ще широко використовуються та користуються попитом. Висока популярність мов, доступних для початківців, таких як JavaScript і Python, підвищує ймовірність того, що більше людей навчиться програмувати — ці мови популярні в таких сферах, як академічна діяльність і наука про дані.
Слід зазначити, що JavaScript все ще займає перше місце за кількістю пушів коду. Але за загальною активністю в усіх типах внесків на GitHub Python тепер випереджає JavaScript. Крім відносної простоти Python, ця мова також є популярним вибором для науки про дані та AI, які обидва різко зросли на GitHub протягом останніх двох років.
TypeScript поступається JavaScript. Після експоненційного зростання з 2014 по 2019 роки TypeScript минулого року випередив Java та увійшов до трійки найпопулярніших мов програмування на GitHub. Його подальше зростання свідчить про його корисність як мови, перевірника типів і компілятора в одному. Хоча Python зростає в кількості контриб’юторів як за активністю пушу коду, так і за іншими типами активності швидше, ніж JavaScript, це зростання не перевищує комбінацію JavaScript і TypeScript. Натомість, замість спаду в спільноті JavaScript, спостерігається перехід до TypeScript для значної частини нових комітів. TypeScript є надмножиною JavaScript і входить до того ж екосистеми npm, що робить його легким для поступового впровадження розробниками JavaScript.
JavaScript все ще має величезну базу розробників, оскільки присутнє зростання споживання пакетів npm. Ця мова універсальна в роботі як на клієнтській, так і на серверній стороні, і легко адаптується до різних фреймворків і стандартів, серед інших причин її популярності. І оскільки її потужна екосистема продовжує зріти, спостерігається сильне зростання споживання пакетів через реєстр npm з 15% річним зростанням.
Популярність HCL та Go відображає зростання в операційній діяльності та галузі IaC, особливо в управлінні хмарною інфраструктурою. Відтоді, як аналітики вперше спостерігали значне зростання в розробці хмарних рішень у 2019 році, IaC продовжує зростати в open source. Зокрема, 25% річного зростання HCL свідчить про те, що розробники дедалі частіше використовують декларативні мови для визначення способів управління хмарними розгортаннями.
Популярність HCL та Go, а також Dockerfiles, свідчить про те, що розробники масштабують роботу в хмарних застосунках. Зростання використання Terraform відображає зростання використання Dockerfiles та інших технологій хмарної інфраструктури за останнє десятиліття. Підвищення впровадження практик IaC також свідчить про те, що розробники впроваджують більше стандартизації в хмарні розгортання.
Три основні висновки:
1. Генеративні моделі штучного інтелекту стають основними будівельними блоками в розробці програмного забезпечення
Вони живлять інструменти для кодування, які пропонують виправлення та контекст для усунення вразливостей, надають пропозиції у відповідь на запити природною мовою та існуючий код, а також сприяють навчання нових і досвідчених розробників. Вони також змінюють спосіб, яким розробники створюють додатки, і розробники отримають вигоду від платформ, які дозволяють їм легко експериментувати з AI-моделями як будівельними блоками без необхідності в окремих налаштуваннях або додаткових витратах.
2. Глобальна спільнота розробників на GitHub швидко розширюється, і наступне покоління розробників починає свою діяльність на GitHub.
Все більш різноманітна спільнота розробників стимулює інновації та таланти, оновлюючи пул рішень для дедалі складніших проблем. Збільшення доступу до AI та експериментування з ним також може спростити і персоналізувати шлях кодування для нових розробників, знижуючи бар’єри для входження та ще більше диверсифікуючи спільноту розробників на GitHub.
3. Уявлення про те, хто такий розробник і яку роль він виконує, змінюється.
Зростання популярності Python, HCL та Jupyter Notebooks, серед іншого, свідчить про те, що поняття «розробник» виходить за межі програмних розробників і охоплює такі ролі, як операційні або IT-розробники, дослідники в галузі машинного навчання та науковці з даних.
2 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів