Многие что-то слышали про основной поток и о том, что его нельзя блокировать. Но что это на самом деле такое? Если есть основной, значит, есть и второстепенные? Попробуем разобраться и не запутаться.
Amongst all the platforms for app development, the web is arguably the only one that does not make good use of threading. On the web, the main thread has a lot of responsibilities, and we keep adding…
Сейчас, в эпоху клиентских фреймворков, мало кто задумывается, как работают привычные нам вещи в браузере, вроде событий или анимаций. Мы часто следуем „лучшим практикам“ и не задумываемся, почему он…
Расскажу про то, как делать веб быстрым, почему нужно заниматься скоростью, как измерять скорость и покажу примеры из жизни настоящих ускорений.
Elm — это функциональный язык программирования, в котором нет runtime exceptions, зато есть очень дружественный компилятор. Рефакторинг кода на абсолютно новом уровне! Если проект собрался — значит о…
В данном докладе мы рассмотрим комплексный подход к решению проблемы взаимодействия в режиме реального времени с датасетами в сотни тысяч элементов. Посмотрим и проверим, что сработало, а какие идеи …
What exciting things happened in the JavaScript language and the V8 engine in 2019? Shu and Leszek take a tour of some new features and improvements. For JavaScript, learn about new syntax, like opti…
В индустрии уже давно сформированы стандарты производительности веб-приложений — это инициатива Web Vitals. Тем не менее, это не страхует программистов от ложных путей оптимизации Performance-метрик.…
Пользователь закрывает вкладку в браузере и ваше замечательное фронтенд-приложение испаряется. А что, если можно было бы оставить какие-то его части, и еще немного поработать во благо улучшения UX? О…
Многих останавливает разработка на WASM, потому что придётся учить С или Rust, популярные в WASM-сообществе, но есть решение — AssemblyScript. Он позволяет писать на TypeScript и компилировать бинарн…
Сравним различные подходы к реактивному программированию. Вытащим на поверхность их подводные камни. И разберём как реактивность решает или наоборот усугубляет проблемы.
Фронтенд — это огромное количество форм, представляющих собой однотипный код, который нужно писать и поддерживать для разных платформ. Нашего брата, фронтендера, порой называют обидным словом «Формаш…
Скорее всего, вы сталкивались с проблемой, когда ваш React-компонент становится большим, сложным и в нем появляется куча условий. Согласитесь, такие компоненты сложно читать, ревьюить и вообще понима…
Анимация — неотъемлемая часть любого нынешнего веб-интерфейса. Виталий Калашников рассказывает про аппаратное ускорение анимаций, как использовать вычислительную технику при создании динамического ве…
Рендерить всё — это слишком медленно. Подстраиваться под ограничения виртуального скролла — сложно. Встречайте полностью виртуальный рендеринг, гарантирующий отзывчивость приложения независимо от ра…
Как автоматизировать работу фронтендеров и не создать ещё один бесполезный велосипед? Каждый программист в какой-то момент хочет автоматизировать свою работу скриптами. Обычно из этого получается наб…
"Can we do this thing drag and droppable?". That’s one of the sentences that every front end developer fears the most. There are many DnD libraries out there but did you ever consider building someth…
Chrome's extensions platform is undergoing a sea change. Nearly 6 years after the current manifest version was introduced, we are revving it again. Manifest V3 rethinks several of the basics about ho…
Современный фронтенд — это богатое клиентское приложение, оперирующее развесистым набором данных. Однако, оставаясь в парадигме архитектуры «клиент-сервер», такие приложения всё ещё требуют серверног…
Каждый когда-то слышал, что десктопные приложения можно разрабатывать с использованием web-технологий. Но как? Для чего? Именно на эти вопросы я постараюсь вам ответить и показать, насколько мощным …