Нас спрашивают
...
>ээээ... а чо, результат программы должен быть вероятностно-правильным?
Конечно. Если программа для 90% целевой аудитории пользователей работает ожидаемо, а от оставшихся 10% требует каких-то дополнительных действий - это лучше, чем от 100% требовать дополнительных действий.
Это к вопросу о стандартах. Конечно, хорошо писать программы для идеального мира, где стандарты соблюдены, кодировки все UTF, пользователи все знают что нужно читать маны и гугл, а компьютеры не глючат и TCP соединения работают корректно.
Но на практике - практически гарантированно, что хоть что-нибудь но будет сделано неправильно, или не будет работать, как нужно. Поэтому софт должен допускать некоторые вариации входных данных, и или обрабатывать их корректно, или как минимум, ругаться понятными словами (а не виснуть, как audacious на cue-файлах).
У меня есть в разном софте, как минимум, два модуля, в которых пришлось сделать натурально подгон под желаемый результат, потому что иначе пользователям пришлось бы сидеть на порядок больше времени, занимаясь исправлениями первичных данных, чем мне понадобилось для встраиваения относительно интеллектуального алгоритма кошеризации результата.
>ээээ... а чо, результат программы должен быть вероятностно-правильным?
Конечно. Если программа для 90% целевой аудитории пользователей работает ожидаемо, а от оставшихся 10% требует каких-то дополнительных действий - это лучше, чем от 100% требовать дополнительных действий.
Это к вопросу о стандартах. Конечно, хорошо писать программы для идеального мира, где стандарты соблюдены, кодировки все UTF, пользователи все знают что нужно читать маны и гугл, а компьютеры не глючат и TCP соединения работают корректно.
Но на практике - практически гарантированно, что хоть что-нибудь но будет сделано неправильно, или не будет работать, как нужно. Поэтому софт должен допускать некоторые вариации входных данных, и или обрабатывать их корректно, или как минимум, ругаться понятными словами (а не виснуть, как audacious на cue-файлах).
У меня есть в разном софте, как минимум, два модуля, в которых пришлось сделать натурально подгон под желаемый результат, потому что иначе пользователям пришлось бы сидеть на порядок больше времени, занимаясь исправлениями первичных данных, чем мне понадобилось для встраиваения относительно интеллектуального алгоритма кошеризации результата.
no subject
Неправильный подход. Надо было сделать утилитку которая бы привела данные в кошерный вид. И прога бы работала только с кошерными, годными данными.
В итоге бы соблюдался KISS, прога была бы меньше, легче в поддержке итд итп.
no subject
И, кроме того, первичные данные вообще изменять нельзя, на то они и первичные.
no subject
no subject
no subject
Там суть примерно такая: работа модуля зависит от распределения сумм по аналитическим кодам, причем взятых из двух разных экземпляров старой системы. В итоговой сумме и там и там должно быть одинаково, и только это пользователи и проверяют, потому что второго экземпляра не видно пользователям первого и наоборот.
А моя система (сводные отчеты) работает одновременно и с первым и со вторым экземляром, доступа на запись в них нету, менять данные в них нельзя. И большей ее части пофиг, какое там распределение сумм по кодам. Кроме одного модуля, который если делать как тут рекомендуют (рассчитывать на идеальные входные данные) - никогда в жизни бы не показал бухгалтерии нужных сумм. И "преобразовать входные данные к стандарту" можно только: а) по результатам работы этого модуля б) только на его входе, и больше нигде. Вот это и есть алгоритм подгонки результата - он считает сначала по тем данным которые есть(с минимумом ограничений), затем проходится по результату и смотрит "а нельзя ли тут подправить" по критериям типа "суммы и счета совпадают", создает список исправлений и повторяет свою работу второй раз. И вот только то. что второй раз не исправилось - показывается пользователям на предмет чтобы они исправляли первичные данные в старой системе.
no subject
я не против того, чтобы "чуть-чуть" неправильные входные данные корректировать. я против того, чтобы если по стандарту дебет должен быть равен кредиту (или чему-то там), то ломать этот стандарт из-за прихоти единственного юзера ("хачу штоб у меня не сходился а ошибок не было!") - нельзя.
no subject
no subject
no subject
no subject
мир, и особенно его первичные данные, далеко не идеальны и стандартны, и игнорировать это нельзя, прикрываясь стандартами
no subject
no subject
удачи в его реализации.
no subject
что, сделаете так, чтобы введенные пароли допускали авторизацию, даже если пароль неверный (а чо, сафсем чуть-чуть отличается)?
no subject
no subject
Для паролей строгая проверка является неотменяемым требованием предметной области, как например, сходящийся баланс в бухгалтерии.
no subject
согласитесь, что вся ситуация - это чисто субъективное "нихачу-нибуду конвертировать таги". никаких объективных причин не следовать стандарту нет.
no subject
а что, под венду написали что-либо "по просьбам трудящихся" заведомо вне стандарта? и вы этим довольны? и все счастливы? и нет проблем?
no subject
no subject
no subject
Это "всё" - команда ls?
no subject
no subject
Другой раз обновил - умер scipy.wave т.е. в очередном gcc оптимизировали инклуды.
А ещё vi пипикает и всё портит.
no subject
no subject
Я понял. Линукс для тех, кто вместо работы хочет заниматься настройками. От хаскелья хоть какая то польза есть, а от линукса вред сплошной, и разочарование.
no subject
no subject
no subject
Если в свежей генту без гуи поставить в use-flags "doc" - то она перестанет эмерджить и умрет в страшных корчах.
Надо сначала гуи зафигачить, а уж потом можно и документацию ставить.
no subject
no subject
no subject
no subject
Почему в линуксе работает, а винде нет?
Мыши плакали, кололись но продолжали жрать кактус
Re: Мыши плакали, кололись но продолжали жрать кактус
Re: Мыши плакали, кололись но продолжали жрать кактус