LVV>>Ну, про 90-е ты загнул, тогда только интернет появился.
C>Тем не менее, опыт развития таких систем именно тогда и начал нарабатываться. В частности: необходимость итеративного развития и постоянного тестирования, дизайн отказоустойчивости на уровне систем, методы планирования разработки, и т.д.
Просто изменился мир.
Вместо очень специализированной сферы деятельности компьютеры попали на каждый стол.
Попали на бытовой уровень. Персоналки и сети — два краеугольных камня, без которых больших проектов могло и не быть.
Отсюда и экономика: программы можно продавать ВСЕМ. А не только для специализированных научных и секретных институтов.
C>Если грубо разделить по десятилетиям и выделить самое важное:
C>70-е и раньше — первобытно-общинный строй.
Не забываем, что без этого "первобытно-общинного строя" не было бы ничего.
Родились unix и базы данных. Родилась ветка С-подобных языков.
Без БД просто не о чем говорить.
C>80-е — появление проектов, имеющих достаточно заметный размер.
IBM PC и развитие сетей...
C>90-е — множество реально крупных проектов и опыт управления ими, развитие полноценных языков, пригодных для больших систем.
Появился интернет, понятно. Ну, и Линукс.
Интересно, какие языки именно ты считаешь пригодными для разработки БОЛЬШИХ систем.
C>00-е — совершенствование инструментов разработки (git, умные IDE) и методов управления (Agile Manifesto), понимание важности continuous integration.
Ну, это уже современность
C>То что они распределённые — это как раз не так важно. Та же Винда занимает около 50 миллионов строк кода, а с учётом установленных приложений вполне может за несколько сотен миллионов строк перевалить.
То и удивительно — что там делают эти 50 лимонов строк...
Когда для полноценной работы пользователя в GUI вполне хватит и пары сотен тысяч...