Собираем данные о поведении клиентов на сайте

В предыдущей статье мы разбирались, как делать персонализированные предложения на сайте интернет-магазина. Сегодня расскажем, как собирать данные о поведении его посетителей, чтобы затем строить отчёты по воронке продаж, догонять «брошенные корзины» и подбирать товарные рекомендации. Посмотрим, почему для качественной персонализации недостаточно простой веб аналитики и как лучше понять своего клиента с помощью SAS Customer Intelligence 360.


Читать дальше →
Собираем данные о поведении клиентов на сайте
Source: habrahabr

[Перевод] Как поддерживать здоровые привычки в коммуникации удалённых команд

Прим. перев.: Эта статья написана Taurie Davis — дизайнером из GitLab, которая любит «выявлять проблемы, создавать надёжные решения и творить интуитивно понятные интерфейсы». В ней даются простые советы о том, как наладить коммуникации далеко не только в удалённых командах, но и в нашей повседневной жизни. Даже если они покажутся очевидными, их ценность проявляется тогда, когда мы не забываем их постоянно применять, формируя полезную и выигрышную для всех привычку.

У себя в компании («Флант») мы регулярно проводим performance review для всех инженеров (и не только) и постоянно работаем над тем, чтобы улучшать этот процесс. В частности, на них разбираются и сложности коммуникации — как общие, так и индивидуальные. Посему поднятые автором проблемы нам близки не только в теории: они отлично пересекаются с тем практическим опытом, что накоплен у нас. Надеюсь, их осмысление окажется полезным и для других.


xkcd #1028: «Communication» (см. также его расшифровку)

Коммуникация на рабочем месте может оказаться непростой проблемой. Недопонимания и напряжённость — обычное явление, особенно в случае «асинхронного общения» (возникает при использовании тикетов и электронной почты вместо онлайн-чатов — прим. перев.), где ещё меньше ключей к пониманию голоса и его тона. Прямая коммуникация может восприниматься как жёсткая или грубая. А когда ко всему этому добавляется ещё и упущенный контекст, то ошибки в коммуникации и эмоции могут превзойти саму суть разговора. Улучшить взаимопонимание и коммуникации с течением времени поможет сознательное отношение к потребностям команды и к вашим собственным потребностям. Читать дальше →
[Перевод] Как поддерживать здоровые привычки в коммуникации удалённых команд
Source: habrahabr

Ускоряем создание ConcurrentReferenceHashMap

Приветствую, в этой заметке я рассажу, как можно с незначительными усилиями ускорить создание org.springframework.util.ConcurrentReferenceHashMap.

Интересуетесь прокачиванием производительности? Добро пожаловать!

Читать дальше →
Ускоряем создание ConcurrentReferenceHashMap
Source: habrahabr

Теория шардирования

Кажется, мы так глубоко погрузились в дебри highload-разработки, что просто не задумываемся о базовых проблемах. Взять, например, шардирование. Чего в нем разбираться, если в настройках базы данных можно написать условно shards = n, и все сделается само. Так-то, он так, но если, вернее когда, что-то пойдет не так, ресурсов начнет по-настоящему не хватать, хотелось бы понимать, в чем причина и как все починить.

Короче, если вы контрибьютили свою альтернативную реализацию хэширования в Cassandra, то вряд ли тут для вас найдутся откровения. Но если нагрузка на ваши сервисы уже прибывает, а системные знания за ней не поспевают, то милости просим. Великий и ужасный Андрей Аксёнов (shodan) в свойственной ему манере расскажет, что шардить плохо, не шардить — тоже плохо, и как это внутри устроено. А еще совершенно случайно одна из частей рассказа про шардинг вообще не совсем про шардинг, а черт знает про что — как объекты на шарды мапить.

Фотография котиков (хоть они случайно и оказались щеночками) уже как бы отвечает на вопрос, зачем это всё, но начнем последовательно.
Читать дальше →
Теория шардирования
Source: habrahabr

