З розвитком потужних інструментів штучного інтелекту для програмування створення програмного забезпечення стає дедалі доступнішим, що, на думку аналітиків, може суттєво змінити ринок і навіть поставити під загрозу традиційні софтверні компанії. Однак у реальності ситуація є набагато складнішою, особливо для open-source проектів, які стикаються з як перевагами, так і новими викликами від впровадження таких інструментів.
Про це розповідає ProIT
Якість проти кількості: нові виклики для open-source
У багатьох open-source проектах спостерігається зниження середньої якості внесків. Це пов’язують із тим, що AI-інструменти для програмування знижують бар’єр входу для новачків, але не завжди забезпечують належний рівень коду.
“Для людей, які мало знайомі з кодовою базою VLC, якість merge-запитів, які ми бачимо, є жахливою”, – зазначив Жан-Батіст Кемпф, CEO VideoLan Organization, яка керує VLC.
За словами Кемпфа, AI-інструменти корисні насамперед для досвідчених розробників, а для новачків вони можуть створювати більше проблем, ніж користі. Аналогічні труднощі виникають і у Blender – відомого open-source інструменту для 3D-моделювання. CEO Blender Foundation Франческо Сідді розповів, що внески за допомогою LLM часто марнують час рев’юерів і негативно впливають на їхню мотивацію. Blender наразі розробляє офіційну політику використання AI-інструментів для розробки.
Зіткнувшись із надлишком неякісних merge-запитів, розробники open-source почали створювати нові інструменти для управління цим потоком. Наприклад, на початку лютого розробник Мітчел Гашимото запровадив систему, яка обмежує можливість робити внески на GitHub лише для «перевірених» користувачів, що фактично закриває відкриту політику для проектів з відкритим кодом.
Аналогічний ефект спостерігається і в програмах bug bounty, які дозволяють зовнішнім дослідникам повідомляти про вразливості. Зокрема, нещодавно open-source проєкт cURL призупинив свою bug bounty-програму через велику кількість неякісних звітів, які автор проєкту Даніель Стенберг назвав “AI slop”.
Змагання пріоритетів та зростаюча складність
Ще однією важливою проблемою для open-source проектів є різниця у пріоритетах порівняно з великими компаніями, такими як Meta. Підприємства цінують створення нового коду та продуктів, тоді як спільнота відкритого коду більше зосереджена на стабільності та підтримці існуючого ПЗ. Кемпф зазначає, що у великих компаніях розробників заохочують писати новий код, а не займатися його підтримкою.
До того ж, AI-інструменти з’явилися у час, коли програмне забезпечення стає дедалі більш фрагментованим. За словами Костянтина Виноградова, засновника Open Source Index, який нещодавно створив фонд для підтримки open-source інфраструктури, AI лише прискорює існуючу тенденцію: база коду й кількість залежностей зростають експоненціально, а кількість активних мейнтейнерів зростає набагато повільніше та не встигає за цим темпом.
Експерти відзначають, що AI-інструменти не збільшують кількість досвідчених мейнтейнерів, а лише посилюють можливості тих, хто вже добре розбирається у проєкті. Проте всі базові проблеми спільноти open-source залишаються актуальними.
AI-інструменти для програмування формують нову реальність для open-source: вони спрощують створення нового коду, але ускладнюють підтримку та управління складністю програмних продуктів. Для спільноти це означає більший обсяг роботи й ще більше викликів у пошуку кваліфікованих розробників.