Раздражение от московского каршеринга

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

NB: регистрация в каршерингах несет определенные риски. Например, на основе фоток и паспортных данных злоумышленники могут оформить онлайн кредит. По сути, все строится на доверии. Компаниям невыгодно терять персональные данные клиентов из-за репутации. И если вы решили довериться каршеринговым компаниям, то вопроса выбора лучшей не стоит: надо регистрироваться во всех, ну по крайней мере в первых 4 в списке (совокупно 99% машин, остальные каршеринги не внесут пользы, зато добавят заморочей). Стоимость аренды практически одинаковая, а парки не достаточно большие, чтобы заменить, скажем, такси. Наличие аккаунтов в нескольких сервисах увеличит ваши шансы найти машину поблизости.

  1. Belka Car
    Раздражает, что там у них в парке не десять тысяч машин! И что завершать парковку можно только в пределах МКАД. В остальном у них все хорошо. Приложение отличное, машинки Кио Рио новенькие и резвые. В приложении перед запуском есть чек-лист, где и что надо проверить. Деньги спишут напрямую с карты.
    Есть парковки в аэропортах Домодедово и Шереметьево. Заправка авто происходит по топливной карте. Пин код отображается в приложении. Есть зарядки для телефонов mini-usb, usb-c и для айфонов.
    Для десерта в парке есть мерседесы.

    Лайфхак: если вы не успеваете добраться до авто за 20 бесплатных минут, то отмените бронирование и тут же забронируйте снова. Вам опять дадут 20 минут.


  2. Делимобиль
    Раздражает, что у них уже ушатанные машинки Солярисы. Зато их больше тысячи. Еще немного пораздражало, как поддержка тупила с обновлением водительского удостоверения. Но это мелочи.  Приложение вполне удобное. Не такое детальное, как у белки, но все же. Зарядки для телефонов есть. Да и в остальном плюс-минус все как у Белки.


  3. YouDrive
    Раздражает зона завершения парковки - чуть шире ТТК + какие-то выколотые зоны (пусть даже и высчитанные с помощью ML). И цена на 1 руб. дороже тоже раздражает. Нет, конечно, можно завершить аренду и вне этой зоны и с полуночи до 8 утра стоянка авто будет бесплатно, а дальше - 2.5 руб./мин. Но все же. Раздражает, что некоторые машины бронируются без возможности отмены. А если и с возможностью отмены, то следующее бронирование за сутки уже по тарифу ожидания - то есть "белкин" лайфхак тут не пройдет.
    Ещё немного раздражает юзабилити приложения. Есть слайдер "Закрыть двери", который в довесок еще и глушит мотор - то есть ставит авто в режим ожидания. Это не сразу понятно. И бесит, что нельзя поморгать/посигналить авто в режиме бронирования. Ходишь по парковке торгового центра взад-вперед как дурак.
    И раздражает, что не везде есть зарядки для телефона. Где-то просто usb-порты.
    Зато сами машинки очень классные Smartы. Парк авто - несколько сотен. Для езды по центру города подходит прекрасно. И место для парковки нужно в два раза меньше. Отменили штраф за оставление авто с бензином менее 25% от бака. А еще анализируют стиль вождения и за хороший стиль дают дополнительные баллы (хз на что они влияют, это раздражает тоже, кстати).
    На скорости больше 80 км./ч. в авто становится очень шумно и управляемость ухудшается. Но это совсем другая история.


  4. Anytime
    Раздражает, что иногороднему без московской прописки надо привозить к ним в офис справку с места работы. Этот квест я проходить не захотел. В остальном, судя по описанию, очень похоже на Белку и Делимобиль.


  5. Easy Ride
    Раздражает, что парк машин не очень большой и что за регистрацию списывают 60 руб. Стоимость минуты 12 руб. Это тоже раздражает. Зато машинки (Рено Каптюр) красивые, новые и приятные. Приложение вполне хорошее, правда немного подтормаживает.


  6. Rentmee
    Раздражает маленький парк авто. В основном солярисы. И оплата только через промежуточный счет в приложении. Более того, перед каждой арендой машин на счете должно быть не менее 500 руб. Возмещение платы за бензин происходит на этот же счет. Правда, тут со счета можно по отдельной заявке вернуть на карту. А вот парковку у некоторых машин (чуть меньше половины парка) придется оплачивать самому. С учётом всех этих заморочей не вижу смысла в регистрации в этом каршеринге. Да и приложение у них довольно топорное и глючное.


  7. Car5
    Парк авто несколько сотен. Оплата через промежуточный счет в приложении. Нельзя оставить авто с менее 25% бензобака - наверно, штрафуют за это, не проверял. Заправлять надо за свой счет (топливных карт по факту нет в машинах). Возмещение заправки по фото чека через сайт (!), а не приложение. Возмещают на этот же промежуточный счет, вывести на карту нельзя. Раздражает! Бесит, что в приложении после бронирования авто не видно карты!
    Еще их французские машины с регулировкой спинки справа и прочими нелепостями в интерьере! А солярисы - это просто списанные из делимобиля авто. Ушатанные до безобразия. Зато у них есть дешевые датсаны (5 р./мин.)


  8. Carenda
    Раздражает, что узнал о них случайно и что там мало машин.
    Зато цена аренды 5-6 р./мин. и аренду можно завершать у станций метро за МКАДом - Белке этого сильно не хватает.


  9. LifCar
    Раздражает, что узнал о них случайно и что там мало машин. И все они китайские лифаны - нормально нельзя настроить ни руль, ни сиденье, ни даже зеркала, Карл! Зато стоимость 6 р./мин.


  10. Яндекс. Драйв
    Раздражают тем, что запускаются только в феврале 2018. Интересно будет посмотреть. Приложение в части регистрации офрмлено в виде чата с роботом. И после отправки документов звонит робот и спрашивает, какой автомобиль хотели бы увидеть в парке. А пока что с декабря 2017 по февраль 2018 будут давать 20% кэшбека за поездки в яндекс.такси (на счет яндекс.драйва). Нужно только указать в анкете тот же телефонный номер, который используется в приложении Такси


  11. Карусель. 
    Только запускаются. Информации пока немного

 

