Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет kouzdra ([info]kouzdra)
@ 2014-02-17 11:38:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Индустриальный vs ларечный софт:
Паргентума я кажется задел - он опять изливается:

кстати, отсюда же ведь растут ноги и у куздровского "софта индустриального качества". Куздры хотят, чтобы они сами решали, что они будут программировать и под какие критерии качества, тоже без всяких там потребителей. А то ведь потребитель, сволочь, хочет электронную таблицу, и чтобы она работала на дешевой писишке, да еще с русскими буквами, а куздра умеет только компилятор паскаля на хаскеле под ЕС СВМ.

Демонстрируя по ходу полное непонимание того, что ему говорят.

Потому расскажу про еще одну поделку, которая как раз меня со товарищи неплохо кормила в период расцвета именно ларечного софта (1991-1995 примерно*). Как известно эти годы - период триумфального шествия в РФ говнософта типа MS DOS и иже с ним. В частности "крутейшей СУБД dBase II".

Надо заметить, что dBase II был настолько отменным говном, что апгрейды для него начали появляться даже в буржуазии немедленно - самый удачный imho - Клиппер, по внутренностям которого кстати видно, что его какие-то видимо функциональщики делали, тоже наверное не от хорошей жизни (внутри там замыкания, лямбды, сборка мусора - честная, а не "подсчетом ссылок", etc).

Тем не менее Клиппер был системой хоть и интересной - но разница между ним и dBase II была в "сортах говен". Что оставляло простор для усовершенствования говна. Одним из главных источников говнистости были

- несуразно пухлые файлы с данными
- при этом - куча ограничений в реальных БД на длины строк и разрядности чисел (по причине предыдущего пункта - если резервировать от души вообще ни в какие ворота не лезет)
- индексные файлы, которые были чуть не больше того, что они индексировали
- крайняя общая тормознутось, в случае если БД переваливает за десяток тыс записей

Ну и выводы напрашивались. В общем за три или четыре месяца наваяли либу для С++ которая позволяла далее работать по следующей бизнес-схеме: находился потенциальный клиент, страждущий от перечисленных пунктов. Ему делалось предложение - за умеренную сумму денег (или умеренные отчисления от продаж, если он тиражирует свою писанину) мы делаем так, что его база и индексы уменьшается в 10 раз** (часто от того начиная просто наконце влезать на один HDD), запросы начинают работать тоже в разы как минимум (up to мгновенный отклик) и с максимальной верхней границей 30-60 секунд etc - ну а мы имеем с того свой профит.

Работало отлично кстати.

Теперь про "индустриальный софт" - ну понятно сразу полезло говно типа, что под DOS невозможно параллельно читать с диска и что-то делать (что для этой задачи актуально). После чего я с тоской вспоминал "примитивнейшую" RT-11SJ, где это подразумевалось само собой.

Вылезло замечательное свойство ларечной системы FAT - что позиционирование позиции в файле "назад" в ней имеет линейную от размера файла сложность (это было нужно чтобы можно было выдавать "хвост" выборки пользователю до завершения ее формирования). Ну зоопарк с памятью и экстендерами для работы с нею я думаю ясно - в означенный период это значило в основном то, что про "расширенную память" лучше забыть - а то на борьбе с этим зоопарком у клиентов (причем обычно не клиентов, а "клиентов клиентов") гемору не оберешься, а главное - все равно кто-нибдуь потребует чтобы работало под XT.

Это индустриальный софт Раз.

А теперь индустриальный софт Два:

А угасать это начало по очень простой причине - наконец в середине 90-х на писюки начал действительно приходить индустриальный софт - в лице того же Watcon SQL (идеи IBM и DB/2 живут и побеждают - хотя тоже не фонтан ведь) для начала (который в числе прочего умел и паковать данные - хуже, чем мы, но разница в 2 раза уже некритична), ну и нормальные 32-битные системы стали превращаться в пользовательский стандарт, а далее понятно....

И естественно весь этот глубокий ларечный апгрейд глубоко ларечной "базы данных" утратил ценность.

