Я тоже не про CUDA vs Metal. В статье с первого абзаца какой-то странный восторг от вещей, которые как бы помягче сказать, не тянут даже на слово "high" в известной фразе "high tech low life".
Ну обычный ноут, ну робот-пылесос, который углы чистить не умеет, ну 3D-принтер к которому, как к станку ЧПУ, нужно квалификацию иметь чтобы мыльницу напечатать.
И это, типа, с точки зрения автора - технологическая сингулярность. Я бы понял, если бы он электроды себе в башку подключил, но тут какой то скучный вещизм.
Вы очень нетребовательный человек, если вас так восхищает перечисленное.
У меня куча маков, из которых самый производительный на данный момент на базе M2 Ultra. Я лично вижу там производительность уровня GeForce 4070 и рендер в текстуры на Cycles в несколько раз медленнее, чем на средней видеокарте прошлых лет. И с чего бы быть иначе без поддержки CUDA и кучи ядер.
Ну во вьюпорте не так шумят лучи, если значения поменьше подобрать в настройках, настоящий киберпанк.
Выше ответил. Это не только DeepSeek касается, но и скажем генерации AI-видео, генерации изображений.
Он может отображать сложные трехмерные сцены с трассировкой лучей в Blender, практически, в реальном времени
Работа с рендером с лучами в 3D и маки - ну безграмотный же пример в контексте абзаца где вроде все вроде так круто. Говорит о том, что вы не знаете о чем пишете, ну а что тогда читать дальше. Так как он "может", у меня может ноут восьмилетней давности.
То, что динамический HTML готовится быстрее JSON - сомнительное утверждение. Бенчмарков у меня нет, но я такого в жизни не встречал. С чего ему быть быстрее, если для JSON обычно нужно вытащить поля из базы и отдать как есть, а для HTML - дополнительно прокинуть эти вытащенные поля в строковой шаблон? При этом делать это на каждый запрос.
Ну и Node — не лучшее решение для рендеринга HTML, другие языки справляются лучше и быстрее.
Тоже не самое очевидное утверждение, но даже если так - при использовании Node для этих целей, кроме скорости рендеринга мы получаем один язык для шаблонов и динамики, со всеми его преимуществами - удобный проброс данных, удоная гидратация, то же самые server components позволяют организовать серверный рендеринг с динамическими островками.
Я понимаю, что можно сделать все и без этого, но это просто удобнее и быстрее.
Я согласен с тем, что вы пишете, и сам примерно также применяю веб-компоненты. Размер рантайма тут не показатель, так как и для решений без веб-компонентов не обязательно брать тот же реакт. Есть решения в 5кб с минимальным обвесом, которые дадут все эти бонусы. Из примеров - Svelte, который может self-бандлить компонент с микрорантаймом в виде одного скрипта. И во многих других фреймворках сейчас появилась такая возможность.
При этом вы не сталкиваетесь с ограничениями веб-компонентов - глобальной областью видимости, необходимостью парсить строковые шаблоны в рантайме, крайне мутной системой изоляции стилей через Shadow DOM. В общем плюсы все еще не ясны.
Ну и главное не забывать, что 5кб рантайма даются не бесплатно, а за счет функционала. Если вам хватает - это нормально. Если потенциально мне может потребоваться больше функционала или более богатая экосистема готовых компонентов - я предпочту 100кб рантайма, зато без необходимости его менять в будущем.
Я не говорил, что АПИ веб компонентов легко использовать без оберток. Но уже есть готовые решения, которые добавляют минимум полезного, типа lit или stencil.
Вы отвечали на вот этот мой комментарий:
Вы пробовали их использовать для чего либо, сложнее простых виджетов? Без обвеса это удовольствие сильно ниже среднего при разработке. А с обвесом они становятся просто аналогом SPA фреймворков, к которым нужно тащить свой рантайм.
С чем вы тут несогласны? Под рантаймом я имею в виду код, без которого ваш веб-компонент не запустится. В Lit это его core-packages.
Без рантайма вы будете вынуждены писать так, как по вашей ссылке - вручную управлять DOM, вешать и удалять евенты строго через addEventListener, через придумывать как разместить кастомные евенты в глобальном скоупе чтобы не законфликтили, следить за именованием веб-компонентов (чтобы тодже не законфликтили), и т.д.
Я лично написал на них демку пошаговой боевки одной игры несколько лет назад. Да отличается от реакта, но выходить из зоны комфорта иногда надо. Там обычно точки роста.
В каждом вашем сообщении я замечаю какой-то способ самоутверждения через фразы вроде "выходить из зоны комфорта". Я поддерживал и дописывал крупный американский проект на Polymer в 2017-18 годах. На Lit примерно в те же годы я писал свой сайд проект в связке с leaflet. Веб-компоненты (включая безрантаймовые) я до сих иногда пишу на работе, там где это уместно. Первый свой доклад по ним делал еще в 2014 году. Реакт тогда только появлялся, все (включая меня) писали на jQuery/Backbone/Marionette/Knockout/Angular 1.3.
Я достаточно вышел из зоны комфорта? К чему вся эта информация, кто сколько чего написал, если мы обсуждаем конкретные примеры? На конкретном примере докажите вашу правоту, покажите код - и вы будете правы независимо от ваших/моих заслуг.
Вы лучше не "как делать" покажите, а конечный результат. Как правильно делать может учить любой дурак, тут вон целая статья на эту тему, в рамках которой мы общаемся.
У вас есть пример веб-компонента, к которому не пришлось писать свой рантайм для работы с шаблонами, проброса данных в виде объектов, навешивания обработчиков событий декларативного, и т.д.?
Хотя бы какое нибудь более менее сложное поле ввода или мультиселект.
Конечно они быстрее работают с готовым HTML. Только как то упускается, что перед этим этот HTML надо сгенерить на сервере. Что далеко не бесплатно и не моментально.
Вы пробовали их использовать для чего либо, сложнее простых виджетов? Без обвеса это удовольствие сильно ниже среднего при разработке. А с обвесом они становятся просто аналогом SPA фреймворков, к которым нужно тащить свой рантайм.
Я не нашел там кода, поэтому не могу понять как там выполняется на сервере js, чтобы получить итоговую разметку чтобы отдать ее пользователю. Ткните пожалуйста.
Но они же вроде бы просто автоматизируют добавление обработчиков на начальную разметку. То есть если применить компонент spoiler, то он из <div class="spoiler"> сделает <div onclick="...">...</div>. Но ведь он сделает это уже на клиенте, а не на сервере?
В SSR с гидрацией вы сразу получите итоговую разметку. Это может быть важно для скорости отрисовки, если речь не про спойлер, а про большой динамический компонент, например какой-нибудь top товаров в виде карусели, который надо показать максимально быстро и красиво до того, как отработает js.
Обработчики это ведь не только онклики, они могут дергать сторонние сервисы чтобы сформировать итоговую разметку.
Гидратация - это не когда контент отображается в режиме SSR, это умеют и обычные шаблонизаторы. При гидратации на пришедшую с сервера разметку автоматически навешиваются все обработчики, описанные в клиентском коде.
Такого классические шаблонизаторы делать не умеют, там надо явно вызывать скрипты инициализации для каждого компонента.
Я не припомню примеров из прошлого до реакта, где такое было, можете привести пример?
Я буквально процитировал фразы, не соответствующие действительности.
Я тоже не про CUDA vs Metal. В статье с первого абзаца какой-то странный восторг от вещей, которые как бы помягче сказать, не тянут даже на слово "high" в известной фразе "high tech low life".
Ну обычный ноут, ну робот-пылесос, который углы чистить не умеет, ну 3D-принтер к которому, как к станку ЧПУ, нужно квалификацию иметь чтобы мыльницу напечатать.
И это, типа, с точки зрения автора - технологическая сингулярность. Я бы понял, если бы он электроды себе в башку подключил, но тут какой то скучный вещизм.
Вы очень нетребовательный человек, если вас так восхищает перечисленное.
У меня куча маков, из которых самый производительный на данный момент на базе M2 Ultra. Я лично вижу там производительность уровня GeForce 4070 и рендер в текстуры на Cycles в несколько раз медленнее, чем на средней видеокарте прошлых лет. И с чего бы быть иначе без поддержки CUDA и кучи ядер.
Ну во вьюпорте не так шумят лучи, если значения поменьше подобрать в настройках, настоящий киберпанк.
Выше ответил. Это не только DeepSeek касается, но и скажем генерации AI-видео, генерации изображений.
Работа с рендером с лучами в 3D и маки - ну безграмотный же пример в контексте абзаца где вроде все вроде так круто. Говорит о том, что вы не знаете о чем пишете, ну а что тогда читать дальше. Так как он "может", у меня может ноут восьмилетней давности.
Мне особо никакой. Просто зачем писать то, что несоответствует действительности про диспики, 3д и прочее.
Deepseek оно тянет в лучшем случае 72b, что собно не является Deepseek. Ну и на 72b сильно пердит.
Банально текстурку простую можно попробовать запечь в упомянутом блендере. Там на маках полный киберпанк.
Если в этом смысле, то понятно. Просто из заголовка ожидал прочитать про другое.
Прочитал, но не понял где тут собственно фреймворк. Вы же реакт выбрали в итоге, и создали для него библиотеку компонентов?
То, что динамический HTML готовится быстрее JSON - сомнительное утверждение. Бенчмарков у меня нет, но я такого в жизни не встречал. С чего ему быть быстрее, если для JSON обычно нужно вытащить поля из базы и отдать как есть, а для HTML - дополнительно прокинуть эти вытащенные поля в строковой шаблон? При этом делать это на каждый запрос.
Тоже не самое очевидное утверждение, но даже если так - при использовании Node для этих целей, кроме скорости рендеринга мы получаем один язык для шаблонов и динамики, со всеми его преимуществами - удобный проброс данных, удоная гидратация, то же самые server components позволяют организовать серверный рендеринг с динамическими островками.
Я понимаю, что можно сделать все и без этого, но это просто удобнее и быстрее.
Я согласен с тем, что вы пишете, и сам примерно также применяю веб-компоненты. Размер рантайма тут не показатель, так как и для решений без веб-компонентов не обязательно брать тот же реакт. Есть решения в 5кб с минимальным обвесом, которые дадут все эти бонусы. Из примеров - Svelte, который может self-бандлить компонент с микрорантаймом в виде одного скрипта. И во многих других фреймворках сейчас появилась такая возможность.
При этом вы не сталкиваетесь с ограничениями веб-компонентов - глобальной областью видимости, необходимостью парсить строковые шаблоны в рантайме, крайне мутной системой изоляции стилей через Shadow DOM. В общем плюсы все еще не ясны.
Ну и главное не забывать, что 5кб рантайма даются не бесплатно, а за счет функционала. Если вам хватает - это нормально. Если потенциально мне может потребоваться больше функционала или более богатая экосистема готовых компонентов - я предпочту 100кб рантайма, зато без необходимости его менять в будущем.
Вы отвечали на вот этот мой комментарий:
С чем вы тут несогласны? Под рантаймом я имею в виду код, без которого ваш веб-компонент не запустится. В Lit это его core-packages.
Без рантайма вы будете вынуждены писать так, как по вашей ссылке - вручную управлять DOM, вешать и удалять евенты строго через addEventListener, через придумывать как разместить кастомные евенты в глобальном скоупе чтобы не законфликтили, следить за именованием веб-компонентов (чтобы тодже не законфликтили), и т.д.
В каждом вашем сообщении я замечаю какой-то способ самоутверждения через фразы вроде "выходить из зоны комфорта". Я поддерживал и дописывал крупный американский проект на Polymer в 2017-18 годах. На Lit примерно в те же годы я писал свой сайд проект в связке с leaflet. Веб-компоненты (включая безрантаймовые) я до сих иногда пишу на работе, там где это уместно. Первый свой доклад по ним делал еще в 2014 году. Реакт тогда только появлялся, все (включая меня) писали на jQuery/Backbone/Marionette/Knockout/Angular 1.3.
Я достаточно вышел из зоны комфорта? К чему вся эта информация, кто сколько чего написал, если мы обсуждаем конкретные примеры? На конкретном примере докажите вашу правоту, покажите код - и вы будете правы независимо от ваших/моих заслуг.
Вы лучше не "как делать" покажите, а конечный результат. Как правильно делать может учить любой дурак, тут вон целая статья на эту тему, в рамках которой мы общаемся.
У вас есть пример веб-компонента, к которому не пришлось писать свой рантайм для работы с шаблонами, проброса данных в виде объектов, навешивания обработчиков событий декларативного, и т.д.?
Хотя бы какое нибудь более менее сложное поле ввода или мультиселект.
Так у меня и не возникают сложности:) Я ведь не использую веб компоненты с серверными шаблонизаторами.
Хотя и приходилось работать на проектах, которые в это пытались.
А вообще тут технический ресурс, ни к чему аналогии. Если хотите донести мысль, лучше покажите код.
Конечно они быстрее работают с готовым HTML. Только как то упускается, что перед этим этот HTML надо сгенерить на сервере. Что далеко не бесплатно и не моментально.
Вы пробовали их использовать для чего либо, сложнее простых виджетов? Без обвеса это удовольствие сильно ниже среднего при разработке. А с обвесом они становятся просто аналогом SPA фреймворков, к которым нужно тащить свой рантайм.
Да действительно, похоже. Я изначально подумал, что речь про что-то типа jQuery-плагинов.
Я не нашел там кода, поэтому не могу понять как там выполняется на сервере js, чтобы получить итоговую разметку чтобы отдать ее пользователю. Ткните пожалуйста.
upd. нашел, смотрю)
Но они же вроде бы просто автоматизируют добавление обработчиков на начальную разметку. То есть если применить компонент spoiler, то он из <div class="spoiler"> сделает <div onclick="...">...</div>. Но ведь он сделает это уже на клиенте, а не на сервере?
В SSR с гидрацией вы сразу получите итоговую разметку. Это может быть важно для скорости отрисовки, если речь не про спойлер, а про большой динамический компонент, например какой-нибудь top товаров в виде карусели, который надо показать максимально быстро и красиво до того, как отработает js.
Обработчики это ведь не только онклики, они могут дергать сторонние сервисы чтобы сформировать итоговую разметку.
Гидратация - это не когда контент отображается в режиме SSR, это умеют и обычные шаблонизаторы. При гидратации на пришедшую с сервера разметку автоматически навешиваются все обработчики, описанные в клиентском коде.
Такого классические шаблонизаторы делать не умеют, там надо явно вызывать скрипты инициализации для каждого компонента.
Я не припомню примеров из прошлого до реакта, где такое было, можете привести пример?