Иногда я вижу какие-то аналогии между разными гранями реальности. Например, между программированием и социальными системами, то есть - человеческим обществом и процессами в нём. Эта статья будет больше понятна программистам, но и другим людям может быть интересно. В своё время развитие компьютеров пошло по пути увеличении частоты процессора. Но люди столкнулись с проблемой перегрева процессора и было принято решение создавать несколько ядер, на которых задачу будут выполняться одновременно (параллельно). Если проводить аналогии, вместо того чтобы нагружать сильно одного человека, задачи распределяют между несколькими людьми. Но для того, что бы всё хорошо функционировало нужно было писать немного по-другому. Где и какие ядра будут выполнять ту или иную работу. (Не все задачи можно было просто разбить на подзадачи, что-то требовало хорошей смекалки). Иногда надо было работать с общими ресурсами и надо было правильно организовать взаимодействие потоков, чтобы они не мешали друг др