[Перевод] Мы Не Оскорблённые

Дядя Боб Мартин разразился манифестом терпимости к чужим идеям. Что именно его довело? Мне трудно это выразить, очень рекомендую прочитать сначала его предыдущую статью SJWJS.

Мы, Не Оскорблённые, верим, что свободное общество полагается на взаимную терпимость и прощение своих членов по отношению друг к другу и идеям других. Поэтому, мы стремимся оставаться не оскорблёнными свободой других говорить и действовать в соответствии с их самоидентификацией, политическими взглядами, стремлениями и желаниями. Мы не терпимы только к вреду наносимому преднамеренно или по небрежности.
Читать дальше →
[Перевод] Мы Не Оскорблённые
Source: habrahabr

[Из песочницы] Сколько зарабатывают ИТ-шники в Германии

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

Соискатели называют такие цифры, с которыми я, как рекрутер, в реальном мире встречалась несколько раз в жизни. Я решила собрать информацию из открытых источников в немецко-язычном интернете по уровню оплаты и добавить свои комменты по реальному опыту найма ИТ-специалистов из стран СНГ.

Читать дальше →
[Из песочницы] Сколько зарабатывают ИТ-шники в Германии
Source: habrahabr

[Перевод] Учебный курс по React, часть 2: функциональные компоненты

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

image
Читать дальше →
[Перевод] Учебный курс по React, часть 2: функциональные компоненты
Source: habrahabr

Введение в аннотации типов Python

Введение


Автор иллюстрации — Magdalena Tomczyk

Python — язык с динамической типизацией и позволяет нам довольно вольно оперировать переменными разных типов. Однако при написании кода мы так или иначе предполагаем переменные каких типов будут использоваться (это может быть вызвано ограничением алгоритма или бизнес логики). И для корректной работы программы нам важно как можно раньше найти ошибки, связанные с передачей данных неверного типа.

Сохраняя идею динамической утиной типизации в современных версиях Python (3.6+) поддерживает аннотации типов переменных, полей класса, аргументов и возвращаемых значений функций:

Аннотации типов просто считываются интерпретатором Python и никак более не обрабатываются, но доступны для использования из стороннего кода и в первую очередь рассчитаны для использования статическими анализаторами.

Меня зовут Тихонов Андрей и я занимаюсь backend-разработкой в Lamoda.

В этой статье я хочу объяснить основы использования аннотаций типов и рассмотреть типичные примеры, реализуемые аннотациями из пакета typing.

Читать дальше →
Введение в аннотации типов Python
Source: habrahabr

Как мы вышли на рынок облачных провайдеров и влюбились в B2B. Кейс MCS

Mail.Ru Group — это множество подразделений и проектов, от Mail.Ru Леди и онлайн-игр до социальных сетей и IT-решений для бизнеса. Сегодня мы хотим поговорить об одном из них — облачной платформе Mail.Ru Cloud Solutions (MCS), которой в январе официально исполняется год, но история которой началась ещё раньше. Мы побеседовали с заместителем вице-президента Mail.Ru Group, руководителем направления облачных и бизнес-сервисов Егором Ганиным, который рассказал, с чего начинался этот проект, как B2C-подход помогает в работе на B2B-рынке и зачем облачному провайдеру собственная лаборатория для «опытов» над железом.
Читать дальше →
Как мы вышли на рынок облачных провайдеров и влюбились в B2B. Кейс MCS
Source: habrahabr

Вырастить и научить. Как мы подружились с PEGA

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

Из этой статьи вы узнаете, как команда «ЛАНИТ — Би Пи Эм» смогла освоить платформу, которая на тот момент только-только появилась на российском рынке. Разработчики компании расскажут, что было самым трудным при знакомстве с новой технологией и поделятся опытом, как лучше всего переходить к работе с незнакомой разработкой.

Источник
Читать дальше →
Вырастить и научить. Как мы подружились с PEGA
Source: habrahabr