uk
Feedback
Dev News от Максима Соснова

Dev News от Максима Соснова

Відкрити в Telegram

Привет! Меня зовут Максим Соснов и по утрам я читаю всякие разные дайджесты про фронтенд, разработку и управление разработкой. Самые интересные, по моему мнению, ссылки из этих дайджестов я кидаю в этот канал с небольшим описанием. Контакт: @msosnov

Показати більше
2 815
Підписники
Немає даних24 години
+107 днів
+1530 день

Триває завантаження даних...

Залучення підписників
червень '26
червень '26
+32
в 0 каналах
травень '26
+46
в 1 каналах
Get PRO
квітень '26
+41
в 0 каналах
Get PRO
березень '26
+39
в 0 каналах
Get PRO
лютий '26
+41
в 0 каналах
Get PRO
січень '26
+31
в 0 каналах
Get PRO
грудень '25
+27
в 1 каналах
Get PRO
листопад '25
+33
в 1 каналах
Get PRO
жовтень '25
+65
в 2 каналах
Get PRO
вересень '25
+54
в 1 каналах
Get PRO
серпень '25
+52
в 0 каналах
Get PRO
липень '25
+86
в 7 каналах
Get PRO
червень '25
+50
в 0 каналах
Get PRO
травень '25
+57
в 0 каналах
Get PRO
квітень '25
+68
в 4 каналах
Get PRO
березень '25
+79
в 2 каналах
Get PRO
лютий '25
+72
в 2 каналах
Get PRO
січень '25
+75
в 1 каналах
Get PRO
грудень '24
+88
в 2 каналах
Get PRO
листопад '24
+156
в 1 каналах
Get PRO
жовтень '24
+96
в 1 каналах
Get PRO
вересень '24
+87
в 0 каналах
Get PRO
серпень '24
+134
в 3 каналах
Get PRO
липень '24
+87
в 1 каналах
Get PRO
червень '24
+111
в 0 каналах
Get PRO
травень '24
+795
в 2 каналах
Get PRO
квітень '24
+41
в 0 каналах
Get PRO
березень '24
+55
в 1 каналах
Get PRO
лютий '24
+63
в 1 каналах
Get PRO
січень '24
+98
в 1 каналах
Get PRO
грудень '23
+94
в 2 каналах
Get PRO
листопад '23
+31
в 1 каналах
Get PRO
жовтень '23
+88
в 1 каналах
Get PRO
вересень '23
+58
в 0 каналах
Get PRO
серпень '23
+47
в 0 каналах
Get PRO
липень '23
+36
в 0 каналах
Get PRO
червень '23
+44
в 0 каналах
Get PRO
травень '23
+27
в 0 каналах
Get PRO
квітень '23
+54
в 0 каналах
Get PRO
березень '23
+61
в 0 каналах
Get PRO
лютий '23
+33
в 0 каналах
Get PRO
січень '23
+42
в 0 каналах
Get PRO
грудень '22
+35
в 0 каналах
Get PRO
листопад '22
+138
в 0 каналах
Get PRO
жовтень '22
+65
в 0 каналах
Get PRO
вересень '22
+114
в 0 каналах
Get PRO
серпень '22
+18
в 0 каналах
Get PRO
липень '22
+48
в 0 каналах
Get PRO
червень '22
+32
в 0 каналах
Get PRO
травень '22
+15
в 0 каналах
Get PRO
квітень '22
+4
в 0 каналах
Get PRO
березень '22
+4
в 0 каналах
Get PRO
лютий '22
+21
в 0 каналах
Get PRO
січень '22
+64
в 0 каналах
Get PRO
грудень '21
+6
в 0 каналах
Get PRO
листопад '21
+8
в 0 каналах
Get PRO
жовтень '21
+333
в 0 каналах
Дата
Залучення підписників
Згадування
Канали
22 червня+5
21 червня0
20 червня+3
19 червня+3
18 червня+1
17 червня+5
16 червня0
15 червня+5
14 червня+1
13 червня+4
12 червня0
11 червня+1
10 червня0
09 червня+1
08 червня0
07 червня+1
06 червня0
05 червня0
04 червня+1
03 червня0
02 червня0
01 червня+1
Дописи каналу
Why does tsgo use so much memory? Вот и подъехали разборы работы tsgo, на который все мы скоро переедем. На больших проектах он жрёт гигабайты памяти. Автор разбора погонял его на проекте с Next.js и Zod и сделал анализ, куда же уходит память. Короткий ответ: при мультипоточности tsgo создаёт отдельный type checker на каждый поток. У каждого свой state, который не шарится. Также вычисленные типы никогда не освобождаются. При запуске tsgo на 4 потоках 45% памяти уходит на AST, 30% на Checker (400 МБ). При запуске в один поток потребление Checker падает до 50 МБ. У каждого Checker свой state и данные. При запуске tsgo в несколько потоков создаётся несколько Checker, каждый из которых несёт свои данные. Также конструкции Zod вида const emailSchema = z.string().email().min(5).max(120).toLowerCase(); генерируют очень много типов, хотя по итогу нужен только последний. Из хороших новостей: это всё можно оптимизировать и можно ожидать снижение потребления памяти в будущих релизах. https://zackoverflow.dev/writing/why-does-tsgo-use-so-much-memory #development #typescript #tsgo #performance #compiler

