Анализ, коты, цветы и Катя – Telegram
Анализ, коты, цветы и Катя
458 subscribers
277 photos
11 files
158 links
Пишу о работе системным аналитиком в IT: кейсы, ошибки, рост и жизнь по ту сторону процессов.
Автор — @Pacifica_cathul, аналитик, ментор и человек, который всё это пережил лично.
Download Telegram
Если вам кажется, что вы понимаете, что такое транзакции - вам кажется.

Несколько лет назад в знаменитом «кабанчике» Клеппмана я прочитала:
"Транзакции оказались главной жертвой" NoSQL БД: "многие базы нового поколения полностью отказались или поменяли значение термина — теперь он стал означать намного более слабый набор функциональных гарантий."


Хм, интересно, подумала я, но тогда не придала этому значения. Позже я начала работать с 389 Directory Server - иерархической БД на протоколе LDAP.

😮И... сюрприз, сюрприз: 😮 в базовой комплектации в ней нет транзакционности в привычном для SQL-разработчика смысле.

Что это значит:

- Как только произошла операция над объектом (в LDAP это ADD, MODIFY, DELETE) и она подтверждена сервером — она фиксируется.
- Нет отката изменений для группы объектов.
- Можно накрутить костылей вокруг changelog, чтобы имитировать транзакцию, но это будет уже backend-код, а не гарантия от самой БД.

При более детальном разборе оказалось, что в каком-то виде транзакционность (а точнее часть A из ACID) всё же есть, если речь о нескольких изменениях в рамках одной команды, обращённой к одному объекту.

В Пример 1, это обрабатывается как единая операция: либо применяется всё, либо ничего.

 в группе Editors
ADD UserA, UserB
DELETE UserX, UserY

С этого момента жить стало проще… до тех пор, пока ко мне не принесли пачку запросов с неконсистентными данными, которые такими быть не долждны были (в нашем понимании).

Причина в том, что к одному объекту можно атомарно обратиться по-разному:

Как в примере 1, или же сделать те же действия, но двумя отдельными командами (пример 2, каждое объявление группы начинает новую операцию):

в группе Editors
ADD UserA, UserB
в группе Editors
DELETE UserX, UserY


При работе на одном сервере: в первом случае атомарность гарантируется на уровне операции, во втором за счет транзакции уровня backend-хранилища (DBTxn). В целом зная об этом, у нас частенько встречались оба варианта операций.

⚠️Вот только⚠️, при репликации каждая команда получает свой CSN (номер изменения) и всегда выполняется отдельно. В результате в Примере 2 первая операция может примениться, а вторая - нет. Хотя на одном сервере, они всегда выполняются вместе.

Когда, казалось бы, я уже понимаю этим важные моменты, мне пришлось столкнуться с RFC 5805 (LDAP Transactions), который открывает перед LDAP возможности транзакционности при использовании специальных патчей. Но это уже совсем другая история.

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

💬 Ну а те кто уже хлебнул разных систем, поделитесь с какой «недо»-транзакционностью сталкивались? К чему это приводило? Что было самым необычным?

Участвую в конкурсе #продолжи_мысль_SE от @systems_education

#LDAP #транзакции #СУБД
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍1🤔1
Одни из самых крутых команд в мире системного анализа (Flow, NextWay, DevCrowd и автор канала "Системный сдвиг") объединились и создали опрос: "Исследование рынка системных и бизнес-аналитиков, 2025"

Цель: понять, что аналитики реально делают и используют на практике, а не очередной список из 100+ вопросов с Хабра и копипаст вакансий.

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

Присоединяйтесь. Давайте узнаем чем же занимаются аналитики в 25 году!
3🔥3
Владельцы котов, будьте осторожны, есть подозрение, что они саботируют разработку. Вот несколько признаков!

Во время созвона коллеги жаловались, что меня слышно прерывисто. Долго не могла понять, в чём дело… оказалось, кошка спала на пробеле!

Был важный звонок с камерами, другая кошка лезла в камеру хвостом, заставляя серьёзных людей улыбаться.

