VoDmAl


Как правильно перенести фотографии с iPhone на компьютер с учетом косяков и Apple и Adobe

Эта отдельная заметка является частью того как утроена моя система работы с Adobe Lightroom. Выделить ее из того разросшегося документа заставило то, что с каждой новой версий iOS/MacOs, а так же Lightroom отваливается или перестает корректно работать то одно, то другое. 

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

Есть вот такой автоматический вариант: https://forums.adobe.com/thread/2421171, через приложение на телефоне. Однако…

Все через iCloud

Сначала устройство у меня было одно, а компьютер был PC. На момент публикации этой заметки устройств Apple, на которых можно делать фотографии, сильно больше одного, а компьютер на который все копируется теперь не на Windows, а под MacOS. … Читать всю заметку


Помогающий удаленно работать бот для Телеграм

Вступление

В 2018 году очень популярной была тема написания своих ботов, не обошла она и меня стороной и я решил написать своего собственного помощника. Чуть больше технических деталей см. в черновике Небольшая история написания бота для Telegram.

Около года я развивал бота исключительно под свои потребности и автоматизацию рутинных операций, выполнение которых удобнее всего было выполнять в виде чата. В 2019 моя команда перешла на удаленную работу и возникла потребность в понимании кто сейчас работает, кто отошел пообедать, а кто уже ушел «домой». Это была одна из вещей которые мой бот уже почти умел к тому времени и после небольшой доработки у бота появились и другие пользователи кроме меня.… Читать всю заметку


Подборка интересных ботов в Twitter

Вступление

Это просто пополняемая заметка со списком интересных ботов в Twitter. Что-то можно найти по хештегу #botally в самом Twitter. 

Последнее обновление: 13 марта 2019

Подборка

## year_progress

Просто регулярные твиты о том сколько времени от текущего года уже прошло. Типичный твит выглядит так. 

## everycolorbot

Постоянные твиты с кодом цвета и картинкой с этим цветом. Типичный твит выглядит так.

softlandscapes

Постоянные твиты с довольно приятными глазу пейзажами. Типичный твит выглядит так:

… продолжение следуетЧитать всю заметку


Как эффективно работать с несколькими рабочими столами и окнами на Mac OS

Вступление

Когда основной компьютер был Windows, то дома необходимости особой не было сидеть в куче окон: или браузер или файловый менеджер (FAR Manager, который по совместительству еще и редактор кода и FTP клиент и т.д.). 

На работе же в итоге у меня было три 19″ “квадратных” монитора которые делили свои обязанности примерно следующим образом:

  1. Коммуникация: Google Chrome с открытым Gmail + Skype

  2. Рабочее пространство: phpStorm, Firefox и т.д. 

  3. Всякое разное за чем нужно присматривать: терминал на прод, окно мониторинга и т.д. 

Потом мониторы стали 21″ но уже не “квадратные” и их стало два. Пришлось немного ужаться и вместо трех десктопов стало два.… Читать всю заметку


Косяки мессенджера Telegram для разработчика ботов

Вступление

Список недочетов в API самого лучшего мессенджера Telegram, с которыми я столкнулся как разработчик ботов под него. Если что-то будет исправляться, то я буду ставить галочку напротив этого пункта.

Последнее обновление: 04 июня 2019. 

Косяки

Нет timestamp в сообщении с callback_query

Учитвая асинхронную природу это может приводить к потере информации о реальном взаимодействии с кнопкой в сообщении. Не проверял. Но скорее всего это продиктовано тем, что в случае ошибки (по таймауту, например) Телеграм даже не будет пытаться снова отправить callback_query.

Теряется информация о форвардинге

Если переслать боту сообщение из другого чата (канала, бота, …) содержащее в себе аудио-файл, то в сообщении которое придет в бота не будет информации что это forwarding. … Читать всю заметку


Выбор движка или готового решения для проведения AB тестирования

Вступление

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

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

Optimizely

Очень понравилось решение app.optimizely.com, правда у них не совсем внятная ценовая политика. Но все настраивается в интерфейсе мышкой и кнопками, есть интеграция с Google Analytics и код будет передавать туда соответствующий эксперименту Custom Dimension. 

Пока не удалось найти связь между client side и server side т.к.… Читать всю заметку


Исследование: отображение подтверждения при закрытии/перезагрузке вкладки в браузере

Цель

Мы хотим для определенного вида трафика попробовать при закрытии вкладки показывать человеку специальное предложение. Я знаю два способа дотянуться до человека когда он ушел. 

  1. Ремаркетинг/ретаргетинг. То есть можно начать показывать специальный баннер такой аудитории на остальных сайтах по которым человек будет ходить.
  2. Повесить событие на закрытие страницы, которое заблокирует возможность выполнения этой операции. 

С первым никаких вопросов нет, а вот со вторым все немного интереснее т.к. оказывается в разных браузерах поведение разное. 

Исследование

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

  • Google Chrome 55
  • Mozilla Firefox 50.1
  • Internet Explorer 11

body.unload

Я помнил из начала двухтысячных, что раньше можно было повесить событие на unload в body и чуть ли не иметь возможность не дать человеку вообще закрыть страницу просто возвращая false из обработчика.… Читать всю заметку


Графит и графана

Вступление

Графит (Graphite) — очень хороший сервис для работы с time series данными. Он он из коробки дает как интерфейс для отображения данных, так и api для сохранения данных. Однако мы практически не пользуемся ни первым ни вторым напрямую. 

StasD — именно его мы используем для передачи данных т.к. он обеспечивает более качественное сохранение данных, которые приходят очень часто.

Графана (Grafana) — ее мы используем для отображения графиков. В ней можно создавать свои доски и панели и графики. 

Почему очень важно правильно называть метрики

Метрики очень важно правильно называть из-за того, что правила при хранении и агрегации метрик зависят от их названий.… Читать всю заметку


Небольшая история написания бота для Telegram

# Вступление

Когда Telegram объявили о запуске API для написания ботов я создал себе “чтобы было” бота @vodmalbot. К тому моменту я уже довольно активно пользовался Telegram: был подписан на массу разных каналов. Поэтому возможность написать своего бота, например, чтобы просто форвардить в него ссылки, а он бы добавлял их в Pocket, ну или чего-то подобного мне была интересна. 

Параллельно с этим мы на коленке за один вечер написали бота для проекта надо которым работаем. Он был очень простой строчек на 100. Код базировался на примере с самого сайта Telegram. Ничего никуда не складывалось и нигде не хранилось. Он поддерживал несколько команд, выводил текущий курс по тикеру инструмента с большинства бирж мира. … Читать всю заметку


Исследование: выбрать библиотеку и способ вывода подсказок по работе интерйфейсов

Вступление и цель

Цель исследования: найти готовое решение, которое можно использовать для отображения подсказок по работе сложных интерфейсов. Должно быть просто, понятно и без занудств то есть не должно хотеться нажать Skip, Cancel или крестик. В идеале использовать эту же библиотеку как презентацию новых возможностей проекта, которые только появились или с которыми человек еще не знаком. Например если они появились давно, но человек их все еще не использовал ни разу. 

Ключевые слова: intro, tour, walkthrough, whatsnew, guide. 

Попытка 1. Готовые библиотеки

Я нашел статью в которой приводится два десятка готовых решений: http://ninodezign.com/25-free-jquery-plugins-for-doing-guided-tours-through-a-website/

Просмотрев все библиотеки я составил список тех, про которые можно было бы сказать хоть что-то хорошее или интересное.… Читать всю заметку