For Web — фронтенд, дизайн, программирование
14.6K subscribers
5.47K photos
7 videos
5 files
1.74K links
Новости и полезности для фронтендеров.
Поддержать, чтобы в канале не было рекламы:
https://patreon.com/forweb
https://boosty.to/forweb
Download Telegram
Как оптимизировать изображения с помощью Вебпака, Иван Акулов с практическими советами — https://iamakulov.com/notes/optimize-images-webpack/
Как прокачиваться джуниорам, Дин Хьюм делится советами и материалами для изучения — https://24ways.org/2017/levelling-up-for-junior-developers/
postcss-preset-env, аналог babel-preset-env для стилей, автоматически подключает нужные postcss-плагины на основе списка поддерживаемых браузеров — https://github.com/jonathantneal/postcss-preset-env
Что происходит, когда вы заходите на ft.com? Сэм Паркинсон с обзором сетевой инфраструктуры Financial Times — https://medium.com/p/b2119a2f422d
Как устроен turbo, быстрый и работающий в браузере NPM-клиент для онлайн-редактора StackBlitz — https://medium.com/p/cc2c39715403
От JSONP к CORS: руководство Ивана Гришаева по кроссдоменным запросам — https://grishaev.me/cors
Как использовать DOM Ranges не только для програмнного выделения текста на странице, но и для производительной манипуляции DOM — https://calendar.perfplanet.com/2017/mutating-web-content-using-dom-ranges/
TLDR pages, человекопонятная альтернатива man-страницам для распространённых команд терминалов Linux/Windows — https://tldr.sh/
Запись 16 докладов с Fronteers 2017: синдром самозванца, рабочий процесс, WASM, WebVR, веб-компоненты, доступность и другие темы — https://vimeo.com/channels/fronteers17
sqip, инструмент командной строки для генерации изображений-заглушек на основе SVG по технике LQIP (low quality image placeholders) — https://github.com/technopagan/sqip
This media is not supported in your browser
VIEW IN TELEGRAM
Voxel Space, демонстрация и объяснение принципа работы крайне маленького алгоритма отрисовки трёхмерного ландшафта — https://github.com/s-macke/VoxelSpace
Сборник практических рекомендаций по отладке JavaScript-приложений, от предотвращения потенциальных ошибок до поиска источников существующих ошибок — https://github.com/glebec/debugging-js
[Вакансия, Москва, Тинькофф-журнал]
Привет! Меня зовут Арсений, я технический директор Тинькофф-журнала. Это такое ежедневное издание про деньги, которое читает полтора миллиона человек.

Я ищу опытного разработчика, который будет проектировать, поддерживать и развивать фронтенд-архитектуру сайта.

Что нужно делать?
Разработчик, которого я ищу, погружен в жизнь проекта, разбирается в задаче, работает в связке с арт-директором, держит в голове структуру стилей во всем журнале. Стили обновляются часто, поэтому все нужно постоянно рефакторить и улучшать. Ведущий фронтендер берет на себя этот процесс: тестирует код, борется за его чистоту, добивается, чтобы ни на каких девайсах нам не было стыдно за результат.

Сами статьи верстать не нужно, для этого есть другие ребята.

Мы онлайн-медиа, поэтому порядок в стилях для нас — это главное. Но у нас много и больших инфраструктурных задач. Пока вы читаете эту вакансию, мы запускаем авторизацию и комментарии. Дальше будет динамическая выдача статей на основе персонализированных рекомендаций. Потом своя мини-издательская платформа для авторов. Разработчик, которого я ищу, должен будет отвечать за фронтенд-архитектуру всех новых систем.

Технологии
ES6, (p)React, CSS (БЭМ) + PostCSS, Gulp + Webpack

Условия
Мы ищем сотрудника на полную занятость, поэтому у вас будет белая зарплата, ДМС, офис и бесплатный спортзал на м. «Водный стадион». Работа бок о бок с техдиром, артдиром и менеджером по продукту.

Расскажите о себе и своем опыте: @arsgab или [email protected]
Форматирование чисел в браузере

Если вам нужно отформатировать числа в браузере, не подключайте для этого сторонние библиотеки и не пишите велосипеды, а используйте нативный Intl.NumberFormat. Простой пример:

const numberFormatter = new Intl.NumberFormat();

numberFormatter.format(12345.67); // -> 12 345,67


По умолчанию NumberFormat использует правила системной локали. При необходимости можно указать нужную локаль: new Intl.NumberFormat('en-US'). Вторым аргументом передаются опции вроде минимального/максимального количества знаков после запятой, подробнее в документации.

Intl поддерживается начиная с IE 11 и Safari 10, на мобильных поддержка хуже, поэтому нужно при открытии страницы проверять поддержку и при её отсутствии подгружать полифил.

Проще всего использовать сервис Polyfill.io от Financial Times:

<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=Intl.~locale.en"></script>


Polyfill.io проверяет по юзерагенту, какие фичи не поддерживает браузер, и отдаёт полифилы только для них.
Frontend Weekend №31, в гостях Дмитрий Чекин: о создании CSSSR и особенностях удаленной работы фултайм —
https://soundcloud.com/frontend-weekend/fw-31
Как сделать CLI-инструменты более дружелюбными, Анна Дебенхем на примере собственного инструмента для сбора интересных ссылок — https://24ways.org/2017/teach-the-cli-to-talk-back/
Как оценивать сроки выполнения задач? Александра Шинкевич с советами и обзором техник — https://lovata.com/blog/guide-to-time-estimation-project-estimation-techniques-tips-tricks.html