Кожен раз починаючи писати React додаток, ви так чи інакше виберіть якийсь варіант:
  • копі-паст вашого попереднього проекту
  • якийсь бойлерплейт або навіть генератор (типу Yeoman)
  • готовий фреймворк не вимагає конфігурації
  • пишете самі все з нуля
Кожен із способів має свої сильні і слабкі сторони, як на довгому, так і на короткій дистанції.
Деякі рішення приховують складність на початку, дозволяючи зробити швидкий старт. Це щось подібне рішення під ключ, але в результаті такі рішення можуть виявитися недостатньо гнучкими і складними в підстроюванні. З іншого боку, на початку все може здаватися злегка монструозным і неповоротким, і щоб почати потрібно трохи повозитися, але зате потім переваги стануть очевидними. Завжди є можливість зробити все з нуля, рівно так, як хочеться, але в такому випадку Ви будете відповідати за незліченні аспекти і Вам будуть потрібні глибокі знання у всіх що беруть участь технологіях.
Читати далі →

Зображення у форматі JPEG, крім власне файлів з розширенням .jpg, можна зустріти всередині PDF і TIFF файлів.
Стейкхолдерів технології JPEG можна, напевно, розділити на наступні групи:
  • розробники фотоапаратів і сканерів;
  • фотографи (великі фотографії у високому дозволі з високими вимогами до якості);
  • соцмережі і CDN'и типу imgix, які роздають залиті фоточки неконтрольованого UGC-походження, кількості та розміру в пережато вигляді;
  • вебмастери, які керують помірною кількістю не-UGC картинок з контрольованою якістю;
  • любителі відсканованих паперових книг та інших історичних джерел;
Автор цієї статті належить в основному до останньої групи, і точно не належить до художніх фотографів. Це повинно вносити в оповідання певний перекіс, який, тим не менш, корисний як раз для ілюстрації можливих траєкторій в просторі рішень.
Читати далі →

Продуктивність старту JavaScript



Веб-розробники знають, як легко розростаються розміри веб-сторінок. Але завантаження сторінки — це не просто передача байтів по дроту. Коли браузер завантажив скрипти, йому потрібно їх отпарсить, інтерпретувати і запустити. У статті ми уважно розглянемо цю фазу і дізнаємося, чому вона може стати причиною уповільнення запуску вашої програми і як це виправити.

Читати далі →

Рефакторинг платіжного процесу Я. Грошей — пробудження сили

<img src=«habrastorage.org/files/a32/bd2/d70/a32bd2d705ce4e9c914eb060191ae8b4.jpg» alt=«image» alt text"/>
Для будь-якого проекту з довгою історією одного разу наступає момент, коли код починає жити своїм життям — просто не залишається тих, хто добре орієнтується в логіці і зв'язках. Додавання нових функцій часом схоже на постріл навмання: може потрапити в ціль, а може — у глядачів.
І тоді приходить він, рефакторинг платіжного процесу. Але ми вирішили зробити процес ще цікавіше, додавши до рефакторінгу ідеї IDEF-0.
Читати далі →

Прискорення Lenta.ru: 3 людини, 2 тижні, поліпшення глибини перегляду на 27%


Денис Паращій, технічний менеджер Lenta.ru, розповів про свій досвід проведення оптимізації сайту в презентації проекту Академія Яндекса. Ми наводимо тут основні моменти з цього виступу (коментарі надані курсивом).

Читати далі →

Мобільний досвід Яндекса в трьох відеокурсу: дизайн, розробка, інтерфейси

У минулому році Яндекс провів експериментальний освітній проект, який отримав назву «Мобілізація». Наша мета була в тому, щоб учасники попрацювали у цій команді і створили справжній продукт — причому продукт мобільний. «Мобілізація» об'єднала Школу мобільного розробки, Школу менеджерів, Школу мобільного дизайну і Школу розробки інтерфейсів
image
Ми запросили 126 студентів з 25 міст; 91 учасник успішно завершив програму. Перший етап складався з лекцій, другий — з тієї самої командної роботи. Зазвичай студента оточують люди тієї ж спеціалізації, що і він сам: менеджери навчаються разом з менеджерами, дизайнери — з дизайнерами і т. д. Але в реальності вам потрібно хоча б по одному представнику кількох професій. У кожну команду увійшли студенти різних шкіл: дизайнер, менеджер і один-два розробника.
Лекції студентам читали співробітники Яндекса, які кожен день стикаються з реальними завданнями і роблять програми для мільйонів користувачів. Спеціально для читачів Хабра ми зібрали повну програму курсу за мотивами лекцій «Мобілізації».
Читати далі →

