У ИИ всё же огромное влияние

MMaximilian Schwarzmüller
Computing/SoftwareInternet Technology

Transcript

00:00:00На прошлой неделе состоялся релиз-кандидат SvelteKit 3 и Solid 2.
00:00:08То есть еще не полностью стабильно, но близко к этому.
00:00:10Пару лет назад это было бы весьма интересным событием.
00:00:15Вы бы увидели кучу видеороликов об этом, включая мои, конечно же, и даже, возможно, курс.
00:00:19И сегодня возникает вопрос: имеет ли это вообще значение?
00:00:24Важны ли новые фреймворки или их новые версии, как в данном случае?
00:00:30Или это неважно, потому что с появлением ИИ все крутится вокруг React, верно?
00:00:36И зачем вообще об этом беспокоиться?
00:00:38В конце концов, если ИИ пишет столько кода, возможно, весь ваш код, зачем вам заботиться о базовом фреймворке или библиотеке?
00:00:46Я бы сказал, что заботиться стоит весьма сильно, и новые фреймворки с библиотеками действительно имеют значение.
00:00:52Но завоевать популярность, как мне кажется, стало намного, намного сложнее, чем раньше.
00:00:59И это никогда не было особенно легко, но сейчас ситуация может быть еще хуже.
00:01:05Но давайте разберем это подробнее.
00:01:06Я не буду подробно останавливаться на том, что именно представляют собой эти фреймворки или их версии.
00:01:13Однако я оставлю ссылки на официальные блоги с анонсами, чтобы вы могли изучить их самостоятельно.
00:01:17Но отмечу, что обе версии весьма интересны.
00:01:21Более того, я планирую использовать именно SvelteKit 3 в некоторых своих новых проектах, пока внутренних, чтобы посмотреть, насколько хорошо он работает с искусственным интеллектом.
00:01:33Потому что это важно.
00:01:36Один из аргументов против этих новых фреймворков или против важности новых фреймворков заключается в том, что у ИИ есть свой любимый стек.
00:01:49И это, конечно же, React и тому подобное.
00:01:52То есть React и Next.js, возможно, и так далее.
00:01:55И это правда.
00:01:56И это действительно так.
00:01:56Это определенно имеет место.
00:01:58Но, как выясняется, ИИ довольно неплохо справляется и с новыми, неизвестными вещами, если вы как разработчик предоставляете ему правильный контекст.
00:02:09И это не стоит недооценивать.
00:02:12Конечно, если вы просто плывете по течению, никак не направляете ИИ и вам совершенно плевать на принимаемые им решения.
00:02:21То есть если вы занимаетесь вайб-кодингом, что вполне допустимо для определенных разовых проектов или одноразового софта.
00:02:28Но если вы занимаетесь этим, то, конечно да, он может просто не знать, что такое SvelteKit версии 3.
00:02:35И вам было бы все равно.
00:02:37Вы бы даже не стали просить ИИ использовать эту версию.
00:02:39Так что очевидно: да, новые фреймворки или библиотеки в целом не имеют места в таком мире.
00:02:46Но ведь все не сводится к одному лишь вайб-кодингу.
00:02:48У него есть своя ниша.
00:02:50И я не знаю, какую роль вайб-кодинг будет играть через несколько лет и все эти технологические выборки, будет ли это иметь значение в будущем.
00:03:00Но прямо сейчас вы можете извлечь огромную пользу именно из осознанного управления искусственным интеллектом.
00:03:07Это даже мягко сказано.
00:03:08И вы должны управлять ИИ.
00:03:11Наша роль как разработчиков просто меняется.
00:03:15Мы по-прежнему должны контролировать то, что мы создаем и как мы это создаем.
00:03:19И то, что мы больше не пишем код своими руками, вовсе не означает, что нас не должен волновать сам код, архитектура и принимаемые решения.
00:03:29Это важно как никогда раньше, а может быть, даже важнее, чем когда-либо.
00:03:34Я считаю, что причины для выбора одного фреймворка вместо другого сейчас совсем другие.
00:03:42Знаете, в 2019 году и ранее одной из главных причин выбора определенного фреймворка среди прочих, безусловно, был опыт разработчика.
00:03:54Насколько вам комфортно работать с ним как разработчику?
00:03:58Так что это, конечно, имело значение, ведь вы проводили много времени, написав код на определенном фреймворке или с определенной библиотекой.
00:04:04Поэтому, конечно, хотелось получать удовольствие от процесса.
00:04:06Теперь же такой выбор есть далеко не всегда.
00:04:09Вы можете работать в компании, где вас просто заставляют использовать определенный фреймворк или библиотеку.
00:04:15Но как разработчик, в зависимости от компании, где вы трудитесь, и особенно если вы работаете на себя, вы можете иметь и, что самое главное, всегда могли иметь определенные рычаги влияния на принимаемые решения и используемые технологии.
00:04:29Так что тогда точно имело значение, обладает ли фреймворк удобной эргономикой и обеспечивает ли хороший опыт для разработчиков.
00:04:41Это было не единственное: конечно, тогда уже имела значение производительность, размер бандла.
00:04:46Затем появляются и другие факторы.
00:04:49Например, насколько легко или сложно реализовать серверный рендеринг в конкретном фреймворке, если мы говорим о фронтенд-фреймворках JavaScript и так далее.
00:04:58Так что аспектов много, но аспекты удобства разработки теперь менее важны.
00:05:05Я бы сказал, что опыт разработчика (DX) больше по-настоящему не важен.
00:05:10Теперь значение будет иметь опыт работы с искусственным интеллектом, я даже не знаю, как это назвать — AX?
00:05:16Это, безусловно, имеет огромное значение.
00:05:19И такие вещи, как производительность, размер бандла и все прочее, разумеется, тоже по-прежнему важны.
00:05:27И я бы утверждал, что с появлением ИИ, поскольку ИИ генерирует код невероятно быстро, выбор конкретного фреймворка, возможно, вообще стал иметь меньшее значение.
00:05:43Но при этом переключаться стало проще, чем раньше, и поэтому вы можете реально оценить, какие аспекты важны для вашего приложения или проекта, что для вас приоритетнее, а затем подобрать под это лучший фреймворк или библиотеку и просто использовать ее.
00:06:00И вам больше не нужно беспокоиться об удобстве разработки или чем-то подобном.
00:06:03Более того, я бы сказал, что вам даже не нужно так сильно заботиться об экосистеме.
00:06:07Экосистема, конечно, по-прежнему имеет значение.
00:06:09Это фактор: например, работая с React, вы автоматически вовлекаетесь в огромную экосистему.
00:06:17У вас есть ShadCN, у вас есть множество других библиотек.
00:06:20Но один из аспектов, который стал менее важным — к сожалению для меня, но менее важным — это количество туториалов по технологии.
00:06:29Потому что, опять же, вы можете больше не писать код самостоятельно.
00:06:33Так что это уже не столь критичный аспект.
00:06:35И что касается другой части экосистемы — библиотек и прочего — да, конечно, здорово, когда они есть.
00:06:41Но ИИ отлично умеет создавать всё, что вы его попросите.
00:06:46И если вы хотите свой собственный ShadCN для Svelte (а я знаю, что ShadCN для Svelte уже существует).
00:06:54Но если бы вы захотели создать собственную версию библиотеки, которая есть для React, но отсутствует для вашего любимого фреймворка, вы можете просто попросить об этом ИИ.
00:07:02Вы можете просто попросить ИИ сделать форк какой-нибудь популярной библиотеки на React и портировать ее на ваш любимый фреймворк.
00:07:11Конечно, это не окупится для каждого маленького побочного демо-проекта, но для масштабных проектов — вполне.
00:07:19Вы вполне можете заниматься подобным.
00:07:21Так что я бы сказал, что экосистема по-прежнему важна, но менее важна, чем раньше.
00:07:28Теперь же значение имеет — и я уже упоминал об этом — так называемый опыт взаимодействия с ИИ.
00:07:33И что я под этим подразумеваю?
00:07:36Здесь можно иметь в виду разные вещи.
00:07:39Я имею в виду то, насколько легко искусственному интеллекту изучить или понять ту или иную вещь: фреймворк или библиотеку, с которой вы хотите заставить его работать.
00:07:47И насколько этот фреймворк заставляет ИИ писать качественный код.
00:07:54И я приведу пример.
00:07:55Существует Effect.
00:07:57Effect — это не фронтенд-фреймворк для JavaScript, но тем не менее это библиотека для JavaScript или TypeScript, созданная для помощи разработчикам в легком написании сложных синхронных и асинхронных программ.
00:08:08Вы можете, например, использовать ее на бэкенде.
00:08:10В нее встроено множество возможностей.
00:08:12Это поистине потрясающе.
00:08:13И одна из вещей, делающих Effect потрясающим — и, вероятно, одна из причин его популярности в определенной нише как минимум сейчас — это то, что он поставляется с массой жестких правил, которые активно поддерживаются и будут «ругать» вас или ИИ, если вы пишете неверный код.
00:08:35Если вы нарушаете определенные правила библиотеки Effect, то, поскольку это TypeScript-библиотека, она глубоко интегрирована с TypeScript, выполняет массу проверки типов и прочих проверок, которые действительно заставляют вас следовать определенному набору правил для написания программ.
00:08:54И конечно, при работе с ИИ всё, что принудительно задает правила и одергивает ИИ, если он начинает что-то выдумывать или пытается нарушить эти правила, — всё это невероятно полезно.
00:09:09И это один из аспектов хорошего опыта работы с ИИ, я бы сказал.
00:09:12Работа с библиотекой или фреймворком, который устанавливает жесткие правила и сводит к минимуму количество ошибок, которые вы можете совершить, или вариативность в коде, если выражаться так.
00:09:28Так что это один из аспектов.
00:09:29Другой аспект — насколько легко ИИ дается обучение чему-то новому.
00:09:32И здесь все упирается в документацию, поскольку я уже упоминал ранее: ИИ отлично справляется с работой над новыми, неизвестными вещами.
00:09:44Конечно, у него есть весь этот заложенный багаж знаний о React, но до определенной степени можно даже утверждать, что это минус, ведь он перенял много плохих паттернов из бесчисленных публичных репозиториев.
00:09:56Но вам достаточно просто направить ИИ на нужные страницы документации или дать ему правильный навык, и он будет очень и очень хорошо работать с конкретной технологией.
00:10:07Я делаю это постоянно.
00:10:09Я использую ИИ с новыми версиями библиотек или фреймворков.
00:10:13Я применяю его, например, с Effect, который хоть и не нов, но его четвертая версия свежая.
00:10:18Я использую его с решением под названием Alchemy — это инструмент инфраструктуры как облачного сервиса, который является довольно новым.
00:10:25Вы просто даете ему документацию, либо, как люблю делать я, просите ИИ провести глубокое исследование.
00:10:31Я даю ему начальную документацию и прошу копнуть глубже, после чего прошу создать навык (skill), который могу выгрузить в проекты, где работаю с определенной библиотекой, и результаты получаются поистине превосходными.
00:10:42И по всем этим причинам, короче говоря, новые версии фреймворков и библиотек по-прежнему имеют огромное значение.
00:10:49Или не только новые версии, разумеется.
00:10:51Совершенно новые библиотеки и фреймворки имеют огромное значение.
00:10:55Но причины до некоторой степени сместились.
00:10:58Как уже упоминалось, такие вещи, как производительность и прочее, будут важны всегда, потому что в конечном счете вы, надеемся, создаете продукты для конечного пользователя.
00:11:06И конечным пользователем можете быть вы сами, если это внутренний инструмент или что-то в этом роде.
00:11:10Но тем не менее вам нужно что-то быстрое, что не падает постоянно.
00:11:14Так что все это имеет значение.
00:11:16Но в дополнение к этому сегодня важно то, насколько хорошо тот или иной фреймворк или библиотека взаимодействует с ИИ.
00:11:25И это, естественно, меняет то, как эти фреймворки и библиотеки разрабатываются или должны разрабатываться.
00:11:30И какими должны быть приоритеты разработчиков, стоящих за этими фреймворками.
00:11:34Им действительно стоит пытаться создать нечто, что заставляет ИИ работать определенным образом и сводит к минимуму количество ошибок, которые ИИ может допустить.
00:11:43Потому что в конечном счете то, что мы здесь пытаемся сделать — это втиснуть нечто недетерминированное, то есть ИИ, в относительно детерминированный мир, чтобы получить лучшее от обоих миров: гибкость и скорость ИИ, но при этом избежать его ухода «в полный разнос» и выдачи ужасного кода.
00:12:03И да, новые фреймворки и библиотеки играют здесь важную роль.
00:12:09И, следовательно, процесс изучения этих фреймворков и библиотек определенно изменился.
00:12:14Вы, как разработчик, скорее всего, не будете тратить часы на огромный курс, чтобы освоить новый фреймворк или библиотеку.
00:12:23Вы, вероятно, потратите — и вам наверняка стоит (я поступаю именно так) — некоторое время на изучение основ по документации, видео на YouTube,
00:12:33курсу — хотя формат курсов тоже меняется.
00:12:36Я сам меняю то, что произвожу, потому что считаю: чтобы эффективно работать с чем-либо, независимо от того, что это такое, с помощью ИИ, вам необходимо базовое понимание предмета, с которым вы работаете.
00:12:49Вы должны понимать, о чем просить ИИ, на что обращать внимание, какие есть потенциальные подводные камни, лучшие практики и так далее.
00:12:56Так что подходы к обучению и выбору используемых инструментов определенно меняются.
00:13:00Но это не значит, что инновации в области фреймворков и библиотек потеряли свое значение.
00:13:06Я думаю, они важны как никогда, потому что впереди еще много свободного пространства для инноваций, направленных на создание фреймворков, дающих ИИ более четкие правила.
00:13:16И, конечно же, всегда будут востребованы фреймворки, библиотеки и инструменты, позволяющие создавать более быстрые, производительные, безошибочные и т. д. приложения.
00:13:26Потому что в конечном счете, как я уже упоминал, именно к этому мы все и должны стремиться — с ИИ или без него.

