?

Log in

No account? Create an account

Предыдущий | Следующий

Есть одна забавная задачка, за которую я отвечаю уже 15 лет.
В первый раз я ей занимался сам, когда считалось, что я еще умею программировать и имею на это время. Но последние лет 10 ей занимаются другие люди. Я только ставлю задачу на внесение изменений и контролирую результат, поскольку несу за него личную ответственность.
Изменения требуется вносить два-три раза в год, а исполнители каждый раз разные.
Сейчас это был 10-й, который сказал что тут всё не так и надо переписать всё по новой, чтобы это было красиво и современно.
И, как и предыдущие 9 раз, я не стал возражать.
Он переписал, но оно не заработало.
Он удивился, а я ему объяснил причины.
Он удивился второй раз, я развел руками и вздохнул.

Жаль, что нельзя удержать у них из зарплаты за зря потраченное время.
Но, если бы я взялся объяснять сразу, то потратил бы времени в три раза больше, что стоило бы фирме дороже.

«Не надо "как лучше", надо как положено!» (с)

Comments

( 18 комментариев — Оставить комментарий )
esgalin
12 дек, 2016 06:27 (UTC)
Фраза в тему из корпоративного цитатника: "Не думай логически! Думай по закону!"
ivalnick
12 дек, 2016 12:15 (UTC)
Кое-где эту фразу сокращают до "Не думай!", но жизнь это обычно быстро исправляет. :-)
natvalbr
12 дек, 2016 09:20 (UTC)
да, это проблема... :)
ivalnick
12 дек, 2016 12:15 (UTC)
Это не проблема, это беда!

Над проблемой хотя бы можно думать, а тут остается только воспринимать как неизбежное. :-)
mindfactor
12 дек, 2016 11:27 (UTC)
>Жаль, что нельзя удержать у них из зарплаты за зря потраченное время.

Почему ? Очень даже можно. Подзуживаешь их аккуратно, а потом предлагаешь пари - если заработает, то 5 отгулов получит, а если не заработает - то "-1" отгул (пишет по собственному желанию, но реально в этот день работает)
ivalnick
12 дек, 2016 12:17 (UTC)
У нас немного другие рабочие взаимоотношения.
Могу наказать деньгами, но не могу ими поощрить.
Поэтому предпочитаю обходиться без формальных поощрений и наказаний. Исключительно на авторитете и опыте. :-)
mindfactor
12 дек, 2016 12:26 (UTC)
>Могу наказать деньгами, но не могу ими поощрить.

Начальник не может выдать отгул ?

В первый раз такое вижу.
ivalnick
12 дек, 2016 14:43 (UTC)
У нас маленькая, но очень гордая фирма. :-)
vladicusmagnus
13 дек, 2016 10:13 (UTC)
Ты проблему опиши, а то вдруг бесплатно помогу )))
ivalnick
16 дек, 2016 07:52 (UTC)
Ситуация такая:
- есть справочник из трех десятков полей и сотни тысяч записей, в котором отсутствует ключевое поле;
- есть от трех до десяти операторов, которые независимо друг от друга вносят в него изменения: удаление записи, добавление новой, редактирование записи;
- раз в неделю к текущей версии справочника от каждого оператора присылают изменения, которые нужно внести в эталонный справочник и разослать его самим операторам и пользователям.

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

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

Но каждый новый, кто берется за эту задачу, говорит: а на фига?
И, по простому, накатывает последовательно изменения от каждого из них. В результате некорректно отрабатывают изменения и удаления.
amironenko
16 дек, 2016 14:39 (UTC)
>- а потом из этих копий собираю новую версию эталона, удаляя дублирующиеся записи.

А как вы конфликты разрешаете? Когда в одну и ту же строку Вася записал "1", а Петя "2"? Или Вася записал "1", а Петя вообще удалил?
ivalnick
19 дек, 2016 05:24 (UTC)
Как раз в том и задача, что справочник должен быть полный.
То есть, если там была строка "1,1", которую Вася изменил на "1,2", а Петя изменил на "1,3", то в новом эталоне появятся две строки: "1,2" и "1,3". Если при этом был еще и Коля, который эту строку не менял, то в эталоне будет уже три строки.
Аналогично и с удалениями: строка будет удалена только при условии, что её удалили все операторы.
ivalnick
19 дек, 2016 05:25 (UTC)
Индексы-то есть.
Но уникальный ключ образуется только по всем полям.
vladicusmagnus
20 дек, 2016 02:08 (UTC)
классические семафорыю. Ну и запись того кто полазил.

3 мину. времени и допполе.

А глобальный индекс, для передачи по сети?
amironenko
14 дек, 2016 18:08 (UTC)
>Жаль, что нельзя удержать у них из зарплаты за зря потраченное время.

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


Хотя все равно не понимаю, как кусок кода может не заработать. Что за задача такая?
ivalnick
16 дек, 2016 07:52 (UTC)
Я выше описал ситуацию.
Код-то работает, но результат неправильный получается.
( 18 комментариев — Оставить комментарий )

Profile

Аватарка
ivalnick
ivalnick

Latest Month

Сентябрь 2018
Вс Пн Вт Ср Чт Пт Сб
      1
2345678
9101112131415
16171819202122
23242526272829
30      

Метки

Разработано LiveJournal.com
Designed by Tiffany Chow