Как стать автором
Обновить
11.09
Рейтинг

Клиентская оптимизация *

Делаем сайты удобнее и приятнее

Сначала показывать
Порог рейтинга

Taichi и 100-кратное ускорение Python-кода

Блог компании Wunder Fund Python *Программирование *Клиентская оптимизация *Серверная оптимизация *
Перевод

Python стал самым популярным языком во многих быстроразвивающихся областях, таких, как глубокое обучение и различные направления анализа и обработки данных. Но при этом за удобство работы с Python-кодом, за высокий уровень его читабельности, приходится платить производительностью. Конечно, все мы время от времени жалуемся на скорость работы программ, и Python, безусловно, не стоит винить во всех грехах. Несмотря на это, справедливым будет заявление о том, что природа Python, интерпретируемого языка, не способствует высокой производительности кода, особенно когда речь идёт о «тяжёлых» вычислениях (один из признаков таких вычислений — наличие в программе нескольких вложенных циклов).

Если вы когда-либо попадали в одну из следующих ситуация — тогда эта статья, определённо, написана для вас.

Читать далее
Всего голосов 52: ↑52 и ↓0 +52
Просмотры 21K
Комментарии 5

Новости

Как мы зарелизили новую корзину и победили проблему разваливающихся заказов

Блог компании М.Видео-Эльдорадо Разработка веб-сайтов *Клиентская оптимизация *Дизайн мобильных приложений *

Привет! Меня зовут Катя Антипова, я старший продакт в М.Видео-Эльдорадо. Сегодня я расскажу вам о том, как мы обновляли корзину в мобильном приложении и на сайте М.Видео и решали одну их сильных «головных болей» наших клиентов.

Читать далее
Всего голосов 19: ↑18 и ↓1 +17
Просмотры 3.5K
Комментарии 7

Вредные советы для React-разработчиков

Блог компании SimbirSoft Разработка веб-сайтов *JavaScript *Программирование *Клиентская оптимизация *

Недавно британские ученые открыли, что на свете бывают непослушные разработчики, которые все делают наоборот. Им дают полезный совет: «Не подключай целую библиотеку ради одной функции», — они берут и подключают. Им говорят: «Будь внимателен на код-ревью», — они тут же начинают апрувить все подряд. Ученые придумали, что таким разработчикам нужно давать не полезные, а вредные советы. Они все сделают наоборот, и получится как раз правильно.

Читать далее
Всего голосов 12: ↑10 и ↓2 +8
Просмотры 10K
Комментарии 7

«Байки по зуму»: история компании Buyk, запустившей фудтех-революцию в США

Клиентская оптимизация *Управление e-commerce *Брендинг Бизнес-модели *Удалённая работа
Из песочницы

Запущенный в оборот российскими предпринимателями сервис экспресс-доставки продуктов Buyk за несколько месяцев приобрёл большую популярность в Америке. Не смотря на высокие темпы роста спустя полгода существования компания объявила о банкротстве в связи с экономическими обстоятельствами в мире. 

Никита Черкасский, ex-process operations manager Buyk, поделился интересными подробностями создания и развития данной компании и конструирования бизнеса в США по российским технологиям, а также личным опытом стремительного карьерного роста. 

Экспресс-доставка продуктов привычна для россиян: качественный сервис предлагают сразу несколько крупных компаний, конкуренция растет стремительно. По экспертным прогнозам, объем глобального рынка доставки еды к 2027 году достигнет $300 млрд. Рынок США, в отличие от европейского, не консолидирован, поэтому решение основателей фудтех-гиганта «Самокат» развивать бизнес в Америке было своевременным.

На «Самокате» в США

В 2018 году, с появлением сервиса доставки продуктов «Самокат», в России стартовал бум быстрой доставки продуктов питания. В это время  я, будучи студентом 3 курса, начинаю изучать электронную коммерцию, что вскоре привело меня к управлению каналом eCommerce во второй федеральной розничной сети магазинов формата дрогери «Улыбка радуги».

От доставщика до ex-process operations manager 

