Общение, эволюция Bun и многое другое!

MMaximilian Schwarzmüller
Computing/SoftwareBusiness NewsInternet Technology

Transcript

00:00:00[Тишина]
00:00:21Хорошо.
00:00:22[Тишина]
00:00:27Вернулся.
00:00:28Посмотрим, какое сейчас качество.
00:00:33[Тишина]
00:00:43Жду, когда люди подключатся, чтобы проверить качество.
00:00:48[Тишина]
00:00:57Так что, надеюсь.
00:00:58Окей.
00:00:59Хорошо, хорошо.
00:01:01Так, да.
00:01:02С возвращением всех.
00:01:03Прошу прощения за это.
00:01:04Не уверен, в чем была причина.
00:01:06Надеюсь, теперь соединение будет стабильным.
00:01:11Что интересно, FPS все еще низкий.
00:01:15Все еще нет.
00:01:16О, ладно.
00:01:17Вау.
00:01:18Жаль.
00:01:21Да, я могу попробовать со своего телефона.
00:01:24[Тишина]
00:01:28Ну что ж.
00:01:30Все еще лагает.
00:01:31Подождите секунду.
00:01:33[Тишина]
00:01:39Посмотрим.
00:01:40[Тишина]
00:01:51Все это раздражает.
00:01:54[Тишина]
00:02:13Окей.
00:02:14Так, давайте посмотрим.
00:02:18Это раздражает.
00:02:25Если вы меня видите или слышите, дайте знать.
00:02:31Стало ли сейчас лучше.
00:02:34Возможно, нет.
00:02:53Мой вопрос в том, в эфире ли я.
00:03:04Окей.
00:03:05Вы меня слышите.
00:03:06Видео все еще лагает.
00:03:08Окей.
00:03:09Я переключился на телефон.
00:03:11Совсем другая сеть.
00:03:15Странно, если дело в веб-камере, потому что я... это тоже лагает?
00:03:24Видео лагает.
00:03:25Только мое лицо или остальная часть тоже?
00:03:30Экран.
00:03:35Так странно.
00:03:36Та же настройка, что и всегда.
00:03:39Похоже, дело не в интернет-соединении.
00:03:43Уже лучше.
00:03:44Лучше.
00:03:45Окей.
00:03:46Окей.
00:03:47Спасибо.
00:03:48Да.
00:03:49Спасибо за ваше терпение.
00:03:50Это раздражает.
00:03:51Да.
00:03:52Будем надеяться, что теперь все хорошо.
00:03:57Да.
00:03:58Окей.
00:03:59Да.
00:04:00Дайте знать, если станет хуже или если у кого-то все еще плохо.
00:04:04Аудио в порядке.
00:04:05Видео все еще лагает.
00:04:07Окей.
00:04:08У кого-то хорошо.
00:04:09У кого-то лагает.
00:04:11Я сейчас на другой сети.
00:04:13Я переключился на телефон.
00:04:16Так что, в теории, это больше не должно быть проблемой сети.
00:04:21Трансляция экрана... в теории, конечно, это может быть OBS или что-то еще,
00:04:28но я там ничего не менял.
00:04:34Весь видеопоток лагает, но, похоже, дело не в сети.
00:04:42Соединение.
00:04:44YouTube показывает, что мое соединение хорошее.
00:04:47Чего бы это ни стоило.
00:04:49Достаточно хорошо, я полагаю.
00:04:51В какие-то моменты лагает, но в основном нормально.
00:04:53Да.
00:04:54Мне очень жаль.
00:04:58Да.
00:04:59Пока продолжу так.
00:05:01Очень жаль.
00:05:02Я разберусь с этим после стрима.
00:05:05Правда странно.
00:05:06Я сменил сеть, а все равно плохо.
00:05:09Наверное, обновлю OBS и перепроверю настройки, хотя использую их уже больше года.
00:05:15Так, ладно.
00:05:17Надеемся на лучшее.
00:05:18Спасибо большое, что остаетесь со мной.
00:05:21И дайте знать, если снова станет хуже.
00:05:24Так, да.
00:05:26Я хотел поговорить о BUN.
00:05:29Не хочу все повторять и утомлять вас.
00:05:32Но BUN — это, конечно, альтернатива Node.js, и они получили венчурное финансирование.
00:05:39И одна из проблем BUN заключалась в том, что им, конечно, нужно было зарабатывать деньги.
00:05:44Как же заработать деньги?
00:05:47Ну, одна из идей многих таких компаний — запуск какого-то продукта для хостинга.
00:05:55И они тоже это пробовали, или, думаю, хотели попробовать.
00:06:00Я не уверен.
00:06:01Но затем Anthropic приобрела BUN.
00:06:03И Anthropic купила BUN, во многом, я полагаю, из-за возможности создания исполняемого файла из одного файла,
00:06:08потому что с BUN вы можете скомпилировать вашу программу на TypeScript в один исполняемый файл, который можно запустить, например, в терминале.
00:06:16И Claude Code — как раз такая программа.
00:06:19Claude Code — это исполняемый файл из одного файла, по сути, программа на BUN, в конечном счете на TypeScript,
00:06:25но она, скорее всего, использует API BUN и определенно была скомпилирована в CLI-инструмент с помощью той самой функции.
00:06:35Итак, Anthropic приобрела BUN.
00:06:39И это положило начало другому вектору развития BUN.
00:06:45И именно это кажется мне интересным, потому что можно сказать: «Окей, BUN — это среда выполнения JavaScript, верно?»
00:06:50Это альтернатива Node.js, и это здорово, хорошо, когда она есть.
00:06:56Но чего бы вы ожидали от такой альтернативы Node.js?
00:06:59Вы бы ожидали совместимости с Node.js и того, что она будет идти в ногу с развитием Node.js,
00:07:07плюс некоторые улучшения, например, более высокую производительность, которую BUN всегда предлагал.
00:07:14И это отлично.
00:07:15И по большей части BUN довольно совместим.
00:07:22Есть ли у них здесь таблица?
00:07:25Совместимость BUN и Node.js.
00:07:29У них довольно хорошая совместимость, только некоторые специфические функции поддерживаются не полностью.
00:07:37Но в целом всё вполне достойно.
00:07:40Но вот интересная часть.
00:07:42Если вы заглянете в документацию сейчас, то обнаружите, что в BUN есть такие вещи, как встроенный клиент SQLite,
00:07:51встроенный SQL-клиент, встроенный S3-клиент, встроенный Redis-клиент, что лично я считаю очень полезным.
00:07:59И всё это в нем есть уже довольно давно.
00:08:03Идея здесь в том, что это облегчает вам создание программы, например веб-сервера,
00:08:10который использует SQLite или S3.
00:08:12И я часто использую это во многих своих сервисах.
00:08:15Для меня это очень удобно.
00:08:17Но вы также найдете такие вещи, как... где это?
00:08:22WebView.
00:08:24Вот WebView.
00:08:25И это интересно, на мой взгляд, потому что этот WebView — это функция, API BUN,
00:08:34которую вы можете использовать в своем коде на JavaScript или TypeScript, если запускаете его через BUN.
00:08:39Это позволяет вам запустить браузер без графического интерфейса, кликать в нем и делать разные вещи.
00:08:46По сути, то же самое, что можно делать с Playwright.
00:08:49Сейчас Playwright, конечно, является инструментом для сквозного (end-to-end) тестирования.
00:08:54Основная идея Playwright в том — или была, стоит сказать, — что вы можете использовать его для сквозного тестирования.
00:09:04То есть вы можете писать тесты для проверки вашего сайта, пользовательских сценариев и так далее.
00:09:13Сейчас, с приходом ИИ, фокус немного сместился.
00:09:15Теперь Playwright часто используется через их MCP-сервер, например,
00:09:22чтобы такие инструменты, как Claude Code или Codex, могли тестировать написанный ими код.
00:09:29Допустим, Claude Code создает что-то вроде приложения на React.
00:09:40И чтобы протестировать его, он может использовать Playwright MCP, чтобы открыть браузер,
00:09:47покликать и посмотреть, работает ли и выглядит ли всё так, как задумано, чтобы, так сказать, замкнуть цикл.
00:09:54Агент может сам проверить результат своей работы.
00:09:56В этом и заключается идея использования инструментов вроде Playwright MCP.
00:09:59Так что такие инструменты, как Playwright, на самом деле превратились из чисто инструментов для сквозного тестирования —
00:10:05хотя их всё еще можно так использовать — в инструменты, которыми пользуются ИИ-агенты для верификации изменений.
00:10:15И вот здесь начинается самое интересное в BUN.
00:10:17В чате Кевин Юри говорит, что, по его мнению, WebView не место в среде выполнения.
00:10:22И это очень верное замечание, потому что это именно тот интересный момент, который я вижу в BUN.
00:10:29Раньше это была просто среда выполнения JavaScript.
00:10:32Она была полезна прежде всего для создания — ну, не только, но одним из основных применений было и остается создание веб-серверов.
00:10:43Но теперь внезапно вы можете создавать сложные приложения или CLI-инструменты, которые могут, к примеру, запускать веб-сервер.
00:10:52И, как я только что сказал, один из вариантов использования — ИИ-агенты, проверяющие свою работу, и они могут делать это через MCP.
00:11:01Но знаете что?
00:11:02Как я упоминал, именно Anthropic приобрела BUN.
00:11:05А Anthropic владеет Claude Code, так что логично, что в Claude Code внезапно появился встроенный WebView,
00:11:13чтобы Claude Code мог открывать браузер и взаимодействовать с ним без необходимости в Playwright MCP или любом другом MCP для работы с браузером.
00:11:24Использование специализированных инструментов все еще может иметь определенные преимущества.
00:11:29У них может быть больше функций, но, конечно, у Anthropic есть сильный стимул встраивать такие возможности прямо в BUN
00:11:40по очевидным причинам, я бы сказал, потому что это облегчает им разработку Claude Code.
00:11:45И поэтому, вероятно, справедливо предположить, что в BUN будет встраиваться все больше и больше функций, которые вы сможете использовать и в своих приложениях,
00:11:59но которые созданы специально или оптимизированы под требования Anthropic и ИИ-агентов вроде Claude Code.
00:12:08Не уверен, что это обязательно плохо или является проблемой, ведь вас не заставляют их использовать, но, конечно, это раздувает API.
00:12:19Это также оттягивает часть ресурсов, часть разработчиков, которые могли бы работать над более традиционными частями BUN,
00:12:32хотя можно возразить, что с ИИ возможности расширяются, и можно работать над большим количеством вещей одновременно,
00:12:39но тем не менее это интересная тенденция. И это заметно и в других областях.
00:12:45Если заглянуть в аккаунт BUN в X, видно, что они все еще выпускают улучшения производительности и прочее,
00:12:58но теперь у них на подходе API, позволяющий BUN манипулировать изображениями.
00:13:09Конечно, это можно делать с помощью инструментов вроде ImageMagick. Это утилита, которую можно вызвать через CLI.
00:13:21Привет. Вы можете установить такой инструмент и использовать его для программного изменения изображений или просто в CLI.
00:13:31А теперь внезапно нечто подобное будет встроено в BUN.
00:13:37Опять же, я не считаю, что это плохо или в этом есть проблема, я читаю комментарии в чате и еще вернусь к ним, но это интересно.
00:13:49Эта функция может быть полезна для определенных веб-приложений или CLI,
00:13:56но она также, безусловно, интересна для Claude Code,
00:14:01потому что эти агенты могут также генерировать и анализировать изображения.
00:14:08Так что для Claude Code возможность нативно изменять размер или обрезать изображения может быть полезной.
00:14:15И есть и другие подобные вещи. По-моему, было что-то связанное с рендерингом Markdown.
00:14:25И до сих пор добавляется много вещей, которые, хочу уточнить, скорее всего не создавались специально для Claude Code.
00:14:33И мне на самом деле нравится BUN, я тоже хочу это прояснить, но направление, в котором они движутся, любопытное.
00:14:40Да, сейчас не нахожу, но не так давно была новость о рендеринге Markdown в терминале, и как в BUN это встроено.
00:14:51В общем, такие штуки.
00:14:55И поэтому, короче говоря, я думаю, мы ясно видим, что после покупки Anthropic BUN становится инструментом для Anthropic.
00:15:06Он больше не является, очевидно, независимой средой выполнения.
00:15:13Вместо этого это просто... ну, это все та же среда выполнения.
00:15:18И я думаю, судя по всему, они все еще относятся к ней серьезно, но это определенно и инструмент для Anthropic.
00:15:26И да, жаль слышать, что видео снова лагает.
00:15:30Мы уже сталкивались с этим, к сожалению, сети я уже менял, не знаю, в чем причина.
00:15:36Разберусь после этого эфира. Надеюсь, скоро станет стабильнее.
00:15:43До этого было лучше.
00:15:46Так вот, читаю в чате...
00:15:53О, вижу, вы на macOS, это напомнило мне о лагах видеозвонков у коллеги каждый раз, когда заканчивалась память, он тогда закрывает вкладки в браузере.
00:16:01О, это вполне может быть причиной.
00:16:05Да, позвольте мне закрыть несколько вкладок. Возможно, это сработает.
00:16:11Закрываю вкладки, вдруг поможет. Спасибо большое. Если поможет — это будет круто.
00:16:19«Единственная причина, по которой я рад существованию bun — это то, что он заставляет node двигаться быстрее». Справедливо.
00:16:26Рад вас видеть, надеюсь, у вас все отлично, спасибо большое за вашу работу.
00:16:33Да, в общем, это все, чем я хотел поделиться по поводу bun, мне это показалось интересным, и думаю, будет любопытно увидеть, куда bun будет двигаться дальше.
00:16:44Потому что лично я считаю его отличной средой выполнения и альтернативой node.js. Я практически все свои проекты строю на bun, просто из-за прироста скорости и полезных встроенных вещей вроде клиента SQLite или S3, что означает меньше лишних зависимостей. В эпоху атак на цепочки поставок я нахожу это весьма ценным.
00:17:13Теперь 1 FPS. Ладно, я закрыл кучу вкладок и инструментов. Честно говоря, больше закрывать особо нечего.
00:17:34Я закрыл почти все, кроме OBS.
00:17:43Может, это поможет. Так раздражает.
00:17:50Снова плохое качество соединения.
00:18:00Посмотрим, станет ли лучше.
00:18:03Какие типы баз данных и библиотек для аутентификации стоит учить джунам? Postgres и Better Auth?
00:18:09Да, я думаю, Postgres и Better Auth — хороший выбор.
00:18:14Почему бы им не сделать форк и не интегрировать нужные инструменты?
00:18:18Форкнуть bun, вы имеете в виду? Anthropic? Почему они не форкнут bun? Думаю, они купили его еще и потому, что не хотели, чтобы проект загнулся, и им важен опыт команды разработчиков.
00:18:34Люди, создавшие bun, продолжают его развивать, потому что даже с ИИ ценно иметь кого-то, кто знает инструмент изнутри.
00:18:50Да, я закрыл почти все приложения на Electron. У меня больше ничего не запущено.
00:19:02Так что сейчас в системе не должно быть ничего, что съедало бы память. Гляну мониторинг системы.
00:19:13Да, свободной памяти полно.
00:19:37Должно быть нормально. Агенты сейчас не запущены.
00:19:47«Когда вы много перемещаетесь, видео начинает лагать и фризить». Насчет памяти это очень логично, просто я реально всё поубивал.
00:20:05В системе почти ничего не осталось, что потребляло бы память.
00:20:15Вот что странно.
00:20:22Это очень странно.
00:20:31Ну, да... это может быть и сама OBS, конечно. Хотя в мониторинге ресурсов все выглядит не так уж плохо.
00:20:49Нет, всё в норме. Не знаю, не знаю, в чем проблема.
00:21:01И настройки в OBS те же, что обычно. Стоит ли учить bun для поиска работы? Не думаю, что дело в сайте.
00:21:11Было бы ужасно, если бы лагало из-за сайта bun.
00:21:17Окей, позвольте мне закрыть... этот сайт был открыт и на других стримах, так что, надеюсь, это не проблема.
00:21:26Я могу провести стрим, ничего не показывая.
00:21:29Но да, я закрыл все эти вкладки. Посмотрим.
00:21:38Кстати, закрою вкладки на втором экране, хотя там тоже почти ничего нет.
00:21:57Окей. У меня в жизни не было так мало открытых вкладок. Нет, фоновых загрузок тоже нет.
00:22:08Нет. Доступен ли Starlink в Германии? Думаю, да.
00:22:13Но сеть вроде в порядке. На самом деле, сеть выглядит нормально.
00:22:17И я в любом случае сменил сеть. Переключился с домашней на телефонную, и проблемы те же.
00:22:29Всё кажется нормальным. Что интересно, OBS не показывает вообще никаких проблем: ни пропущенных кадров, ничего.
00:22:39Статистика в OBS идеальная. Но на YouTube я вижу сообщение о плохом соединении.
00:22:50Что само по себе занятно.
00:22:54Но идеи у меня закончились, потому что я действительно ничего не менял в настройках. Можете попробовать спросить у ИИ, почему лагает.
00:23:10Наверное, стоит. Давайте попробуем. «Мой стрим через OBS лагает».
00:23:26Почему? Посмотрим, годен ли на что-то ИИ.
00:23:33Нет, второй экран не должен быть проблемой. Он всегда подключен, и он мне нужен. Я не вижу чат без него.
00:23:41Это просто мой ноутбук. И второй экран, с которого идет запись.
00:23:48Одна деталь... Пропущенные кадры? Нет, у меня ноль пропущенных кадров.
00:24:01Да, я не знаю.
00:24:09А на Twitch та же проблема, кстати?
00:24:22Похоже, команда YouTube что-то намудрила с кодом.
00:24:28В общем, я всё закрыл.
00:24:32Мне показывает идеальные...