Раздражает, что нельзя ездить по выделенным автобусным полосам! Ни в одном каршеринге этого пока что нет. А жаль.

Некая сводная таблица, сугубо субъективная:

НазваниеТипы автоСтоимостьБесплатное бронированиеРазмер парка (оценочно)Условия регистрацииДопуск иностранцевЗона завершения арендыЗаправкаПриложениеСпособ списания платыПримечания
BelkaCarKia rio
Ford fiesta
Mercedes-Benz CLA
8 р/мин
2 р/мин ожидание
1999 сутки

CLA: 16 р/мин
4 р/мин ожидание
6000 сутки 
20 мин.700-1000не менее 21 года,
стаж вождения не менее 2

Для CLA: не менее 25 лет, стаж - от 5 лет
естьМКАД
Аэропорты Домодедово и Шереметьево
По топливной карте, через приложение. Бонус за время - 120 руб.Отличное, удобноеНапрямую с картыОчень круто! Нашел, к чему придраться: Омывайки часто нет в багажнике
ДелимобильHyundai Solaris
Renault Captur
Аренда- 8 руб./мин.
Ожидание- 2,5 руб./мин.
1999 руб. сутки
20 мин.1000-1200не менее 21 года, стаж вождения от 2 лет, регистрация на территории РФпо согласованиюМКАД
Аэропорты Домодедово и Шереметьево
Отличное, удобноеНапрямую с картыОтлично!
YouDriveSmart'ы
BMW i3 и 2 series
8-12 р./мин. на смартах
13 р./мин. на мерседесе
1000 р./час - Электрокар BMW i3 (не опечатка)
Ожидание от 2.5 р./мин. - 3.5 р./мин.
1x20 мин. (после уже по тарифу ожидания)500-700стаж от 2 летТТК+Отличное, удобноеНапрямую с картыСлали смс 30 дней подряд с напоминанием загрузить документы)))
Нет зарядок для телефонов, только usb-разъем
Any timeKia Rio
Hyundai Solaris
Skoda Octavia
Renault Kangoo
BMW
Базовый тариф - 8 р./мин.300-500Не менее 19 лет
Стаж вождения от 1 года
По топливной карте, пин-код в Службе поддержкиЗагрузка документов только через браузер (не удобно с мобильного)У иногороднего гражданина (прописка не Москва) Требуют приехать к ним в офис со справкой с работы либо с временной регистрацией. Саппорт непробиваемНа Renault и BMW парковска платная
Easy RideRenault Captur12 р./мин
Ожидание 3 р./мин
20 мин.200-400не менее 21 года,  
стаж вождения не менее 2
НетСвязь с центром поддержкиСо счета в профиле (?)Не было оповещения, что документы прошли проверку.
Car5Hyundai Solaris
Datsun mi-Do
Renault Stepway
8 р./мин. на солярисе и рено
Ожидание 2 р./мин

