Сменил движок блога

Переехал со слишком уж минималистичной в настройках Эгеи на WordPress.

  • Повозился с кастомизацией, чтобы всё выглядело [почти] как раньше.
  • Настроил кросспостинг в Telegram.
  • Поразбирался с кросспостингом в соцсети
    • Выяснил, что Facebook год назад изменили правила апрува внутренних приложений и теперь реализовать автоматический постинг туда малой кровью и бесплатно стало очень геморройно. Пока (до следующего прилива энтузиазма) подзабил на автоматические анонсы постов в Facebook.
    • До автопостинга в VK не добрался, но интуиция подсказывает, что в VK с настройкой автопостов будет попроще. Сейчас уже лениво, но надо будет всё-таки заняться. Как-нибудь.

В целом, переездом доволен.

А Firefox-то неплох, оказывается

С выходом последнего обновления Chrome, которое установилось, как обычно, в тихом режиме и принесло мне парочку серьёзных разочарований, задумался я о смене браузера для личного пользования (в работе-то понятно, что придётся и под Chrome проверять сайты). Задумался и решил проверить, а не стал ли тормозной когда-то Firefox, который я многие годы уже не использовал, работать шустрее. И, да! Оказывается, стал. Работает Firefox просто отлично. Уж точно, рендерит страницы быстрее, чем Chrome.
Chrome, кстати, со временем, гляжу, становится всё более неповоротливым, но это малозаметный процесс, происходящий очень плавно (с каждый апдейтом чуть хуже, чуть медленнее), и вот уже стройный муж, 5 лет брака спустя, прохаживается по квартире с круглым пузом. А когда это пузо выросло-то? И не вспомнить уже…

В общем, третий день сижу на Файрфоксе, а желания вернуться нет. Даже Developer Tools работают гораздо шустрее, чем в Chrome. Единственная штука, разве что, которая по-дефолту мне не понравилась, это нестандартная логика переключения вкладок по горячим клавишам (Ctrl+Tab и Ctrl+Shift+Tab), но это легко возвращается к классическому варианту в настройках (в отличие от того же Chrome, который в этом и во многих других отношениях фактически не настраивается, ступая по спорному пути компании Apple — типа, ешьте, что дают).

Про Firefox у меня всё. Резюмирую:

  • Хороший браузер.
  • Рендерит сайты качественно и быстро.
  • Быстрее, чем Chrome.

Теперь пара слов о том, что именно мне не понравилось в последнем обновлении Chrome. Эти ребята убрали целую кучу фич из контекстного меню вкладок, которыми я пользовался очень активно, аргументируя тем, что согласно их исследованиям этим мало кто пользовался. Чудеса! В частности, я больше не могу на интересующей меня вкладке нажать правой кнопкой мыши, выбрать пункт «Close other tabs» и тем самым закрыть все вкладки, кроме одной.

И UX-специалисты Google вместо этого заботливо предлагают мне две альтернативы. Обе абсолютно идиотские. Сами предлагаемые функции-то может и полезные, но предлагать их как альтернативу функции «Close other tabs» сродни предложению одевать штаны через голову. Альтернативы такие:

  1. Пользоваться функцией «Close tabs to the right», которая закрывает только вкладки справа. Т.е., когда мне нужно закрыть вкладку из середины, я по логике UX-специалистов Google должен перетащить вкладку в самую левую часть панели, а затем уже воспользоваться этой функцией.
  2. Или вот ещё, цитирую:

    In case you use ‘Close Other Tabs’, which seems to be the most-used feature among the four removed options, Chrome engineer Peter Kasting suggests using the following option instead: “To flush your excess tabs, click the first tab you want to close, shift-click the last tab to select the whole range, then hit ctrl-w”.

    Только вдумайтесь. Если у меня открыто 30 вкладок, а я хочу оставить девятую, то согласно логике инженера Google я должен:
    — Зажать Shift
    — Щелкнуть по первой вкладке
    — Щелкнуть по восьмой вкладке
    — Отпусть Shift
    — Нажать Ctrl-W
    — Затем, когда после этого моя вкладка станет первой, повторить те же действия с диапазоном вкладок справа.

Спасибо дорогому Google, что заботится о том, чтобы мой мозг оставался в тонусе, подбрасывая мне челленджи перепривыкания.

Безопасность eBay

На тему безопасности паролей. Я всегда использую менеджер паролей, на каждом сайте всегда использую свой отдельный уникальный сгенерированный пароль (не менее 16 символов, большие и маленькие буквы, цифры, спецсимволы) и более-менее регулярно меняю их на важных сайтах.

Сайты eBay и PayPal, использующие единую систему авторизации, входят в мой список важных сайтов, и очередной уникальный пароль для них я выставлял не так давно, пару месяцев назад. Оба сервиса при том я использую редко, очень давно не заходил.

Так вот. Только что зашёл проверить электропочту и обнаружил, что в районе половины девятого в течение двух минут кто-то пытался войти под моей учётной записью. Причём успешно(!) ввел мой логин и пароль. eBay, слава им, засёк вход из нестандартного места и запросил подтверждение по почте. Причём в это же время мне на телефон пришла ещё и одна SMSка с PIN-кодом для входа.