Key Takeaway

После покупки компанией Anthropic среда выполнения Bun трансформируется в специализированную платформу для ИИ-агентов, внедряя нативные инструменты для работы с браузером, базами данных и медиафайлами непосредственно в ядро системы.

Highlights

  • Компания Anthropic приобрела проект Bun для интеграции его возможностей в инструмент Claude Code.

  • Bun позволяет компилировать программы на TypeScript в один исполняемый файл для работы в терминале.

  • В среду выполнения Bun встроены нативные клиенты для SQLite, S3 и Redis для минимизации внешних зависимостей.

  • Новый API WebView в Bun дает возможность ИИ-агентам запускать браузер без графического интерфейса для автоматического тестирования кода.

  • Разработчики Bun планируют добавить встроенные функции для манипуляции изображениями и рендеринга Markdown в терминале.

  • Использование встроенных инструментов Bun снижает риски атак на цепочку поставок за счет отказа от сторонних библиотек.

Timeline

Технические неполадки трансляции

  • Низкая частота кадров сохраняется при смене сетевого подключения на мобильный интернет.
  • Программное обеспечение OBS и YouTube показывают стабильный сигнал при видимых задержках видеопотока.
  • Закрытие фоновых приложений на архитектуре Electron не решает проблему производительности стрима.

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

