Как стать автором
Обновить
5
0
Антонина Листопадова @AntoninaList

Frontend

Отправить сообщение

Цикл жизни дизайн-систем

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров2.5K

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

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии0

ИБ-аудит в финансовых организациях: что надо знать, чтобы не провалить или не затянуть

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров3.2K

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

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии2

Разбираем HTTP/2 по байтам

Уровень сложностиСредний
Время на прочтение24 мин
Количество просмотров29K

image


Откройте любую статью с обзором HTTP/1.1. Скорее всего, там найдётся хотя бы один пример запроса и ответа, допустим, такие:


GET / HTTP/1.1
Host: localhost

HTTP/1.1 200 OK
Date: Sat, 09 Oct 2010 14:28:02 GMT
Server: Apache
Content-Length: 38
Content-Type: text/html; charset=utf-8

<!DOCTYPE html>
<h1>Привет!</h1>

Теперь откройте статью с обзором HTTP/2 или HTTP/3. Вы узнаете о мультиплексировании запросов, о сжатии заголовков, о поддержке push-технологий, но вряд ли увидите хоть одно конкретное сообщение. Ясно, почему так: HTTP/1.1 — текстовый протокол, тогда как сиквелы к нему бинарные. Это очевидное изменение открывает дорогу ко множеству оптимизаций, но упраздняет возможность просто и доступно записать сообщения.


Поэтому в этой статье предлагаю покопаться в кишках у HTTP/2: разобрать алгоритмы установки соединения, формат кадров, примеры взаимодействия клиента с сервером.

Читать дальше →
Всего голосов 115: ↑115 и ↓0+115
Комментарии45

Делаем классные проекты, а кейсы получаются унылые. В чем проблема?

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров1.5K

Рассказываю о 8 причинах, почему в рассказах о работе не выходит показать, какие вы на самом деле классные и профессиональные.

Читать далее
Всего голосов 7: ↑2 и ↓5-1
Комментарии2

MVP – как сделать его круто

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров6.6K

Создание MVP – дело полное противоречий. С одной стороны, нужно сделать его дешево, чтобы не тратить зря ресурсы, если вдруг продукт не найдет отклика. С другой стороны, нужно сделать его круто, чтобы потенциальные клиенты могли оценить его и захотеть такой продукт.

Что нужно делать, чтобы получилось MVP – тема не новая. Я же хочу порассуждать о том, КАК делать MVP, чтобы получилось одновременно результативно и недорого.
Приглашаю об этом почитать.

Читать далее
Всего голосов 18: ↑17 и ↓1+22
Комментарии3

Продвижение IT-продуктов – как привлекать пользователей

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4.2K

Мало сделать крутой IT-продукт, нужно еще и научиться его круто продавать. И здесь огромную роль играет хороший маркетинг: упаковка продукта, правильные точки касания, эффективные каналы продвижения и т д.

Каналов много. Все они разные, каждый по своему хорош. Как выбрать правильные? Попробуем в этом разобраться. Приглашаю почитать.

Читать далее
Всего голосов 15: ↑9 и ↓6+5
Комментарии2

13 вопросов для собеседования, на которые должен знать ответы каждый продакт

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров9.8K

Кому будет полезна статья?

Middle и junior продактам — позволит найти свои зоны роста, а также подготовиться к собеседованиям в топовые IT компании.

Тем, кто хочет стать менеджером продукта, но не знает какие компетенции стоит прокачать, чтобы войти в профессию.

Нанимающим менеджерам — поможет составить требования к вакансии продакта и провести интервью.

Читать далее
Всего голосов 14: ↑7 и ↓7+4
Комментарии8

5 интеграций в React: Контент + Дизайн + Разработка

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров4.4K

Сколько раз вы уже сталкивались с запросами от бизнеса о необходимости ускорить разработку, внедряя интеграции со сторонними сервисами? И неужели не звучит заманчиво возможность менять дизайн и контент независимо, без необходимости привлекать разработчика?

В статье я продемонстрирую, как решить три задачи, связанные с интеграциями в React приложении:

1. Изменять контент страницы на React без необходимости привлечения разработчика;

2. Расширять функционал React приложения с помощью сторонних сервисов;

3. Создавать страницы с минимальными затратами на разработку.

Читать далее
Рейтинг0
Комментарии0

Когда руководитель у нас может сам прийти к вам с повышением зарплаты

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.7K
image