Дела шли в гору, мы заключили успешное партнерство с Alibaba Group и выстраивали продажи, но однажды вечером, я прочел новость: «“Самокат” едет в США». Подумал, что обязательно нужно попробовать – и вот, спустя уже месяц доставлял первые заказы, катаясь на велосипеде по Москве с фирменным розовым рюкзаком за спиной. Я прошел ускоренный курс внедрения – от курьера до супервайзера, в течение двух месяцев изучая каждую деталь рабочего процесса: прием товара, сборка заказа, доставка, инвентаризация и другие модули работы даркстора. Освоив все операционные процессы, я присоединился к процессу запуска Buyk на американском рынке.

Читать далее
Всего голосов 13: ↑8 и ↓5 +3
Просмотры 2.4K
Комментарии 10

Устранение утечек памяти с помощью профилирования

Блог компании RUVDS.com Клиентская оптимизация *Серверная оптимизация *Серверное администрирование *Отладка *
Перевод

Если система работает длительное время, объём свободной памяти может уменьшаться, что может приводить к отказу некоторых сервисов. Это типичная проблема утечки памяти, которую обычно сложно спрогнозировать и выявить. Удобными инструментами для решения подобных проблем являются профайлеры кучи. Они отслеживают распределение памяти и помогают разобраться, что находится в куче программы, а также найти утечки памяти.

В этой статье мы расскажем об использовании профайлеров кучи, а также объясним, как спроектированы и реализованы популярные профайлеры кучи, например, профайлер кучи Go, gperftools, jemalloc и Bytehound.
Читать дальше →
Всего голосов 29: ↑29 и ↓0 +29
Просмотры 5K
Комментарии 0

Что делать, если Вашему бизнесу нужна автоматизация?

Программирование *Клиентская оптимизация *Исследования и прогнозы в IT *Статистика в IT IT-компании
Из песочницы

Итак, Вы задумались о  внедрении новой корпоративной системы в Вашем бизнесе. Это может быть учетная система, система согласования документов, автоматизация бухгалтерии, или даже автоматизация принятия простых решений на основе данных. На верхнем уровне, это не так уж и важно - самой большой проблемой всегда остается проблема белого листа. Так с чего же начать?

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

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

Как создать Star Rating виджет на React.js и оптимизировать его

Разработка веб-сайтов *JavaScript *Анализ и проектирование систем *Клиентская оптимизация *ReactJS *
Перевод

В этой статье я хочу затронуть еще одну задачу, с которой вы можете столкнуться на собеседовании на позицию Front-End — создание Star Rating виджета.

За последние пять месяцев у меня было 15 онсайт собеседований, а также офферы от Google, Roku, Microsoft и других компаний.

Вы должны уточнить требования и реализовать этот виджет в течение ~ 45–50 минут.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 3.3K
Комментарии 18

Создаем слайдер с изображением и текстом на React.js с нуля и оптимизируем

Разработка веб-сайтов *JavaScript *Анализ и проектирование систем *Клиентская оптимизация *ReactJS *
Перевод

В этой статье я хочу затронуть задачу, с которой вы можете столкнуться на собеседовании на позицию Front-End — создание Image Slider.

За последние 5 месяцев у меня было 15 онсайт собеседований, а также офферы от Google, Roku, Microsoft и других. (Больше информации можно прочитать в моем Telegram-канале)

Вы должны реализовать этот виджет за ~45–50 минут и рассказать об оптимизации. Эту информацию я постараюсь рассказать здесь. Основная цель состоит не в том, чтобы реализовать Image Slider с большим количеством функционала, а в том, чтобы показать, как реализовать и оптимизировать.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 10K
Комментарии 19

OpenLiteSpeed быстрый. Но не всегда

Блог компании ISPmanager Разработка веб-сайтов *Системное администрирование *Клиентская оптимизация *

Привет, Хабр! Меня зовут Алексей, сегодня расскажу, как делал нагрузочное тестирование nginx, Apache и OpenLiteSpeed (он же OLS) и какой из серверов быстрее. 