Ушла на обед, забыла заблочить экран, возвращаюсь и вместо ADR набор символов "ттттттттттттттттттттттт".

Ваши мысли:
🤔 - не понятно нужно тестить
💯 - известные диверсанты, все признаки заговора есть
👀 - глупая, они спасают от пустых созвонов и ненужных документов

В комментариях можете поделиться своими диверсантами)
💯15👀13😁7🗿1
По традиции тест по новой теме. Пост будет в 12.

Swagger = OpenAPI?
Anonymous Quiz
14%
Да, и JSON с YAML — это одно и то же
82%
Нет
4%
Да, потому что так говорит мой тимлид и спорить опасно
Сколько правильных ответов?
Anonymous Poll
2%
0
0%
1
11%
2
66%
3
21%
4
Простой ликбез почему Swagger ≠ OpenAPI

У нас в команде всё, что касается документации REST API, по привычке называют «сваггер» (догадайтесь, кто виноват? 🙈).
А между тем Swagger один из инструментов, а не сама документация. Поэтому сейчас переучиваемся.

И так как виновата я, то взяла ответственность на себя и подготовила памятку для коллег с разъяснениями. Делюсь и с вами.

📌 Спецификация OpenAPI (OAS) 📌
конкретный YAML/JSON-файл или набор таких файлов, описывающий ваш API. Это источник правды для документации и автогенерации кода.
Я люблю править спеку в VS Code с набором плагинов (если нужен список дайте знать). Но можно в любом YAML-редакторе. А если JSON/YAML пока пугает попробуйте Stoplight Studio.

📌 OpenAPI-документация 📌
красивое, человекочитаемое отображение спеки, которое может быть в Swagger, но не обязательно. Мне нравится ещё Redoc.

📌 Swagger UI 📌
инструмент для отображения в браузере или в Visual Studio. Легко читать, можно даже делать запросы, но менять к нем спеку нельзя.


Путь работы: Придумываем новые эндпоинты → Описываем их в спецификации OpenAPI → Пушим изменения в репозиторий → Ревью →
CI/CD подхватывает обновления, валидирует спеку → Собирает и разворачивает документацию в Swagger UI → С ней начинают работать бэки и фронты

Если вы всё ещё зовёте всё это “сваггером” — просто пересылайте этот пост коллегам

#Swagger #OpenAPI #СистемныйАнализ
👍5😁2🔥1
Анализ, коты, цветы и Катя
В каких форматах может быть спецификация OpenAPI?
Видимо я мастер путать людей, и мне удалось не только запутать своих коллег, но и некоторых из вас.

Ответ JSON, YAML, XSD был ошибочно поставлен, как правильный. Хотя таким не является.
Конечно же XSD никак не связан с OpenAPI
👍7💯3
Была на лекции по архитектуре… городской архитектуре.

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

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

Не было работяг, которые умеют работать по старым технологиям. Пришлось нанимать отдельную женщину-надсмотрщицу, которая следила, чтобы учились и соблюдали. Про нее до сих пор сняться кошмары рабочим.

Архитекторы очень хотели сделать у сада реку.. и снова не вышло. Оказалось, подземных вод мало, а они рассчитывать такое не умели.

Прибежали и ландшафтные дизайнеры, и оказалось, что архитекторы запланировали высадить на территории инвазивные виды. Потому что красиво. И символично. Что то это напоминает?

Да и потребности у современных помещений другие: по энергоэффективности, освещению и прочему. И вместе со старым фундаментом легаси оно плохо уживается.

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

Зато сегодня в Самаре есть потрясающий филиал Третьяковки на месте старого советского здания в стиле Модернизм. И это точно того стоило.

Стоит ли сегодня то же самое делать с программами? Наверное, нет. Но кто знает, может лет через 50 тоже будут музеи "сохранения культурного наследия", объектами которого будут ИТ программы.

#легаси #архитектура #модернизм #выходнойконтент
🔥102👍1
Для следующего поста давайте снова поговорим про ИИ.