Роль Bun в экосистеме Anthropic

  • Основным стимулом покупки стала функция создания единого исполняемого файла из кода на TypeScript.
  • Инструмент Claude Code функционирует как CLI-приложение, скомпилированное с помощью возможностей Bun.
  • Bun сохраняет высокую степень совместимости с Node.js при одновременном росте собственной производительности.

Венчурное финансирование Bun сменилось прямым поглощением со стороны Anthropic. Это приобретение обеспечило стабильность разработки и позволило использовать Bun как фундамент для новых ИИ-инструментов. Главное преимущество заключается в простоте развертывания программ через API Bun.

Встроенные возможности и автоматизация

  • Наличие встроенных клиентов SQLite и S3 упрощает разработку веб-серверов без поиска дополнительных пакетов.
  • Интеграция WebView позволяет ИИ-агентам проверять визуальную корректность созданных интерфейсов.
  • Протокол MCP используется инструментами вроде Claude Code для взаимодействия с браузерными тестами Playwright.

Внедрение WebView в среду выполнения вызывает дискуссии о раздувании API, но является логичным шагом для Anthropic. ИИ-агенты получают возможность замыкать цикл разработки, самостоятельно тестируя работоспособность React-приложений. Это превращает Bun из обычной среды выполнения в комплексный инструментарий для автономных систем.

Будущее развитие и безопасность

  • Внедрение нативной обработки изображений заменяет внешние утилиты типа ImageMagick.
  • Использование встроенных функций Bun повышает безопасность проектов, сокращая количество векторов атак на цепочки поставок.
  • Разработка Bun теперь ориентирована на специфические нужды Anthropic, сохраняя при этом общую доступность функций для сообщества.

Новые API для изменения размера изображений и рендеринга Markdown оптимизированы под задачи генеративного ИИ. Несмотря на переход под управление корпорации, оригинальная команда разработчиков продолжает работу над проектом. Для новичков связка Bun с Postgres и библиотеками вроде Better Auth остается актуальным технологическим стеком.

Community Posts

View all posts