Представим, что ваше желание уволиться можно описать одним числом. Что будет влиять на него? Понятно, соответствие зарплаты ожиданиям. Потом — ваш комфорт в коллективе, адекватность руководителя. Расстояние до офиса, если вы ездите в офис, или до ЦОДа, если вы ездите в ЦОД, возраст, срок последнего повышения и так далее.

В этой модели всегда было слабое место — сложно посчитать совокупность влияния людей на вас. В целом-то всё просто: если вы работаете с теми, кто вам неприятен, то в зависимости от частоты взаимодействий желание уволиться растёт.

Следующий фактор: когда на новое место работы уходит кто-то, с кем вы сработались, ваш шанс на увольнение также резко растёт. Потому что он позовёт к себе — или потому что у вас уменьшится число людей, с кем вам было комфортно.

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

И знаете что? Наша модель начала предсказывать увольнения за 3 месяца с точностью около 70%. В смысле, из тех, кого модель разметила на месяц вперёд подтвердилось 73% случаев (точность), при этом модель находит 40% от всех увольнений (полнота).

Теперь мы можем с этим что-то делать.

Естественно, у этой модели огромное количество ограничений. Сейчас мы с DVAMM про всё это расскажем.
Читать дальше →
Всего голосов 22: ↑17 и ↓5+16
Комментарии14

Как мемоизация влияет на производительность React-приложения

Время на прочтение11 мин
Количество просмотров8.3K

Почему необдуманное ковровое покрытие проекта мемоизацией хуже, чем её полное отсутствие? Мемоизация не дешёвая! Она замедляет TTI проекта, поэтому её необдуманное использование может навредить. Давайте разберём пять принципов оптимизации и посмотрим, когда от мемоизации будет реальный профит, а когда от её использования лучше воздержаться.

Привет, Хабр! Меня зовут Нугзар Гагулия. У меня 10 лет коммерческого опыта в компаниях различного масштаба, в том числе в Яндекс и Альфа-банк. Я выступаю на Google I/O и Google Dev Fest, пишу статьи на Хабре, контрибьючу и менторю. Эта статья написана по мотивам моего доклада для FrontendConf 2022. Чтобы найти и задать вопросы об этой и других статьях, меня легко можно найти по нику NookieGrey в соцсетях и Телеграм. Я с удовольствием на них отвечу.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии1

Как построить систему, способную выдерживать нагрузку в 5 млн rps

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров48K

Всем привет! 

Меня зовут Владимир Олохтонов, я руковожу командой разработки в отделе Message Bus, который является частью платформы Ozon. Мы занимаемся разработкой самых разных систем вокруг Kafka, etcd и Vault. В этой статье я расскажу о том, как мы строили линейно масштабируемую gRPC-прокси перед Kafka, способную обслуживать миллионы запросов в секунду, используя Go.

Читать далее
Всего голосов 102: ↑99 и ↓3+108
Комментарии58

Как утечки данных делают атаки на вашу компанию в 10 раз опаснее и как от них защититься

Время на прочтение9 мин
Количество просмотров2.7K

Только за первое полугодие 2022 года в России утекло 187 миллионов записей персональных данных. Во всем мире каждый год их утекает до 15 миллиардов. Но даже если утечки случились не у вас, компания все равно может быть под угрозой. 

В статье расскажем, как данные из утечек могут помочь злоумышленникам в целевых атаках на вашу компанию, и что можно с этим сделать.

А что дальше?
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Автоматизация бизнес-процессов — стресс для компании

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4K

Когда в СССР организации стали переводить на электрические калькуляторы (которые от розетки), бухгалтеры, сметчики и плановики никак не могли уйти от своих больших деревянных счёт: им казалось, что машина непременно ошибётся и за ней нужно перепроверять. Когда у них на столах появились электронные CITIZEN, они оценили удобство лёгкого беспроводного устройства и не протестовали. А вот ПК с 1С на борту вызвали едва ли не революцию. Молодые мгновенно оценили все плюсы, а старая гвардия раскололась на три части: одни шли учиться и въедливо мучили внедренцев, вторые упёрлись и решили стоять на ручном труде до последнего, третьи просто-напросто уходили на пенсию или искали работу, не связанную с компьютерами. Как ни странно, привычка до конца так и не сформировалась: и сейчас в командах компаний можно найти противников корпоративного ПО, не умеющих в нём работать, причём и 1985, и 1990, и даже 1993 годов рождения. Для них любая новая рабочая программа — источник стресса, особенно если задевается их непосредственная работа (например, автоматизируются процессы).  

