Код больше не пишут

Глава 5. Почему новичок с Claude не стал сеньором

Часть II. Заплатка и организм7 мин

05

Почему новичок с Claude не стал сеньором

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

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

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

Чего именно не знает человек, впервые собравший программу с помощью ИИ, и почему это незнание стало опаснее прежнего, проще всего показать на том же маникюрном салоне.


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

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

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

После входа

Дальше книга открыта для тех, кто вошёл

Войдите через INITE или заведите аккаунт. Это займёт минуту, и книга откроется прямо здесь.