У меня было несколько заданий на программирование. Каждый из них имеет 20-50 разработчиков, проект продолжается 3-5 лет.
Каждый раз, когда он то же самое. Некоторые программисты яркие, некоторые - средние. У каждого есть своя степень CS, каждый читает образцы дизайна. Намерения хороши, люди стараются писать хороший код, но все же через пару лет код превращается в спагетти. Изменения в модуле A внезапно нарушают модуль B. Всегда есть эти части кода, которые никто не может понять, кроме человека, который его написал. Изменение инфраструктуры невозможно, а проблемы с обратной совместимостью предотвращают попадание хороших функций. Половину времени вы просто хотите переписать все с нуля.
И люди, более опытные, чем я, относятся к этому как к нормальному. Это? Это должно быть? Что я могу сделать, чтобы избежать этого, или я должен принять его как факт жизни?
Edit: Ребята, я впечатлен количеством и качеством ответов здесь. Этот сайт и его сообщество рок!