Пользуетесь ли вы ИИ в работе или жизни?
Anonymous Poll
46%
Да, всегда
50%
Иногда
4%
Нет, не нужно
0%
Нет, были неудачные опыты
Сталкивались ли вы со сложностями получения нужного ответа от ИИ?
Anonymous Poll
12%
Да, вечно отдает ерунду
78%
Да, но чаще всего умею это исправлять
10%
Нет
Промт-инжиниринг: ерунда или новая грамотность?

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

Почему?

1️⃣ Для меня постановка задачи к команде разработки и к ИИ про одно и то же. В каждом случае вводишь в контекст, даёшь все вводные, объясняешь, что стоит использовать и к чему нужно прийти на выходе. Более того, это основа любого общения, где задача быть понятым. То есть в отношениях с родными, друзьями и всем окружающим миром.

Даже особенности работы с ИИ всё же есть, связанные с галлюцинациями, напоминают обычные правила коммуникации. Например:
— «Если не знаешь, не придумывай, а скажи, что не знаешь».
— «Если вводных недостаточно, задай вопросы».
— «Не отходи от изначальной темы».
— «Опирайся на проверенные источники».

2️⃣ Копаясь в базах данных промтов, я скорее видела, что просто не всем доступно в обычной жизни искусство разъясняться. А у аналитиков это уже профессиональное: если не хочешь результат “ХЗ”, то делай нормально ТЗ.

3️⃣ Часто к ИИ мы обращаемся не за уникальной сложной работой, а за рутиной. И там даже модели двухгодичной давности, бесплатные, справляются неплохо, с промтами, которые «ну такое себе». Отлично это демонстрирует доклад Алишера Умарова А последние модели уже и вовсе предугадывают контекст и требуют меньше данных на входе.

Между тем недавно я стала участником конкурса от Systems Education #продолжи_мысль_SE, и там многие писали именно про промты. Вначале я решила, что это не стоит моего внимания, но одновременно с конкурсом произошёл забавный случай:

Идёт обсуждение внедрения ИИ в одну из систем. И представители команды внедрения ИИ говорят: «Вам нужно будет нанять промт-инженера!». Мой мир переворачивается: почему серьёзные компании тратят деньги на «ерунду» в виде промт-инженеров?


Пришлось возвращаться к постам и осмыслять. Больше всего меня зацепил пост «Ментальная карта промтов для аналитика», как и сам канал Елены посвященный во многом промтам.

Сначала находила подтверждения скепсису, но чем глубже читала, тем яснее видела системность карты. Через некоторое время я поняла, почему
«ментальная карта промтов это способ мыслить, делегировать и усиливаться как аналитик».

«Как аналитик» здесь очень важно. Промты это возможность с помощью чужого опыта получить классное решение на рутинную и не очень задачу.

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

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

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

А ещё такая карта подойдёт тем, кто всё же не может совладать с искусством промт-инжиниринга. По карте легко изучать, осмыслять и пробовать!

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

Из минусов: большинство примеров промтов всё же на базовый и стандартный уровень. У моего супруга такой уровень SQL на работе требуется, что предложенные промты ему точно не помогут. Но это уже про особенности конкретной работы аналитиком, чем про карту.
Ещё момент: карту просто так не получишь. Я такое ограничение не одобряю, хотя оно и стимулирует не просто сохранить пост, а действительно осмысленно получить карту и потом её использовать.

Изменилось ли моё отношение к промт-инжинирингу после поста с картой? И да, и нет, но точно стало теплее.

А ещё пост навёл меня на мысль: может оказаться, что обучение промт-инжинирингу поможет не только в работе с ИИ? Может, всё больше людей сможет лучше изъясняться друг с другом и в обычной жизни? Или наоборот, мы всё заменим ИИ, например, как заменили поздравления и нецензурные письма коллегам.)
👍91
Напоминаю, что уже завтра стартует в Самаре конференция аналитиков Поволжья SAMBA_CONF

Завтра онлайн день, а в воскресенье будет оффлайн!

Жду с нетерпением, так давно такого не было в Самаре)

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

