Re[6]: Тенденции в развитии микроэлектроники и ПО :)
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 02.01.22 09:29
Оценка:
Здравствуйте, VladD2, Вы писали:

Чтобы не отвечать по каждому абзацу (слишком много текста):
1. Я говорил про возможность такой разработки сверхбольшим коллективом в принципе, что ты отрицал с начала, а ты — переключился на её эффективность по сравнению с нынешними средствами.
2. "Середина века" нельзя понимать как один момент, это период минимум в 20 лет.

Прочее попунктно:

N>>"Научился использовать современные железки" вообще не относится к этому сравнению.

N>>"Быстрее" — точно быстрее, если сравнить на _одинаковом_ железе? Или просто всё вокруг стало быстрее, от процессоров до SSD?

VD>Точно быстрее. Иначе все бы ставили MS SQL 6 на новое железо. Но сама по себе постановка вопроса не корректна. Для того чтобы задействовать возможности нового железа уже нужны новые версии софта. Например, MS SQL 6 просто не умел использовать память за пределами первых 2 Гб.


Вот именно — само по себе расширение до 64 бит уже в чём-то ускоряет, а в чём-то замедляет. И 100500 других фишек, которые могут быть на пользу в новых условиях, но никак не ускоряют чисто в аппаратных операциях.

VD>Первый компьютер и "писались программы" — это две большие разницы. Смягчать тут просто не чего. Первые компьютеры вообще программировались в машкодах и только своими авторами.


А что по-твоему это "писалось в машкодах", как не ПО?

Или есть ты признаешь за ПО только то, что продавалось? Ну тогда так и уточняй с самого начала.

VD> Это уже почти 70-й год о котором мы и говорил. И 70-м начался реальный прогресс в области разработки ПО. Шел довольно долго и только в 2010-х пришел к тому, что можно называть современным уровнем.


А тем временем придумано ещё множество фишек, которые выстрелят реально только в ближайшие 10-20 лет. И что?
Наработка началась одновременно с появлением компьютеров. То, что Брукс завершил свои концепции в конце 60-х, какой-нибудь Кент Бек оформил TDD в 2004 (а сейчас мы скорее видим его "диалектическое отрицание на новом витке развития") — это верхушка айсберга, 1% от него.
Подпишись на публикации ACM и посмотри, что нового приходит сейчас. Уверяю — там много интересного

VD>70-е года — это были года развития языков программирования и компиляторов. Писать софт большими командами тогда было невозможно просто из-за отсутствия необходимого дял этого ПО.


Писали. В той же OS/360 было несколько компиляторов.

VD> Ну, или производительность у подобных команд была ниже плинтуса.


Да, многого не было. Но они смогли стартовать на этой базе и показать пример остальным. Производительность и сейчас сильно разная — например, если учесть, что ~99% кода в итоге уходит в никуда, это какая производительность? Что толку с того, что мы сейчас можем наклепать компилятор или ОС за неделю? Те были сделаны за 3 года и использовались в миллионах экземпляров. Может, это тогда производительность была выше?

VD>К начальным стадям на которых не что не задумывались о разработке ПО тысячными коллективами, а думали о том как с машкодов съахать на ассмеблеры, а с них на высокоуровневые языки. Если просто посмотреть на языки тех времен, то сразу поймешь какое они были говно и что на них можно было делать.