Удивляет меня вот что. Если бы кто-то просто неудачно пытался подбрать пароль, я бы это понял. Если бы я использовал какой-то свой стандартный пароль, который использую везде, и на этом сайте, тоже было бы понятно, что кто-то нашёл в каких-то парольных дампах, сливаемых то тут, то там с разных сервисов, мой пароль и попытался под ним войти на eBay.

Но здесь-то пароль был свежий и сложный. И всё равно злоумышленник под ним успешно авторизовался. Да, дальше он всё равно не смог пройти, благодаря алгоритмам безопасности сервиса, но всё же откуда у злоумышленника пароль? Дыра в алгоритме авторизации eBay? Пароли eBay опять слили? Всё-таки концепция логинов\паролей без дополнений в виде SMS, конечно, страшно небезопасная.

P.S. А ведь к этому PayPal-аккаунту привязаны несколько моих банковских карт. И ведь PayPal при оплате через привязанную карту плюёт на 3D-Secure и производит оплату без ввода кода из SMS. Ужас!

Upd. (23:25): Сменил пароль час назад, а 10 минут назад еще 2 попытки входа через SMS. Никак не угомонится кто-то.

Upd. (25.08.2019): Выяснил, что всё-таки у eBay и PayPal отдельные друг от друга авторизации, поэтому под ударом был только eBay.

Про техподдержку

Как же я ненавижу обращения в техническую поддержку. Наверное, даже чуть больше, чем людей, которые, услышав о любых моих технических проблемах с чем-либо, советуют туда обращаться. Бог — судья этим людям со всей их рассудительностью, положительным опытом и объяснениями моего вклада в решение общих проблем даже при отсутствии профита в решении конкретно своей.

Да будет среднестатистический саппортер трижды здоров!

Ситуация в плохом смысле абсолютно привычная. При использовании определённого технического сервиса возникла у меня проблемная ситуация, которую я, технарь на минуточку, собственноручно и хорошо продиагностировал, после чего составил письменное описание ситуации и всех сопряженных с ней нюансов, проб и ошибок (написал всё в довольно простой лаконичной форме, с выраженными акцентами). Отправил сообщение в зарубежный саппорт, получил номер тикета и без оптимизма стал ждать ответ.

Ответ, как это принято говорить, не заставил себя долго ждать: фальшивые американские сожаления и три ссылки на поверхностные статьи с базовым траблшутингом, которые я уже давно прочитал. И всё! Зачем, $%$#@, вчитываться в то, что я пишу, если можно дать стандартные ссылки и продолжить, блин, смотреть ролики на ютьюбе?.. Вот тебе статьи, уважаемый юзер, и читай их, держись там, здоровья тебе! Зачем организовывать нормальный саппорт, если можно сэкономить и набрать стопяцот вчерашних школьников, неумеющих читать, но умеющих копипастить ссылки?

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

Именно благодаря подобному негативному опыту, в рамках сбережения нервов я заработал свой пофигизм и любовь к ожиданию, что проблема рассосётся сама собой, или к поиску обходных путей и альтернативных решений, которые позволят мне обойтись без саппорта. Кстати, по опыту, обычно проблема решится сама (условно сама — под капотом кто-то что-то чинит, конечно) быстрее, чем подобный саппортер начнёт понимать суть изначально изложенной ему проблемы.

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

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

Про внедрение

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

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

И вот этот скомпилированный результат отдаётся на проверку заказчику…

Роскомнадзор

Из-за жуткой смеси бесстыдства, цинизма, беззакония, похуизма, упрямства и невежества людей из Роскомнадзора, а также смежных ведомств, которых хлебом не корми, дай переписку террористов почитать, уже, блядь, третьи сутки не работают или работают через пень-колоду многие мои рабочие и домашние ИТ-инструменты:
— Slack (мессенджер для программистов)
— Trello (командная работа)
— Franz (аггрегатор мессенджеров)
— Todoist (ведение ту-ду листа)
— ScreenTime Parental Control (отслеживание активностей детей на смартфонах)

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

Желаю всему Роскомнадзору, Жарову, Никифорову, Бортникову и прочим блюстителям госбезопасности, чтоб ни одна страна мира, кроме нашей с ними родины, этих патриотов к себе даже погостить на пару дней не принимала, а сами они, их дети, внуки их, все их родственники, друзья и родственники друзей до седьмого колена жили в той стране и в тех условиях, в которых, благодаря этим людям, предстоит жить нам.
Чтоб вы жили на свою зарплату, Бортников и Жаров!

P.S. А нельзя ли Жарова привлечь по статье 282 УК РФ («возбуждение ненависти или вражды к группе лиц … совершенное публично …»). Вот все эти действия Роскомнадзора последних дней возбудили во мне ненависть к этой группе лиц. А кто отвечает за то, что Роскомнадзор возбудил во мне ненависть? Правильно, его глава. Посадить бы его годиков эдак на пять.

Клавиатура с распознаванием отпечатков пальцев