5 р./мин. на датсане
4 x 20 мин. (после уже по тарифу ожидания)300-500не менее 21 года,  
стаж вождения не менее 2
МКАД + Митино, Бутово, МытищиЗа свой счет с последующим возмещением на счет в профиле. Бонус за время - 105 руб.СреднееСначала списывают со счета в профиле. Если ушло в минус, автоматом пополняют до нуля.Сначала баланс на счете становится отр, потом с карты автоматом пополняется
Заправился, все возместили по фото чека из личного кабинета на САЙТЕ(!!). Но нельзя завершить аренду, если в баке менее 25% бензина
RentmeeHyundai Solaris7 р./мин.
Ожидание 1.5 р./мин.
10 мин.100-200не менее 20 года,  
стаж вождения не менее 2
МКАДВозмещают или списывают со счета в профилеГлюковатое, вылетает, долго подгружает инфу.Со счета в профиле.На большой части автомобилей платную парковку оплачиваете сами (или приходит штраф)Для поминутного Тарифа баланс Аккаунта Арендатора в Сервисе RENTMEE должен составлять не менее 500 (Пятьсот) рублей Приложение глючное
CarendaRavon R2
Hyundai Solaris
Kia Rio
5 р./мин. на Ravon
6 р./мин. на Solaris и Rio
Ожидание 1.5 р./мин.
20 мин. (после уже по тарифу ожидания)50-100не менее 21 года,  
стаж вождения не менее 2
по согласованиюМКАД + у метро Митино, Мякинино, Румянцево, Саларьево, Северное и Южное Бутово (до метро Бунинская), Котельники, Жулебино, Новокосино.от 10 до 15 литров - 50 баллов
полный бак - 100 баллов
СреднееХЗ, в процессе регистрацииСлучайно узнал
LifcarLifax X506 р./мин, если старше 21 года и стаж более 2х лет.
10 р./мин. иначе
Ожидание 2 р./мин.
20 мин.50-100Не менее 19 лет
Стаж вождения от 1 года
НетМКАД + несколько районов заТопливная карта + звонок оператору. Бонусы 17 минут поездок при заправке свыше 10 литров.СреднееС картыСлучайно узнал
Яндекс.ДрайвKia Rio
Renault Kaptur
??Не менее 21 года
Стаж вождения от 2 лет
Начало в феврале 2018. Пока ничего не известно. Зато есть кэшбек при поездках на яндекс.такси и звонит робот с доп.вопросами про авто
КарусельLada Granta5 р./мин.
Ожидание 2 р./мин.
20 мин.Не менее 19 летМКАД + у метро

[python] Теорема Лагранжа. Разложение числа на сумму 4-х квадратов

Прохожу курс по основам python. В разделе "Рекурсия" наткнулся на интересную задачу про теорему Лагранжа.