Поводом для теста стало добавление OLS в наш продукт — ISPmanager. Это панель для управления веб-серверами и сайтами. Поддержка Apache и nginx у нас была давно, а вот OLS — в новинку. Добавить его в ISPmanager очень просили наши пользователи. Разработчики говорят, что OLS супербыстрый сервер, да и независимые замеры подтверждают. Но мы решили проверить всё сами. Оказалось, сервер действительно производительный, но всё же не всегда обгоняет конкурентов. Подробности под катом. 

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

Раздувание кода стало астрономическим

Программирование *Клиентская оптимизация *
Перевод

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

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

… но по сути, речь идёт о том, что нужно зарегистрировать несколько файлов, считать их, загрузить, а затем закрыть соединение и записать в файл лога, всё ли прошло успешно, а если нет, то что именно случилось. В этом нет ничего сложного, и даже я писал с нуля подобный код при помощи Wininet API и PHP на сервере, общающемся с моей базой данных MySQL. Наверно, моя система была не такой надёжной, как системы уровня энтерпрайза, однако поддерживала сотни тысяч загруженных файлов, их верификацию, скачивание и логирование. Наверно, это работа для одного кодера на две-три недели?

Специальный инструмент загрузки на сервер, которым я пользуюсь сегодня, суммарно имеет 230 МБ клиентских файлов и задействует 2,7 тысяч файлов для управления этим процессом.
Читать дальше →
Всего голосов 413: ↑399 и ↓14 +385
Просмотры 88K
Комментарии 851

Оптимизация загрузки js бандла использующего icon pack’и

Разработка веб-сайтов *JavaScript *Клиентская оптимизация *ReactJS *

Иконки в проекте часто становятся причиной проблем разбухания размера бандла. Все из-за того что svg-иконки могут быть достаточно объемными.
Если мы загружаем только те иконки, что мы реально используем то это не самый плохой вариант. Все становится намного хуже когда мы устанавливаем готовые пакеты иконок, но используем только их малую часть, так произошло и со мной.

Мое приложение состоящее из 2х элементов весит 722kb. Но почему?

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

«Яндекс.Такси» на железной дороге: почему это реально?

Блог компании Первая грузовая компания (ПГК) Клиентская оптимизация *Читальный зал Искусственный интеллект Транспорт

Краткий экскурс по уберизации от заместителя генерального директора ПГК по операционной эффективности и цифровому развитию Алексея Агапкина.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 3.7K
Комментарии 9

Азбука вкуса, Nuxt и наш тернистый путь к микрофронтам

Разработка веб-сайтов *JavaScript *Клиентская оптимизация *VueJS *TypeScript *

Уже больше года мы в Азбуке вкуса мигрируем с jQuery на Nuxt. По мере роста, делали свою реализацию микрофронтов, чтобы хорошо организовать работу и решить ряд проблем.  

В процессе наступили на пару граблей, долго думали и наконец сделали.  

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

Узнать больше
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 5.1K
Комментарии 13

Что такое мемоизация? Как и когда использовать мемоизацию в JavaScript и React

JavaScript *Клиентская оптимизация *Функциональное программирование *ReactJS *TypeScript *
Из песочницы
Перевод

В данном переводе рассказывается о том, что такое мемоизация, зачем её использовать. Также представлены основные примеры на JavaScript и React, демонстрирующие работу мемоизации.

Развернуть
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 15K
Комментарии 6

Как разработать фронтенд, чтобы не ночевать на заводе

Блог компании ГК ЛАНИТ Клиентская оптимизация *Angular *

Компания Datana занимается разработкой цифровых решений для оптимизации производственных процессов черной металлургии (подробнее в нашем блоге). Сейчас мы расскажем об опыте повышения стабильности и отказоустойчивости фронтендов наших систем или о том, как мы избавились от необходимости ночевать в цехе завода, чтобы вовремя нажать F5.

Читать далее
Всего голосов 66: ↑66 и ↓0 +66
Просмотры 9.1K
Комментарии 20

