Программа которая случайно работает
Jan. 5th, 2015 08:39 pmЯ постиг дао Windows'а. И вообще проприетарного софта. Это программы которые случайно работают...
Вот делает программист какое-нибудь предположение. Например что последовательность
3D$F5jf%$#34[..много букв..]44434DFTE$4FS3 никогда не встретиться в юзерских данных.
И использует ее как маркер чего-то своего. Или еще какую-нибудь подобную глупость.
И оно работает. Прекрасно работает, и время наступление коллизии может даже быть больше времени жизни вселенной. Но!! ОНО РАБОТАЕТ СЛУЧАЙНО!!! Есть известная вероятность того, что оно в какой-то из разов не сработает.
А сколько таких предположений погребено в дебрях виндового кода?? А вероятности то -- суммируются. Вот и выходит, что софтина глючит. То работает, то не работает.
И некому это все вылавливать, потому что софт продается, деньги капают, при этом платят за новую функциональность. И так оно и живет горемычное, глючное, живущее лишь волею случая...
Вот делает программист какое-нибудь предположение. Например что последовательность
3D$F5jf%$#34[..много букв..]44434DFTE$4FS3 никогда не встретиться в юзерских данных.
И использует ее как маркер чего-то своего. Или еще какую-нибудь подобную глупость.
И оно работает. Прекрасно работает, и время наступление коллизии может даже быть больше времени жизни вселенной. Но!! ОНО РАБОТАЕТ СЛУЧАЙНО!!! Есть известная вероятность того, что оно в какой-то из разов не сработает.
А сколько таких предположений погребено в дебрях виндового кода?? А вероятности то -- суммируются. Вот и выходит, что софтина глючит. То работает, то не работает.
И некому это все вылавливать, потому что софт продается, деньги капают, при этом платят за новую функциональность. И так оно и живет горемычное, глючное, живущее лишь волею случая...
no subject
Date: 2015-01-05 06:07 pm (UTC)no subject
Date: 2015-01-05 06:15 pm (UTC)Знаешь, там где есть случайность, начинают работать законы кармы. Я когда к компьютеру с виндой подхожу, он при мне выделываться начинает... А без меня все норм :-) Это если вопрос веры сюда приплести...
no subject
Date: 2015-01-05 07:35 pm (UTC)no subject
Date: 2015-01-05 06:08 pm (UTC)Это было четверть века назад. Сейчас речь идёт не о случайном попадании системы в позу "не работает", а о сознательном стремлении вражественного окружения её туда поставить.
А вообще опен соурс (даже не опен соурс, а просто доступность исходников, честно украденные* или, о ужас, купленные тоже считаются) приучает к смирению: уж если в том, что тебе дали почитать, ТАКОЕ написано, то что же в том, что тебе почитать не дали? И ведь работает как-то... Я бы даже сказал, заметно чаще работает, чем не работает. Удивительно!
* Ностальгия: первый большой кусок исходников коммерческого кода на языке высокого уровня, который я видел, был текстами стандартной библиотеки от TopSpeed Modula 2. До этого были всяческие ассемблерные листинги, но ассемблер -- это немножко не то.
... In Soviet Russia, English pidgins YOU!! ...
no subject
Date: 2015-01-05 07:22 pm (UTC)no subject
Date: 2015-01-05 09:37 pm (UTC)Разработчики стандарта ну никак не предполагали что такое случится может.
no subject
Date: 2015-01-05 09:54 pm (UTC)http://www.ixbt.com/optical/magia-chisel.shtml
no subject
Date: 2015-01-06 04:26 pm (UTC)Я как раз про этот пример думал, но поскольку знаю его по пересказу нагуглить не смог...
no subject
Date: 2015-01-07 03:41 pm (UTC)Программистам особенно тяжело это осознать, потому что они программируют системы. И от этого иллюзия всемогущества, всепрограммируемости и т.д. Однако это иллюзия, дорогой.
no subject
Date: 2015-01-08 08:58 am (UTC)За пределами инженерного контекста -- сколько угодно эзотерики и мистики. Но мухи -- отдельно, котлеты -- отдельно.