Вот думаю, как пример того, что я имею в виду под "глубоким даунгрейдом" российского IT посредством IBM PC я понятно объяснил. Равно как и под отличием "индустриального" софта от "ларечного".
*) Начало проекта тут как раз очень четко отмаркировано - поскольку аккурат 19 августа 1991 года мы под ГКЧП обсуждали внутренний дизайн софтины и прикидывали, как и сколько там можно выжать сходу - получалось, что 3-4 раза - "легко" по самым консервативным оценкам, ну и подхихикивали по поводу "судьбоносного момента жизни страны"

**) технические детали могу рассказать отдельным постом - оно в некотором виде и сейчас актуально - правда для совсем других задач
PS: То есть в терминах ларечной метафоры аргументы в пользу рулезности PC в конце 80-х выглядят примерно так - после долгих, и во многом справедливых объяснений, "какое говно советские мотоциклы", вуа-ля - приобщение к цивилизации! - мне на замену мотоцикла выкатывают крутейший и импортный - велосипед :)

А на самом деле - еще и ни хера не крутейший - а наоборот - остро нуждающийся в тюнинге. На чем и правда можно зарабатывать - как в описанной выше истории.


(Добавить комментарий)


(Анонимно)
2014-02-17 12:53 (ссылка)
В совдепе у большинства была немного другая ситуация, после того как вообще нихуя не было, ВНЕЗАПНО стало можно спокойно купить IBM PC, за цену жигулей. Про этот ваш софт индустриальный может кто-то и слышал, но стоил он на порядки дороже, в любом случае это был бы overkill для учета сникерсов.

(Ответить)


(Анонимно)
2014-02-17 12:54 (ссылка)
Добавлю ещё, именно по этому ваши костыли пользовались успехом.

(Ответить) (Ветвь дискуссии)


[info]kouzdra
2014-02-17 15:40 (ссылка)
Да ращзумеется - подработка тюнингом спорт-байка посредством приделывания к нему двухтактного двигла и продажи этого как крутого мотоцикла. Я просто вполне осознаю именно статус этой херни. Народ однако обижается.

(Ответить) (Уровень выше)


(Анонимно)
2014-02-17 12:58 (ссылка)
И кстати да, ваш попнент прав, ящитаю. У вас самого техноснобизм так и прет, типичный такой совковый. Вы говорите говно, но не привели альтернатив и не указали сколько эти альтернативы стоили, так что пост этот - чесание ЧСВ, в основном.

(Ответить)


[info]qwerty
2014-02-17 14:39 (ссылка)
В ДОСе читать параллельно с диска было можно, но черезжопно.

(Ответить) (Ветвь дискуссии)


[info]kouzdra
2014-02-17 15:40 (ссылка)
Как - я на это довольно много времени потратил и пришел к выводу что "никак".

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]qwerty
2014-02-17 15:46 (ссылка)
Ровно так, как это делали дисковые кэши. Тайное знание, ЕМНИП, было описано в Interrup List'е.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]kouzdra
2014-02-17 15:52 (ссылка)
Я за этим тайным знанием довольно долго гонялся - и interrupts читал - может чего и пропустил - но буду очень удивлен.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]qwerty
2014-02-18 04:47 (ссылка)
Я подозреваю (хотя, конечно, не уверен - куча времени прошла), что это тайное знание было задокументировано достаточно поздно - примерно тогда же, когда подробности хранения статических внутренних переменных для организации многозадачности и т.д. По тем же самым не очевидной надежности ощущениям признак завершения асинхронной операции лежал в статике (и потому таких операций в каждый момент могло быть не больше одной). За какое прерывание с какими регистрами надо было дергать, не помню вовсе.

(Ответить) (Уровень выше)


[info]tzirechnoy.livejournal.com
2014-02-17 18:35 (ссылка)
Вешаешься хотя бы на int8, и хапаешь себе в меру тактов.

Большынство прерываний при чтении в DOS не были запрещены (и дажэ спецыальный флаг был где-то внутрях -- "DOS занят", обработчикам прерываний int21 не вызывать).

(Ответить) (Уровень выше)