Please open Telegram to view this post
VIEW IN TELEGRAM
😁15
🤨 Как заставить AI-агента не ломать архитектуру, а нормально писать код?
Мы привыкли общаться с ИИ промптами, но для автономных систем это путь к бесконечным циклам и сливу бюджета. Чтобы убрать хаос, инженеры переходят на Spec-Driven Development (SDD).
Вот как этот подход меняет работу агента на практике:
🔹Контракт вместо текста. Сначала пишется строгая спецификация (JSON-схема/OpenAPI) и автотесты. Агент зажат в рамки интерфейсов, за которые физически не может выйти.
🔹Контроль на шагах. Внутри петли Think-Act-Observe агент сверяет действия со спецификацией.
🔹Саморефлексия. Если ИИ нарушил типы или «додумал» лишнее, тест падает. Агент получает ошибку в контекст и сам правит код, не выходя за рамки ТЗ.
Это лишь база того, как укротить ИИ-разработку. Если вы хотите глубоко внедрить эту методологию, научиться проектировать архитектурные контракты и собирать отказоустойчивые системы — оставляйте заявку на наш новый курс по Spec-Driven Development. Стартуем совсем скоро🙂
Мы привыкли общаться с ИИ промптами, но для автономных систем это путь к бесконечным циклам и сливу бюджета. Чтобы убрать хаос, инженеры переходят на Spec-Driven Development (SDD).
Вот как этот подход меняет работу агента на практике:
🔹Контракт вместо текста. Сначала пишется строгая спецификация (JSON-схема/OpenAPI) и автотесты. Агент зажат в рамки интерфейсов, за которые физически не может выйти.
🔹Контроль на шагах. Внутри петли Think-Act-Observe агент сверяет действия со спецификацией.
🔹Саморефлексия. Если ИИ нарушил типы или «додумал» лишнее, тест падает. Агент получает ошибку в контекст и сам правит код, не выходя за рамки ТЗ.
Это лишь база того, как укротить ИИ-разработку. Если вы хотите глубоко внедрить эту методологию, научиться проектировать архитектурные контракты и собирать отказоустойчивые системы — оставляйте заявку на наш новый курс по Spec-Driven Development. Стартуем совсем скоро🙂
🥰3
В этой подборке мы сосредоточимся на использовании watch и watchEffect в Vue.js для отслеживания изменений в данных и выполнения действий в ответ на эти изменения.
1. Watch и WatchEffect на практике — примеры самых часто используемых компонентов вместе с наблюдателями.
2. Работа с состоянием во Vue и React — отличия, использование, как перекликаются между двумя фреймворками.
3. watch vs watchEffect — когда использовать какой подход
4. Как выбрать библиотеку для управления состоянием — преимущества и недостатки Vuex и Pinia, а также советы по выбору подходящего инструмента для вашего проекта.
5. watchEffect — введение в watchEffect, который автоматически отслеживает все реактивные зависимости внутри своей функции.
#read_watch
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🥰3🙏1🥱1
This media is not supported in your browser
VIEW IN TELEGRAM
Если устали каждый раз искать хорошие библиотеки, сервисы или статьи — сохраните эту подборку.
Внутри:
🈂️ обучающие материалы и документация🈂️ UI-библиотеки и компоненты🈂️ CSS- и JavaScript-инструменты🈂️ API и полезные сервисы🈂️ хостинги и платформы для деплоя🈂️ браузерные расширения🈂️ генераторы, онлайн-инструменты и многое другое
Проект регулярно обновляется, а все материалы доступны как на сайте, так и на GitHub
#stack
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2🔥2🥰1
В новой версии стандарта появилось сразу несколько полезных возможностей:
Array.fromAsync() — превращает асинхронный итератор в массив без for await.Error.isError() — безопасная проверка, действительно ли объект является ошибкой.Math.sumPrecise() — более точное сложение чисел с плавающей точкой.Iterator.concat() — объединение нескольких итераторов одной строкой.JSON.parse() — доступ к исходному тексту значения, что упрощает работу с BigInt и очень большими числами.Map.getOrInsert() — добавляет значение только при отсутствии ключа, избавляя от привычной связки has() + set().Большинство нововведений небольшие, но они делают код заметно чище и постепенно избавляют от вспомогательных утилит.
#release_digest #javascript
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15🥰3
Media is too big
VIEW IN TELEGRAM
🔥 Не называйте любого продвинутого чат-бота «ИИ-агентом»!
Дмитрий Юдин, руководитель AI/ML-направления в Сloud․ru, наглядно разбирает уровни абстракции ИИ-продуктов и убирает путаницу в понятиях.
Что внутри видео:
- Почему ассистент и агент принципиально разные сущности;
- Как ассистент может быть просто «обёрткой» над LLM, а может скрывать под капотом сложнейшую мультиагентную систему;
- Как понимать архитектуру глубже, чтобы проектировать сильные решения.
Начните создавать агентные системы с нашего бесплатного демо-урока. Всего за 2 часа разберем внутреннее устройство агента, научим его чинить свой собственный код и сохранять контекст после перезапуска.
🔗 Забрать бесплатный демо-урок
Дмитрий Юдин, руководитель AI/ML-направления в Сloud․ru, наглядно разбирает уровни абстракции ИИ-продуктов и убирает путаницу в понятиях.
Что внутри видео:
- Почему ассистент и агент принципиально разные сущности;
- Как ассистент может быть просто «обёрткой» над LLM, а может скрывать под капотом сложнейшую мультиагентную систему;
- Как понимать архитектуру глубже, чтобы проектировать сильные решения.
Начните создавать агентные системы с нашего бесплатного демо-урока. Всего за 2 часа разберем внутреннее устройство агента, научим его чинить свой собственный код и сохранять контекст после перезапуска.
🔗 Забрать бесплатный демо-урок
🥰4
Проблема: повторное использование логики состояния формы может привести к дублированию кода и усложнению поддержки.
Решение: в книге «Learn React Hooks, 2nd Edition» автор предлагает создать пользовательский хук useFormStatus для инкапсуляции логики состояния формы, что позволяет повторно использовать её в разных компонентах.
Пример кода:
import { useState } from 'react';
function useFormStatus() {
const [isSubmitting, setIsSubmitting] = useState(false);
const [error, setError] = useState(null);
const submit = async (action) => {
setIsSubmitting(true);
try {
await action();
} catch (err) {
setError(err);
} finally {
setIsSubmitting(false);
}
};
return { isSubmitting, error, submit };
}
function LoginForm() {
const { isSubmitting, error, submit } = useFormStatus();
const handleSubmit = () => {
submit(async () => {
// Асинхронная отправка данных
});
};
return (
<form onSubmit={handleSubmit}>
<button type="submit" disabled={isSubmitting}>
{isSubmitting ? 'Submitting...' : 'Submit'}
</button>
{error && <p>{error.message}</p>}
</form>
);
}
Преимущества:
— Инкапсуляция логики состояния формы.
— Повторное использование кода.
— Упрощение компонентов форм.
#readme
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🥰2
🤔 Что изменится после того, как пользователь введёт текст в <input>?
❤️ — атрибут value
🔥 — свойство value
📍 Навигация: [Вакансии]
🐸 Библиотека фронтендера
#code_challenge
❤️ — атрибут value
🔥 — свойство value
#code_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20❤5
В JavaScript одну и ту же функцию можно объявить по-разному — и это влияет на поведение кода.
В карточках разобрали:
#read_watch
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🥰2
This media is not supported in your browser
VIEW IN TELEGRAM
Нашли open-source подборку анимаций для переключения светлой и тёмной темы.
Хороший источник идей, если обычный toggle уже кажется слишком скучным.
#stack
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰6👍4🔥1
Почему нельзя вызывать Hooks внутри if, for или switch?
Если в одном рендере Hook вызвался, а в следующем — нет (например, из-за if), порядок нарушится. Тогда React начнет сопоставлять состояния и эффекты не тем Hook’ам, что приведет к ошибкам и непредсказуемому поведению.
Hooks всегда должны вызываться на верхнем уровне компонента или собственного Hook’а — без условий, циклов и switch. Если логика зависит от условия, проверку нужно делать внутри Hook’а.
👍 — знал/а
🔥 — стало понятнее
#career_merge
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥8🥰2
Хороший Data Grid помогает быстрее находить информацию, снижает количество ошибок и остается отзывчивым даже при работе с большими объемами данных.
Вот что считается хорошей практикой:
Цвета, бейджи и иконки позволяют мгновенно увидеть статус, предупреждение или критичное значение.
Цвета, отступы и типографика должны наследоваться от общей дизайн-системы, а не быть разбросаны по CSS.
Таблица должна одинаково хорошо выглядеть в светлой и темной теме, сохраняя контраст и читаемость.
Для больших наборов данных виртуализируйте строки и избегайте тяжелых инлайновых стилей и лишних перерисовок.
Поддержка клавиатурной навигации, Screen Reader, фокус-состояний и достаточного контраста — уже базовое требование.
На планшетах и небольших экранах таблица должна корректно менять ширину колонок, сохраняя удобство работы.
#blueprint #react
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🥰2🔥1
🚀 Уже завтра стартует новый поток курса «ИИ-агенты»!
Мы собрали мощнейший состав преподавателей. Учить вас проектировать архитектуру и собирать продакшн-агентов будут инженеры и исследователи из топовых IT-компаний.
Старт уже завтра!
Сомневаетесь, подойдет ли вам программа и подача? Начните с бесплатного демо-урока!
Всего за 2 часа вы заглянете под капот ИИ-агента, поймете, чем мышление модели отличается от ее ответа, и научите систему чинить собственный код. Это идеальный способ протестировать нашу платформу перед покупкой.
🔗 Пройти демо-урок и занять место на курсе
Мы собрали мощнейший состав преподавателей. Учить вас проектировать архитектуру и собирать продакшн-агентов будут инженеры и исследователи из топовых IT-компаний.
Старт уже завтра!
Сомневаетесь, подойдет ли вам программа и подача? Начните с бесплатного демо-урока!
Всего за 2 часа вы заглянете под капот ИИ-агента, поймете, чем мышление модели отличается от ее ответа, и научите систему чинить собственный код. Это идеальный способ протестировать нашу платформу перед покупкой.
🔗 Пройти демо-урок и занять место на курсе
🥰3👍1🔥1
Еще недавно для tooltip, dropdown и popover почти всегда подключали Popper.js или похожие библиотеки. Теперь большую часть этой работы берет на себя браузер благодаря CSS Anchor Positioning.
#under_hood #css
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🥰3❤1