Вариант реализации асинхронного логирования пользовательских действий, изменяющих данные.
+ Логи пишутся отдельно от логируемых действий — снижение нагрузки на СУБД, засчёт чего...
+ Повышается пропускная способность СУБД для пиковых нагрузок.
+ Имеем отдельную БД с логами для тяжеловесного анализа их (сложные запросы или манипуляция с большими объёмами данных) — меньше нагрузка на рабочую СУБД.
+ Пиковые скачки нагрузки при логировании сглаживаются, размазываясь во времени.
– Ловятся только изменения в отдельных таблицах. Не залогать комплексное изменение во многих таблицах. Хотя тут не копал глубоко — допускаю, что можно вытянуть всю транзакцию, а не только data-change'и записей по-таблично.
– Нет контекстных данных об изменении: при какой операции изменились данные, кем изменены, как долго выполнялось изменение и т.п.
– Необходимо обслуживать как минимум ещё один контейнер или сервер.
#архитектура #логи #async
+ Логи пишутся отдельно от логируемых действий — снижение нагрузки на СУБД, засчёт чего...
+ Повышается пропускная способность СУБД для пиковых нагрузок.
+ Имеем отдельную БД с логами для тяжеловесного анализа их (сложные запросы или манипуляция с большими объёмами данных) — меньше нагрузка на рабочую СУБД.
+ Пиковые скачки нагрузки при логировании сглаживаются, размазываясь во времени.
– Ловятся только изменения в отдельных таблицах. Не залогать комплексное изменение во многих таблицах. Хотя тут не копал глубоко — допускаю, что можно вытянуть всю транзакцию, а не только data-change'и записей по-таблично.
– Нет контекстных данных об изменении: при какой операции изменились данные, кем изменены, как долго выполнялось изменение и т.п.
– Необходимо обслуживать как минимум ещё один контейнер или сервер.
#архитектура #логи #async
🔥1
Notepad++
Мой любимый текстовый редактор.
Автопревращение списка имён полей в заготовку для JSON/XML-образца сообщения путём применения RegEx.
#инструмент #regex
Мой любимый текстовый редактор.
Автопревращение списка имён полей в заготовку для JSON/XML-образца сообщения путём применения RegEx.
#инструмент #regex
🔥1
БТ (бизнес-требования) — ради чего бизнес затеял делать что-то. Цели. Увеличить конверсию, уменьшить издержки, снизить загруженность, увеличить привлечение, снизить отток, увеличить лояльность... Такие словосочетания ожидаются в БТ. Желательно с «засчёт...», «путём...» и т.п.
ПТ (пользовательские требования) — они же требования стейкхолдеров, т.е. тех кто участвует в бизнес-процессах, в которые включается новое решение. Например, из приложения пиццерии курьеру нужны точка на карте (бывают одинаковые адреса) и контакт получателя (если домофон сломан), клиенту надо заказать, не ожидая свободного оператора и видя «оглашённым весь список» (меню, доступность, цены), а оператору не надо самому вносить заказ.
БП (бизнес-правила) — нормативные или устоявшиеся в бизнес-среде ограничения и предписания для бизнес-процессов. Например, минимальная сумма заказа (один имбирь не повезём), его максимальная масса (чтобы курьер не сломался) и, следовательно, обязательность учёта массы упаковки при подсчёте массы заказа.
#проектирование
ПТ (пользовательские требования) — они же требования стейкхолдеров, т.е. тех кто участвует в бизнес-процессах, в которые включается новое решение. Например, из приложения пиццерии курьеру нужны точка на карте (бывают одинаковые адреса) и контакт получателя (если домофон сломан), клиенту надо заказать, не ожидая свободного оператора и видя «оглашённым весь список» (меню, доступность, цены), а оператору не надо самому вносить заказ.
БП (бизнес-правила) — нормативные или устоявшиеся в бизнес-среде ограничения и предписания для бизнес-процессов. Например, минимальная сумма заказа (один имбирь не повезём), его максимальная масса (чтобы курьер не сломался) и, следовательно, обязательность учёта массы упаковки при подсчёте массы заказа.
#проектирование
🔥1
Бизнес-возможности
На верхнем уровне архитектуры «сидят» бизнес-возможности (business capabilities, BC). Это та ценность, которую в целевую среду несёт бизнес, «выпятив» в эту среду своё решение. Их обычно мало. Например:
• ТВ-платформа предоставляет линейный и хранимый контент, инструменты оплаты доступа к нему и рекламные слоты.
• Складская система нужна для учёта имущества, его движения и инвентаризации.
• Мессенджер позволяет мгновенно обмениваться текстовыми сообщениями, аудио- и видео-записями и файлами.
Именно с этого уровня рекомендуется начинать описывать архитектуру.
С него же удобно знакомиться с новой для себя системой.
Также через сито BC стоит пропускать бизнес-идеи, чтобы не городить избыточную или неуместную функциональность, порождая этим систему-франкенштейна.
Из BC далее можно вывести бизнес-процессы высшего для системы уровня. А из них начнут вырисовываться и роли, и ключевые сущности (entities), и события (events) для EDA, и бизнес-процессы следующих уровней детализации, из которых в свою очередь станут понятны варианты использования (use cases). Но это уже совсем другая история.
#проектирование
На верхнем уровне архитектуры «сидят» бизнес-возможности (business capabilities, BC). Это та ценность, которую в целевую среду несёт бизнес, «выпятив» в эту среду своё решение. Их обычно мало. Например:
• ТВ-платформа предоставляет линейный и хранимый контент, инструменты оплаты доступа к нему и рекламные слоты.
• Складская система нужна для учёта имущества, его движения и инвентаризации.
• Мессенджер позволяет мгновенно обмениваться текстовыми сообщениями, аудио- и видео-записями и файлами.
Именно с этого уровня рекомендуется начинать описывать архитектуру.
С него же удобно знакомиться с новой для себя системой.
Также через сито BC стоит пропускать бизнес-идеи, чтобы не городить избыточную или неуместную функциональность, порождая этим систему-франкенштейна.
Из BC далее можно вывести бизнес-процессы высшего для системы уровня. А из них начнут вырисовываться и роли, и ключевые сущности (entities), и события (events) для EDA, и бизнес-процессы следующих уровней детализации, из которых в свою очередь станут понятны варианты использования (use cases). Но это уже совсем другая история.
#проектирование
🔥2
Синхронные интеграции
REST API, SOAP, gRPC, GraphQL, etc. — среди синхронных «способов интеграции» есть много вариантов.
Это не все. И у них разные возможности и области применимости. Но есть у них и общая принципиальная часть, которую интегратору полезно понимать, чтобы а) начать осваивать конкретный «способ» и б) спроектировать взаимодействие конкретным «способом». На эту общую часть можно посмотреть с 3-ёх перспектив (точек зрения):
Поведенческая
• Они все — клиент-серверные, т.е. взаимодействующих компонентов два, и один из них — компонент-заказчик взаимодействия (клиент; например, фронтенд), а второй — компонент-исполнитель (сервер; бэкенд-приложение).
• Акт взаимодействия состоит из запроса и ответа (на sequence dia это 2 стрелки: сплошная «туда» и пунктирная «обратно»).
• Клиент, отправив серверу запрос, ждёт от него ответ; это не мешает клиенту параллельно выполнять другие процессы, просто один из процессов ждёт ответ на запрос.
• Сервер, получив запрос, запускает исполнение конкретной функции (логики, обработки запроса), в алгоритме которой одним из шагов является отправка ответа клиенту.
Структурная
Запрос→обработка→ответ — получающаяся структура синхронного взаимодействия.
Запросом клиент просит сервер совершить конкретную работу. Запрос — это как постановка задачи.
Обработкой сервер совершает эту работу. Обработка — это как исполнение задачи.
Ответом сервер отчитывается о выполнении работы, сообщая результат. Ответ — это как отчёт о выполнении задачи.
Чтобы поставить задачу — что нужно указать и чем обеспечить?
Чтобы исполнить задачу — что нужно знать?
Чтобы отчитаться о выполнении — что нужно сообщить?
Описательная
Описание «API-ручки», исходя из поведения и структуры, сводится к таким типовым разделам:
• Запрос:
→ функция (тип запроса + path-часть эндпоинта в REST API) — это заголовок задачи
→ назначение функции (напр.: создать юзера, обновить заказ, постричь лоха) — это цель задачи
→ адрес (host-часть эндпоинта в REST API) — это исполнитель
→ параметры вызова (query-параметры в REST API) — это уточнения и дополнения
→ полезная нагрузка (тело запроса в REST API) — это вводные и приложения
• Обработка:
→ что и как делает сервер, получив запрос: что предварительно проверяет, что и откуда собирает, что из этого (и полученного из запроса) делает, куда и как раскладывает.
• Ответ (позитивный):
→ код ответа, можно вкратце: ок/не ок.
→ полезная нагрузка (тело ответа в REST API)
• Ошибки (негативные ответы):
→ по каким причинам могут возникать
→ кто виноват в возникновении
→ что вернуть в случае каждой из причин
... — это часто довольно большой раздел, т.к. не выполнить задачу можно всегда гораздо большим количеством способов, чем выполнить.
Т.е. для любых синхронных API можно применить один шаблон и по нему описывать и REST API, и gRPC, и GraphQL, и SAP-овский RFC, и чёрта лысого.
P.S.: асинхронная интеграция отличается поведенчески только отсутствием ожидания ответа, а структурно — самого ответа. Со всеми вытекающими из этого последствиями проектирования.
#sync #api #проектирование
REST API, SOAP, gRPC, GraphQL, etc. — среди синхронных «способов интеграции» есть много вариантов.
Это не все. И у них разные возможности и области применимости. Но есть у них и общая принципиальная часть, которую интегратору полезно понимать, чтобы а) начать осваивать конкретный «способ» и б) спроектировать взаимодействие конкретным «способом». На эту общую часть можно посмотреть с 3-ёх перспектив (точек зрения):
Поведенческая
• Они все — клиент-серверные, т.е. взаимодействующих компонентов два, и один из них — компонент-заказчик взаимодействия (клиент; например, фронтенд), а второй — компонент-исполнитель (сервер; бэкенд-приложение).
• Акт взаимодействия состоит из запроса и ответа (на sequence dia это 2 стрелки: сплошная «туда» и пунктирная «обратно»).
• Клиент, отправив серверу запрос, ждёт от него ответ; это не мешает клиенту параллельно выполнять другие процессы, просто один из процессов ждёт ответ на запрос.
• Сервер, получив запрос, запускает исполнение конкретной функции (логики, обработки запроса), в алгоритме которой одним из шагов является отправка ответа клиенту.
Структурная
Запрос→обработка→ответ — получающаяся структура синхронного взаимодействия.
Запросом клиент просит сервер совершить конкретную работу. Запрос — это как постановка задачи.
Обработкой сервер совершает эту работу. Обработка — это как исполнение задачи.
Ответом сервер отчитывается о выполнении работы, сообщая результат. Ответ — это как отчёт о выполнении задачи.
Чтобы поставить задачу — что нужно указать и чем обеспечить?
Чтобы исполнить задачу — что нужно знать?
Чтобы отчитаться о выполнении — что нужно сообщить?
Описательная
Описание «API-ручки», исходя из поведения и структуры, сводится к таким типовым разделам:
• Запрос:
→ функция (тип запроса + path-часть эндпоинта в REST API) — это заголовок задачи
→ назначение функции (напр.: создать юзера, обновить заказ, постричь лоха) — это цель задачи
→ адрес (host-часть эндпоинта в REST API) — это исполнитель
→ параметры вызова (query-параметры в REST API) — это уточнения и дополнения
→ полезная нагрузка (тело запроса в REST API) — это вводные и приложения
• Обработка:
→ что и как делает сервер, получив запрос: что предварительно проверяет, что и откуда собирает, что из этого (и полученного из запроса) делает, куда и как раскладывает.
• Ответ (позитивный):
→ код ответа, можно вкратце: ок/не ок.
→ полезная нагрузка (тело ответа в REST API)
• Ошибки (негативные ответы):
→ по каким причинам могут возникать
→ кто виноват в возникновении
→ что вернуть в случае каждой из причин
... — это часто довольно большой раздел, т.к. не выполнить задачу можно всегда гораздо большим количеством способов, чем выполнить.
Т.е. для любых синхронных API можно применить один шаблон и по нему описывать и REST API, и gRPC, и GraphQL, и SAP-овский RFC, и чёрта лысого.
P.S.: асинхронная интеграция отличается поведенчески только отсутствием ожидания ответа, а структурно — самого ответа. Со всеми вытекающими из этого последствиями проектирования.
#sync #api #проектирование
❤1🔥1
Определения VS примеры
У одного блогера встретил полезное размышление на эту тему. Суть его в том, что давать определения терминам (понятиям) — необходимо для понимания, а примеры — полезно для представления.
Хотя часто людьми даются примеры под видом определений. Выявляются такие «манёвры» довольно просто: формулировка начинается со слов «например», «это когда», «допустим», «это как если (бы)» и прочих подобных, свидетельствующих о каких-то частных случаях.
В чём здесь проблема. На примере 🙂 математической функции и её графика.
Определение — это сама функция.
Примеры (частные случаи) — это точки.
Понимание — это график функции.
Видя на координатной плоскости точки, можно попробовать угадать, каким д.б. график и, следовательно, угадать функцию с той или иной степенью вероятности и точности. Но ведь через конкретный набор точек можно провести бесконечное количество графиков — а значит, и функций может быть много.
Выходит, через набор примеров можно прийти к разным пониманиям и определениям. А через определение — лишь к одному пониманию.
Отсюда можно выделить набор требований к определению. Какие они? 🙂
P.S.: Конечно же, понимание как процесс — не строго алгоритмическое. Не стоит доводить аналогию (пример) до абсурда. Но задача аналогии — не в достижении понимания, а в «радикализации представления», которое должно приблизить к пониманию.
У одного блогера встретил полезное размышление на эту тему. Суть его в том, что давать определения терминам (понятиям) — необходимо для понимания, а примеры — полезно для представления.
Хотя часто людьми даются примеры под видом определений. Выявляются такие «манёвры» довольно просто: формулировка начинается со слов «например», «это когда», «допустим», «это как если (бы)» и прочих подобных, свидетельствующих о каких-то частных случаях.
В чём здесь проблема. На примере 🙂 математической функции и её графика.
Определение — это сама функция.
Примеры (частные случаи) — это точки.
Понимание — это график функции.
Видя на координатной плоскости точки, можно попробовать угадать, каким д.б. график и, следовательно, угадать функцию с той или иной степенью вероятности и точности. Но ведь через конкретный набор точек можно провести бесконечное количество графиков — а значит, и функций может быть много.
Выходит, через набор примеров можно прийти к разным пониманиям и определениям. А через определение — лишь к одному пониманию.
Отсюда можно выделить набор требований к определению. Какие они? 🙂
P.S.: Конечно же, понимание как процесс — не строго алгоритмическое. Не стоит доводить аналогию (пример) до абсурда. Но задача аналогии — не в достижении понимания, а в «радикализации представления», которое должно приблизить к пониманию.
🔥1
Бизнес-процессы и Use Cases
Люди действуют сами или взаимодействуют друг с другом, желая удовлетворить свои потребности.
При этом — спонтанно или умышленно — складываются устойчивые последовательности действий и взаимодействий (УПДВ) для удовлетворения каждой конкретной потребности. Например, чтобы купить продукты для ужина или отремонтировать авто есть вполне ограниченный набор УПДВ того, как это обычно происходит.
УПДВ — это и есть бизнес-процесс (БП). Именно она и является объектом описания в BPMN.
Когда мы проектируем инфосистему для автоматизации БП, УПДВ должна измениться: теперь что-то будет исполняться системой, а не человеком, а человек должен будет на каких-то этапах БП начать взаимодействовать с системой: чтобы внести/получить/сделать в ней что-то. Т.е. в БП возникнут «точки касания» людей с инфосистемой.
«Точки касания» — это варианты использования, которые детализируются артефактом Use Case.
На картинке прыгающего мячика показаны эти абстракции: БП, Use Case, Система — и их взаимоотношения.
Люди действуют сами или взаимодействуют друг с другом, желая удовлетворить свои потребности.
При этом — спонтанно или умышленно — складываются устойчивые последовательности действий и взаимодействий (УПДВ) для удовлетворения каждой конкретной потребности. Например, чтобы купить продукты для ужина или отремонтировать авто есть вполне ограниченный набор УПДВ того, как это обычно происходит.
УПДВ — это и есть бизнес-процесс (БП). Именно она и является объектом описания в BPMN.
Когда мы проектируем инфосистему для автоматизации БП, УПДВ должна измениться: теперь что-то будет исполняться системой, а не человеком, а человек должен будет на каких-то этапах БП начать взаимодействовать с системой: чтобы внести/получить/сделать в ней что-то. Т.е. в БП возникнут «точки касания» людей с инфосистемой.
«Точки касания» — это варианты использования, которые детализируются артефактом Use Case.
На картинке прыгающего мячика показаны эти абстракции: БП, Use Case, Система — и их взаимоотношения.
🔥1
Анализ НПА
На что обратить внимание при чтении НПА?
Обычно аналитик их читает, чтобы разобраться в бизнес-процессе (БП).
Что значит «разобраться»? Это значит, что аналитик как-то очень верхнеуровнево и концептуально себе представляет БП, но не понимает всех деталей.
Каких деталей БП аналитик не понимает? На что ему обращать внимание при чтении НПА?
Для ответа предлагаю рассуждать так:
БП принято изображать в BPMN.
Принципиально, БП в BPMN — это змейка действий, петляющая между ролями и порождающая артефакты (документы).
Соответственно, аналитика должны интересовать из этих НПА такие ВИДЫ деталей:
• процессные — детали течения БП; то есть в НПА могут быть упомянуты какие-то вещи, изображаемые прямоугольниками (действиями), ромбами и стрелками а также сроки, условия...
• ролевые — упоминание участников БП;
• артефактные — участвующие в БП документы, архивы, реестры и т.п.
Эти детали следует фиксировать (выписывать текстом или накидывать эскизами) в процессе чтения, а после завершения диаграммы убедиться, что все детали переехали в неё.
#проектирование
На что обратить внимание при чтении НПА?
Обычно аналитик их читает, чтобы разобраться в бизнес-процессе (БП).
Что значит «разобраться»? Это значит, что аналитик как-то очень верхнеуровнево и концептуально себе представляет БП, но не понимает всех деталей.
Каких деталей БП аналитик не понимает? На что ему обращать внимание при чтении НПА?
Для ответа предлагаю рассуждать так:
БП принято изображать в BPMN.
Принципиально, БП в BPMN — это змейка действий, петляющая между ролями и порождающая артефакты (документы).
Соответственно, аналитика должны интересовать из этих НПА такие ВИДЫ деталей:
• процессные — детали течения БП; то есть в НПА могут быть упомянуты какие-то вещи, изображаемые прямоугольниками (действиями), ромбами и стрелками а также сроки, условия...
• ролевые — упоминание участников БП;
• артефактные — участвующие в БП документы, архивы, реестры и т.п.
Эти детали следует фиксировать (выписывать текстом или накидывать эскизами) в процессе чтения, а после завершения диаграммы убедиться, что все детали переехали в неё.
#проектирование
🔥1
«Охлаждённые дефростированные креветки из Аргентины» — 1300 руб/кг
«дефростированные»
Звучит как delivery manager. Который на поверку — жопа, выставленная project/product manager'ом как дежурная заместо себя. 🤷♂
«дефростированные»
Звучит как delivery manager. Который на поверку — жопа, выставленная project/product manager'ом как дежурная заместо себя. 🤷♂
Нашёл тут запись одной из задачек, которую помог решить товарищу по его работе, гуляя с ним. Если есть желание размять мозги — велкам.
По контракту с Росатомом его НИПИ проектировал станцию заправки железнодорожных цистерн газообразным очищенным водородом. Хранить его предполагается под давлением 200 технических атмосфер, а заправлять — в 8-кубовую ж/д-цистерну под регламентированным правилами перевозки такого груза давлением в 120 технических атмосфер.
Знакомый химик-технолог рассказал, что в целом проект технологической линии очистки водорода и заправки уже готов, но проблемой стало спроектировать заправочную ёмкость, из которой будут отгружать водород в ж/д-цистерны, потому что неясно, какой должна быть её проектная вместительность. По требованиям безопасности процесс заправки должен происходить самотёком, без применения каких-либо газовых насосов. Есть идеи?
#задачка
По контракту с Росатомом его НИПИ проектировал станцию заправки железнодорожных цистерн газообразным очищенным водородом. Хранить его предполагается под давлением 200 технических атмосфер, а заправлять — в 8-кубовую ж/д-цистерну под регламентированным правилами перевозки такого груза давлением в 120 технических атмосфер.
Знакомый химик-технолог рассказал, что в целом проект технологической линии очистки водорода и заправки уже готов, но проблемой стало спроектировать заправочную ёмкость, из которой будут отгружать водород в ж/д-цистерны, потому что неясно, какой должна быть её проектная вместительность. По требованиям безопасности процесс заправки должен происходить самотёком, без применения каких-либо газовых насосов. Есть идеи?
#задачка
UML-диаграммы
• Какие для аналитика основные?
• Как связаны?
• Когда и как чаще используют?
• Какой объём системы стóит включать в одну диаграмму?
#инструмент
• Какие для аналитика основные?
• Как связаны?
• Когда и как чаще используют?
• Какой объём системы стóит включать в одну диаграмму?
#инструмент
👍3
Эффективность корпоративной коммуникации
Как-то в отпуске скопилась почта.
Благодаря своевременно настроенным правилам сортировки писем, имею статистику, вывод из которой:
Имеющих смысл быть просмотренными писем — 3.2% (39 из 1209 шт за 2 недели).
Остальное — в общем случае мусор. Который может:
• отнимать время;
• отвлекать уведомлением о поступлении;
• свербить шильдиком непрочтённого сообщения;
• демотивировать общим количеством подлежащих разбору писем (если нет правил сортировки).
Как-то в отпуске скопилась почта.
Благодаря своевременно настроенным правилам сортировки писем, имею статистику, вывод из которой:
Имеющих смысл быть просмотренными писем — 3.2% (39 из 1209 шт за 2 недели).
Остальное — в общем случае мусор. Который может:
• отнимать время;
• отвлекать уведомлением о поступлении;
• свербить шильдиком непрочтённого сообщения;
• демотивировать общим количеством подлежащих разбору писем (если нет правил сортировки).
Forwarded from Kirill Naumkin
А как понять?
Работаю с увлечением.
Задачи - комплексные (не могу их сложными назвать) и пока что кажущиеся интересными.
Признание в наличии. Всякие эджайлы и канбаны вкупе с преимущественно молодыми коллегами вполне способствуют всякого рода ура-ориентированным, мотивирующим онлайн-встречам.
Оплата - на мой взгляд, странно высокая. Хотя ниже средней по отрасли, если верить hh-площадкам. Возможно, я просто не привык работать за нормальные деньги...
Как аутстаффер ещё испытательный срок не прошёл - уже менторство предлагают у заказчика (Спортмастер Лаб). Да и в Норд Клане тоже.
Работа удалённая. Экономия по 12-15 тысяч и 40-60 часов в месяц на дороге дом-работа-дом.
Страх перед завтрашним днём исчез впервые. Даже над ипотекой задумываться стал, хоть никогда ранее принципиально не брал взаймы ни в каком виде. 🙄
Но нет ощущения... настоящести, что ли, правдоподобности.
Непонятно, почему так много хорошего можно сказать и, вроде бы, ничего плохого. Баланс же должен быть?
Коллеги будто ненастоящие: сплошной онлайн и без камер.
Работа, как и её результаты, будто тоже ненастоящие: всё "в компьютере" происходит.
Творческой составляющей в достатке - но творчество это кажется конвейерным.
Вот и думай, хорошо это - или так себе... Может, просто хобби не хватает? В реальном мире! :) То-то айтишники, гляжу, на физкультуре, крафтинге и путешествиях в известном мне большинстве...
Работаю с увлечением.
Задачи - комплексные (не могу их сложными назвать) и пока что кажущиеся интересными.
Признание в наличии. Всякие эджайлы и канбаны вкупе с преимущественно молодыми коллегами вполне способствуют всякого рода ура-ориентированным, мотивирующим онлайн-встречам.
Оплата - на мой взгляд, странно высокая. Хотя ниже средней по отрасли, если верить hh-площадкам. Возможно, я просто не привык работать за нормальные деньги...
Как аутстаффер ещё испытательный срок не прошёл - уже менторство предлагают у заказчика (Спортмастер Лаб). Да и в Норд Клане тоже.
Работа удалённая. Экономия по 12-15 тысяч и 40-60 часов в месяц на дороге дом-работа-дом.
Страх перед завтрашним днём исчез впервые. Даже над ипотекой задумываться стал, хоть никогда ранее принципиально не брал взаймы ни в каком виде. 🙄
Но нет ощущения... настоящести, что ли, правдоподобности.
Непонятно, почему так много хорошего можно сказать и, вроде бы, ничего плохого. Баланс же должен быть?
Коллеги будто ненастоящие: сплошной онлайн и без камер.
Работа, как и её результаты, будто тоже ненастоящие: всё "в компьютере" происходит.
Творческой составляющей в достатке - но творчество это кажется конвейерным.
Вот и думай, хорошо это - или так себе... Может, просто хобби не хватает? В реальном мире! :) То-то айтишники, гляжу, на физкультуре, крафтинге и путешествиях в известном мне большинстве...
👍3🤔1
В ноябре прошлого года бросил курить. Вроде бы, много всякого читал про это дело. Даже книгу Аллена Карра (лет 12 назад). Но нигде не было о том, с чем действительно столкнулся.
Раньше не бросал курить из-за страха, что ломка сделает меня несчастным при и без того непростой (как и у всех) жизни. Боялся страданий.
Бросил же курить потому, что состояние из-за какого-то недуга стало совсем болезненным. Преимуществ, о которых пишут, почти не заметил в итоге. Кроме, разве что, исчезновения одышки при коротких пробежках и при подъёме по лестнице. А всякие там «вывод шлаков», «стабилизация пульса», «очистка лёгких», «улучшенное восстановление во сне» — это всё, если было, прошло незримо.
Бросание было «неуверенным»: початая пачка всегда была в кармане, чтобы не испытывать стресса из-за отсутствия сигарет. Но в том, в который я руки не засовываю (зимняя куртка) — чтобы нечаянно не натыкаться на неё. Не притронулся к ней.
Химической ломки почти не было. А настоящую проблему составила — и с тех пор продолжает ощутимо составлять — психологическая ломка, вызванная моей неподготовленностью к жизни без курения. Вот, о каких её аспектах я не думал и не учёл:
1. Ритуал. Курение органично вписано в моё расписание. Расписание построено вокруг курения или оно учитывает его. Каждый день каждой недели. Что я буду делать каждое утро, вставая с постели? А после обеда? А после секса? А в процессе распития алкоголя или пешей прогулки?
2. Социализация. Большинство знакомств в моей жизни заведено или укреплено в курилке. Большинство сложных задач решено через обсуждение за парой-тройкой сигарет с коллегами-курильщиками. Что я буду незаметно для себя делать, увлечённо споря или общаясь? Как я поступлю, когда меня пригласят на перекур?
3. Идентификация. Я — курильщик. Я в одной упряжке с другими курильщиками и испытываю те же претеснения и дискриминацию. Я знаю, какие для меня придуманы знаки в аэропорту или на вокзале — и я инстинктивно ищу их глазами в каждом новом людном месте. И тревожусь, если не нахожу. И с пониманием переглядываюсь с другими курильщиками в загоне размером меньше санузла в однушке, именуемом «местом для курения». Какая грань моей идентичности сможет это заменить? Или это надо просто выкинуть из себя?
4. Досуг. Курение — это заполнитель свободного времени. Мне есть, чем ещё его заполнить? Прям каждый день? Годами?
5. Отвлечение, разминка и расслабление. Перекур — это повод создать себе свободное время. Отключиться от чего-то или взять паузу. Подышать свежим воздухом (как бы странно это ни звучало) и пройтись или постоять. Куря, я чаще бывал на улице, чем теперь. И хоть говорят: «можно просто прогуляться, без курения», но почему-то не говорят: «можно просто посидеть голодным за накрытым обеденным столом, без поедания». Впрочем, если просто гулять — то довольно скоро перестаёшь ощущать себя «голодным».
6. Рефлекс. Процесс курения сопровождается набором телодвижений, которые доводятся до автоматизма, и связь которых с курением становится в мозгу устойчивой. Отсюда видится сомнительным совет заместить курение семечками или карандашом: инстинкты ожидают затяжку, горечь и дозу никотина, а не что-то другое. Не провоцировать их кажется лучшей идеей, чем обманывать.
К этим аспектам и стоило подготовиться. Именно к ним, сопровождающим мою жизнь годами — а не к пресловутой ломке, которая едва ли продлилась пару недель и купировалась Табексом.
Отказ от курения — это буквально изменение жизни. Не в смысле «к лучшему», а в смысле «в другую сторону». «На круг», похоже, будет лучше, но к этому надо прийти — просто повернуться не достаточно.
А что до желания курить спустя почти год... Судя по обмену опытом с бывшими курильщиками, от желания курить будет почти невозможно избавиться. Но это не то желание, которого я ожидал — которое сродни ломке. Тут более уместно будет сравнение моего бросившего курить друга: «Да, я хочу курить! Так же, как я хочу жить на европейском курорте, хочу получать кучу денег просто так и хочу трахаться с тремя близняшками сразу. Ну хочу и хочу». Полностью согласен с таким сравнением.
Раньше не бросал курить из-за страха, что ломка сделает меня несчастным при и без того непростой (как и у всех) жизни. Боялся страданий.
Бросил же курить потому, что состояние из-за какого-то недуга стало совсем болезненным. Преимуществ, о которых пишут, почти не заметил в итоге. Кроме, разве что, исчезновения одышки при коротких пробежках и при подъёме по лестнице. А всякие там «вывод шлаков», «стабилизация пульса», «очистка лёгких», «улучшенное восстановление во сне» — это всё, если было, прошло незримо.
Бросание было «неуверенным»: початая пачка всегда была в кармане, чтобы не испытывать стресса из-за отсутствия сигарет. Но в том, в который я руки не засовываю (зимняя куртка) — чтобы нечаянно не натыкаться на неё. Не притронулся к ней.
Химической ломки почти не было. А настоящую проблему составила — и с тех пор продолжает ощутимо составлять — психологическая ломка, вызванная моей неподготовленностью к жизни без курения. Вот, о каких её аспектах я не думал и не учёл:
1. Ритуал. Курение органично вписано в моё расписание. Расписание построено вокруг курения или оно учитывает его. Каждый день каждой недели. Что я буду делать каждое утро, вставая с постели? А после обеда? А после секса? А в процессе распития алкоголя или пешей прогулки?
2. Социализация. Большинство знакомств в моей жизни заведено или укреплено в курилке. Большинство сложных задач решено через обсуждение за парой-тройкой сигарет с коллегами-курильщиками. Что я буду незаметно для себя делать, увлечённо споря или общаясь? Как я поступлю, когда меня пригласят на перекур?
3. Идентификация. Я — курильщик. Я в одной упряжке с другими курильщиками и испытываю те же претеснения и дискриминацию. Я знаю, какие для меня придуманы знаки в аэропорту или на вокзале — и я инстинктивно ищу их глазами в каждом новом людном месте. И тревожусь, если не нахожу. И с пониманием переглядываюсь с другими курильщиками в загоне размером меньше санузла в однушке, именуемом «местом для курения». Какая грань моей идентичности сможет это заменить? Или это надо просто выкинуть из себя?
4. Досуг. Курение — это заполнитель свободного времени. Мне есть, чем ещё его заполнить? Прям каждый день? Годами?
5. Отвлечение, разминка и расслабление. Перекур — это повод создать себе свободное время. Отключиться от чего-то или взять паузу. Подышать свежим воздухом (как бы странно это ни звучало) и пройтись или постоять. Куря, я чаще бывал на улице, чем теперь. И хоть говорят: «можно просто прогуляться, без курения», но почему-то не говорят: «можно просто посидеть голодным за накрытым обеденным столом, без поедания». Впрочем, если просто гулять — то довольно скоро перестаёшь ощущать себя «голодным».
6. Рефлекс. Процесс курения сопровождается набором телодвижений, которые доводятся до автоматизма, и связь которых с курением становится в мозгу устойчивой. Отсюда видится сомнительным совет заместить курение семечками или карандашом: инстинкты ожидают затяжку, горечь и дозу никотина, а не что-то другое. Не провоцировать их кажется лучшей идеей, чем обманывать.
К этим аспектам и стоило подготовиться. Именно к ним, сопровождающим мою жизнь годами — а не к пресловутой ломке, которая едва ли продлилась пару недель и купировалась Табексом.
Отказ от курения — это буквально изменение жизни. Не в смысле «к лучшему», а в смысле «в другую сторону». «На круг», похоже, будет лучше, но к этому надо прийти — просто повернуться не достаточно.
А что до желания курить спустя почти год... Судя по обмену опытом с бывшими курильщиками, от желания курить будет почти невозможно избавиться. Но это не то желание, которого я ожидал — которое сродни ломке. Тут более уместно будет сравнение моего бросившего курить друга: «Да, я хочу курить! Так же, как я хочу жить на европейском курорте, хочу получать кучу денег просто так и хочу трахаться с тремя близняшками сразу. Ну хочу и хочу». Полностью согласен с таким сравнением.
🔥2👍1
Открывал на днях заявку на переход из МТС в Т2 с сохранением номера. В ожидании вопроса о причинах перехода подготовил ответ. Но в итоге остался с персональным тарифом. Однако тезисы ответа актуальны, поэтому отправил им в чат.
PS: ...выяснив попутно, что:
• приложение сломано: на одно сообщение в чате оно выдаёт 6 уведомлений на смартфоне;
• электронной почты как канала связи у МТС больше нет.
PS: ...выяснив попутно, что:
• приложение сломано: на одно сообщение в чате оно выдаёт 6 уведомлений на смартфоне;
• электронной почты как канала связи у МТС больше нет.
Forwarded from Kirill Naumkin
Ой, спасибо, что спросили! Ща расскажу вам свою небольшую историю.
Я тут от служебной симки отказывался — решил возвращаться на свою, МТС-овскую. Т.е. интернет с неё же буду пользовать. А МТС мне недавно подключил тариф, который по словам МТС для меня выгоднее. И из МТС в рабочее время позвонила мне девушка и вежливо новый тариф втюхала. Так-то я обычно отправляю с такими предложениями поупражняться в арифметике и логике, потому что никогда такие предложения не бывают выгодны клиенту, но тут согласился, идиот. Очень уж сообразительной оказалась девушка — ей бы премию выписать (не сарказм) за то, что быстро сориентировалась и не стала по скрипту компании колупать мне мозги по всем канонам Департамента заботы о клиентском опыте (или как там), отнимая время. Но сказ не о том.
Помню, что на новом тарифе лимит трафика маленький какой-то называла. Лезу в ЛК посмотреть: а...
• страницы сайта открываются по 3-5 секунд. А в них и правда...
• 1 ГБ трафика лимит. Один гигабайт. На месяц. В 2025 году. Когда одна заглавная страница одного "сайта" весит 1-5% этого объёма. Штош, надо менять тариф, стало быть. С такими лимитами далеко не уедешь. Даже, наверное, маршрут не построишь для поездки, если карта не предзагружена. Начал читать про тарифы. А...
• в каталоге — ложь, прям вотакенным шрифтом. «Полный безлимит ГБ» — спросите на улице ЛЮБОГО человека, как следует понимать эту формулировку. Или направо/налево голову поверните от монитора и задайте такой вопрос. Вряд ли в ответ вы услышите «Очевидно же, это 50 ГБ/мес!». Жалко, ответить нельзя МТС-у той же монетой в вопросе оплаты... Ну ладно, решил проверить, что же такое суперкомплютеры МТС насчитали, что мне решили предложить тариф без трафика. Так, переключён я был в 20-ых числах июня. Посмотрю-ка выписку за первые полгода, думаю. Вдруг, и правда там совсем не пользовался я МТС-ом для интернета. Где там её заказать-то?
• у****ное (пусть будет "уморительное") расположение пункта меню для запроса выписки о расходах. Где оно? Стал искать, щёлкать всюду.
• В "типа личном кабинете" неочевидные переходы между "продуктами" с открытием кучи вкладок и всплывашек с кнопочками про кукиз-энд-рекомендейшн полисиз... Эффективные PWNer-ы (product-owner-ы то бишь) весьма высокого мнения о себе, раз ничтоже сумняшеся постановили, что будут столько места на моём экране занимать своими вкладками. За 2 (бесконечные) минуты нашёл "помощь". В ней за 1 (бесконечную) минуту нашёл, как выписку эту заказать: оказывается, ...
• "Расходы" в ЛК — это не ридонли-инфопанель, а кнопочка, в которую можно "провалиться"; но на этой кнопочке есть другие кнопочки — и надо бы не промахнуться. Тогда попадёшь в экран заказа выписки. А в нём...
• ввод дат для произвольного периода — это целый квест! Задачка на сообразительность ума и ловкость пальцев. Я-то полагал, что, выделив цифру/число в текстбоксе, я могу её/его заменить на нужное значение — но нет, сатанинский контрол имеет своё собственное мнение на этот счёт. Пользуйся, мил друг, дейтпикером — или вводи дату целиком: день, месяц, год. Ладно, поборол, ввёл. Но...
• закрыть попап ввода как? Никакой кнопки-подтверждалки. Попробую Enter на клавиатуре: вдруг, и правда, натыкав дату мышкой (!), надо потом клавиатурой (!) для подтверждения воспользоваться. Получилось. Но вот беда: ...
• выписку за полгода не заказать! Все элементы управления становятся неактивными. Почему? УГАДАЙ САМ! Оконце-то ничего не говорит на этот счёт. Только перебирая варианты продолжительности отчётного периода в УДОБНОМ дейтпикере, я понял, что предельный период — 4 месяца. И то не всякие 4 месяца.
• Ухудшение качества сервиса самообслуживания, выходит. Я прямо сейчас в своей почте нашёл xls-выписку за 6 месяцев: с 26.06.2019 по 26.12.2019 — которую заказывал через веб-UI сам. А тут нельзя. 6 лет спустя. Прогресс на лицо (sic!).
Я тут от служебной симки отказывался — решил возвращаться на свою, МТС-овскую. Т.е. интернет с неё же буду пользовать. А МТС мне недавно подключил тариф, который по словам МТС для меня выгоднее. И из МТС в рабочее время позвонила мне девушка и вежливо новый тариф втюхала. Так-то я обычно отправляю с такими предложениями поупражняться в арифметике и логике, потому что никогда такие предложения не бывают выгодны клиенту, но тут согласился, идиот. Очень уж сообразительной оказалась девушка — ей бы премию выписать (не сарказм) за то, что быстро сориентировалась и не стала по скрипту компании колупать мне мозги по всем канонам Департамента заботы о клиентском опыте (или как там), отнимая время. Но сказ не о том.
Помню, что на новом тарифе лимит трафика маленький какой-то называла. Лезу в ЛК посмотреть: а...
• страницы сайта открываются по 3-5 секунд. А в них и правда...
• 1 ГБ трафика лимит. Один гигабайт. На месяц. В 2025 году. Когда одна заглавная страница одного "сайта" весит 1-5% этого объёма. Штош, надо менять тариф, стало быть. С такими лимитами далеко не уедешь. Даже, наверное, маршрут не построишь для поездки, если карта не предзагружена. Начал читать про тарифы. А...
• в каталоге — ложь, прям вотакенным шрифтом. «Полный безлимит ГБ» — спросите на улице ЛЮБОГО человека, как следует понимать эту формулировку. Или направо/налево голову поверните от монитора и задайте такой вопрос. Вряд ли в ответ вы услышите «Очевидно же, это 50 ГБ/мес!». Жалко, ответить нельзя МТС-у той же монетой в вопросе оплаты... Ну ладно, решил проверить, что же такое суперкомплютеры МТС насчитали, что мне решили предложить тариф без трафика. Так, переключён я был в 20-ых числах июня. Посмотрю-ка выписку за первые полгода, думаю. Вдруг, и правда там совсем не пользовался я МТС-ом для интернета. Где там её заказать-то?
• у****ное (пусть будет "уморительное") расположение пункта меню для запроса выписки о расходах. Где оно? Стал искать, щёлкать всюду.
• В "типа личном кабинете" неочевидные переходы между "продуктами" с открытием кучи вкладок и всплывашек с кнопочками про кукиз-энд-рекомендейшн полисиз... Эффективные PWNer-ы (product-owner-ы то бишь) весьма высокого мнения о себе, раз ничтоже сумняшеся постановили, что будут столько места на моём экране занимать своими вкладками. За 2 (бесконечные) минуты нашёл "помощь". В ней за 1 (бесконечную) минуту нашёл, как выписку эту заказать: оказывается, ...
• "Расходы" в ЛК — это не ридонли-инфопанель, а кнопочка, в которую можно "провалиться"; но на этой кнопочке есть другие кнопочки — и надо бы не промахнуться. Тогда попадёшь в экран заказа выписки. А в нём...
• ввод дат для произвольного периода — это целый квест! Задачка на сообразительность ума и ловкость пальцев. Я-то полагал, что, выделив цифру/число в текстбоксе, я могу её/его заменить на нужное значение — но нет, сатанинский контрол имеет своё собственное мнение на этот счёт. Пользуйся, мил друг, дейтпикером — или вводи дату целиком: день, месяц, год. Ладно, поборол, ввёл. Но...
• закрыть попап ввода как? Никакой кнопки-подтверждалки. Попробую Enter на клавиатуре: вдруг, и правда, натыкав дату мышкой (!), надо потом клавиатурой (!) для подтверждения воспользоваться. Получилось. Но вот беда: ...
• выписку за полгода не заказать! Все элементы управления становятся неактивными. Почему? УГАДАЙ САМ! Оконце-то ничего не говорит на этот счёт. Только перебирая варианты продолжительности отчётного периода в УДОБНОМ дейтпикере, я понял, что предельный период — 4 месяца. И то не всякие 4 месяца.
• Ухудшение качества сервиса самообслуживания, выходит. Я прямо сейчас в своей почте нашёл xls-выписку за 6 месяцев: с 26.06.2019 по 26.12.2019 — которую заказывал через веб-UI сам. А тут нельзя. 6 лет спустя. Прогресс на лицо (sic!).
Forwarded from Kirill Naumkin
• В течение (бесконечных) 5 минут пытался найти на сайте (пардон, в ИТ-продуктах жизнедеятельности) номер телефона, на который можно позвонить. Не нашёл. Зато куча ссылок на чаты! С кем? Правильно: С РОБОТОМ! Правда, мастерство отгораживаться кнопочками от клиентов у МТС на среднем уровне — сравнительно быстро я пробился к человеку. До Авито МТС-у тут ещё далеко. Попросил техподдержку сделать мне выписку за полгода в xls и на почту выслать. Но...
• техподдержка не может предоставить детализацию на мою почту! Впервые такое встречаю. Обычно техподдержка может всё, по моему опыту. Техподдержка МТС-а — смогла только отправить меня в офис с паспортом, чтобы там заказать детализацию. Но где-то в анналах сайта МТС я прочитал, что...
• детализация, заказываемая в офисе, изготавливается ПЛАТНО ПО 5 РУБЛЕЙ ЗА КАЖДЫЙ ДЕТАЛИЗИРУЕМЫЙ ДЕНЬ. А я за полгода хочу. Это 180+ дней. Это 900+ рублей. Не иначе, кто-то от руки будет детализацию выписывать.
В общем, МТС мне слишком дорого обходится. Драть стал больше, услуг предоставлять — меньше и хуже. Инструменты самообслуживания... я называю это «для себя делают», т.е. вам-то (сотрудникам) всё понятно, а клиентам-незавсегдатаям — да плевать. От обслуживания — роботами отбрехивается. Нервов, опять же, поел своим UX — мышку теперь менять надо, с женой мириться... Не задался денёк. =) Надеюсь, хоть вы с меня поржёте.
• техподдержка не может предоставить детализацию на мою почту! Впервые такое встречаю. Обычно техподдержка может всё, по моему опыту. Техподдержка МТС-а — смогла только отправить меня в офис с паспортом, чтобы там заказать детализацию. Но где-то в анналах сайта МТС я прочитал, что...
• детализация, заказываемая в офисе, изготавливается ПЛАТНО ПО 5 РУБЛЕЙ ЗА КАЖДЫЙ ДЕТАЛИЗИРУЕМЫЙ ДЕНЬ. А я за полгода хочу. Это 180+ дней. Это 900+ рублей. Не иначе, кто-то от руки будет детализацию выписывать.
В общем, МТС мне слишком дорого обходится. Драть стал больше, услуг предоставлять — меньше и хуже. Инструменты самообслуживания... я называю это «для себя делают», т.е. вам-то (сотрудникам) всё понятно, а клиентам-незавсегдатаям — да плевать. От обслуживания — роботами отбрехивается. Нервов, опять же, поел своим UX — мышку теперь менять надо, с женой мириться... Не задался денёк. =) Надеюсь, хоть вы с меня поржёте.