Зшиваємо SSL-сертифікати правильно на bash

Використання SSL-шифрування на сайтах набуває вже майже обов'язковий характер: Google з цього року почав агресивно попереджати про небезпечний з'єднанні з сайтами, ряд платіжних шлюзів вимагають безпечне підключення на сайтах (наприклад, Яндекс.Каса). Установка SSL-сертифіката на сайт вимагає досить складної технічної налаштування веб-сервера nginx, наприклад). Одним з аспектів цієї установки є використання «зшивання» (stapling) SSL-сертифікатів аж до кореневого для прискорення встановлення безпечного з'єднання з браузерів до сайтів.

SSL stapling дозволяє заощадити для нового відвідувача сайту 0,1-1 секунду (за рахунок економії 1-2 запитів за проміжними сертифікатами з урахуванням DNS-запитів, встановлення з'єднання та отримання даних, кожен із запитів може виконуватися до 500 мс у разі 95 перцентиля користувачів). За замовчуванням, SSL stapling виконується для всіх сертифікатів, завантажених в Айрі.

Зазвичай ланцюжок SSL-сертифікатів, яку повинен запросити браузер, виглядає наступним чином:
SSL-сертифікат сайту — Проміжний SSL-сертифікат [- Проміжний SSL-сертифікат 2] — Кореневий сертифікат SSL
Кореневі SSL-сертифікати завантажені в браузер (в цілях запобігання їх підробки при передачі по мережі). Проміжні SSL-сертифікати можуть бути отримані з SSL-сертифікату сайту («батьківський» сертифікат, яким підписано даний сертифікат, внесений у відповідному полі даного сертифіката). Як це коректно зробити, щоб зшити всі сертифікати та прискорити завантаження сайту в браузері?

Читати далі →

Спосіб боротьби зі зверствующими анти-адблокерами, блокувальниками самих себе

Все вірно, занадто агресивна поведінка навколишнього середовища (виробників контенту) призводить до все більш жорстким спробам цивілізації підпорядкувати навколишній світ собі. У цьому — природна природа людини і людства, тому незнання законів природи приведуть контентчиков до того, що їх надійно захистять. Щоб вони нарешті почали приносити користь, а не рекламу розумним людям.

Поговоримо лише про тенденції, т. к. їх реалізації — це окремі багато глави майбутнього розвитку браузерів. І, треба помітити вони — зовсім не за горами, технології очищення контенту від сміття давно вже є, і варто тільки мусорщикам перейти межу — відплата буде, і зупинити його може лише обмежена швидкість технологічної розробки інструментів. У статті буде показано, що ці технології — досить прості, щоб зробити наступний крок в боротьбі людства за знання про навколишній світ.

TL;DR: є спосіб обійти агресивні анти-адблокеры зараз, в рамках існуючих правил гри, розширення браузерів.

Читати далі →

Швидкість з доставкою до користувача



Анатолій Орлов ( anatolix ), Денис Нагорнов ( Яндекс
Анатолій Орлов: Всім привіт! Мене звуть Анатолій. Я останні 10 років працював в Яндексі. В Яндексі я займався різними речами, але так вийшло, що на HighLoad я завжди доповіді роблю про швидкість різного виду. У мене є співдоповідач — Денис Нагорнов, він і зараз працює в Яндексі і займається, крім усього іншого, не повірите, теж швидкістю.

Доповідь називається «Швидкість з доставкою до користувача». Як ви знаєте, величезна кількість компаній намагаються оптимізувати завантаження своїх сторінок. Деякі компанії так пишаються досягнутими результатами, що вони ці результати пишуть на своїх сторінках, причому навіть не внизу, а вгорі.

Наприклад, скріншот з сайту Google:

Читати далі →