Интересные публикации
Ингвар Степанян (Ingvar Stepanyan) в статье на web.dev рассказывает о тредах в WebAssembly: как они были реализованы и как ими пользоваться. Примеры есть на языках C, C++ и Rust. Также в статье есть примеры из реального мира, например, треды используют в Google Earth.
Мартин Фиткевич (Martin Fietkiewicz) сделал сравнение HTTP и веб-сокетов с погружением в историю. Он написал короткий обзор всех версий HTTP и проанализировал их плюсы и минусы. Такой же анализ он проводит и по веб-сокетам. В итоге Мартин приходит к выводу, что для приложений, работающих в реальном времени, веб-сокеты — лучший выбор из-за дуплексной модели работы, событийности и безопасности.
Ахмад Шадид (Ahmad Shadeed) в этот раз гостит на SmashingMagazine со статьей о HSL цветах. Напомню, что HSL цвета основаны на цветовом круге RGB и выражаются тремя параметрами: оттенком, насыщенностью и яркостью. Оттенок выражается углом, а яркость и насыщенность — процентами. В своей статье Ахмад рассказывает о самой модели, делится кейсами и примерами, а также объясняет, чем могут помочь HSL цвета прямо сейчас.
Вышла третья часть разбора технического интервью от CSSSR на позицию Senior-разработчика. В этой части речь пойдет о том, как стандартизировать определенные технические практики в команде, о жизненном цикле ПО — проверке качества и соответствия требованиям, а также затронем CI/CD и саппорт.
Темани Афиф (Temani Afif) на css-tricks опубликовал статью о сложных CSS-трансформациях с использованием кривых Безье и кастомных CSS-свойств. Это продолжение его статьи о CSS-анимациях с применением функции кривой Безье, а в этот раз он строит еще более сложные трансформации с использованием нового свойства @property. Если не видели первую статью и интересуетесь CSS-трансформациями — обязательно взгляните на обе.
Рейчел Эндрю (Rachel Andrew) продолжает просвещать нас на разные темы. В этот раз она рассказывает о выравнивании внутри флекс-контейнеров. Речь об относительно новых парах значений свойства align-items: start, end и self-start, self-end. Они уже доступны в Firefox и будут доступны в Chrome 93. С flex-start и flex-end вы уже, наверняка, знакомы. В целом, они делают похожие вещи, но есть нюансы, которые Рейчел и показывает на примерах. Заметка короткая и очень понятная, рекомендую.
Как можно использовать новый псевдоселектор :where() для управления специфичностью стилей? Муштабо Сиеди (Mojtaba Seyedi) подумал, что не хочет переопределять в ресетах дефолтные стили браузеров или увеличивать специфичность стилей каким-то другим способом. Он узнал о :where() и о том, что его специфичность всегда нулевая, и применяет на примере со списками в своей статье на css-tricks.
Хотите порадовать свою дизайн-команду? Или, может быть, вы и есть дизайнер, который хочет создать свой плагин для Figma? Том Кинонеро (Tom Quinonero) в своем блоге написал статью о создании плагина при помощи Svelte, а для тех, кто не хочет делать его с нуля, он оставил на GitHub репозиторий, который можно просто клонировать и попробовать себя в создании плагинов.
Мишель Баркер (Michelle Barker) на SmashingMagazine рассказывает, как создать динамический компонент хедера сайта. Для примера она создает хедер с меню, цвет которого меняется при скролле. Для реализации используется Intersection Observer, а в конце есть несколько ссылок на материалы по теме.
После небольшого перерыва Адам Аргайл (Adam Argyle) продолжил свою серию статей, в которой он реализует разные компоненты. В этот раз пациент — хлебные крошки. Хлебные крошки не вполне стандартные, они позволяют просматривать иерархию страниц и переходить на них. Как в предыдущих статьях серии приводится объяснение UX и пошаговая реализация. Есть и видео-версия.
Завершит рубрику devtoolstips.org. Как можно догадаться по домену, это ресурс-сборник трюков и полезных советов о наших любимых девтулзах.
Новости релизов
Доступен Firefox 90. В этой версии улучшили SmartBlock, была удалена встроенная реализация протокола FTP, на Windows Firefox теперь умеет обновляться в фоновом режиме. Конечно же, прилетели обновления поддержки JavaScript и улучшения DevTools, также был устранен ряд уязвимостей и исправлены баги.
Node.js 16.5.0 увидел свет. Главное нововведение — экспериментальная поддержка Web Streams API. Напомню, это API, который позволяет программно получить доступ к передаваемым по сети потокам данных с помощью JavaScript и обработать их по желанию разработчика.
Более объемным был релиз Deno 1.12. Нативный HTTP-сервер теперь поддерживает веб-сокеты, была добавлена поддержка тредов в WebAssembly, REPL теперь поддерживает TypeScript.
NoSQL СУБД MongoDB отметилась релизом пятой мажорной версии.
Также в этом выпуске отмечу грядущий релиз фреймворка Ember 4.0 и Laravel 8.50.
Другие новости
Ещё одна небольшая новость о Deno. Напомню, что в конце марта была образована Deno Company. Это случилось после того, как удалось привлечь 5 миллионов долларов инвестиций. Было объявлено, что сам Deno останется под лицензией MIT и его не будут монетизировать, но будут создавать монетизируемые продукты на базе Deno. Видимо, начало положено. Вышла бета Deno Deploy. Как можно догадаться из названия, продукт может задеплоить проект на Deno, хостить его на сервере и так далее. Отмечается, что используется собственная инфраструктура — никаких AWS и Cloudflare, — что позволяет добиться быстрых деплоев. Подробнее — в блоге Deno, а бету уже можно попробовать, больше постараемся рассказать в следующих выпусках.