Как использовать CSS-переменные с умом? Обзор основных паттернов и антипаттернов от Майка Райтмюллера → https://www.smashingmagazine.com/2018/05/css-custom-properties-strategy-guide/
Редизайн с большой буквы: запись и расшифровка рассказа Виталия Фридмана о процессе и технических деталях перезапуска Smashing Magazine в 2017 году → https://habr.com/p/358642/
🎧
Свежие подкасты
RadioJS №52, в гостях Андрей Мелихов и Вячеслав Слинько: о микросервисах на фронтендре → https://radiojs.ru/2018/05/%D0%B2%D1%8B%D0%BF%D1%83%D1%81%D0%BA-52-%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B-%D0%BD%D0%B0-%D1%84%D1%80%D0%BE%D0%BD%D1%82%D0%B5%D0%BD%D0%B4%D0%B5/
«Веб-стандарты» №121: что за GDPR, про браузеры, CSS — это дизайн, движение по кривой, все пробелы, динамический NodeList, критика CSS-in-JS, синдром устаревания, нессылки → https://medium.com/p/c294a94562cf
Frontend Weekend №53, в гостях Виталий Слободин: об истории поддержки PhantomJS и развитии Ростовского IT-сообщества → https://soundcloud.com/frontend-weekend/fw-53
Свежие подкасты
RadioJS №52, в гостях Андрей Мелихов и Вячеслав Слинько: о микросервисах на фронтендре → https://radiojs.ru/2018/05/%D0%B2%D1%8B%D0%BF%D1%83%D1%81%D0%BA-52-%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B-%D0%BD%D0%B0-%D1%84%D1%80%D0%BE%D0%BD%D1%82%D0%B5%D0%BD%D0%B4%D0%B5/
«Веб-стандарты» №121: что за GDPR, про браузеры, CSS — это дизайн, движение по кривой, все пробелы, динамический NodeList, критика CSS-in-JS, синдром устаревания, нессылки → https://medium.com/p/c294a94562cf
Frontend Weekend №53, в гостях Виталий Слободин: об истории поддержки PhantomJS и развитии Ростовского IT-сообщества → https://soundcloud.com/frontend-weekend/fw-53
Почему display: contents; нельзя использовать как CSS-ресет? О его пагубном влиянии на доступность и истинном предназначении рассказывает Адриан Розелли в переводе CSS-Live → http://css-live.ru/articles/display-contents-ne-css-sbros.html
Как потерять друзей и заставить всех себя ненавидеть, делая кодревью? Людмила Мжачих с советами по нейтрализации конфликтов и максимизации пользы от ревью как для ревьюеров, так и для тех, чей код ревьюят → https://medium.com/p/11fec8e17000
Куда и зачем расти мидлу? Фёдор Борщев о трёх путях: ничего не делать, расти в сеньоры, пойти в тимлиды/менеджеры → https://borshev.com/middle-way/
This media is not supported in your browser
VIEW IN TELEGRAM
Как с помощью современных возможностей CSS быстро реализовать ночной режим для вашего приложения или сайта → https://medium.com/p/3518dde2955a
Не забывайте добавлять type="button" ко всем кнопкам, которые не сабмитят формы, напоминает Лия Веру → http://lea.verou.me/2018/05/never-forget-typebutton-on-generated-buttons/
Запись встречи с Виталием Фридманом в офисе Wrike: лекция и круглый стол о дизайне с приглашёнными экспертами → https://habr.com/p/359028/
Детальный обзор Angular и рецепты его использования в новом скринкасте Степана Суворова: синтаксис шаблонов, компоненты и директивы, сервисы, внедрение зависимостей, маршрутизатор, реактивные формы, юнит-тесты → https://learn.javascript.ru/screencast/angular
Как эффективно решать поставленные задачи и проблемы, а не слепо метаться в поисках подходящего решения, обзор базовых принципов → https://dev.to/richardreeze/how-to-think-like-a-programmerlessons-in-problem-solving-5096
Как реализовать механизм обновления приложения на основе сервис-воркера (например, PWA) с запросом подтверждения у пользователя, руководство Дина Хьюма → https://deanhume.com/displaying-a-new-version-available-progressive-web-app/
Как конвертировать веб-анимацию в GIF или видео, исчерпывающий обзор возможных подходов от Ноя Велтмана → https://github.com/veltman/gifs
USA Today в связи с принятием GDPR запустила отдельную версию сайта для граждан ЕС, на которой убрана вся реклама и трекинговые скрипты. Марсель Фрайнбихлер провёл анализ быстродействия → https://twitter.com/fr3ino/status/1000166112615714816
TL; DR:
Объём загружаемых данных: 5.2 МБ → 500 КБ
Время загрузки: 45 сек. → 3 сек.
Количество запросов: >500 → 34
TL; DR:
Объём загружаемых данных: 5.2 МБ → 500 КБ
Время загрузки: 45 сек. → 3 сек.
Количество запросов: >500 → 34