вторник, 15 января 2019 г.

Как работает ApplePay

     Не так давно мне пришлось вплотную столкнуться с ApplePay, хотя вообще я с платежками давно уже не работаю. Попытался понять как работает ApplePay и с удивлением обнаружил что  нормального технического описания нет. Есть куча маркетингового булшита и отдельных догадок.  Единственное что я нашел - https://medium.freecodecamp.org/how-apple-pay-works-under-the-hood-8c3978238324  Это тоже не официальная документация, но выглядит вполне правдоподобно.
       Если в двух словах - когда вы добавляете карточку в ApplePay, Apple валидирует данные и отправляет к МПС(Visa/MasterCard) запрос на генерацию секретного токена(DAN - device account number), который по сути представляет "фейковый" номер кредитной карточки. Этот фейковый номер запоминается в устройстве. Во время транзакции iphone "прикидывается" этой фейковой карточкой и NFC терминал передает этот номер карты в МПС. МПС подменяет фейковый номер карточки реальным номером карточки добавленной ранее в ApplePay. Дальше транзакция проходит как обычно.  
        

понедельник, 24 сентября 2018 г.

Go Meetup в Mail.ru

      Вчера рассказал на Go Meetup в Mail.ru о том как мы в Ozon.Travel переходим с C# на Golang, о некоторых типовых ошибках и возникающих сложностях.
      Доклад опубликован на Github: https://github.com/yvasiyarov/meetup-23-09-2018
Его можно посмотреть прямо тут - https://go-talks.appspot.com/github.com/yvasiyarov/meetup-23-09-2018/index.slide#1

воскресенье, 26 августа 2018 г.

Яндекс

       В свое время после прочтения Яндекс. Книга я стал горячим адептом продуктов яндекса. Даже поставил себе яндекс браузер и сделал Яндекс поиском по умолчанию.  Но сейчас могу сказать что я весьма разочаровался в том как Яндекс ведет дела на своем рынке. Зачастую Яндекс пользуется своим доминирующим положением на рынке российского интернета и ведет себя по хамски. Из последнего что меня взбесило - это Яндекс Советник. По сути эта штука крадет пользователей у магазинов. Когда ты приходишь в свой любимый магазин и хочешь купить XXX, а тебе тут всплывает окно и говорит - а вот там-то ты можешь купить XXX на 100 рублей дешевле. В такой ситуации даже самый лояльный пользователь может уйти в другое место.
        На первый взгляд это может показаться благородным делом - Яндекс помогает несмышленым пользователям с экономить деньги. Прям таки рыцарь на белом коне. Но тут важно понимать что Яндекс получает совсем не маленькую денежку за каждый такой переход. Ну и хрен бы с ним подумаете вы. Но тут есть важный момент -  предлагая более низкую цену Яндекс Советник абсолютно игнорирует другой важный фактор - качество сервиса. Если ты предоставляешь качественный сервис, пост продажно обслуживание и тд - ты не можешь демпинговать. Тебе нужно с чего-то платить зарплату сотрудникам службы поддержки пользователей, сотрудникам службы контроля качества и тд. Но если ты будешь всю свою маржу отдавать(сначала скинуть цену чтобы оказаться самым дешевым а потом еще заплатить за переход Яндексу) то ты будешь вынужден снижать качество обслуживания. Либо работать в убыток. А по другому никак.
         Получается что преследую на первый взгляд благородную цель Яндекс попросту набивает себе карманы и способствует к тому чтобы на рынке остались только компании типа плеер.ру - которые всегда на сто рублей дешевле но предоставляют не самый качественный сервис.  В общем для себя я решил - пора обратно переходить на гугл. И сносить яндекс браузер. 

Zappos.Доставляя счастье

       В своем списке для чтения я стараюсь чередовать техническую и не техническую литературу.  Одной из последних не технических книг которую я прочитал была книга "Zappos. Доставляя счастье" от Тони Шея. Книга очень легко читается, можно сказать взахлеб. Временами эта книга даже ощущается не как деловая литература а как приключенческий роман. Но при этом я могу сказать что я также почерпнул из нее много нового. https://docs.google.com/document/d/1-9odADCVK6uBR2eCXvm7v-IdT_t3fljTM0GvoE8zvkY/edit?usp=sharing  - пометки которые я сделал сам для себя. расшарил их со всеми на тот случай если они кому-то покажутся полезными. 
        В общем и целом книга стоящая, возможно через некоторое время я даже захочу ее перечитать (со мной такое бывает).




Java Performance: The Definitive Guide by Scott Oaks

       На днях дочитал книгу - Java Performance: The Definitive Guide by Scott Oaks.  Могу сказать что мне очень понравилось тот уровень детализации с которым описана работа GC(Garbage Collector).  Все что я читал до этого про сборщики мусора в Java было недостаточно глубоким и не отвечало на все мои вопросы. Автор весьма обстоятельно подошел к разбору всех возможных сценариев в работе сборщика мусора.   Неплохо было рассказано про компилятор, этапы компиляции и перекомпиляции. Много времени было уделено обзору инструментов. А вот главы посвященные производительности энтерпрайзных приложений мне показались довольно поверхностными и скучными. 
        Чего мне не хватило в этой книге - это описание memory layout. Я считаю что используемые алгоритмы во многом предопределены используемыми структурами данных. И если подробно рассказать о внутренних структурах данных используемых JVM то гораздо проще будет понять особенности ее поведения в той или иной ситуации.
     В последнее время я взял за правило выписывать по ходу чтения отдельные моменты которые мне казались заслуживающими внимания. Туда же я включил ссылки на инструменты или флаги JVM которые мне показались полезными. Эти записки сделаны на гремучей смеси безграмотного английского и русского языков, но возможно сама информация окажется кому-то полезной - https://docs.google.com/document/d/1-GapN42d-zcPuYYWI-iqIZJtb8KJWKpd1b8S-rX_qZ8/edit?usp=sharing 
         В общем и целом могу сказать что эта книга заслуживает прочтения.

вторник, 24 июля 2018 г.

GraphQL and DataLoader by Facebook

      Открыл для себя GraphQL и DataLoader by Facebook. Идея очень нравится. Особенно подписки.  Единственный вопрос который не дает мне покоя -  а насколько быстро это работает ?

вторник, 10 июля 2018 г.

GDS

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