00:00:00Сегодня я наткнулся на интересный пост Гильермо Рауха, генерального директора Vercel, о
00:00:06котором хочу поговорить, а также о последствиях и моих мыслях о роли кода и о том,
00:00:11насколько важен сам код сегодня и в будущем.
00:00:16В этом посте Гильермо говорит: «Код — это результат, природа исцеляется».
00:00:21Слишком долго мы относились к коду как к входным данным.
00:00:23Мы боготворили его, форматировали вручную, украшали и были им одержимы.
00:00:28Мы создавали сложные графические интерфейсы для его написания, IDE.
00:00:31Мы делали подсветку синтаксиса, древовидную настройку, мини-карты кода, триггеры клавиатуры, автозаполнение,
00:00:37скрытый текст.
00:00:38Какая это цветовая схема?
00:00:40Мы не спали ночами, обсуждая идеальную длину API и тел функций.
00:00:44Будет ли этот API выглядеть достаточно хорошо, чтобы его мог прочитать другой человек?
00:00:48Теперь мы переключаем внимание на истинные входные данные: требования, спецификации, отзывы, дизайн,
00:00:54вдохновение и, что критически важно, производственные данные.
00:00:58Нашим ИИ-агентам нужно понимать, как пользователи взаимодействуют с вашим приложением, с какими
00:01:04ошибками вы сталкиваетесь, и превращать это в код.
00:01:07Мы неизбежно станем меньше прославлять код, как и самих программистов.
00:01:12Лучшие инженеры, с которыми я работал, всегда видели в коде лишь средство достижения цели,
00:01:17результат, который скоро снова будет трансформирован».
00:01:20Вау, в этом посте очень много смысла!
00:01:23У меня по этому поводу возникло много мыслей.
00:01:27Очевидно, и я думаю, мы все это видим, что вся роль или весь мир
00:01:35программирования стремительно меняется.
00:01:38Там происходит много всего, и я, и, полагаю, многие в индустрии чувствуют,
00:01:46что с декабря всё снова ускорилось с выходом Opus 4.5, Cloud Code, а теперь еще и
00:01:53Codex. Новые модели и инструменты появляются почти каждую неделю.
00:01:58Всё меняется очень быстро.
00:02:01Лично я, конечно, стараюсь не отставать, в том числе и в плане контента,
00:02:06который я создаю, курсов, которые выпускаю, и, конечно, того, как я работаю,
00:02:10ведь это основа всего. Поэтому я выпустил новые курсы по Cloud Code и Codex.
00:02:16Кстати, сейчас я провожу большую акцию, по которой вы можете получить мою годовую подписку,
00:02:21дающую доступ ко всем курсам по очень низкой цене.
00:02:24Но всё это влияет на всех нас.
00:02:27Вот в чем моя мысль.
00:02:28Это меняет то, что мы делаем, какой контент я создаю и как мы создаем ПО.
00:02:35Однако я не совсем уверен, что мы действительно уходим от кода.
00:02:42Для меня этот пост звучит так, будто код больше не имеет значения, и я с этим не согласен.
00:02:50Я признаю, и это очевидно, что в прошлом мы действительно были зациклены
00:02:58на дизайне API, на именовании переменных и функций, на эстетике кода.
00:03:07И я бы поспорил, что часть этого по-прежнему важна сегодня и, скорее всего,
00:03:15сохранит важность в будущем.
00:03:17Потому что даже если роль человека сместится от написания кода к его проверке,
00:03:24что легче проверять: грязную базу кода в 10 000 строк, которые частично
00:03:33избыточны или излишне сложны, со странными названиями функций, или чистый код?
00:03:41Что будет легче ревьюить?
00:03:44И даже если большая часть процесса проверки в будущем перейдет к машинам и ИИ,
00:03:50что вполне возможно, даже тогда я не уверен, что качество кода
00:03:59перестанет иметь значение в этом мире.
00:04:02Хотя бы потому, что вы платите за все те токены, которые генерируются и проверяются.
00:04:09Если что-то можно написать чище, это, скорее всего, потребует меньше токенов
00:04:17как для генерации этого кода, так и для его проверки.
00:04:19Стоимость токенов, похоже, будет очень важна в будущем, потому что сейчас
00:04:25мы все пользуемся субсидированными тарифами от Anthropic и OpenAI.
00:04:30Мы не платим реальную стоимость токенов через те подписки за 20 или 200 долларов,
00:04:37которые есть у вас и у меня.
00:04:39Это не те подписки, на которых эти компании обязательно зарабатывают.
00:04:44Реальная стоимость токенов выше.
00:04:47И вполне вероятно, что цена вырастет в будущем, когда этим компаниям
00:04:54нужно будет в какой-то момент начать приносить прибыль.
00:04:57Очевидно, благодаря техническому прогрессу это может начаться тогда, когда стоимость
00:05:02токенов в целом снизится, но мы пока не знаем этого наверняка.
00:05:07Мы не знаем, как будет выглядеть этот рынок в будущем.
00:05:10И даже если теоретически она упадет, если компании смогут брать с вас
00:05:16определенную цену, которая может быть существенно выше реальной, они с радостью заберут
00:05:22эту маржу себе.
00:05:23Но это уже совсем другая тема.
00:05:25Однако токены и их эффективность важны сегодня и, вероятно, будут важны в будущем.
00:05:31А это напрямую связано с качеством кода, потому что в целом хороший, чистый код —
00:05:39это код, которому не позволяют бесконечно разрастаться и становиться сложным.
00:05:47Конечно, можно возразить, что программисты в прошлом тоже иногда имели
00:05:55тенденцию писать слишком много кода ради «красивого» API
00:06:02или ненужных абстракций, которые не были им нужны в тот момент,
00:06:08когда они их внедряли.
00:06:09Мы все, наверное, были в ситуации, когда работали над сайд-проектом с нулем пользователей,
00:06:15и решали реализовать доступ к базе данных так, чтобы ее можно было легко сменить,
00:06:22хотя никогда не собирались этого делать.
00:06:24И из-за этого мы писали какой-нибудь адаптер, который был гораздо сложнее,
00:06:29чем это требовалось.
00:06:30Мы все через это проходили.
00:06:31Было ли это круто?
00:06:32Нет, и не будет ни сегодня, ни в будущем, независимо от того, написан этот код
00:06:37вами или ИИ.
00:06:39И прямо сейчас (хотя это может измениться), по моему опыту, эти модели ИИ
00:06:45и инструменты вроде Codex или Cloud Code склонны всё усложнять,
00:06:54вносить ненужную избыточность и предлагать правки, которые,
00:07:02честно говоря, не имеют особого смысла. Codex, в частности, сейчас склонен
00:07:10никогда не удалять код, а просто добавлять его всё больше и больше, включая обработку ошибок.
00:07:15Вам приходится почти силой заставлять его удалять код и отказываться от старых API.
00:07:22Так что всё это может измениться, но сегодня за это приходится бороться.
00:07:30И именно об этих вещах в посте говорится, что они больше не важны.
00:07:35Но я говорю: нет, это важно.
00:07:37Вы, как разработчик, должны вступать в эти споры и заботиться о реальном
00:07:43коде и его качестве сегодня и, скорее всего, в будущем.
00:07:49Очевидно, никто не знает, что готовит будущее, но всегда будет важно иметь
00:07:56базу кода, которая не разрастается излишне, по многим причинам,
00:08:01включая эффективность токенов.
00:08:02Другая причина, помимо удобства проверки кода, заключается
00:08:08в том, что код напрямую влияет на производительность приложения.
00:08:18Я не открываю здесь какую-то невероятную истину или новость, но,
00:08:26конечно, об этом легко забыть.
00:08:28Можно сказать, что когда код генерирует ИИ, сам код уже не так важен,
00:08:34потому что его легко отрефакторить, перегенерировать или заменить.
00:08:38И это правда, если игнорировать вопрос стоимости токенов.
00:08:43Но сгенерированный код влияет или может повлиять
00:08:51на производительность вашего приложения.
00:08:53Есть много способов сделать запрос к базе данных.
00:08:56Можно запускать вложенные запросы или делать их слишком много, ведь
00:09:03результат один и тот же.
00:09:04Вы получили нужные данные.
00:09:05Да, но плохо оптимизированный запрос покажет свою истинную цену, как только
00:09:12у вас появится значительное количество пользователей.
00:09:15То же самое касается вложенных циклов и прочих вещей, которые могут просочиться
00:09:20в вашу базу кода и привести к ухудшению производительности.
00:09:23Вот почему качество и оптимизация кода всё еще имеют значение.
00:09:30Можно с уверенностью сказать, что будущие модели и инструменты ИИ будут в этом хороши
00:09:37и смогут это делать, что будущие модели смогут выдавать лучший код с самого
00:09:43начала, а также оценивать и улучшать его.
00:09:47Это вполне возможно.
00:09:50Но это всё равно не опровергает мой тезис о важности качества кода, независимо
00:09:55от того, генерирует его модель или вы, как разработчик.
00:09:58Конечно, большая разница в том, что в мире, где ИИ способен
00:10:04всё это делать, мы, люди, выпадаем из процесса.
00:10:08И я полагаю, именно это пытается сказать Гильермо.
00:10:13Но мы не знаем точно, как именно будет выглядеть это будущее.
00:10:16Что я скажу по поводу этого поста: я понимаю, таков уж сейчас
00:10:23интернет.
00:10:24Нужно быть провокационным.
00:10:25Нужно быть «острым», чтобы такие люди, как я, записывали об этом видео.
00:10:30Я это прекрасно понимаю.
00:10:31Но в этом посте всё звучит так, будто вещи, которые мы делали в прошлом, были
00:10:37довольно глупыми, верно?
00:10:39Создание специальных инструментов, интерфейсов для написания кода, обсуждение дизайна API.
00:10:45Что это глупо.
00:10:46На самом деле нет — это показывает, что вам не всё равно.
00:10:51Как человек, вы хотите заботиться о своем ремесле, о своей работе.
00:10:56Это всё равно что сказать: «Ой, как глупо, что дизайнеры сначала делали наброски
00:11:02на бумаге, а потом использовали специальное ПО вроде Photoshop, чтобы превратить это
00:11:07в цифровое искусство».
00:11:08Нет, это не глупо.
00:11:10Именно это отличает человека, который любит свое дело и свою работу,
00:11:17от того, кому всё равно.
00:11:19И выставлять это как нечто глупое, странное или навсегда ушедшее в прошлое —
00:11:29это просто плохая позиция.
00:11:30Это совсем не круто.
00:11:32И, конечно, сейчас мы создаем новое программное обеспечение.
00:11:36Мы создаем ПО для мира агентной инженерии, что-то вроде
00:11:43Codex и всех этих ИИ-агентов и интерфейсов, которые у нас есть.
00:11:49Это новый тип ПО, и мы продолжим делать подобные вещи.
00:11:54И мы будем изобретать новые способы обсуждать, например, как должен выглядеть
00:12:01правильно написанный навык для агента или как настроить файл agents.md.
00:12:07Мы будем продолжать дискуссии, пока окончательно не выйдем из процесса и нам,
00:12:14людям, больше не нужно будет ничего делать.
00:12:16Я не думаю, что этот момент настанет, и уж точно на это не надеюсь.
00:12:22Но до того времени полезно иметь мнение о том, над чем вы работаете, и не быть
00:12:29безразличным к результатам своего труда.
00:12:31Я считаю, это очень важно.
00:12:33Так что да, я думаю, код и его структура останутся важными.
00:12:41Вопрос лишь в том, сможет ли ИИ делать всё сам и выдавать идеальный код.
00:12:47Я этого не знаю, и никто сейчас не может знать.
00:12:50В будущее заглянуть нельзя.
00:12:53Но в целом, как человек, вы должны заботиться о том, что вы делаете.
00:12:57Это то, что отличает людей, которые добиваются успеха и получают удовольствие
00:13:03от работы, от тех, кому это не удается.