О, ты ещё Nemerle вспомни, как раз в тему приплести.;(
Да, языки уровня повыше ассемблера развивались медленно — соответственно уровню техники и типовым задачам. Научная мысль всегда шла чуть впереди задач. Мы все избалованы законом Мура, а до начала активного внедрения его результатов (считай, начало-середина 1970х) техника мало что позволяла.

VD>И того компьтеры появлись где-то во второй половине 20го века.


Совершенно неадекватное определение, которое выхолащивает всю суть. Я не могу принять такое "итого" даже за первичную основу.

VD> До 70-х годов шло их становление и разработка языков высокого уровня. Первая пародия на систему контроля версий была создана в 1972. Но это была локальная система для IBM-мовских мэйнфрэймов. Публично ее зарелизили только в 1977 г. Реальное их развитие началось где-то в 80-е. В это же время были придуманы ООЯ и т.п. Причем вещи вроде сборочных конвейеров были придуманы еще позже, так как на мэйнфрэймах они вообще не имели смысла. Эволюция тех же систем контроля версий проходила банально на моих глазах. Еще в середине 90-х это было сташное говно плохо работающее по стеи.


Последнее слово не расшифровал, но вот тут точно не надо судить о всей индустрии по продукции Microsoft. Если ты другого не видел, это проблема личного кругозора.

VD> О каких тысячах разработчиков можно говорить в таком случае?


Ты, насколько вижу, совсем не понимаешь проблемы разработки в такой среде. Она не в отсутствии как таковой какой-то системы контроля версий (кому нужна была — тот покупал). Проблема в том, что вся среда (не только слабость VCS, а и, например, нереальная цена средств рефакторинга) приводила к дороговизне применения "гибких" подходов, неподъёмной для большинства — и поэтому "водопадная" модель была единственной массово пригодной для крупных разработок. А дальше — практически лотерея с качеством предсказания требований к моменту завершения разработки.

VD> Сотня то уже упиралась в их качество, а нормально их использовать можно было только на коллективах из десятков человек.


И ещё раз: решалось человеческим умом и стандартными средствами вроде определения интерфейсов между компонентами.
Проектировать крупные системы любого рода к тому времени уже научились. Что плохо умели — предсказывать требования к моменту запуска в эксплуатацию. Но это и сейчас не умеют, поэтому решают проблему средствами Agile.

VD>IBM — это были пионеры, которые до этого еще на механических машинах умудрялись не хилые объемы данных обрабатывать. Не надо выдавать единичный случай за общую практику.


И сколько таких "единичных случаев" будет? Вот с ходу второй вспомнился (см. фото со стопкой распечаток). Покопаться — ещё десяток найдём. Это сравнимо с объёмом всей индустрии того времени. Может, проблема не в бобине?

VD> Ну, и производительность труда у них была по нашим меркам (нашим временам) никакая. И было это так именно из-за отсутствия необходимого софта. Они в общем-то и родили предков этого самого софта. Первая система контроля версий как раз и была на коленке для OS/360 сделаны в 1972 году. А до этого они без них обходились. Причем это была внутренняя тула IBM, т.е. для всего мира она не существовала. А зарелизили они ее в 1977м году, т.е. практически в 80-х когда и пошло эволюционное развитие систем управления разработки софтом и не закончилось и по сей день.


Да, железо стало массово тянуть применение таких средств (без часовых задержек).

VD>То что они сделали обычные фирмы стали повторять только через десятки лет. Я лично видел как писался код в Госплан СССР, так как мой отец там работал. Они про системы контроля версий и не знали. А когда у них появились первые Писюки они просто визжали от счастья, так как программы стало возможно компилировать, запускать и получить результат сразу, а не записавшись в очередь и получив распечатку на следующий день. Сраный писюк поднял производительность программиста в сотни раз, так как программирование стало интерактивным процессом.


Ну вот это сходится с тем, что предполагает EM — сколько народу получило такую возможность только с приходом PC. А я ещё школьником видел и СМ-4, и СМ-1420, и ДВК, которые ещё в начале 80-х были, и всякие "Агаты", и побочные ответвления типа Электроники-85... (да, большинство PDP-11 в разных вариациях...) Да, это Киев, не совсем село, но и не Москва. Повторюсь — твой отец (и ты?) работали в каком-то совсем странном месте, если эти средства прошли мимо вас...

VD>Читая разных Бруксов ты даже представить не можешь как они там в реальности работали.


Не надо высасывать из пальца то, чего ты не знаешь и не можешь знать. Могу. Я работал с бумагой и перфокартами.
Вот с перфолентами не довелось, но видел их вплотную

N>>5000/3 ~= 1667, а учесть неравномерность — в пике до 2000, наверно.

VD>А что это за "3"?

Года (1963-1966). Как ты читаешь, что это не очевидно?

VD>Я главное выделил. Вот тогда только декомпозиция и знали, а банальной системы контроля версий не было.


И им хватало еженедельных (например) бэкапов на бумаге и лентах.

VD> Народ экспериментировал в области ЯП. Только только от машкодов ушли. Люди уже понимали, что, например, кодом нужно управлять, но как — было не известно. SCCS — ту самую систему контроля версий — разработали только для System/370. System/360 писали без нее. Естественно испытывали боль. Два программиста уже один исходник поправить не могли.


И они успешно обсуждали друг с другом как это решать. И даже получалось

VD> Интерактивности разработки не было. Ты должен был отдать свою программу операторам и те поставят ее в очередь. А результат на распечатке, на следующий день (а то и через неделю, если тебе время не выделили).


И сейчас есть задачи, над которыми надо так работать (какие-нибудь нейросети — оно считает неделю и после этого ты видишь, правильно ли подобрал параметры). И что, от этого они становятся нерешаемыми?

N>>Это факт одного отдельно взятого Госплана, который тут скорее антипример.

VD>Да все так работали. Мой отец был начальником отдела. В подчинении у него было где-то 10-20 баб. Но ты думаешь они писали софт? Вот их когда человекочасы считали, то учитывали не только их но еще операторов машинного зала и прочих вахтеров (коими там милиция выступала). У них был WANG на котором наверное какую-то отчетность писали. У них потом ПК повились на которых эта орда баб развлекалась.

Тогда не понимаю, зачем им перфокарты. На них приносили данные?

N>>И у нас было две "IDE" для редактирования любых текстов на дисплеях (дисплеи были — 4 штуки 7066 на ЕС1022 в Ценах и 8(?) штук 7920 на ЕС1033 в Нефтехиме) и запуска системных команд — примерно как сейчас из vim можно запускать команды — питерская JEC и киевская Вектор. Вокруг была больше знаменита московская Primus, но у нас в тех двух точках её почему-то не было.

VD>Дисплеи были, но почему-то их особо для ввода программ не использовали. Стояли себе рядом с машинным залом. На них даже световые перья были. Вот только сделать с их помощью было ничего не льзя. Так только ребенку по экрану поводить.

Значит, у вас почему-то не хотели ставить этот софт. Причины мне неизвестны, но он был — уж из трёх-то возможных источников можно было выбрать.

Или дисплеи поставили нерабочими (да, вполне верю).

VD>Просто реальность такова, что все огромные коллективы (причем не только у нас, но и у них) в реальности грели воздух! А работали в реальности одиночки или коллективы из нескольких десятков человек. А далее пошла эра ПК и до мэйнфрэймов первые годы им было как до луны. Все сильно деградировало. Те же системы контроля версий изобретались по новой. CVS появился в 1990м году!


CVS стал развитием RCS с принятием части идей из SCCS. RCS была сделана как упрощение SCCS для доступных средств. SCCS это, похоже, и есть та система, что ты говоришь про S/370.
Ничего не "изобреталось", использовались уже существовавшие идеи, хотя многое в деталях подновлялось (алгоритмы мержей, например, активно развиваются и сейчас).

Деградация была только у нас, потому что был тотальный перелом. У остальных шёл эволюционный процесс переноса существующих идей на новые технические средства, которые заполняли новую, неизвестную до того нишу. Вот что показательно это что именно новые ниши становились основными (PC это один пример, а мобилки, например, достаточно свежий).
Для примера: CP/M, а позднее MS-DOS, разрабатывались на эмуляторах на мейнфрейме

N>>Что общение софтом было слабым — факт — всё держалось на личных связях. Но всё остальное что ты пишешь — какой-то лютый гон с обобщением личного опыта на весь космос, который не подтверждается как минимум моими данными и наверняка ещё нескольких современников (вон интересно, что Privalov вспомнит).

VD>Нет, просто ты начитался Брукса и думаешь, что то что он рассказывает было везде и всегда.

И снова странная приписка мне, что я думаю. Не надо так делать.

VD> А он писал об истории развития компьютерной техники. О пионерах. О том как делали лутую херню за бешенные деньги! Но и ее покупали потому как другой не было.


Эти "бешеные деньги" сравнимы со стоимостью того же железа. Всё это было дорого, да.

VD> Наше развитие всегда шло с отставанием.


Я не ориентируюсь на специфику СССР в этом обсуждении.

VD> Наши ЕС — это и были копипасщенные IBM-ы с отставанием лет на 5.


Ближе к 10, и что?

VD> А эти огромные коллективы ни хера не делали. Работали в них одиночки и мелкие группы. НИИ цен? Сейчас это даже звучит смешно. Задачу вычисления оптимальной цены невозможно решить и сейчас. А главное ее просто не надо решать. Надо просто повышать цены на то, что пользуется излишним спросом пока цена не уравновесит предложение. Коммунисты занимались лютой херней!


Вообще-то разумное планирование нужно везде и всегда, даже там, где в мелочах процветает рыночный подход. И весь мир так и делает (и США, и Европа, и Китай, и Россия, и Индия...) И есть ресурсы, для которых рыночное поведение недопустимо в условиях перекосов и дефицитов. Странно слышать от тебя предложение не управлять ценами вообще.

N>>Они спорны, и я их обсуждаю с EM, но твой метод участия тут точно не сработает.

VD>Нет, нет. Я пример привел. Он это утверждение четко опровергает. Значит утверждение ложно. Других вариантов нет.

Что именно ты считаешь таким примером? Я не понял, тут слишком много разного.

VD> А ты берешь какой-то частный случай и делаешь на его основе общий вывод — "Софт не становится лучше". Становится еще как! Просто не всегда быстродействие критерий качества.


Ты меня явно с EM перепутал. И он говорил не о частных случаях, он говорил об общей картине (статистически значимой) так, как он её видит, с несколькими иллюстрациями.
Это принципиально. И вот насколько его видение адекватно — можно и нужно обсуждать, но не циклиться на примерах.
The God is real, unless declared integer.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.