Category : javascript

javascript
Почему твой await fetch тормозит — и как это исправить

Привет, Хабр!Сегодня рассмотрим, почему безобидная строчка await fetch() неожиданно превращается в тормоз, где именно она зарывает драгоценные миллисекунды — и что можно сделать с этим.Холодные TCP-соединения: 200 мс на ровном местеСимптом: первый запрос к API стабильно дольше остальных, а при бурсте скачет в космос.Каждый fetch() в лоб открывает новый сокет: 1×DNS, 1×TCP-handshake, 1×TLS. Средний RTT в Европе ~50 мс, умножаем — получаем сотни лишних миллисекунд.Бенчмарки показывают 3-кратный …

  • четверг, 29 мая 2025 г. в 00:00:08
javascript
1С: Кабинет сотрудника: Как мы чинили то, что называлось «готовым продуктом»

Привет, Хабр (и просто случайные читатели, зашедшие сюда в поисках истины или интересной статейки на пару минут)! Сегодня я расскажу вам историю о том, как я провёл полгода в тесных объятиях «1С: Кабинет сотрудника» на новой технологии 1С:Элемент — системы, которая обещала сделать кадровый документооборот простым, как бутерброд с колбасой. Но, как выяснилось, бутерброд этот оказался с сюрпризом… то ли огурцом, то ли гвоздём.Изображение сгенерировано ChatGPT Впрочем, не будем забегать вперёд. П…

  • четверг, 29 мая 2025 г. в 00:00:07
javascript
Обзор инструмента Webpack Bundle Analyzer

В первой статье цикла об исследовании инструментов для анализа производительности сайта мы рассмотрели вкладку Performance. В этом материале познакомимся с таким пакетом как Webpack Bundle Analyzer. В качестве тестового проекта использована сборка на базе Next.js 15-й версии с app router.Общие сведенияWebpack Bundle Analyzer - это npm пакет, который может наглядно продемонстрировать: как ваш проект разбивается на части;сколько эти части весят;какие npm-пакеты загружаются вместе с вашим кодом вн…

  • четверг, 29 мая 2025 г. в 00:00:06
javascript
Как красиво признаться в любви не покупая цветы и конфетки с плюшевым мишкой на память, используя ч…

JacquardСсылка на GitHub: https://github.com/JacqquardСсылка готовый пример жмякХочу поделиться идеей, как сделать признание в любви особенным, запоминающимся и искренним, не прибегая к классическим цветам или банальным текстам в телеграме/вацапе на миллиард строк. Я расскажу про интерактивный веб-сайтик, который можно создать своими руками, чтобы передать свои чувства. Это не просто слова, а целая история, которая разворачивается на экране, погружая человека в атмосферу тепла и эмоций. Код, ко…

  • четверг, 29 мая 2025 г. в 00:00:04
javascript
Temporal и в целом работа с датой, временем и часовыми поясами

Всем привет! Меня зовут Дмитрий, и я занимаюсь веб-разработкой в IT-компании Intelsy, работая как на аутсорс-, так и на аутстафф-проектах. В своей работе я постоянно сталкиваюсь с задачами, связанными с датами и временем, и давно заметил, что стандартный объект Date в JavaScript часто доставляет много неудобств. Мне захотелось разобраться, почему так происходит и какие современные решения помогают упростить эту работу. Это привело меня к изучению нового API Temporal — перспективного инструмента…

  • четверг, 29 мая 2025 г. в 00:00:04
javascript
Pocupochki: когда лень писать список покупок, но есть 2 часа и доступ к Gemini

ВступлениеПривет, Хабр! Опять я со своим «а что если попросить artificial intelligence...». В этот раз попросил сразу две — одна нарисовала интерфейс, вторая написала код. Получилось настолько рабочее, что сам теперь пользуюсь. Исходники на GitHub, демо живое — все ссылки в конце, но сначала расскажу, как это было. 20 мая прошла 18-я конференция Google I/O 2025, на которой показали довольно много всего интересного. И меня, как дизайнера, очень сильно заинтересовал новый сервис stitch.withgoogle…

  • среда, 28 мая 2025 г. в 00:00:11
javascript
Как мы мертвый код убивали

В апреле я съездил на HolyJS. Еще до поездки в расписании конференции моё внимание привлек доклад Виктора Хомякова «Удаление мертвого кода в проекте: практическое руководство». Послушав его, я понял, что могу использовать полученные знания в своем текущем проекте, при этом не затрачивая много усилий. В этой статье я расскажу, что у меня получилось.Что такое мертвый кодМертвый код — это участки кода или зависимостей, которые: Никогда не выполняютсяНе используются нигде в проектеВключают ненужны…

  • среда, 28 мая 2025 г. в 00:00:10
javascript
CSS и XPath — отстой. Секрет стабильных автотестов в test-id

ВступлениеВы вообще в курсе, что такое CSS и XPath селекторы? Ну конечно в курсе — раз уж кликнули на эту статью, наверняка пережили хотя бы один из тех унылых споров в духе «а что лучше: CSS или XPath?» Спойлер: ни то, ни другое. Все эти разговоры — просто шум, рожденный из некомпетентности. Вот эти бесконечные обсуждения — «а XPath может по тексту», «а CSS быстрее», «а вот тут индекс нужен»... Да какая, к чёрту, разница, когда можно просто использовать тестовые идентификаторы?Серьёзно. Если у…

  • среда, 28 мая 2025 г. в 00:00:09
javascript
Проектируем архитектуру Camunda Cloud: подключаем движок процессов к вашему миру

Вы начали свой первый проект, используя автоматизацию бизнес-процессов как сервис с Camunda Cloud? Одной из первых задач будет набросать базовую архитектуру вашего решения. Этот блог-пост поможет вам ответить на важные начальные вопросы: как подключить движок выполнения процессов Zeebe к вашему приложению или к внешним системам? Что такое job worker, какую роль он играет и сколько их вообще нужно?Подключение движка процессов к вашему приложениюДвижок процессов Zeebe — это удалённая система для …

  • среда, 28 мая 2025 г. в 00:00:07