Вот с тезисом о благости программистов-самоучек никак не могу согласиться, поскольку часто вижу резудльтаты их деятельности.
Опишу типичную ситуацию. Такому вот самоучке дают задание сделать некую (под)систему. Он. не обладая теоретическими познаниями, пренебрегат этапом проетирования, лепит модель данных находу, использует при кодировании чисто "хакерские" приемы, наплевав на теорию баз данных, на алгебру, матлогику и прочее. В результате, если он умеет кодировать (именно кодировать, а не программировать) на достаточном уровне, он довольно быстро создает требуемое. И все бы хорошо, но зачастую это решает 90% поставленных задач. На каком-то этапе с этим мирятся. Потом наступает время устранения недоделок и/или появляются новые требования к системе и нужно ее дорабатывать.
Как правило, эту задачу ставят не перед автором начальной программы, поскольку "это же хороший специалист, вон как быстро он все сделал и мы сумели закрыть пункт плана вовремя, а то и досрочно, пусть он используется эффективнее, то есть создает что-то новое, а доработками пусть другие занимаются".
Приходит другой разработчик, смотрит в ком и хватается за голову. Модель данных корявая, не позволяющая совершенствовать систему, написано все с нестандартными подходами, и разобраться в этом - отдельная сложная задача. Написано так, что может решать только то, что уже реализовано, а для доработки (или исправления ошибок) нужно вообще все переписывать. И в любом случае, любая доработка, при использовании таких нестандартных подходов, резко (экспотенциально) повышает сложность и объем системы.
Но, понятно, никто не пойдет на то, чтобы переписывать уже сданную систему. Вот куча народу лепит заплатки, что-то пытается исправить. Понятно, что эффективность такой работы крайне низкая, что сосздает у окружающих (непрограммистов) впечатление, что "этот самородок без образования и опыта быстро сосздал целую систему, а куча умников с высшим университетским образованием не может решить такую-то простенькую задачку - внести небольшие изменения в уже работающую систему".
И пока они, плюясь и чертыхаясь разгребают чужое дерьмо, этот самородок "глобалит" и создает новый "шедевр" такого же типа.