All streams
Search
Write a publication
Pull to refresh
50
0
Alexander Zimin @alzimin

Продуктовый менеджер

Send message

Как плохо спроектированный UX у теста на коронавирус чуть не посадил нас на самоизоляцию, но дырка в безопасности спасла

Reading time3 min
Views40K

Это я, пишу скрипт по перебору параметров для POST запроса на gov.tr, сидя перед границей в Хорватию.

Как все начиналось


Мы с моей женой путешествуем по миру и работаем удаленно. Недавно переезжали из Турции в Хорватию (самая оптимальная точка, чтобы заехать в Европу). Чтобы не сесть на карантин в Хорватии, нужно иметь справку об отрицательном анализе на ковид, сделанном не позже 48 часов до въезда.

Выяснили, что относительно выгодно (2500 рублей) и быстро (всем результаты приходят в течение 5 часов) делают тест в аэропорту Стамбула, из которого мы как раз и вылетали.
Читать дальше →

Как проверить гипотезы и заработать на Swift с помощью сплит-тестов

Reading time9 min
Views10K

Всем привет! Меня зовут Саша Зимин, я работаю iOS-разработчиком в лондонском офисе Badoo. В Badoo очень тесное взаимодействие с продуктовыми менеджерами, и я перенял у них привычку проверять все гипотезы, которые возникают у меня относительно продукта. Так, я начал писать сплит-тесты для своих проектов.

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

Swift 4.1: почему Apple переименовала flatMap в compactMap

Reading time3 min
Views19K
Привет, Хабр!

Меня зовут Александр Зимин, я iOS-разработчик в Badoo. Это перевод статьи моего коллеги Швиба, в которой он рассказал, что из себя представляла функция flatMap в Swift и почему одну из её перегрузок переименовали в compactMap. Статья полезна как для понимания процессов, происходящих в репозитории Swift и его эволюции, так и для общего развития.



В функциональном программировании есть чёткое определение того, что должна представлять собой функция flatMap. Метод flatMap берёт список и преобразующую функцию (которая для каждого преобразования ожидает получить ноль или больше значений), применяет её к каждому элементу списка и создаёт единый (flattened) список. Такое поведение отличается от простой функции map, которая применяет преобразование к каждому значению и для каждого преобразования ожидает получить только одно значение.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity