Введение в DOM Clobbering, малоизвестный тип атаки на фронтенд, основанный на внедрении чистого HTML (в отличие от классического XSS с внедрением JS-кода) → https://www.htmhell.dev/adventcalendar/2022/12/
Коллеги, с наступающим! Пусть новый год пройдёт так, чтобы в 2024 вашими самыми серьёзными проблемами были стилизация селекта и выбор фреймворка для нового проекта. Всем мирного неба, нет войне!
Подсчёт уникальных посещений сайта без использования кук и фингерпринтинга: Ник Малвэни делится хитрым способом аналитики посещений без нарушения приватности пользователей → https://notes.normally.com/cookieless-unique-visitor-counts/
Текстовые фрагменты: обзор нового браузерного API, позволяющего ссылаться на конкретные отрывки текста на странице → https://web.dev/text-fragments/
Software Engineering at Google, книга об инженерных практиках, применяемых в Google для поддержания и развития кодовой базы в течение долгого времени. Доступна онлайн бесплатно → https://abseil.io/resources/swe-book
Почему не стоит использовать пиксели для задания размера шрифта в CSS: Джош Коллинсворт объясняет, как различные единицы измерения влияют на UX → https://joshcollinsworth.com/blog/never-use-px-for-font-size
Быстрый фронтенд Microsoft Bing: обзор ключевых техник и подходов, используемых инженерами Bing для оптимизации фронтенда поисковой выдачи → https://blogs.bing.com/search-quality-insights/august-2022/Fast-Front-End-Performance-for-Microsoft-Bing
37 заблуждений о датах и времени: в году не всегда 12 месяцев и 365 дней, неделя не всегда начинается с понедельника и другие примеры нюансов, о которых стоит знать при работе с датами и временем → https://www.meziantou.net/misconceptions-about-date-and-time.htm
Доступность в дизайне: Роман Шамин рассказывает о практических приёмах, требующих 20% усилий дизайнера и обеспечивающих 80% доступности экранных интерфейсов → https://teletype.in/@romanshamin/a11y-for-designers
Введение в ShadowRealm, новый API для выполнения JS-кода в отдельном изолированном контексте → https://developer.salesforce.com/blogs/2022/04/introducing-shadowrealm
Как мы реализовали r/Place: команда Reddit делится деталями реализации огромного многопользовательского холста для рисования в режиме реального времени → https://www.redditinc.com/blog/how-we-built-rplace
Новая система конфигурации ESLint
1. Предпосылки: как развивалась старая система конфигурации и какие в ней были проблемы
2. Как устроена новая система конфигурации
Новая система уже доступна в свежей версии ESLint.
1. Предпосылки: как развивалась старая система конфигурации и какие в ней были проблемы
2. Как устроена новая система конфигурации
Новая система уже доступна в свежей версии ESLint.
initial-letter: новое CSS-свойство, упрощающее вёрстку буквиц, позволяя настраивать их размер и смещение пропорционально строкам абзаца → https://developer.chrome.com/en/blog/control-your-drop-caps-with-css-initial-letter/
Организуем библиотеку иконок в проекте с автоматической выгрузкой из Figma: Михаил Кононенко из Joom делится опытом автоматизации и упрощения работы с иконками → https://habr.com/ru/company/joom/blog/708286/
SSSVG, справочник по основным возможностям SVG с интерактивными примерами → https://fffuel.co/sssvg/
Как избежать заморозки интерфейса из-за тяжёлых вычислений: подробный обзор существующих API и подходов к разбиению тяжёлых вычислений на отдельные откладываемые части → https://web.dev/optimize-long-tasks/
Как релизить в продакшен? Обзор используемых в разных компаниях подходов и инженерных практик, позволяющих повысить надёжность релизов и ускорить их → https://blog.pragmaticengineer.com/shipping-to-production/
Чему npm может научиться у Go: инженеры Hardfin рассказывают о более безопасном и надёжном подходе к работе с зависимостями в Go и делятся собственным инструментом, реализующим этот подход для NPM → https://engineering.hardfin.com/2022/05/npm-mod/
Будущее core-js, самой продвинутой библиотеки полифилов, поддерживаемой единственным разработчиком Денисом Пушкаревым и используемой на доброй половине крупнейших сайтов интернета → https://github.com/zloirock/core-js/blob/master/docs/2023-02-14-so-whats-next.md
Денис делится глубоко личной историей, включающей уход с фултайм-работы ради опенсорса, попытки найти финансирование и борьбу с волной ненависти из-за этого, поддержку проекта на плаву во время отсидки в российской колонии из-за трагического ДТП.
Во второй части Денис описывает своё видение дальнейшего развития core-js и описывает возможные пути его реализации, наиболее предпочтительный из которых — получение стабильного финансирования от крупных компаний, использующих core-js.
Если вы работаете в крупной компании и используете core-js, попросите вашего CTO поддержать Дениса — способы описаны в конце статьи.
Денис делится глубоко личной историей, включающей уход с фултайм-работы ради опенсорса, попытки найти финансирование и борьбу с волной ненависти из-за этого, поддержку проекта на плаву во время отсидки в российской колонии из-за трагического ДТП.
Во второй части Денис описывает своё видение дальнейшего развития core-js и описывает возможные пути его реализации, наиболее предпочтительный из которых — получение стабильного финансирования от крупных компаний, использующих core-js.
Если вы работаете в крупной компании и используете core-js, попросите вашего CTO поддержать Дениса — способы описаны в конце статьи.
WebContainers, новый инструмент от разработчиков онлайн-IDE StackBlitz, позволяющий развернуть полноценное Node.js-окружение с виртуальной файловой системой прямо в браузере → https://webcontainers.io