Key Takeaway

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

Highlights

  • Релизы новых версий фреймворков SvelteKit 3 и Solid 2 вызывают вопросы об их актуальности на фоне популярности React и доминирования искусственного интеллекта.

  • Искусственный интеллект эффективно справляется с новыми и неизвестными технологиями при условии предоставления ему корректного контекста разработчиком.

  • Традиционный опыт разработчика (DX) уступает место новому фактору — опыту взаимодействия с искусственным интеллектом (AX).

  • Библиотеки со строгой системой типов и жесткими правилами, такие как Effect, помогают минимизировать ошибки генерируемого искусственным интеллектом кода.

  • Процесс изучения новых инструментов смещается от прохождения долгих курсов к анализу документации и быстрой интеграции через искусственный интеллект.

Timeline

Актуальность новых фреймворков в эпоху искусственного интеллекта

  • Выход релиз-кандидатов SvelteKit 3 и Solid 2 ставит под сомнение значимость новых версий инструментов.
  • Преобладание стека React и Next.js создает мнение о ненужности изучения альтернативных библиотек.
  • Использование SvelteKit 3 в новых внутренних проектах позволяет оценить его взаимодействие с искусственным интеллектом.

Появление новых версий популярных фреймворков раньше привлекало огромное внимание разработчиков. Сегодня доминирование инструментов вроде React и способность искусственного интеллекта писать код заставляют сомневаться в необходимости осваивать новые базовые библиотеки. Тем не менее новые версии сохраняют практическую ценность для конкретных архитектурных задач.