Ограничение по времени
1000 мс
Ограничение по памяти
65536 кб

Теорема Лагранжа утверждает, что любое натуральное число можно представить в виде суммы четырех точных квадратов. По данному числу n найдите такое представление: напечатайте от 1 до 4 натуральных чисел, квадраты которых дают в сумме данное число.

Формат ввода

Программа получает на вход одно натуральное число n < 10000.

Формат вывода

Программа должна вывести от 1 до 4 натуральных чисел, квадраты которых дают в сумме данное число.

Решил ее так

def lagr(n, k):
    n1 = int(n ** 0.5)
    # База рекурсии: число и есть квадрат
    if n1 ** 2 == n:
        print(n1, end='')
        return int(n1 ** 2)
    # Иначе придется перебирать от n1 до 1 вниз
    while n1 >= 1:
        s = n1 ** 2
        # Если еще укладываемся в 4 числа, то надо пробовать разложить разность n - n1**2
        if k + 1 <= 3:
            s += lagr(n - n1 ** 2, k + 1)
        # Нашли сумму квадратов. Выводим через пробел, не перенося строку
        if s == n:
            print(' ', n1, sep='', end='')
            return int(s)
        n1 -= 1
    return 0


n = int(input())
lagr(n, 0)

Пример ТЗ. Отчёт о доходе пиццерий

Опять попалось задание из вакансии вида "Системный аналитик". Выкладываю сюда свое решение.

Пробую новый формат - изложение хода своих мыслей. Вдруг окажется полезным какому-нибудь начинающему аналитику. Или может  случайный гость оставит мне ценные замечания.

Задание: Директор по развитию сети пиццерий хочет знать, какой доход имеет каждая пиццерия в сети и сколько зарабатывает вся сеть в целом. Составьте техническое задание на разработку отчёта

Читать далее «Пример ТЗ. Отчёт о доходе пиццерий»

Репост. Сбор и анализ требований к программному продукту. Химонин

Прочитал статью, мне понравилась. Изложение системное, краткое. Хочу поделиться.
И делюсь, так как в конце статьи есть фраза: "Все права на статью принадлежат автору. РАЗРЕШЕНА полная или частичная перепечатка, с обязательным указанием автора"
Химонин Юрий. "Сбор и анализ требований к программному продукту"
Файл на Яндекс.Диске

Download the PDF file .

Пример ТЗ. Чат в мобильном банке

Попался еще один пример задания. Выкладываю свой вариант ответа.

Общее описание

Данный документ описывает требования к онлайн-чату с оператором в мобильном приложении Сквербанк Онлайн на платформах iPhone, iPad, Android, WP.

Цели

Онлайн-чат имеет следующие цели:

  • повысить лояльность клиентов. Метриками лояльности являются опросы клиентов и анализ отзывов;
  • увеличить количество обрабатываемых сообщений сотрудником КЦ.

 
Читать далее «Пример ТЗ. Чат в мобильном банке»

Как писать ТЗ на сайт (копипаста)

Наткнулся на просторах сети на хороший доклад Алексея Бородкина (нач. отдела аналитики и проектирования агентства Notamedia) о том, как надо писать ТЗ на сайт. С блэкджеком и ш.. Вигерсом и ГОСТом 🙂
Ретранслирую запись и у себя в бложике

После просмотра видео рекомендую почитать записи и посмотреть файлы на странице http://nota.media/yandex/ (ее, кстати, докладчик приводит в ходе лекции).

Основные моменты, которые вынес лично я:

  1. Начинать продумывать дизайн надо ДО формирования ТЗ
  2. Нужно найти золотую середину между дизайном и прототипом, чтобы показать интерфейс заказчику (но начать надо с просто расставленных прямоугольников)
  3. Допишу еще пункты по мере пересмотра видео 🙂

Примеры юз-кейсов

Здесь собираюсь приводить примеры описания юз-кейсов. Описания выполнены "моей рукой", но по мотивам книги Коберна про юз-кейсы

Задание 1