2
Дайджест за 2026-06-15 - 2026-06-19 Deprecating a React component using TypeScript Overload Статья про хитрый способ ввести breaking change в компонент, не создавая ComponentNameV2. Автор использует трюк с TypeScript overloads и @deprecated. ESLint – React – You Might Not Need An Effect ESLint-плагин, который ловит лишние useEffect. Создан по мотивам официальной статьи React You Might Not Need An Effect. Целый набор антипаттернов с конкретными подсказками и ссылками на доку. The Orchestration Tax Addy Osmani рассказывает про «orchestration tax» — налог, который приходится выплачивать, работая с кучей агентов. —————————————— Спасибо что читаете, ставите реакции, отмечаетесь в комментариях и рассказываете о канале друзьям и коллегам. —————————————— Я работаю в Т-Банке и у нас идет активный найм. Если вам интересна работа в Т-Банке - переходите по ссылке и пишите в личку - отвечу на любые вопросы
467
3
The Orchestration Tax Addy Osmani рассказывает про «orchestration tax» — налог, который приходится выплачивать, работая с кучей агентов. Переключение контекста не бесплатное — мозг тратит своё мыслетопливо на это переключение. Запускать 20 агентов параллельно — легко. Но переключаться между ними — сложно. Очень быстро устаёшь. Это и есть «orchestration tax». Те, кто занимается архитектурой систем, знают, что 100% утилизация CPU ведёт к задержкам в обработке задач, что в итоге приводит к долгому времени выполнения всех задач. Также работает и наш мозг. Но при этом, запуская 20 агентов и нагружая свою голову на 100%, кажется, что ты очень продуктивен. Но по факту мы путаем перегруженность с продуктивностью. А когда устаёшь, то вместо качественной проверки результата работы агента принимаешь его работу не глядя, что ведёт к низкому качеству итогового решения. Что надо делать, чтобы не попасть в эту ловушку: - Самое важное — не запускать агентов на задачи, требующие вашего внимания, больше, чем вы можете заменеджить - Проверять работу агентов батчами — сразу по нескольку. Проще, чем много раз возвращаться к одной задаче. - Если можно убрать фазу проверки в агента — стоит это сделать. Агенты сами могут запустить тесты, проверить работу приложения и анализировать логи. На этапе старта задачи сразу укажите Definition of Done для задачи, которую агент сможет проверить сам Но главное - развить отдельный навык. Проектировать систему работы с агентами вокруг мысли, что вы - узкое горлышко всей системы. https://addyosmani.com/blog/orchestration-tax/ #development #ai #agents #productivity #engineering
576
4
ESLint – React – You Might Not Need An Effect ESLint-плагин, который ловит лишние useEffect. Создан по мотивам официальной статьи React You Might Not Need An Effect. Целый набор антипаттернов с конкретными подсказками и ссылками на доку. Плагин анализирует state, props, refs и их источники, учитывает зависимости effect и пытается держать высокое соотношение полезных срабатываний к шуму. Есть 9 правил: - no-derived-state — derived state в effect вместо вычисления при рендере - no-chain-state-updates — цепочки setState в effect - no-event-handler — effect как event handler через state/props - no-adjust-state-on-prop-change / no-reset-all-state-on-prop-change — сброс state при смене props (вместо key) - no-pass-live-state-to-parent / no-pass-data-to-parent — прокидывание данных наверх через effect - no-external-store-subscription — подписка на внешний store вместо useSyncExternalStore - no-initialize-state — инициализация state в effect Выглядит интересно, надо попробовать. https://github.com/nickjvandyke/eslint-plugin-react-you-might-not-need-an-effect #development #react #eslint #hooks #useeffect #lint
839
5
Deprecating a React component using TypeScript Overload Статья про хитрый способ ввести breaking change в компонент, не создавая ComponentNameV2. Автор использует трюк с TypeScript overloads и @deprecated. Что он делает. Есть у вас компонент Card export interface CardProps { title: string; content: string; style?: React.CSSProperties; } const Card = ({title, content, style}: CardProps) => {} Вам нужно сделать новый компонент с тем же интерфейсом. const NewCard = ({title, content, style}: CardProps) => {} При этом вы хотите, чтобы пользователи не автоматически обновляли компонент, а осознанно (ну, допустим, изменение значительное). В этом случае вы делаете враппер export interface NewCardProps extends CardProps { new: true; } function Card(props: CardProps | NewCardProps): React.JSX.Element { if ('new' in props) { return NewCard(props); } return LegacyCard(props); } Все пользователи так и импортируют Card и используют старую реализацию, но надо как-то подсказать пользователям что им надо прокинуть проп new для перехода на новую версию. /* eslint-disable no-redeclare */ /** @deprecated Use Card with "new" prop on it instead */ function Card(props: CardProps): React.JSX.Element; function Card(props: NewCardProps): React.JSX.Element; При таком определении IDE будет отображать использование компонента без пропа new как депрекейтнутное (зачеркивать его). Трюк немного сомнительный, но, вместе с тем, и очень интересный. https://dev.to/mbarzeev/deprecating-a-react-component-using-typescript-overload-2ka #development #react #typescript #components #deprecation #monorepo
836
6
Дайджест за 2026-06-08 - 2026-06-12 Bun's unreleased Rust port has 13,365 unsafe blocks. Most can be removed. Сначала Anthropic купили Bun, а затем переписали его с Zig на Rust с помощью Claude Code, но пока не влили. Большое переписывание - большой шитшторм. Быстро вскрылось, что код переписан "плохо" - не rust-way и много unsafe в кодовой базе. Команда Bun опубликовала большой интерактивный аудит всех unsafe-блоков в ещё не выпущенном Rust-порте рантайма. После AI-перевода с Zig на Rust там насчитали 13 365 unsafe — и разобрали каждый: откуда он взялся, можно ли убрать и что для этого нужно. Mitos Oxide Computer выложили в опенсорс Mitos — веб-инструмент для генерации ASCII-арта на основе изображений или gif. Выглядит реально круто. Вставляете картинку или гиф, а экспортируете текст, png или mp4. TypeScript Tips Everyone Should Know Никогда не было и вот опять - читшит с бест практисами по Typescript. 15 простых бест-практисов, которые можно брать в любой проект (или отдать агенту в виде скилла). Т.к. читшит ультра короткий, то приведу примеры из него прямо в посте —————————————— Спасибо что читаете, ставите реакции, отмечаетесь в комментариях и рассказываете о канале друзьям и коллегам. —————————————— Я работаю в Т-Банке и у нас идет активный найм. Если вам интересна работа в Т-Банке - переходите по ссылке и пишите в личку - отвечу на любые вопросы
751
7
TypeScript Tips Everyone Should Know Никогда не было и вот опять - читшит с бест практисами по Typescript. 15 простых бест-практисов, которые можно брать в любой проект (или отдать агенту в виде скилла). Т.к. читшит ультра короткий, то приведу примеры из него прямо в посте Prefer unknown Over any - тут всем всё понятно, unknown безопаснее any Let Type Inference Do the Work - если TS может вывести тип сам, то и не надо его описывать const name = "Ada"; // вместо const name: string = "Ada"; Prefer satisfies Over as - satisfies позволяет проверить на соответствие типу без приведения типов, в отличие от as const routes = { home: "/", about: "/about", } satisfies Record<string, string>; Derive Types From Values Instead of Duplicating Them - получайте типы из значений, а не делайте копию в типах. const roles = ["admin", "user", "guest"] as const; type Role = (typeof roles)[number]; Model Impossible States With Discriminated Unions - делайте некорректные состояния невозможными с помощью Discriminated Unions type State = | { status: "loading" } | { status: "success"; data: User } | { status: "error"; error: Error }; Use Exhaustive Checks With never - при проверках switch/case (да и в других вариантах), в default следует возвращать never. Если вдруг TypeScript поймет, что не все ветвления проверены и можно войти в ветку с never, то TS кинет ошибку function render(state: State) { switch (state.status) { case "loading": return <Spinner />; case "success": return <UserCard data={state.data} />; case "error": return <ErrorMessage error={state.error} />; default: { const exhaustive: never = state; return exhaustive; } } } Use as const for Configuration and Constants - фиксируйте типы конфигов и констант через as const, они будут точнее выведены const theme = { mode: "dark" } as const; Use Type Predicates for Reusable Narrowing function isUser(value: unknown): value is User { return typeof value === "object" && value !== null && "id" in value; } Build New Types From Existing Types - используйте Pick, Omit, Partial, Required и другие type utils для построения производных типов type UserPreview = Pick<User, "id" | "name">; Validate External Data at Runtime - TypeScript не проверяет данные из внешнего мира. Валидируйте их на границе с API const UserSchema = z.object({ id: z.string(), name: z.string(), }); Avoid enum in Most Cases - union проще рефакторить, сериализовать и приносит меньше сюрпризов в рантайме, чем Enum. const roles = ["admin", "user"] as const; // вместо enum Role { Admin, User } Prefer Generics That Infer Automatically - если generic может сам вывести тип — так и делайте. Хороший API не заставляет писать тип вручную getData(userSchema); // вместо getData<User>(userSchema) Enable Strict Compiler Options - удивительно, что в конце списка :). Включите строгий режим проверок. Learn Template Literal Types - используйте строковые шаблоны в типах. type Route = `/api/${string}`; "Type-Safe" Does Not Mean "Runtime Safe" - даже если вы используете строгий TS, у вас нет any, ts-expect-error и всё чётко, это не гарантирует, что в рантайме у вас не будет ошибок. https://github.com/AllThingsSmitty/typescript-tips-everyone-should-know #development #typescript #javascript #best-practices #cheatsheet
1 005
8
Mitos Oxide Computer выложили в опенсорс Mitos — веб-инструмент для генерации ASCII-арта на основе изображений или gif. Выглядит реально круто. Вставляете картинку или гиф, а экспортируете текст, png или mp4. Поиграться можно здесь https://mitos.shared.oxide.computer/ https://github.com/oxidecomputer/mitos #development #oxide #ascii #tools #open-source
996
9
Bun's unreleased Rust port has 13,365 unsafe blocks. Most can be removed. Сначала Anthropic купили Bun, а затем переписали его с Zig на Rust с помощью Claude Code, но пока не влили. Большое переписывание - большой шитшторм. Быстро вскрылось, что код переписан "плохо" - не rust-way и много unsafe в кодовой базе. Команда Bun опубликовала большой интерактивный аудит всех unsafe-блоков в ещё не выпущенном Rust-порте рантайма. После AI-перевода с Zig на Rust там насчитали 13 365 unsafe — и разобрали каждый: откуда он взялся, можно ли убрать и что для этого нужно. Важно: версию на Rust ещё не влили. Главный вывод из отчёта: 13 365 unsafe — это очень много, но большинство из них (~9 300) можно перевести в safe. Остальные unsafe останутся, в основном это FFI и работа с C/C++. Сам отчёт просто бомбический: удобно смотреть, классно выглядит, полностью основан на данных и показывает, откуда берутся эти unsafe. Но самый кайф — хороший пример инженерной работы: всё подсчитано, сделан анализ, выводы, показаны детали, которые повлияли на выводы. https://bun.com/bun-unsafe-audit #development #bun #rust #unsafe #audit
1 171
10
ужин?
1
11
Дайджест за 2026-05-18 - 2026-05-22 spawn-agent Библиотека, использующая Vercel AI SDK для запуска локальных AI-агентов на компьютере через Agent Client Protocol. Поддерживает Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode, Factory Droid, Pi. portless Утилита от Vercel Labs, которая открывает урлы вида http://localhost:3000 на именованных доменах .localhost. Например, вместо http://localhost:3000 можно открывать https://myapp.localhost. Из коробки поддерживает HTTPS и HTTP/2. Warp — открыли исходный код Warp, терминал с Rust, который, как и Zed, прошел большой путь от "мы просто очень быстрый терминал" через "Мы терминал++ - следующее поколение терминалов с крутыми фичами" до "мы теперь AI IDE". Warp выложили исходники в опенсорс. —————————————— Спасибо что читаете, ставите реакции, отмечаетесь в комментариях и рассказываете о канале друзьям и коллегам. —————————————— Я работаю в Т-Банке и у нас идет активный найм. Если вам интересна работа в Т-Банке - переходите по ссылке и пишите в личку - отвечу на любые вопросы
1 456
12
Warp — открыли исходный код Warp, терминал с Rust, который, как и Zed, прошел большой путь от "мы просто очень быстрый терминал" через "Мы терминал++ - следующее поколение терминалов с крутыми фичами" до "мы теперь AI IDE". Warp выложили исходники в опенсорс. Это круто, т.к. лично я считаю, что warp - самый удобный терминал для работы. Банальный textarea, который ведет себя также как редактирование кода в IDE, выводит опыт работы с терминалом на следующий уровень. https://github.com/warpdotdev/warp #development #warp #terminal #open-source #rust #ai
1 477
13
portless Утилита от Vercel Labs, которая открывает урлы вида http://localhost:3000 на именованных доменах .localhost. Например, вместо http://localhost:3000 можно открывать https://myapp.localhost. Из коробки поддерживает HTTPS и HTTP/2. Работает просто: portless myapp dev # https://myapp.localhost portless сам выпустит сертификат и даст доступ к https. Поддерживаются разные фреймворки, порты, под-домены, монорепозитории. Из интересного - подхват git worktree. Если portless видит, что приложение запущено из worktree, то название worktree становится именем домена https://github.com/vercel-labs/portless #development #tools #localhost #vercel #devtools #github
3 191
14
spawn-agent Библиотека, использующая Vercel AI SDK для запуска локальных AI-агентов на компьютере через Agent Client Protocol. Поддерживает Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode, Factory Droid, Pi. Пример запуска с кастомными cwd, разрешениями и mcp import { generateText } from "ai"; import { spawnAgent } from "spawn-agent"; const { text } = await generateText({ model: spawnAgent("codex", { cwd: "/Users/me/project", permission: "auto-allow", mcpServers: [ { type: "stdio", name: "filesystem", command: "npx", args: ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"], }, ], }), prompt: "Summarize README.md in three bullets", }); https://github.com/millionco/spawn-agent #development #ai #agents #acp #vercel #github
1 217
15
Дайджест за 2026-05-11 - 2026-05-15 How we made the Angular Compiler faster using AI VoidZero сделали эксперимент — с помощью ИИ сделали компилятор Angular на Rust (на базе Oxc). Итоговые цифры: в 6 раз быстрее чем Angular CLI и в 20 раз быстрее Webpack + @ngtools/webpack на Bitwarden. The Prompt API Команда Chrome встроила API для работы с локальным Gemini Zed is 1.0 Редактор Zed прошел огромный путь и наконец-то получил версию 1.0. Пять лет разработки, собственный UI-фреймворк GPUI на Rust, своя архитектура без Electron. —————————————— Спасибо что читаете, ставите реакции, отмечаетесь в комментариях и рассказываете о канале друзьям и коллегам. —————————————— Я работаю в Т-Банке и у нас идет активный найм. Если вам интересна работа в Т-Банке - переходите по ссылке и пишите в личку - отвечу на любые вопросы
954
16
Zed is 1.0 Редактор Zed прошел огромный путь и наконец-то получил версию 1.0. Пять лет разработки, собственный UI-фреймворк GPUI на Rust, своя архитектура без Electron. Помню ставил его еще на ранних этапах, когда обещали просто быструю работу. Затем ставил, когда туда завезли удобный механизм для парного программирования. Потом уже не ставил, но слышал что завезли AI-агентов. Теперь, видимо, интегрировали ACP. Надо еще раз поставить и посмотреть, что там есть. https://zed.dev/blog/zed-1-0 #development #zed #editor #release #rust
1 116
17
The Prompt API Команда Chrome встроила API для работы с локальным Gemini API выглядит так: const session = await LanguageModel.create(); const result = await session.prompt('Write me a poem'); Браузер скачивает модель и затем использует ее на устройстве пользователя. Системные требования: 22 ГБ на диске, GPU >4GB VRAM или 16GB RAM. Поддерживает текст, изображения и аудио на входе, JSON Schema для структурированного вывода, стриминг через promptStreaming(), сессии с историей и клонирование. API хорошо продумано - там и управление сессиями, и структурированный ввод-вывод, и добавление сообщений в контекст, и работа с аудио и видео. Реализация такого API - это очень важный шаг. Для разработчиков это возможность интегрировать AI-опыт, к которому привыкли пользователи смартфонов. При этом не нужен никакой бекенд - все работает на устройстве пользователя. Для рынка это понятный ход Google: проложить свой API как стандарт для встроенного AI в браузере, пока другие игроки не смогли закрепиться в этом поле. Пока API доступно в бетке хрома (138+) за флагом, но тренд очевиден — готовимся к возможности запускать локальные модели прямо из JS-кода в браузере. Хотя, конечно, это может привнести новые проблемы. Например, это API будет доступно и аналитическим скриптам, которые могут запускать локальные модели для сбора какой-то информации и излишне нагружать устройство. https://developer.chrome.com/docs/ai/prompt-api #development #ai #chrome #gemini #api #google
1 217
18
How we made the Angular Compiler faster using AI VoidZero сделали эксперимент — с помощью ИИ сделали компилятор Angular на Rust (на базе Oxc). Итоговые цифры: в 6 раз быстрее чем Angular CLI и в 20 раз быстрее Webpack + @ngtools/webpack на Bitwarden. За счёт чего: По факту срезали углы. Angular-компилятор компилирует HTML-шаблоны в TypeScript, а потом запускает компиляцию TS, включая проверку типов. Чуваки же сделали компиляцию шаблонов на Rust, минуя проверку TS. Основной прирост не от Rust, а от того, что не надо гонять TypeScript Compiler на каждую сборку. Причем тут AI: Автор работал с Claude Code и Codex. - Сначала Claude Code в Plan Mode проанализировал весь Oxc-проект: как там устроен парсер, семантика, трансформеры, тесты. - Дал промпт, в котором Claude выступал оркестратором: диспатчил задачи саб-агентам (discover → fixer) и гонял цикл, пока тесты не проходят. Claude мог работать автономно 4–6 часов подряд (видимо пока не выжирал 5 часовые лимиты) - Для проверки работы нового компилятора шаблонов брались существующие репозитории и прогонялись на дефолтном компиляторе и на новом. Если итоговый код расходился - это знак что надо править компилятор. - Далее подключил Codex для code review. Codex искал несовпадения control flow с оригинальным TS-компилятором (например, неправильный guard в @for track optimization, порядок @default в @switch) - Codex фидбек отдавали обратно Claude Code — он фиксил и добавлял тесты - Ещё ~3 недели циклов code review → fix, пока Codex не перестал находить серьёзные проблемы В общем, заметка больше интересна как хорошее описание того, как работать с ИИ-агентами. Достаточно подробно описана методика работы и все промпты. Рекомендую посмотреть. https://voidzero.dev/posts/oxc-angular-compiler #development #angular #oxc #rust #vite #ai #voidzero
976
19
Дайджест за 2026-05-04 - 2026-05-08 WebKit PR #63082: site-specific quirk для mouse-focus Вот так вот разрабатываешь сайт, делаешь разные хаки для корректной работы в специфичных кейсах в safari, firefox, webview. А потом оказывается, что если ты достаточно крупный сайт, то это браузеры будут адаптироваться под тебя, а не ты под них. В WebKit смержили интересный PR - костыли, меняющие поведение браузера на thesaurus.com и dictionary.com What's actually new in JavaScript (and what's coming next) Хороший обзор уже вышедших новшеств ES2025 и грядущих новшеств в ES2026. Обзор очень большой - там приводится и краткая история изменений, и примеры в стиле "до и после" и в каких версиях браузеров уже доступны изменения. Поэтому делаю вам обзор на обзор, чтобы вы могли быстро ознакомиться с изменениями. Announcing Rspack 2.0 Вышел Rspack 2.0. За полтора года прошли путь от 100К еженедельных загрузок до 5М. В 2.0 начинают отходить от webpack-дефолтов, но совместимость с webpack-экосистемой сохраняют. Обзор программы HolyJS Буду смотреть HolyJS в онлайне. Точнее один день буду смотреть онлайн, а второй в записи т.к. конфа выпадает на мой день рождения, а у меня там другие планы. Конфа будет проходить 14-15 мая в Москве. Предварительно я глянул тезисы докладов, чтобы разобрать их на категории "мастхев", "сойдет", "точно мимо". Делюсь с вами своим видением программы HolyJS. Но если коротко - программа очень хорошая, хотя некоторые доклады очень странные. —————————————— Спасибо что читаете, ставите реакции, отмечаетесь в комментариях и рассказываете о канале друзьям и коллегам. —————————————— Я работаю в Т-Банке и у нас идет активный найм. Если вам интересна работа в Т-Банке - переходите по ссылке и пишите в личку - отвечу на любые вопросы
787
20
Последняя секция - что-то странное, хардкорное или гиковое. Лично я не буду смотреть, но думаю найдутся люди, для которых тема супер актуальна Послушный дом и JS Умный дом на JS или JS + IoT. Но по мне, если уж делать свой IoT, то надо хардкорить на C и получать кайф не только от крафтовой железки, но и от крафтового кода. Минимально жизнеспособный дизайн: UX для каждого 🐟 Как фронтендеру сделать хороший UX Я не знаю JavaScript 🐟 Доклад про фундаментальные основы JS. С одной стороны может быть интересно, потому что в JS есть контр-интуитивные штуки, с другой - зачем оно надо? Без исходников — UT99 мультиплеер в браузере Мультиплеер для Unreal Tournament прямо в браузере - это круто, но лично я применить не смогу. FSD — это беда, спасет только FDA! 🐟 В Fractal Domain Architecture ключевой принцип "разделяй систему на домены, а домены на под-домены". Доклад одновременно может быть полезным, если углубится в тонкости применения этого принципа, а может быть поверхностным, если фокус будет вокруг обзора альтернатива Чистый Node.js: разработка бэкенда без фреймворков В докладе расскажут как сделать свой Express. Тут вспоминается мем с троллейбусом из буханки хлеба. Можно, но зачем? Креативный код без магии: как графика прокачивает перформанс и мышление Хардкор про оптимизацию рендера в Tree.js
949