Промокод на скидку 20% от меня
@ANALYTICAGAIN
👍2🔥1
animation.gif
13.3 KB
👋1000 дней с зелёной птицей👋

Когда я только начала заниматься в Duolingo, была в восторге! Игровые механики выкручены на максимум, добавила друзей и вот вы все собираетесь в баре, не общаетесь, а пытаетесь удовлетворить запросы Дуо, чтобы он не начал присылать вам угрозы. Заниматься каждый день получалось не всегда, но я старалась. Однажды даже в азиатском отеле, в отпуске, полчаса ждала, пока начнет работать wi-fi и я смогу сделать хоть одно задание.

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

Есть ли эффект от ежедневных угроз? 👩‍🚀 Да, несомненно. Я точно не теряю свой уровень.

Может ли Дуо заменить полноценное обучение? Если просто делать упражнения и читать, что есть в приложении — нет. Это, кстати, и стало причиной скуки. Несмотря на геймификацию, словарный запас почти не пополнялся, речь не практиковалась вообще.

Да, я двигалась по внутренней шкале зелёной птахи. Но это просто механизм: tсли ты делаешь задания по мнению Дуо уровень растет. Даже если не растёшь на самом деле.

Несмотря на это, слезть сложно. Я целых 1000 дней уделила как такое бросить?

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

А кто ещё в плену 😪зелёной птицы😪 дайте знак и хвастайтесь своими успехами в комментах.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6🔥2💯2
Форс-мажор как часть выступления

Уже 4 дня прошло после Самарской конференции аналитиков SAMBA_CONF а я еще ничего не сказала!

По традиции будет 2 части:

1️⃣ отзыв, как прошёл мой МК (и там сразу несколько форс-мажоров!),

2️⃣ впечатления от мероприятия в целом и других докладов.


😆Отзыв на саму себя😆

Считаю формат МК самым классным: здесь и практика, и нетворкинг. Но для меня как спикера есть проблема - пока ничего, кроме практики EventStorming, я стоящего не придумала. Увы.

Да и этим летом не было ни рабочих задач для EventStorming, ни сил, чтобы провести барный EventStorming. Поэтому я решила повторить классику в виде сессии EventStorming (хотя уже несколько новых докладов у меня уже намечены) .

Материал отработан, стикеры закуплены. Что может пойти не так?

😱Много всего 😱

Две недели до выступления прошли в режиме «выживи или умри». Готовиться приходилось по 20 минут в перерывах между сном и другой подготовкой. К воскресенью хотелось только, чтобы меня оставили в покое и дали поспать.

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

На фоне всего этого уже сидя в машине, я понимала, что энергии на спикерство у меня почти нет.

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

На мой МК пришло беспрецедентно мало людей. Причин было несколько: и удалённость зала, и параллельные доклады, и, наверное, слишком непонятное название «EventStorming на практике: из бизнес-событий в архитектуру».

В итоге нас было всего 5 человек. Даже на платных МК больше!

Но как же это было отлично!
Мы успели познакомиться, и это была невероятная компания: профессиональный кинолог, человек, который умеет стоять на голове, селекционер картошки, дизайнер и радиоинженер.
И вот мы начали творить EventStorming!

Было комфортно тупить, обсуждать, решать вопросы на месте и строить диалог. До конца дошли не все (так тоже бывает), но те кто дошел получили от меня памятные подарки. Как же оффлайн формат прекрасен для этого!

Что поняла для себя

👀 Для спикерства нужно много энергии. Это важно учитывать в планировании.
👀 Проводить один и тот же МК в рамках конференции (пусть даже с разными кейсами) скучно и сильно выматывает.
👀 Красивое место для выступления вдохновляет.
👀 Если мало людей легче отслеживать когда начинают скучать и можно среагировать быстрее.

В следующий раз, только с новыми докладами и, надеюсь, мастер-классами. (Воркшопы и посиделки «в баре» не в счёт, там всё-таки немного про другое 🙂)

На этом хватит обо мне. В след. посте поделюсь впечатлениями от самой конференции.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
10