#meme@analyst_exe
Почему еще нет группы?
Мем в понедельник, сворованный из рабочего чата, ответит вам за меня
Скоро....
analyst.exe | чат
Почему еще нет группы?
Мем в понедельник, сворованный из рабочего чата, ответит вам за меня
Скоро....
analyst.exe | чат
🔥6😁3
#советы@analyst_exe
Расскажу вам классику этого мира — или зачем разбираться, как работает ИТ
Есть целые сервисы, которые отслеживают ошибки на маркетплейсах — например, как купить айфон за 60 рублей.
Причина часто банальна: пробел затесался в цену, человек что-то не туда вставил или просто уснул за Excel.
Если система такие ошибки не ловит — вы получаете законную возможность купить товар по этой цене. А если продавец отказывается — есть шанс выиграть суд. И многие этим не стесняются пользоваться. А что, ролик про костю актуален.
🟠 Пример из жизни. Есть сайт агрегатор (сайт скрыт в целях безопасности), у них данные загружаются вручную или через интеграции. Обычно на старте партнёру выдают Excel-шаблон.
И вот дальше всё зависит от того, как обработан этот Excel.
Обычно файл обрабатывается построчно.
Что делать, если:
- 10 строк валидны, 5 — с ошибками?
- Сохраняем частично или откатываем всё?
📍 В любом случае важно:
- Показать, где ошибка и почему
- Указать требования:
- формат
- максимальная длина
- обязательность
- допустимость 0
- тип данных и т.д.
🛠 Для описания атрибутов удобно использовать OpenAPI
Для масок ввода — regex, regex101.com или GPT помогут.
Примерчик
Если надо поговорить о том, чем "пример" в json отличается от "контракта" - дайте знать, сделаю пост
🟠 В случае с этим сайтом, похоже, проверку на пробелы в числах не добавили:
Цена скопирована, например, из Google Таблиц — и вставляется в Excel с пробелами. Получаем товар за 100 рублей вместо 10000.
🧩 Казалось бы, мелочь — а последствия серьёзные.
Для любопытных — можно даже написать мини-бота:
- открыть DevTools, изучить API
- найти подозрительные категории (где цены ниже 1000 — нереалистичны)
- бот раз в пару часов опрашивает API
- если что-то странное — шлёт сообщение в Telegram
💡 Такой бот можно сгенерировать с помощью любого ИИ за часик.
Профит. Правда надо ли вам это, вот вопрос.
p.s. Заказ мой на 10 стульев отменили.. а вот еще один вроде как собираются выдать... по крайней мере пока не отменяли
analyst.exe | чат
Расскажу вам классику этого мира — или зачем разбираться, как работает ИТ
Есть целые сервисы, которые отслеживают ошибки на маркетплейсах — например, как купить айфон за 60 рублей.
Причина часто банальна: пробел затесался в цену, человек что-то не туда вставил или просто уснул за Excel.
Если система такие ошибки не ловит — вы получаете законную возможность купить товар по этой цене. А если продавец отказывается — есть шанс выиграть суд. И многие этим не стесняются пользоваться. А что, ролик про костю актуален.
🟠 Пример из жизни. Есть сайт агрегатор (сайт скрыт в целях безопасности), у них данные загружаются вручную или через интеграции. Обычно на старте партнёру выдают Excel-шаблон.
И вот дальше всё зависит от того, как обработан этот Excel.
Обычно файл обрабатывается построчно.
Что делать, если:
- 10 строк валидны, 5 — с ошибками?
- Сохраняем частично или откатываем всё?
📍 В любом случае важно:
- Показать, где ошибка и почему
- Указать требования:
- формат
- максимальная длина
- обязательность
- допустимость 0
- тип данных и т.д.
🛠 Для описания атрибутов удобно использовать OpenAPI
Для масок ввода — regex, regex101.com или GPT помогут.
Примерчик
price:
type: string
pattern: "^\d+(\.\d{1,2})?$"
maxLength: 10
example: "1999.99"
denoscription: "Цена в рублях. Только цифры и точка — без пробелов, символов валюты и запятых."
Если надо поговорить о том, чем "пример" в json отличается от "контракта" - дайте знать, сделаю пост
🟠 В случае с этим сайтом, похоже, проверку на пробелы в числах не добавили:
Цена скопирована, например, из Google Таблиц — и вставляется в Excel с пробелами. Получаем товар за 100 рублей вместо 10000.
🧩 Казалось бы, мелочь — а последствия серьёзные.
Для любопытных — можно даже написать мини-бота:
- открыть DevTools, изучить API
- найти подозрительные категории (где цены ниже 1000 — нереалистичны)
- бот раз в пару часов опрашивает API
- если что-то странное — шлёт сообщение в Telegram
💡 Такой бот можно сгенерировать с помощью любого ИИ за часик.
Профит. Правда надо ли вам это, вот вопрос.
p.s. Заказ мой на 10 стульев отменили.. а вот еще один вроде как собираются выдать... по крайней мере пока не отменяли
analyst.exe | чат
🔥6👍2
🟧 Чем отличается JSON-пример от контракта — и при чём тут валидация
(попросили, я сделаль)
Все мы понимаем, что в API можно передавать данные в разных форматах: json, xml, текст, protobuf — суть не в этом. Важно то, что это структурированные данные, а значит, у них должна быть структура. Только вот пример — это не структура. Это иллюстрация. А нужен контракт.
Разберёмся на простом кейсе.
Допустим, у нас есть ручка POST /product, через которую создаётся товар. Пример тела запроса в JSON:
Выглядит красиво. Но это просто пример. Иногда рядом пишут:
- product_id: строка по шаблону PRD-00123
- unit: строка, значения типа шт
- price: число
...и всё.
📉 Что дальше?
- Бэкенд как-то валидирует (или не валидирует).
- Клиент делает UI на глаз (или убивает вас вопросами).
- Валидация происходит как получится.
📍 А если делать по уму?
Даже в позитивном сценарии на бэкенде у нас есть этапы:
1. Получить JSON и сериализовать (привести типы данных)
2. Проверить обязательные поля
3. Проверить типы и форматы данных на нужные нам для записи в базу
4. Проверить бизнес-логику (вдруг id не уникальный)
5. Сохранить в базу
6. Вернуть ответ
Проблема в том, что тестировать пример нельзя. А значит, валидировать нечего. А значит — ошибки на проде.
👨💻 Окей, у нас клиентская форма и мы хотим давать пользователю ввести ерунду.
Что мы поняли из документации:
- Типы данных есть
- Частично есть списки значений
А чего нет:
- Маска product_id. Можно PRD-ABC99?
- Макс. длина name, category? Нам что делать бесконечный input?
- Можно ли отрицательную цену? Точка или запятая в цене? Сколько знаков после запятой?
- Валюта: только RUB, или и BYN?
- Какие поля вообще обязательны?
📬 А если такое сообщение пришло по очереди из внешней системы?
Те же вопросы.
Как проектировать базу и писать обработку, если данные “примерно такие”? На ощупь?
-----Тут есть важный момент, не пытайтесь собирать особенности работы словами, записывайте хотя бы за всеми, а то потом скажут, что это не они-----
🎯 Вот тут и нужен контракт
Контракт — это не "пример". Это договорённость:
что, в каком формате, какие ограничения, и как это обрабатывать.
Вот примерчик в Openapi
📊 Или старая добрая табличка:
- Атрибут
- Обязательность
- Тип данных
- Регулярка
- Допустимые значения
- Пример
- Особенности (например, уникальность)
🧘 Вывод
Всегда пытайтесь лучше описать реальность, поставить рамки, даже искусственные. Они вас уберегут. Давайте не пример, а контракт - договор, по которому вы собираетесь формировать и получать сообщения. Буть то внешний (сервер, очередь, другой бэк и др) или внутренный клиент (фронтовые приложения).
Контракт нужен, чтобы:
- Системы друг друга понимали
- Разработчики не гадали
- А валидаторы не ловили баги на проде
p.s. Cейчас кто-то вспомнит про json schema и xsd, ваше право, но для json мне больше нравится Openapi
#api@analyst_exe
analyst.exe | чат
(попросили, я сделаль)
Все мы понимаем, что в API можно передавать данные в разных форматах: json, xml, текст, protobuf — суть не в этом. Важно то, что это структурированные данные, а значит, у них должна быть структура. Только вот пример — это не структура. Это иллюстрация. А нужен контракт.
Разберёмся на простом кейсе.
Допустим, у нас есть ручка POST /product, через которую создаётся товар. Пример тела запроса в JSON:
{
"product_id": "PRD-00123",
"name": "Ноутбук ASUS ZenBook 14",
"category": "Электроника",
"unit": "шт",
"price": 98000.00,
"currency": "RUB"
}
Выглядит красиво. Но это просто пример. Иногда рядом пишут:
- product_id: строка по шаблону PRD-00123
- unit: строка, значения типа шт
- price: число
...и всё.
📉 Что дальше?
- Бэкенд как-то валидирует (или не валидирует).
- Клиент делает UI на глаз (или убивает вас вопросами).
- Валидация происходит как получится.
📍 А если делать по уму?
Даже в позитивном сценарии на бэкенде у нас есть этапы:
1. Получить JSON и сериализовать (привести типы данных)
2. Проверить обязательные поля
3. Проверить типы и форматы данных на нужные нам для записи в базу
4. Проверить бизнес-логику (вдруг id не уникальный)
5. Сохранить в базу
6. Вернуть ответ
Проблема в том, что тестировать пример нельзя. А значит, валидировать нечего. А значит — ошибки на проде.
👨💻 Окей, у нас клиентская форма и мы хотим давать пользователю ввести ерунду.
Что мы поняли из документации:
- Типы данных есть
- Частично есть списки значений
А чего нет:
- Маска product_id. Можно PRD-ABC99?
- Макс. длина name, category? Нам что делать бесконечный input?
- Можно ли отрицательную цену? Точка или запятая в цене? Сколько знаков после запятой?
- Валюта: только RUB, или и BYN?
- Какие поля вообще обязательны?
📬 А если такое сообщение пришло по очереди из внешней системы?
Те же вопросы.
Как проектировать базу и писать обработку, если данные “примерно такие”? На ощупь?
-----Тут есть важный момент, не пытайтесь собирать особенности работы словами, записывайте хотя бы за всеми, а то потом скажут, что это не они-----
🎯 Вот тут и нужен контракт
Контракт — это не "пример". Это договорённость:
что, в каком формате, какие ограничения, и как это обрабатывать.
Вот примерчик в Openapi
components:
schemas:
Product:
type: object
required: [product_id, name, unit, price, currency]
properties:
product_id:
type: string
pattern: "^PRD-\\d{5}$"
example: "PRD-00123"
name:
type: string
maxLength: 200
example: "Ноутбук ASUS ZenBook 14"
category:
type: string
maxLength: 200
example: "Электроника"
unit:
type: string
enum: ["шт", "кг", "л", "м"]
example: "шт"
price:
type: number
minimum: 0.01
example: 98000.00
currency:
type: string
enum: ["RUB", "USD", "EUR"]
example: "RUB"
📊 Или старая добрая табличка:
- Атрибут
- Обязательность
- Тип данных
- Регулярка
- Допустимые значения
- Пример
- Особенности (например, уникальность)
🧘 Вывод
Всегда пытайтесь лучше описать реальность, поставить рамки, даже искусственные. Они вас уберегут. Давайте не пример, а контракт - договор, по которому вы собираетесь формировать и получать сообщения. Буть то внешний (сервер, очередь, другой бэк и др) или внутренный клиент (фронтовые приложения).
Контракт нужен, чтобы:
- Системы друг друга понимали
- Разработчики не гадали
- А валидаторы не ловили баги на проде
p.s. Cейчас кто-то вспомнит про json schema и xsd, ваше право, но для json мне больше нравится Openapi
#api@analyst_exe
analyst.exe | чат
❤6👍3🔥1🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
Хочется поговорить про путь наименьшего сопротивления.
(Тот самый, по которому мы идём куда чаще, чем готовы признать )
Утром задумался, пришел к интересной взаимосвязи..
Вспомним правило Парето: 20% усилий дают 80% результата.
Если задачу можно решить быстро и эффективно — мы почти всегда выберем именно такой подход (или усиленно будем его искать, а иначе откажемся от решения).
И это не плохо. Это нормально. Это разумно.
Теперь давайте посмотрим внутрь компании.
Вот, например, приходит запрос: «нужно добавить новую функцию».
Что делает предприниматель с инстинктом выживания?
🔸Проверяет, нет ли уже готового решения.
🔸Если нет — делает так, чтобы было дешево, быстро, и чтобы можно было использовать повторно.
Это и есть оптимальный путь: максимум эффекта при минимуме затрат.
Не делаем «супер-пупер API» с запасом на десять лет — сначала проверим, купит ли кто-то хотя бы за рубль просто решение, которое у нас уже есть.
Но есть нюанс =)
Внутри больших компаний, когда инстинкт выживания перестает давить,
логика начинает менять масштаб.
Раньше человек думал: «Как сделать хорошо для бизнеса»?
(потому что от этого зависил успех проекта и его денежки).
А теперь думает: «Как бы сделать, чтобы ко мне не прикопались».
🔸Что-то не работает уже полгода? Ну это не моя зона ответственности.
🔸Процессы тормозят? Я вообще-то только тестирую, не лезьте.
🔸Команда буксует? А у меня всё в Jira зелёное, вы что.
Понимаете, о чём это?
Это ведь всё — про пуговицы.
«К пуговицам претензии есть?»
(Если кто не понял — это отсылка к Райкину. Там костюм ужасный, а каждый из 100 специалистов отвечает: «я только за свою узкую специализацию».)
Так что в следующий раз, когда вам покажется, что все вокруг делают всё через одно место — не спешите удивляться.
Они просто выбрали свой путь наименьшего сопротивления.
Некоторые считают, что это и есть "правильная стратегия развития в корпоративном мире"
Однако этот путь не обязан совпадать с Вашим.
Конечно тема куда глубже. Я видел организации, где это поняли и научились лечить. Все сильно зависит от степени ответственности, которую готов брать человек и которую ему готовы дать.
Но блин, почему так много странных костюмов?
#советы@analyst_exe
analyst.exe | чат
(Тот самый, по которому мы идём куда чаще, чем готовы признать )
Утром задумался, пришел к интересной взаимосвязи..
Вспомним правило Парето: 20% усилий дают 80% результата.
Если задачу можно решить быстро и эффективно — мы почти всегда выберем именно такой подход (или усиленно будем его искать, а иначе откажемся от решения).
И это не плохо. Это нормально. Это разумно.
Теперь давайте посмотрим внутрь компании.
Вот, например, приходит запрос: «нужно добавить новую функцию».
Что делает предприниматель с инстинктом выживания?
🔸Проверяет, нет ли уже готового решения.
🔸Если нет — делает так, чтобы было дешево, быстро, и чтобы можно было использовать повторно.
Это и есть оптимальный путь: максимум эффекта при минимуме затрат.
Не делаем «супер-пупер API» с запасом на десять лет — сначала проверим, купит ли кто-то хотя бы за рубль просто решение, которое у нас уже есть.
Но есть нюанс =)
Внутри больших компаний, когда инстинкт выживания перестает давить,
логика начинает менять масштаб.
Раньше человек думал: «Как сделать хорошо для бизнеса»?
(потому что от этого зависил успех проекта и его денежки).
А теперь думает: «Как бы сделать, чтобы ко мне не прикопались».
🔸Что-то не работает уже полгода? Ну это не моя зона ответственности.
🔸Процессы тормозят? Я вообще-то только тестирую, не лезьте.
🔸Команда буксует? А у меня всё в Jira зелёное, вы что.
Понимаете, о чём это?
Это ведь всё — про пуговицы.
«К пуговицам претензии есть?»
(Если кто не понял — это отсылка к Райкину. Там костюм ужасный, а каждый из 100 специалистов отвечает: «я только за свою узкую специализацию».)
Так что в следующий раз, когда вам покажется, что все вокруг делают всё через одно место — не спешите удивляться.
Они просто выбрали свой путь наименьшего сопротивления.
Некоторые считают, что это и есть "правильная стратегия развития в корпоративном мире"
Однако этот путь не обязан совпадать с Вашим.
Конечно тема куда глубже. Я видел организации, где это поняли и научились лечить. Все сильно зависит от степени ответственности, которую готов брать человек и которую ему готовы дать.
Но блин, почему так много странных костюмов?
#советы@analyst_exe
analyst.exe | чат
❤3🔥2🤯2👍1
А вот и свежий «А-налитический понедельник» — неделя, как она есть
#ai_analyst_digest@analyst_exe
⏰ Часы, что бьют по нервам
@CrazyElephant_note запустил холивар о том, чей часовой пояс главный в отчётах. Вариантов три, споры бесконечны, а чеккин спустя неделю показывает:“универсального счастья нет” (t.me/CrazyElephant_note/742).
🧩 Пагинация: мелочь, а тормозит
Тот же слон разобрал пять способов разбивать выдачу и напомнил, что забытая сортировка превращает API в цирк с дубликатами (t.me/CrazyElephant_note/746). Приложил лайфхаки и ссылки — берём, пока горячо.
📜 Пример ≠ контракт
@analyst_exe подкинул памятку, почему JSON-пример — это открытка, а не договор. Хочешь меньше багов — описывай поле, тип, ограничение, регулярку сразу, не после релиза (t.me/analyst_exe/469).
🤖 Бот, который кликнет за тебя
Тем же каналом объявлен набор бета-тестеров телеграм-бота «для ленивых аналитиков»: тестить, ломать, предлагать фичи. Плюсик в комментариях — и вы в тайном чате (t.me/analyst_exe/465).
🛠 Путь наименьшего сопротивления
Пока одни пишут контракты, другие ищут, куда бы «не прикопались». Пост о корпоративных «пуговицах» раскрывает, почему в Jira зелёно, а в жизни красно (t.me/analyst_exe/470).
📊 BPMN-карнавал
@bpmn2ru едет на ЛАФ-2025 с докладом, раздаёт носки и обещает научить рисовать «понятную модель за 40 минут» (t.me/bpmn2ru/1670). Параллельно поднял цены в Storm и запустил биржу шаблонов с мерчем за лучшие схемы (t.me/bpmn2ru/1671, t.me/bpmn2ru/1674).
🕵️♀️ Резюме без возраста — отклик без вопросов
@data_phil убрала год рождения и «лишнее десятилетие» стажа — письма от рекрутеров посыпались. Система ищет удобное, не правдивое (t.me/data_phil/81).
💼 Сайд-проект, который съел выходные
@korenevskaya_galina честно рассказывает, как «лёгкая подработка» превратилась во вторую работу: посредник забрал 60 %, задачи выросли втрое, договор не спас. Выводы просты — предоплата и трезвая оценка часов, иначе снова будете продавать кофе-процессы ночью (t.me/korenevskaya_galina/91).
Итог недели
Аналитики меряются часовыми поясами, BPMNщики пакуют носки, а рекрутеры верят молодым безвозрастным кандидатам. Мир по-прежнему хочет быстрых решений, но платить предпочитает не всем. Берегите контракты и выходные — они пригодятся раньше, чем вы думаете.
Отслеживаемые каналы: @CrazyElephant_note @analyst_exe @bpmn2ru @data_phil @korenevskaya_galina
analyst.exe | чат
#ai_analyst_digest@analyst_exe
⏰ Часы, что бьют по нервам
@CrazyElephant_note запустил холивар о том, чей часовой пояс главный в отчётах. Вариантов три, споры бесконечны, а чеккин спустя неделю показывает:“универсального счастья нет” (t.me/CrazyElephant_note/742).
🧩 Пагинация: мелочь, а тормозит
Тот же слон разобрал пять способов разбивать выдачу и напомнил, что забытая сортировка превращает API в цирк с дубликатами (t.me/CrazyElephant_note/746). Приложил лайфхаки и ссылки — берём, пока горячо.
📜 Пример ≠ контракт
@analyst_exe подкинул памятку, почему JSON-пример — это открытка, а не договор. Хочешь меньше багов — описывай поле, тип, ограничение, регулярку сразу, не после релиза (t.me/analyst_exe/469).
🤖 Бот, который кликнет за тебя
Тем же каналом объявлен набор бета-тестеров телеграм-бота «для ленивых аналитиков»: тестить, ломать, предлагать фичи. Плюсик в комментариях — и вы в тайном чате (t.me/analyst_exe/465).
🛠 Путь наименьшего сопротивления
Пока одни пишут контракты, другие ищут, куда бы «не прикопались». Пост о корпоративных «пуговицах» раскрывает, почему в Jira зелёно, а в жизни красно (t.me/analyst_exe/470).
📊 BPMN-карнавал
@bpmn2ru едет на ЛАФ-2025 с докладом, раздаёт носки и обещает научить рисовать «понятную модель за 40 минут» (t.me/bpmn2ru/1670). Параллельно поднял цены в Storm и запустил биржу шаблонов с мерчем за лучшие схемы (t.me/bpmn2ru/1671, t.me/bpmn2ru/1674).
🕵️♀️ Резюме без возраста — отклик без вопросов
@data_phil убрала год рождения и «лишнее десятилетие» стажа — письма от рекрутеров посыпались. Система ищет удобное, не правдивое (t.me/data_phil/81).
💼 Сайд-проект, который съел выходные
@korenevskaya_galina честно рассказывает, как «лёгкая подработка» превратилась во вторую работу: посредник забрал 60 %, задачи выросли втрое, договор не спас. Выводы просты — предоплата и трезвая оценка часов, иначе снова будете продавать кофе-процессы ночью (t.me/korenevskaya_galina/91).
Итог недели
Аналитики меряются часовыми поясами, BPMNщики пакуют носки, а рекрутеры верят молодым безвозрастным кандидатам. Мир по-прежнему хочет быстрых решений, но платить предпочитает не всем. Берегите контракты и выходные — они пригодятся раньше, чем вы думаете.
Отслеживаемые каналы: @CrazyElephant_note @analyst_exe @bpmn2ru @data_phil @korenevskaya_galina
analyst.exe | чат
❤6🔥2
analyst.exe | просто о сложном в IT
Вчера набрёл на один ролик, залип — и до двух ночи что-то клепал. Планирую добить к концу недели и отдать в ваши руки (только не ломайте сразу, ладно?). А пока — затравочка. Первое вменяемое определение ИИ-агентов, которое попалось мне в дикой природе. C…
Ну что, добро пожаловать в ужасное и прекрасное будущее
рекомендую ознакомиться, слегка захватывает дух шо оно может
https://news.1rj.ru/str/t0digital/1121
рекомендую ознакомиться, слегка захватывает дух шо оно может
https://news.1rj.ru/str/t0digital/1121
Telegram
Диджитализируй!
🐈⬛ сура ai-тг шерят методичку сбера для ai-агентов. вы мб уже где-то видели ее. но если нет – забирайте.
гайд от сбера прям выглядит дорого по сравнению с openai и google у которых туториалы –чисто утилитарное чтиво.
тут прям видно, что чуваки согласовывали…
гайд от сбера прям выглядит дорого по сравнению с openai и google у которых туториалы –чисто утилитарное чтиво.
тут прям видно, что чуваки согласовывали…
❤1🤯1
Мне посоветовали
Я посмотрел, проникся, буду продолжать
Уважаемые бизнес-аналитики. Это вам.
Не благодарите.
Когда-то я не понимал, зачем оно вот это Jobs to be done всякие. А что, так можно было чтоли?
https://zamesin.ru/producthowto/free-lecture/
analyst.exe | чат
Я посмотрел, проникся, буду продолжать
Уважаемые бизнес-аналитики. Это вам.
Не благодарите.
Когда-то я не понимал, зачем оно вот это Jobs to be done всякие. А что, так можно было чтоли?
https://zamesin.ru/producthowto/free-lecture/
analyst.exe | чат
zamesin.ru
Как делать продукт: бесплатная лекция по Advanced Jobs To Be Done от Вани Замесина
Как найти свою нишу, создать ценность и отстроиться от конкурентов. Узнай методологию Advanced JTBD и начни создавать востребованные продукты.
🔥6❤3
Цикл заметок по UML и артефактам
Начал перечитывать книгу Фаулера 2004 года "UML Основы" — на этот раз внимательно. И внезапно оказалось, что там много интересного, мимо чего я раньше проходил. Решил делиться находками в виде коротких заметок. Потом, может, соберу всё в один материал.
🔸 UML — это не просто «диаграммы рисовать». Это целое семейство графических нотаций, объединённых в унифицированный язык моделирования. В основе — метамодель (вы спросите "что?", не забивайте голову) . Возник этот язык как компромисс между кучей методологий и подходов, которые плодились в 80–90-х. В какой-то момент несколько команд договорились, набрали критическую массу и такие — бац, держите UML. Подробнее об истории в интернете.
🔸 Что такое «графический язык моделирования» по сути? Это когда рисуешь блоки и стрелки, и в идеале это можно превратить в исполняемый код. Ну или хотя бы в понятную модель.
Фаулер выделяет три режима использования UML:
- Режим эскиза
- Режим проектирования
- Режим языка программирования
Эти режимы отличаются глубиной описания и соответствия стандарту.
Напоминает BPMN с уровнями "согласовательный, аналитический и исполнимый". Считайте, что так и есть
📝 Режим эскиза — наш с вами хлеб.
Когда рисуем схему, чтобы объяснить разработчику, «что вот тут будет вот так». Или чтобы всей командой обсудить логику куска системы. Цель простая: визуализировать идею, а не построить идеальный чертёж.
На таких схемах нет задачи покрыть всё. Только главное. Суть. То, что поможет принять решение.
И да, все любят картинки. Визуалам так проще.
🏗️ Режим проектирования — это уже ближе к архитектуре. Типа чертёж, по которому надо строить. Обычно это не про «на ходу объяснить», а про «задокументировать, чтобы потом не переспрашивать».
💾 Режим языка программирования — почти вымер? (моя гипотеза, но вроде так и есть). Я видел один раз в Enterprise Architect. И то не уверен, что это было легально.
Собственно история показала, что режим эскиза - то, как на самом деле используют UML
Фаулер пишет:
«Эскизы сознательно выполняются неполными»
«Эскизы — это проба, а проект — финальный результат»
И дальше — здравый вывод:
- слишком подробные модели сложно поддерживать,
- и они тормозят разработку.
(ну это надо "правильно нарисовать", обсудить, переделать)
Так что если у вас UML — это набор простых элементов, соединённых стрелками чтобы обсудить «а если так» — вы делаете всё правильно.
🔸 А ещё у Фаулера есть мысль про допустимость
Он говорит: нет никакого «правильного UML».
Всё зависит
- от инструмента моделирования
- от договорённостей в команде,
- от того, кто будет читать и использовать схемы.
Если вам кажется, что надо стрелочку покрасить, нарисовать человечка и подписать «Клиент» — рисуйте.
По факту мы используем лишь 10-20% от всех возможностей нотации и нам хватает👍
🔸Лучше понятная схема в “неправильном” UML, чем не понятная в “правильном”
(это относится ко всем артефактам аналитика в целом)
Ну и финалочка. Чтобы делать полезные диаграммы, не обязательно лезть в код. Часто хватает базового понимания — как работает программа, кто с кем разговаривает, что куда идёт. Не знаете? Делите на логические куски, рисуйте, обсуждайте, уточняйте.
И вообще — UML широко рапространен, но не обязателен. Есть куча других нотаций, которые могут быть лучше для вашей конкретной задачи.
📌 Поэтому:
- подбираем инструмент под задачу,
- отбрасываем лишнее,
- не стесняемся выкинуть диаграмму, если она не помогает.
Следующая заметка — скоро. Если не забуду.
Лайк = требование следущей части
#uml@analyst_exe
analyst.exe | чат
Начал перечитывать книгу Фаулера 2004 года "UML Основы" — на этот раз внимательно. И внезапно оказалось, что там много интересного, мимо чего я раньше проходил. Решил делиться находками в виде коротких заметок. Потом, может, соберу всё в один материал.
🔸 UML — это не просто «диаграммы рисовать». Это целое семейство графических нотаций, объединённых в унифицированный язык моделирования. В основе — метамодель (вы спросите "что?", не забивайте голову) . Возник этот язык как компромисс между кучей методологий и подходов, которые плодились в 80–90-х. В какой-то момент несколько команд договорились, набрали критическую массу и такие — бац, держите UML. Подробнее об истории в интернете.
🔸 Что такое «графический язык моделирования» по сути? Это когда рисуешь блоки и стрелки, и в идеале это можно превратить в исполняемый код. Ну или хотя бы в понятную модель.
Фаулер выделяет три режима использования UML:
- Режим эскиза
- Режим проектирования
- Режим языка программирования
Эти режимы отличаются глубиной описания и соответствия стандарту.
Напоминает BPMN с уровнями "согласовательный, аналитический и исполнимый". Считайте, что так и есть
📝 Режим эскиза — наш с вами хлеб.
Когда рисуем схему, чтобы объяснить разработчику, «что вот тут будет вот так». Или чтобы всей командой обсудить логику куска системы. Цель простая: визуализировать идею, а не построить идеальный чертёж.
На таких схемах нет задачи покрыть всё. Только главное. Суть. То, что поможет принять решение.
И да, все любят картинки. Визуалам так проще.
🏗️ Режим проектирования — это уже ближе к архитектуре. Типа чертёж, по которому надо строить. Обычно это не про «на ходу объяснить», а про «задокументировать, чтобы потом не переспрашивать».
💾 Режим языка программирования — почти вымер? (моя гипотеза, но вроде так и есть). Я видел один раз в Enterprise Architect. И то не уверен, что это было легально.
Собственно история показала, что режим эскиза - то, как на самом деле используют UML
Фаулер пишет:
«Эскизы сознательно выполняются неполными»
«Эскизы — это проба, а проект — финальный результат»
И дальше — здравый вывод:
- слишком подробные модели сложно поддерживать,
- и они тормозят разработку.
(ну это надо "правильно нарисовать", обсудить, переделать)
Так что если у вас UML — это набор простых элементов, соединённых стрелками чтобы обсудить «а если так» — вы делаете всё правильно.
🔸 А ещё у Фаулера есть мысль про допустимость
Он говорит: нет никакого «правильного UML».
Всё зависит
- от инструмента моделирования
- от договорённостей в команде,
- от того, кто будет читать и использовать схемы.
Если вам кажется, что надо стрелочку покрасить, нарисовать человечка и подписать «Клиент» — рисуйте.
По факту мы используем лишь 10-20% от всех возможностей нотации и нам хватает
🔸Лучше понятная схема в “неправильном” UML, чем не понятная в “правильном”
(это относится ко всем артефактам аналитика в целом)
Ну и финалочка. Чтобы делать полезные диаграммы, не обязательно лезть в код. Часто хватает базового понимания — как работает программа, кто с кем разговаривает, что куда идёт. Не знаете? Делите на логические куски, рисуйте, обсуждайте, уточняйте.
И вообще — UML широко рапространен, но не обязателен. Есть куча других нотаций, которые могут быть лучше для вашей конкретной задачи.
📌 Поэтому:
- подбираем инструмент под задачу,
- отбрасываем лишнее,
- не стесняемся выкинуть диаграмму, если она не помогает.
Следующая заметка — скоро. Если не забуду.
Лайк = требование следущей части
#uml@analyst_exe
analyst.exe | чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11🔥4👍3
Приятного понедельника сибаны
Сфокусированно работаем, бережем нервы, ставим галочки в задачнике, ждем следущие части книжечки по UML⌨️
p.s. а это я эксперементирую с работой полу лежа, по запросу покажу исходник
analyst.exe | чат
Сфокусированно работаем, бережем нервы, ставим галочки в задачнике, ждем следущие части книжечки по UML
p.s. а это я эксперементирую с работой полу лежа, по запросу покажу исходник
analyst.exe | чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥3
На основе реальных событий ⌨️
Ну было же, было?
Главное расслабиться
#meme@analyst_exe
analyst.exe | чат
Ну было же, было?
Главное расслабиться
#meme@analyst_exe
analyst.exe | чат
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10👏1
Forwarded from ScratchAuthorEgo
📊 Channel Analysis Results by @ScratchAuthorEgoBot
🎯 Channel:
🔥 Roast Analysis:
Ну что, герой нашего времени, @darkwing_duck101, снова вышел в эфир, чтобы спасти мир от неправильно оформленного JSON? Человек, который на вопрос «Как дела?» отвечает часовым стримом про разницу между POST и PUT. Твой work-life balance — это когда ты на одном мониторе до двух ночи «что-то клепаешь», а на втором ищешь подходящий мем с собакой, чтобы утром объявить о своем трудовом подвиге. Майские праздники для нормальных людей — шашлыки. Для тебя — «потратил 3 часа теплым майским вечером на настройку ИИ» и «разучился печатать, госпади».
Ты создал канал, чтобы бороться с корпоративным злом, а в итоге возглавил секту «Свидетелей Правильного UML». Каждый твой пост — это крик души: «К пуговицам претензии есть?». Есть, Никита, есть! К тебе есть претензия: ты когда спать собираешься? У тебя скоро глаз от переутомления будет дергаться в ритме BPMN-диаграммы. Ты перечитываешь Фаулера 2004 года и находишь в нем «кладезь знаний», который все остальные нашли и забыли лет десять назад. Скоро начнешь цитировать стандарт RFC 2616 наизусть на собеседованиях.
Твой главный скилл — это воровство мемов из рабочего чата. В резюме так и напиши: «Опытный аналитик-мемолог. Повышаю производительность команды путем своевременного вброса честно спизженных шуток». Ты запускаешь «закрытое тестирование полезной штуки», собираешь «отряд бета-тестеров», проводишь «аналитическую прожарку»... Звучит как план по захвату мира, а на деле — очередной повод не выходить из дома и поговорить с людьми, которые тоже любят душнить про API.
Ты так часто задаешь вопрос «Зачем?», что, кажется, скоро начнешь спрашивать у своей сибы, «зачем она виляет хвостом», и рисовать на это use case. Хватит уже клепать ботов, которые «сэкономят время аналитикам». Лучший способ сэкономить нам время — это если ты хотя бы на денек перестанешь генерировать контент и просто сходишь погулять. Без ноутбука. И без телефона. Хотя кого я обманываю... ты же наверняка уже проектируешь «оптимальный маршрут прогулки с собакой» с помощью C4-модели.
🎯 Channel:
@analyst_exe🔥 Roast Analysis:
Ну что, герой нашего времени, @darkwing_duck101, снова вышел в эфир, чтобы спасти мир от неправильно оформленного JSON? Человек, который на вопрос «Как дела?» отвечает часовым стримом про разницу между POST и PUT. Твой work-life balance — это когда ты на одном мониторе до двух ночи «что-то клепаешь», а на втором ищешь подходящий мем с собакой, чтобы утром объявить о своем трудовом подвиге. Майские праздники для нормальных людей — шашлыки. Для тебя — «потратил 3 часа теплым майским вечером на настройку ИИ» и «разучился печатать, госпади».
Ты создал канал, чтобы бороться с корпоративным злом, а в итоге возглавил секту «Свидетелей Правильного UML». Каждый твой пост — это крик души: «К пуговицам претензии есть?». Есть, Никита, есть! К тебе есть претензия: ты когда спать собираешься? У тебя скоро глаз от переутомления будет дергаться в ритме BPMN-диаграммы. Ты перечитываешь Фаулера 2004 года и находишь в нем «кладезь знаний», который все остальные нашли и забыли лет десять назад. Скоро начнешь цитировать стандарт RFC 2616 наизусть на собеседованиях.
Твой главный скилл — это воровство мемов из рабочего чата. В резюме так и напиши: «Опытный аналитик-мемолог. Повышаю производительность команды путем своевременного вброса честно спизженных шуток». Ты запускаешь «закрытое тестирование полезной штуки», собираешь «отряд бета-тестеров», проводишь «аналитическую прожарку»... Звучит как план по захвату мира, а на деле — очередной повод не выходить из дома и поговорить с людьми, которые тоже любят душнить про API.
Ты так часто задаешь вопрос «Зачем?», что, кажется, скоро начнешь спрашивать у своей сибы, «зачем она виляет хвостом», и рисовать на это use case. Хватит уже клепать ботов, которые «сэкономят время аналитикам». Лучший способ сэкономить нам время — это если ты хотя бы на денек перестанешь генерировать контент и просто сходишь погулять. Без ноутбука. И без телефона. Хотя кого я обманываю... ты же наверняка уже проектируешь «оптимальный маршрут прогулки с собакой» с помощью C4-модели.
😁5👏2
🎯🎯🎯Ищу аналитика на проектную задачу
Хочу наконец-то доделать бота для аналитиков.
Будет и проектирование системы, и бизнес-логика.
Занятость: 10–20 часов суммарно, от вас зависит.
Формат: проектная задача.
Оплата: если всё пойдёт — будет ≈10к.
Все зависит от вас.
С меня: менторство.
С вас: интерес и мозги.
Это не пост «ищу всех» — это отбор.
🧠 Мини-задание
Зайдите в документацию:
https://openlibrary.org/dev/docs/api/search
И пришлите:
- Скрин curl-запроса на поиск книг по слову design.
- Скрин JSON-ответа (только первая книга, не весь список).
- Что из этого можно показать пользователю в Telegram-боте?
Всё. Если справитесь — продолжим общение. Ответы присылать @darkwing_duck101
analyst.exe | чат
Хочу наконец-то доделать бота для аналитиков.
Будет и проектирование системы, и бизнес-логика.
Занятость: 10–20 часов суммарно, от вас зависит.
Формат: проектная задача.
Оплата: если всё пойдёт — будет ≈10к.
Все зависит от вас.
С меня: менторство.
С вас: интерес и мозги.
Это не пост «ищу всех» — это отбор.
🧠 Мини-задание
Зайдите в документацию:
https://openlibrary.org/dev/docs/api/search
И пришлите:
- Скрин curl-запроса на поиск книг по слову design.
- Скрин JSON-ответа (только первая книга, не весь список).
- Что из этого можно показать пользователю в Telegram-боте?
Всё. Если справитесь — продолжим общение. Ответы присылать @darkwing_duck101
analyst.exe | чат
👏2👍1
analyst.exe | просто о сложном в IT
🎯🎯🎯Ищу аналитика на проектную задачу Хочу наконец-то доделать бота для аналитиков. Будет и проектирование системы, и бизнес-логика. Занятость: 10–20 часов суммарно, от вас зависит. Формат: проектная задача. Оплата: если всё пойдёт — будет ≈10к. Все зависит…
Любители AI ассистентов напряглись
(засунуть задачку в GPT реально сложно да)
Вам посвящается
https://shazoo.ru/2025/06/18/169181/issledovateli-mit-obnaruzili-degradaciiu-mozga-pri-reguliarnom-ispolzovanii-ii-assistentov
Ознакомьтесь)
analyst.exe | чат
(засунуть задачку в GPT реально сложно да)
Вам посвящается
https://shazoo.ru/2025/06/18/169181/issledovateli-mit-obnaruzili-degradaciiu-mozga-pri-reguliarnom-ispolzovanii-ii-assistentov
Ознакомьтесь)
analyst.exe | чат
Shazoo
Исследователи MIT обнаружили деградацию мозга при регулярном использовании ИИ-ассистентов
Кто бы мог подумать, что если передавать всю работу ИИ, то можно разучиться думать своей головой
😁8🔥1
Нашёл доказательство, что был воспитан в семье инженеров.
Киберпанк который мы заслужили конечно
#meme@analyst_exe
analyst.exe | чат
Киберпанк который мы заслужили конечно
#meme@analyst_exe
analyst.exe | чат
😁6🔥4🤩2🥰1