Интересные публикации
Мы выпустили второй эпизод нашего сериала «История фронтенда». Он посвящен JavaScript, истории развития его стандарта ECMAScript и экосистемы. Еще подробнее об этой части истории можно почитать в нашем блоге — как и в первом выпуске, мы сопроводили видео статьей с дополнительными материалами.
Если вы интересуетесь историей веба, можно также почитать цикл статей от Джея Хоффмана (Jay Hoffmann) на CSS-Tricks. Пока что вышло 8 частей, последняя была опубликована буквально вчера, она посвящена CSS.
Продолжается серия о производительности. Джейк Арчибальд (Jake Archibald) взялся за сайт Google I/O и вписывает его в таблицу с сайтами Формулы-1. На малопроизводительном устройстве он загружается за 26 секунд. Главная проблема: этот сайт — SPA, поэтому нужно загрузить большой объем данных для отображения контента. Кроме того, не используется код-сплиттинг и в бандл попадает много некритичного кода. А еще загружается достаточно тяжелый шрифт всего лишь для одной иконки. В итоге cайт Google I/O оказался быстрее только сайта Феррари.
Помните те самые ошибки в консоли с непонятной и страшной аббревиатурой? Илья Ефтимов в своем блоге опубликовал статью о CORS. Он рассказывает об истории развития CORS и механизме его работы. Также он делится лучшими практиками работы с ресурсами из разных источников.
Луи Лазарис (Louis Lazaris) написал гайд для новичков по настройке webpack. Как и принято в гайдах для начинающих, он рассказывает об инструменте, о создании бандла и базовой конфигурации. Также он касается запуска webpack через npm-скрипт и настройки hot-reload. Получился довольно неплохой и доступный пошаговый гайд.
Никита Дубко написал заметку о новом Cookie Store API. Работа с куками не самая очевидная вещь во Вселенной — у нее много подводных камней, а спецификация устарела. Никита показывает «старый» способ работы с куками и сравнивает его с новым API на примере одинаковых операций. Имейте в виду, что Cookie Store API доступен начиная с Chrome 87, его можно заполифилить, но с некоторыми ограничениями. Поэтому стоит использовать осторожно.
Павел Лаптев в своем блоге на Medium выложил статью о том, как при помощи Houdini API создавать более сложные формы, чем позволяет CSS. Его не устраивала форма, которую может предложить стандартный border-radius, он поискал реализации более сложных форм. В итоге Павел показывает, как при помощи Houdini Paint API и кривых безье создать квадрат с кастомной кривизной углов.
Завершает рубрику ресурс dotfiles.github.io. Задумайтесь, дотфайлы есть в каждом проекте, и от них зависит многое. На этом сайте можно найти туториалы и инструменты для работы с дотфайлами, а также много примеров дотфайлов других разработчиков и подсказок.
Новости релизов
Вышел Safari 14.1. В CSS добавили поддержку gap для flexbox. Добавлены индивидуальные свойства трансформации элементов: scale, rotate, translate. В JavaScript появилась поддержка приватных полей и публичных статических полей класса. В API интернационализации были добавлены новые методы, и был реализован пропозал WeakRef. Не обошлось и без небольшого обновления DevTools. Раскладку инспектора элементов изменили, добавили панель с информацией о шрифтах на странице, а отладчик теперь поддерживает logpoints.
Следующий релиз — Next.js 10.2. Production-сборка была ускорена на 60%, а запуск next dev — на 24%. Были представлены улучшения доступности, расширенная функциональность redirects/rewrites и автоматическая оптимизация шрифтов.
Доступна седьмая версия RxJS. Она на 50% меньше в бандле, обзавелась более консистентным API и улучшенными тайпингами. Есть и ломающие изменения: RxJS требует TypeScript 4.2, изменились типы ошибок, поменялось создание Subscriber. Подробнее — в документации к новой версии.
Уже далеко не всеми любимый стейт-менеджер Redux отметился обновлением. Оно не то чтобы невероятное: размер версии 4.1 уменьшился на 40%, также были улучшены сообщения об ошибках.
Вышел Babel 7.14. В этой версии свойства классов и приватные методы включены по умолчанию, также была добавлена поддержка выражения async do.
Другие новости
Google I/O 2021 пройдет с 18 по 21 мая. В программе как всегда все достижения Google за год: новинки Android, веб-платформы, машинного обучения, Flutter и другие направления. Мероприятие пройдет онлайн, в программе можно удобно отфильтровать доклады не только по теме, но и по уровню докладов.
Вслед за Vue Angular прекращает поддержку IE11. В 12 версии поддержка IE11 получит статус deprecated, а в 13 версии будет удалена совсем.
И последняя короткая новость: Facebook присоединился к Rust Foundation.