Читать далее
Всего голосов 13: ↑11 и ↓2+19
Комментарии11

Компонентный подход в вёрстке: подробный разбор для джунов и сочувствующих

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров12K

Зачем использовать в вёрстке компонентный подход? Разбираемся, как и зачем верстать интерфейсы, используя этот подход, какие параметры и проблемы важно учесть. Разберём азы, забежим вперёд и подробно погрузимся в тему. Кстати, эта статья написана на основе одного из уроков курса «Профессиональная вёрстка на HTML и CSS» Яндекс Практикума. 

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии1

Моделирование микросервисов. Часть 2

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров9.5K

Предметно-ориентированный подход (DDD, Domain-Driven Design) в проектировании программного обеспечения является наиболее эффективным способом моделирования бизнес-процессов. Сегодня мы поговорим о стратегическом и тактическом проектировании, после чего рассмотрим инструмент ускорения проектирования под названием «событийный штурм» (event storming).

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии2

Моделирование микросервисов. Часть 1

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров15K

Ключевой идеей микросервисов является возможность независимого изменения и развертывания отдельно взятой функциональности. Фактически, микросервисы - это еще одна форма модульной декомпозиции. Навыки правильного выделения границ модулей являются ключом к построению успешной микросервисной архитектуры. Выделяют три ключевые концепции, определяющих качество границ микросервисов.

Читать далее
Всего голосов 8: ↑5 и ↓3+4
Комментарии4

TestOps: инструмент сбора метрик и визуализации в Grafana

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров3.6K
Нам с командой надо было сделать инструмент сбора и визуализации метрик. Мы его создали и хотим поделиться своими наработками, возможно, они будут полезны и для ваших проектов. Собственно, о них — ниже.

image

У нас каждый день запускается больше 1 500 автотестов. Их-то нам и надо мониторить и анализировать в удобном и понятном виде. Есть ReportPortal, помогающий узнать причину падения и завести задачу в Jira (или в другой системе с API), но, к сожалению, он довольно тяжёлый, встроенные инструменты для анализа скудные, а историчность хранится всего несколько недель. Но у него есть отличный API, которым мы и будем пользоваться.

Как итог возникла необходимость в создании инструмента для мониторинга, анализа и оптимизации автотестов, который можно легко адаптировать под потребности бизнеса при минимальных затратах.
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии6

Асинхронность в JS: как выполнять долгие сетевые запросы без блокирования основного потока

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров9.1K

Асинхронность – это способ координации поведения программы на протяжении какого-то временного отрезка. Разбираем, как в синхронном JavaScript вынести операции за рамки единого потока, чтобы не блокировать действие кода после тяжёлых операций. 

Читать далее
Всего голосов 1: ↑0 и ↓1-1
Комментарии8

React Content Elements

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров2.7K

Примечание: авторский перевод статьи Web Content Elements

В HTML разработке мы используем тег в качестве дескриминатора - тег определяет элемент. Мы используем классы, чтобы применять стили к HTML элементам. Разработчик создает структуру и описывает стили руководствуясь правилами конкретного проекта, своим опытом и общепринятыми рекомендациями.

В результате мы получаем проекты состоящие из длинного списка кастомных решений в моменте принятых разработчиком лично, либо в составе команды, например после код ревью.

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

Web Content Elements(WCE) - это концепция, шаблон проектирования, который позволяет описать любые решения подобного рода линейно и однообразно.

Согласно WCE, тег - это переменная для генерации синтаксической структуры элемента разметки.

Основная идея паттерна заключается в группировке элементов по роли, которую они представляют на странице.

? Элементы сгруппированы по их ролям на странице, а не тегам.

Основные роли:

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии4

Решение проблемы N+1 запроса с помощью группировки вызовов

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров3.6K

Проблема N+1 запросов

Проблема N + 1 возникает, когда фреймворк доступа к данным выполняет N дополнительных SQL-запросов для получения тех же данных, которые можно получить при выполнении одного SQL-запроса.

Обычно это решается с помощью ленивой загрузки. В статье разбирается вариант с асинхронной группировкой вызовов.

Читать далее
Всего голосов 2: ↑1 и ↓10
Комментарии11
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирована
Активность