Post #1402
1.31K
"На смену изумлению приходит ужас"
Последние новости от наших курсантов :)
В планах включить настройку по отключению/включению всех шедулеров, поскольку сейчас висит техдолг на их локальную отладку. В данный момент мы руками прописываем в начале выполнения шедулера return, чтобы он не стучался к той базе, к которой локально нет доступа:)
---
1. Мозг - глючное. Если не переносить мышление и особенно проектирование в экзокортекс - всегда просочится подобная "все-фигня" (читаю Левенчука понемногу :)
2. С протекшим в реализацию "не правильным" обобщением бороться можно, и в коде и инфраструктуре, но все как то сплошными костылями. Иногда эти костыли настолько ущербны и к тому же не очень просты (как минимум не дешевы по времени), что проще жить дальше, ибо...
3. Нормально делать и пытаться делать нужно было с самого начала. Тут мы плавно возвращаемся к пункту 1, где на примере опыта никто экзокортекс не использовал.
---
Есть таблица с историей какой-то сущности, например банковская карта, и требуется отобрать счета имевшие определённый статус на конкретную дату. Прямым запросом к этой таблице результат не получить - этот статус относится к второстепенным признакам и фиксируется отдельно, вместе с ещё примерно полусотней признаков. В этой дополнительной таблице тоже так просто не получить результат - там для этих 50..100 признаков всего штук пять колонок - внешний ключ к первой таблице, дата изменения, цифровой код признака который был изменён, значение этого признака (или код значения). В итоге, бизнес требования на языке запросов выглядят наподобие
select ...
from card
join card_adv ca1 on card.id = ca1.id and ca1.field1 = 15 and ca1.field2 = 53
join card_adv ca2 on card.id = ca2.id and ca2.field1 = 48 and ca2.field2 = 19
...
---
По итогу перепроверили айпишники и правда, срок договора выделенных прямых айпи истек, аналитик продлил его и запрос отправился, шаг выполнился, но не следующий...
А все потому что 1с решил поменять жсон ответ с Да на "Да", наша кукухазачеркнуто десериализация по дто полетела на попытки спарсить булеву :)
--
Когда заглядываешь во внутрь тех структур данных которыми активно пользуешься, с них спадает магическая вуаль, и ты поражаешься что не так уж замысловато все устроено.
На смену изумлению приходит ужас, когда смотришь на свой старый код с этими структурами, понимая сколько лишних телодвижений происходит.
Благодаря курсу я немного пролечил свой синдром самозванца.
(Когда-то на собеседовании не смог динамический массив реализовать, теперь гештальт закрыт :)
Последние новости от наших курсантов :)
В планах включить настройку по отключению/включению всех шедулеров, поскольку сейчас висит техдолг на их локальную отладку. В данный момент мы руками прописываем в начале выполнения шедулера return, чтобы он не стучался к той базе, к которой локально нет доступа:)
---
1. Мозг - глючное. Если не переносить мышление и особенно проектирование в экзокортекс - всегда просочится подобная "все-фигня" (читаю Левенчука понемногу :)
2. С протекшим в реализацию "не правильным" обобщением бороться можно, и в коде и инфраструктуре, но все как то сплошными костылями. Иногда эти костыли настолько ущербны и к тому же не очень просты (как минимум не дешевы по времени), что проще жить дальше, ибо...
3. Нормально делать и пытаться делать нужно было с самого начала. Тут мы плавно возвращаемся к пункту 1, где на примере опыта никто экзокортекс не использовал.
---
Есть таблица с историей какой-то сущности, например банковская карта, и требуется отобрать счета имевшие определённый статус на конкретную дату. Прямым запросом к этой таблице результат не получить - этот статус относится к второстепенным признакам и фиксируется отдельно, вместе с ещё примерно полусотней признаков. В этой дополнительной таблице тоже так просто не получить результат - там для этих 50..100 признаков всего штук пять колонок - внешний ключ к первой таблице, дата изменения, цифровой код признака который был изменён, значение этого признака (или код значения). В итоге, бизнес требования на языке запросов выглядят наподобие
select ...
from card
join card_adv ca1 on card.id = ca1.id and ca1.field1 = 15 and ca1.field2 = 53
join card_adv ca2 on card.id = ca2.id and ca2.field1 = 48 and ca2.field2 = 19
...
---
По итогу перепроверили айпишники и правда, срок договора выделенных прямых айпи истек, аналитик продлил его и запрос отправился, шаг выполнился, но не следующий...
А все потому что 1с решил поменять жсон ответ с Да на "Да", наша кукухазачеркнуто десериализация по дто полетела на попытки спарсить булеву :)
--
Когда заглядываешь во внутрь тех структур данных которыми активно пользуешься, с них спадает магическая вуаль, и ты поражаешься что не так уж замысловато все устроено.
На смену изумлению приходит ужас, когда смотришь на свой старый код с этими структурами, понимая сколько лишних телодвижений происходит.
Благодаря курсу я немного пролечил свой синдром самозванца.
(Когда-то на собеседовании не смог динамический массив реализовать, теперь гештальт закрыт :)
- ⚡ 35
- 👍 28
- ✍ 6
- 🤔 3
- 🏆 2


