Опишите сценарий подключения платной услуги «Анонимный номер телефона» при подаче объявления на сайте объявлений.
Смысл услуги – замена в объявлении реального номера пользователя на временный виртуальный номер. Услуга может быть подключена на 30 дней
Примечание: Зашел на сайт, не увидел там подобной услуги. Поэтому описываю сценарий в том виде, в котором я его вижу.
Предполагаю, что телефонная логика (переадресация звонков, стоимость звонка и т.п.) как-то реализована и внедрена в Системе.
---
Название сценария: Подключение анонимного номера телефона
Основное действующее лицо: Пользователь сайта
Предусловие: Пользователь находится на странице создания объявления, выполняет сценарий "Создание объявления"
Основной сценарий:
1. Пользователь нажимает кнопку "Подключить анонимный номер" и указывает свой настоящий номер, на который нужно переадресовывать звонки и смс с анонимного.
2. Система валидирует номер и выполняет сценарий "Подтверждение номера по СМС" (Примечание: предлагаю этот сценарий вынести отдельно, т.к. он может быть задействован в нескольких сценариях. Описывать не буду, но там что-то вроде генерации одноразового пароля, заявки на отправку у оператора, контроль доставки, повторные отправки, истечение жизни пароля). и удостоверяется, что для данного клиента в настоящий момент нет активной услуги "анонимный номер".
3. Система создает анонимный номер телефона в статусе "Новый" с указанием даты создания по Правилам создания нового номера (Предполагаю, что они описаны где-то отдельно). В качестве параметра номера "Срок жизни" устанавливает дату = текущая дата + N дней (на момент написания сценария N=30, может меняться администратором). Стоимость услуги берется в соответствии с настройками. Система оповещает клиента об успешном результате. Статус номера переводится на "Активный".
Происходит возврат в сценарий "Создание объявления" с телефонным номером, равным созданному анонимному номеру.

Альтернативные сценарии:

1a. Пользователь нажал "Отмена". Происходит возврат в сценарий "Создание объявления" с пустым телефонным номером.

2a. Номер невалиден (не соответствует формату телефонного номера или принадлежит другому оператору). Система выводит пользователю сообщение о невозможности подключить услугу "Анононимный номер" с указанием причины (не соответствует формату или не наш номер). Пользователь остается на начальном экране подключения анонимного номера (далее - начальный экран).

2b. Сценарий "Подтверждение номера по смс" выполнился неудачно. Система выводит пользователю сообщение о невозможности подключить услугу "Анононимный номер" с указанием причины (нужен маппинг кодов ошибок с человеческим текстом). Пользователь остается на начальном экране.

2c. У пользователя уже есть активная услуга "Анонимный номер". Система выводит сообщение о невозможности подключить еще одну услугу "Анонимный номер" по причине активной услуги у этого клиента и предлагает выбрать в качестве номера для объявления уже существующий анонимный номер. Если пользователь соглашается, происходит возврат в сценарий "Создание объявления" с телефонным номером, равным выбранному анонимному номеру. Если пользователь не соглашается, остаемся на начальном экране.

2d. Пользователь нажал на "Отмена" рядом с анонимным номером телефона. Система удаляет анонимный номер из нового объявления. Кнопка "Подключить анонимный номер" становится активной. Кнопка "Отмена" исчезает.

3a. Система не смогла создать новый анонимный номер по техническим причинам. Система выводит сообщение о технической ошибке и незможности создать новый анонимный номер.

3b. Система не смогла получить параметр N. Система берет параметр по умолчанию 30 дней в качестве значения N.

3c. Система не смогла получить стоимость услуги. Система выводит сообщение о технической ошибке и незможности создать новый анонимный номер.

3e. Стоимость услуги =0. Система не выводит стоимость рядом с телефоном и не выводит услугу "Анонимный номер" в пакетах услуг (хотя это может быть все описано в сценариях Расчета стоимости пакетов услуг и создания объявления)