Сколько цветов может выдержать Windows Terminal?

Клиентская оптимизация *Обработка изображений *Разработка под Windows *
Перевод
Группа пользователей хотела реализовать простую видеоигру в терминале, но оказалось, что её производительность в Windows Terminal совершенно не подходит для такой задачи. Проблему с производительностью можно воспроизвести, многократно отрисовывая «радугу» и замеряя количество кадров в секунду (FPS). Показанная на рисунке радуга, состоящая из 20 цветов, на моём Surface Book с Intel i7-6700HQ отрисовывается с частотой 30 FPS. Однако если отрисовывать ту же радугу из 21 или более цветов, то частота упадёт ниже 10 FPS. Такое падение стабильно и ситуация не ухудшается даже при тысячах разных цветов.

Читать дальше →
Всего голосов 36: ↑35 и ↓1 +34
Просмотры 12K
Комментарии 7

Как отвечать на отзывы в интернете

Клиентская оптимизация *Управление e-commerce *Управление продуктом *
Recovery mode

Управление репутацией обычно делят на два ключевых направления: ORM и SERM, где ORM – работа по нивелированию нового негатива путем решения жалоб клиентов, а SERM отвечает за выдачу. Мы же привыкли считать, что ORM включает в себя вообще все инструменты, которые так или иначе влияют на репутацию, в том числе и SERM. 

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

Читать далее
Всего голосов 7: ↑0 и ↓7 -7
Просмотры 1.5K
Комментарии 5

Мой путь в ТРИЗ

Анализ и проектирование систем *Клиентская оптимизация *Разработка для интернета вещей *Управление проектами *Управление продуктом *
Recovery mode

Поговорим о том, с каким бэкграундом и для чего приходят в инновационную деятельность с ТРИЗ (теорией решения изобретательских задач). Мой путь длиною в 17 лет - от ИТ-ишника к корпоративному инноватику.

Читать далее
Всего голосов 54: ↑12 и ↓42 -30
Просмотры 7.2K
Комментарии 95

Репутационные агентства: интернет герои или аморальные монстры

Поисковые технологии *Клиентская оптимизация *Управление продуктом *Управление медиа *
Recovery mode

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

Мораль в сфере маркетинга и рекламы

Небольшая ремарка вместо вступления:

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

Представим ситуацию: вы работаете Pr-менеджером, рекламным агентом, интернет-маркетологом, называйте как хотите (утрирую), - вашей основной задачей является продажа, вы должны составить такой образ/упаковку продукта, благодаря которому его захочется купить. Если товар имеет непрезентабельный вид - можно заказать профессиональную фотосессию и воспользоваться фоторедакторами, если товар не обладает выдающимися характеристиками - можно написать красивый и складный продающий текст, если продукт мало узнаваем - можно влиться в хайповый инфоповод или привлечь медиаперсон для рекламы. 

Читать далее
Всего голосов 5: ↑0 и ↓5 -5
Просмотры 973
Комментарии 2

Module Federation: простая загрузка динамических модулей

Блог компании Delivery Club Tech Разработка веб-сайтов *JavaScript *Клиентская оптимизация *Микросервисы *

Всем привет! Меня зовут Евгений, я работаю frontend-разработчиком в платформенной команде. Моя задача — помогать другим frontend-разработчикам выполнять их задачи эффективнее. Мы в Delivery Club больше года назад внедрили подход с микрофронтендами, о чём писали здесь. Вы можете найти и много других статей с описанием этого подхода.

После выхода стабильной версии Webpack 5 мы решили использовать плагин Module Federation в качестве основного способа загрузки микрофронтендов. В этой статье расскажу, с какой проблемой столкнулся при загрузке динамических модулей и как её решил. Описывать будут на примере плагина Module Federation во всех деталях. Если вы слышите про этот инструмент впервые, то советую предварительно ознакомиться.

Читать далее
Всего голосов 18: ↑18 и ↓0 +18
Просмотры 6K
Комментарии 13

Вклад авторов