Щойно я зрозумів одну досить цікаву річ — галузь розробки програмного забезпечення перебуває у процесі трансформації, якого я раніше не бачив за понад 20 років своєї кар’єри.



Більше двадцяти років тому я розпочав роботу в DCSL Software (, пізніше — One Beyond). Я залишив компанію у 2023 році, коли вона налічувала понад 300 співробітників і працювала по всьому світу. Після цього я заснував стартап у сфері робототехніки і залучив понад 4 мільйони фунтів інвестицій. Насправді, я ніколи не думав, що повернуся до кодування.

З 2014 року я перестав писати код щодня. Не через те, що не міг, а просто тому, що це природний шлях розвитку компанії. Ви наймаєте кращих за себе, зосереджуєтесь на керівництві, і з часом клавіатура стає чужою. Майже десять років такої роботи здавалися цілком звичними.

Але несподівано, останнім часом я знову опинився у ролі розробника — не через ностальгію, а через реальні потреби. Я створюю справді складну платформу робототехніки. І спосіб моєї роботи кардинально відрізняється від минулого.

Ця особиста зміна чітко показує мені: щось фундаментально змінилося у нашому підході до розробки програмного забезпечення.

Якщо поглянути назад, раніше ми працювали за моделлю водоспаду. Це не просто теорія, а чиста економіка. Написання коду було дорогим і повільним, тому єдиним раціональним підходом було ретельно продумати все з самого початку. Ми писали детальні специфікації, бо так потрібно було — контракти, поставки, все залежало від них. Написати хорошу специфікацію — навичка рідкісна, і я випадково був досить хорошим у цьому. Я міг уявити кінцевий продукт ще до його створення, передбачити складні частини і описати поведінку з достатньою точністю, щоб команда могла його реалізувати.

Після цього галузь перейшла на Agile. Публічно — тому, що це краще для реагування на зміни. В тиші — тому, що ми усвідомили: у великих, довгострокових системах не існує ідеальних специфікацій. Бізнес змінюється, користувачі змінюються, технології змінюються. Agile корисний, але має свою ціну. Ми відмовилися від глибокого дизайну з самого початку і перейшли до поступового відкриття. Це працює, але також стандартизує думку, що надто далеке планування вважається непотрібним або навіть ризикованим.

Зараз я усвідомлюю, що причина, через яку я можу повернутися до кодування, не у тому, що у мене з’явився час або бажання вивчити нові інструменти за останнє десятиліття. Це тому, що AI кардинально змінила вартість тестування.

Люди часто неправильно розуміють цю зміну. Реальна зміна полягає не у тому, що код пишеться швидше. А у тому, що тепер все можна тестувати швидко, дешево і більшість — з можливістю легко повернути назад. Те, що раніше займало кілька тижнів у розробника, тепер можна зробити за кілька хвилин. Ви експериментуєте з підходом, дивитеся, як він працює, повністю його відкидаєте і пробуєте інший — майже без наслідків. Це раніше було неможливо.

Раніше код викликав сильний емоційний і фінансовий зв’язок. Якщо щось займало двох розробників три тижні, ви навряд чи хотіли б це викинути. Рішення ставали жорсткими рано, не завжди тому, що вони були правильними, а тому, що їх скасування коштувало надто дорого. Ця прив’язаність зникла, і саме тому я повернувся.

Зараз я працюю на рівні, де я найкраще розумію — аналізую проблему, формую систему, виявляю складність — тоді як AI керує механізмами. Я не пишу код так, як у двадцять років. Я керую ним, налаштовую, коригую і часом зупиняю його від неправильних дій. Це більше схоже на керівництво командою, ніж на написання коду. Ви справді — керівник — визначаєте напрямок, оцінюєте результати, знаходите способи уникнути ліні і лінь.

Одне з поширених неправильних уявлень — це те, що ця нова свобода робить дизайн менш важливим. Насправді навпаки. Чітке, детальне уявлення про те, що ви будуєте, все ще має величезну цінність. Це навіть покращує результати AI. Чим ясніше намір, тим кращий результат. Неясне мислення лише створює більш хаотичні системи швидше.

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

Але дизайн більше не є продуктом, що має залишатися незмінним багато років. Він стає керівництвом для тестування, а не обмеженням. Ви зберігаєте чітке бачення цілі, але готові тестувати, відмовлятися і розвивати шлях до неї.

Новий навик — знати, коли ефективно досліджувати, а коли це лише шум. AI із задоволенням продовжить створювати структури довше, ніж потрібно, і не розуміє, коли файл занадто великий, коли абстракція протікає, або коли те, що працює сьогодні, спричинить проблеми завтра. Ці інстинкти залишилися з досвідом.

Коли тестування стає дешевим, багато довгострокових припущень вже не актуальні. Планування більше не зводиться до зафіксованих рішень наперед. Це встановлення намірів, обмежень і меж. Менше передбачень і більше розуміння простору дослідження. Наші відносини з кодом кардинально змінюються. Менше прив’язаності до конкретних реалізацій, більше — до поведінки, структури і результату.

Ось чому галузь розробки програмного забезпечення здається нестабільною. Багато хто намагається застосувати старі ментальні моделі до нових інструментів. Це працює деякий час, але пропускає головне.

Я впевнений, що ця зміна є вічною, бо дуже проста причина: я не буду знову будувати все по-старому. Єдина причина, чому я довіряю повернутися до практичної розробки — це те, що обмеження, які спонукали мене спершу йти іншим шляхом, більше не застосовуються. Тепер код може розвиватися через кероване тестування у спосіб, який раніше був неможливим.

Це не означає, що досвід став менш важливим. Це означає, що він став іншим. Цінність тепер не у запам’ятовуванні синтаксису або фреймворків. Вона у здогадках, структурі і вмінні знати, коли зупинитися.

Це не кінець розробки програмного забезпечення. Але це кінець старої моделі. І коли ви працюєте у цьому новому стилі, назад уже не повернутися.
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
Додати коментар
Додати коментар
Немає коментарів
  • Закріпити