Есть такая штука, как распознавание отпечатков пальцев, которая уже давно и успешно применяется во всяких смартфонах и ноутбуках. Прислонил палец — телефон разблокировался. Прислонил палец — интернет-банк открылся. Удобно!

Невероятно, но факт! Если у ноутбуков и смартфонов (даже дешевых, за 4-5 тыщ рублей), уже давно с этим делом всё в порядке, то на десктопах распознавание отпечатков вещь до сих почему-то диковинная. В наших российских интернет-магазинах домашних фингерпринт-рекогнишн-девайсов нет, похоже, как класса (есть только какие-то промышленные уродцы, которые, уверен, не подходят для того, чтобы в Windows 10 авторизовываться).
На али и ебеях что-то похожее и подключаемое по USB есть, но либо по каким-то несусветным ценам (типа 5000-6000 ₽), либо выглядит этот кусок пластмассы так, будто сломается в первый же день. Да, и неудобно это, имхо, когда у тебя какая-то очередная проводная хрень на столе невесть где валяется.

Самое правильное, эргономичное, удобное, имхо (привет ноутбукам и смартфонам), это когда сканнер отпечатка встроен в клавиатуру. А юмор знаете в чём? Как считаете, сколько таких клавиатур в мире существует для десктопов? Неправильно. Одна! Единственная! Microsoft Modern Keyboard называется. В России не продаётся. На eBay стоит 11 тысяч (+2 тысячи за доставку). Да, и выглядит она скромно, по-ноутбучному. Не каждому по душе придётся.

Вот, я и удивляюсь. Неужели реально вход по отпечатку на тех же смартфонах настолько востребован, что на каждом копеечном смарте сканер отпечатков есть, а на десктопах вход и авторизация по отпечатку настолько не востребованы, что годы идут, а производители клавиатур не хотят с этим заморачиваться? Печально всё это.

Completed successfully

А позитивное мышление нынче в моде. Даже программы, что бы ни случилось, всегда на позитиве.

> git -c filter.lfs.smudge= -c filter.lfs.required=false -c diff.mnemonicprefix=false -c core.quotepath=false clone github.com/***/*** d:RepositoriesGit***

Cloning into ‘d:RepositoriesGit***’…
warning: templates not found C:Program FilesGitsharegit-coretemplates

fatal: HttpRequestException encountered.
An error occurred while sending the request.

fatal: HttpRequestException encountered.
An error occurred while sending the request.

Completed successfully.

Про постановку задач

Какую постановку задачи ожидает исполнитель

Необходимо приготовить торт.

Основа:
2 бисквитных коржа.

Прослойка:
Между коржами творог.

Начинка:
Грецкие орехи и изюм.

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

Готовому продукту дать настояться на подоконнике.

Как ставят задачу постановщики задач

Торт нужен с вишенкой сверху. А еще — грецкие орехи.

Дополнительно
Сверху клубника должна быть. Основа должна быть из коржей. К грецким орехам еще изюм нужен. И малину еще к клубнике наверх добавить. Не забудь про симметрию ягод.

Содержимое
А коржи бисквитные должны быть. А клубнику на половинки порезать. Да, и между коржами творог. И еще ягоды должны быть только по краям.

Сейчас (as is):
Заказчик страдает без торта. Ходит голодный, хочет съесть торт, а торта нет. Вообще. Ни верха, ни начинки, ни прослоек.

Должно быть (to be):
Должен быть торт. С бисквитными коржами, между которыми творог. Начинка — грецкие орехи и изюм. Сверху ягоды (клубника и малина), посредине вишня.

Наш заказчик ежедневно принимает пищу. Утром, днем и вечером. Завтракает он только фруктами. Ужин у него тоже легкий. По поводу обеда. Наши коллеги путем долгих обсуждений и многочисленных встреч с ним выяснили, что заказчик:

  • любит в обед что-то особенное
  • иудей
  • предпочитает мучное
  • имеет аллергию на молочные продукты, но не на творог
  • всегда голосует за Жириновского

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

Приготовь торт.

См. ✉ от Васи (там про коржи должно быть).
См. ✉ от Пети (там про ягоды).
Также см. мою переписку с Колей ✉ (там про начинку обсуждали).

ВАЖНО!!!: Предоставь оценку до конца дня!

P.S. Будут вопросы — звони.

Как ставят задачу начальники

— Задача есть. Пойдём обсудим.
— Что за задача?
— Смотри. Нам торт заказали. Приготовь.
— Какая основа нужна?
— Позвони Васе и выясни.
— А начинка?
— Про начинку у Пети узнай.
— А сверху?
— Пока точно неизвестно. Может быть, вообще ничего не надо будет. А может дополнительный торт наверху приделать придётся.
— ОК.
— Когда сделаешь?
— Ну, эээ…
— Ты уже выяснил все детали у Васи и Пети?
— Когда? Я ж с тобой всё еще разговариваю…
— В общем, чо тут думать. Задача не без изъянов, но вполне понятная. Чай, не в первый раз торт готовишь. Там работы-то на день.
— ?!