Управление искусственным интеллектом и изменение роли разработчика

  • Искусственный интеллект успешно работает с новыми технологиями при наличии правильного контекста.
  • Режим вайб-кодинга исключает контроль над технологическим стеком, но осознанное управление сохраняет архитектурный выбор.
  • Опыт разработчика (DX) теряет прежнее значение на фоне автоматизации написания кода.

Отказ от ручного написания кода не означает потерю контроля над архитектурой приложения. Полная передача контроля искусственному интеллекту подходит только для одноразовых проектов. В профессиональной разработке сохраняется потребность направлять решения системы и осознанно выбирать инструменты под конкретные задачи.

Новые критерии оценки инструментов и экосистема

  • Скорость генерации кода снижает критичность обилия обучающих материалов и готовых туториалов.
  • Потребность в сторонних экосистемных библиотеках компенсируется возможностью портировать их с помощью искусственного интеллекта.
  • Производительность и размер бандла остаются важными параметрами для конечного продукта.

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

Опыт взаимодействия с искусственным интеллектом и строгие правила

  • Качество взаимодействия с искусственным интеллектом определяется способностью фреймворка принудительно задавать правила кода.
  • Библиотека Effect использует глубокую интеграцию с TypeScript для ограничения ошибок генерации.
  • Загрузка документации и создание специализированных навыков улучшают работу искусственного интеллекта с новыми версиями.

Появляется понятие опыта взаимодействия с искусственным интеллектом (AX). Инструменты со строгими правилами и проверкой типов, такие как библиотека Effect, предотвращают появление ошибок в не детерминированном коде, созданном искусственным интеллектом. Передача актуальной документации системе позволяет эффективно работать с самыми свежими версиями технологий.

Трансформация обучения и будущее инноваций

  • Необходимость производительности и стабильности приложений сохраняется независимо от применения искусственного интеллекта.
  • Формат освоения новых технологий меняется от прохождения многочасовых курсов к изучению базовых принципов.
  • Инновации в области создания жестких правил для искусственного интеллекта открывают новые возможности для разработки.

Создание надежных и быстрых продуктов остается конечной целью разработки. Процесс изучения новых инструментов сводится к пониманию базовой логики для эффективной постановки задач системе. Инновации в проектировании фреймворков теперь должны быть направлены на ограничение возможных ошибок искусственного интеллекта.

Community Posts

View all posts