4. Прерывание. Сценарий, не дойдя до успешного выполнения, прервался по внешним причинам (таймаут связи, закрылась вкладка, пользователь вышел из системы). Действий не требуется, номер остается в статусе "Новый". (В Правилах генерации номеров можно разрешить переиспользовать подобные номера с учетом протухания +1 сутки)

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

Частота выполнения: 1 раз на 50 новых объявлений
Требования к скорости: 95 персентиль создания анонимного номера = 0.1 сек.

ЗАДАНИЕ 2

2.  Задание: Напишите use case пополнения счета банковской картой в приложении оператора сотовой связи.

Use Case "Пополнения счета банковской картой"
Основное действующее лицо: Пользователь
Предусловие: пользователь выбрал способ пополнения "Банковская карта" в разделе "Пополнить счет"
Основной сценарий:
  1. Приложение направляет сигнал в систему телефона об открытии страницы oplata.operator.ru в браузере по умолчанию
Расширения:
1а. Направление сигнала не удалось. Вывод сообщения о системной ошибке.
Примечание: Смотрел на приложение для Android. Там система перенаправляла на сайт оператора, открываемый в браузере. Браузер - это уже другая система относительно рассматриваемого приложения, поэтому юз-кейс такой короткий 🙂

Activity diagram

<cap_mode = "on">

Иногда для выявления и формализации требований бывает полезным нарисовать диаграмму деятельности (Activity diagram). Ее задача - отразить последовательности действий системы. Там же можно отразить и действия пользователя, только, желательно, их как-то отделить от действий системы.

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

Так вот, когда диаграмма готова, полезно посмотреть на нее и призадуматься о некоторых аспектах:

  • Могут ли указанные действия выполняться параллельно, последовательно или независимо?
  • Какая цель каждого действия?
  • Какие данные и как меняются в ходе выполнения действий - то есть, что подается на вход каждого действия, что получается на выходе
  • Какие ошибки могут возникать в ходе каждого действия
  • Что может являться триггером для начала выполнения действия?

Пример диаграммы деятельности.

Задача: Нарисуйте activity diagram процесса авторизации в приложении Мой Пчелайн

Диаграмма:

Авторизация Мой Билайн

Ссылка на файл в формате visio .vsd

<cap_mode = "off">

Или я, или эмир, или этот ишак

Очень часто вспоминаю эту притчу. Особенно в работе.

Однажды Эмир Бухарский призвал к себе Ходжу Насреддина, показал ему своего любимого ишака и сказал:

- Сможешь ли ты обучить этого ишака богословию, чтобы он знал столько же, сколько я сам?

 

Насреддин проверил способности этого ишака и сказал:

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

Эмир велел выдать Насреддину из казны пять тысяч таньга золотом и сказал:

- Бери этого ишака и учи его, но, клянусь Аллахом, если через двадцать лет он не будет знать богословия и читать наизусть Коран, я отрублю тебе голову!

И когда Насреддин поведал эту историю в чайхане, куда он привёл этого ишака, добрые люди сказали ему:

- Можешь сразу проститься со своей головой, ибо где это видано, чтобы ишак наизусть читал Коран?

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

Человек хороший

Сегодня ДР.

Несколько поздравлений подряд содержали в себе фразы типа "ты такой хороший...".
Передергивает.
Сразу же вспоминаю две цитаты Довлатова. Но отвечаю просто "Спасибо". Иначе долго объяснять.

Печаль. Надо что-то менять.

Ах да, цитаты:

  1. Хорошего человека любить неинтересно... В поразительную эпоху мы живем. „Хороший человек“ для нас звучит как оскорбление. „Зато он человек хороший“ — говорят про жениха, который выглядит явным ничтожеством...
  2. У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего поведения. К нему предъявляют высокие требования. Он тащит на себе ежедневный мучительный груз благородства, ума, прилежания, совести, юмора. А затем его бросают ради какого-нибудь отъявленного подонка. И этому подонку рассказывают, смеясь, о нудных добродетелях хорошего человека