Композитор и программист? На первый взгляд, трудно представить более далекие друг от друга профессии. Между тем, создание музыки и программирование имеют больше общего, чем вы думаете. Недаром среди программистов так много меломанов, и многие из них еще и умеют играть на инструменте.
Есть также много примеров профессиональных музыкантов, которые, соблазнившись финансовыми перспективами (или вынуждены платить по счетам), успешно «перешли» на код. Так что же общего у этих двух, казалось бы, разных областей?
Прочные теоретические основы
Создание музыки и программирование невозможно без прочной теоретической базы. В случае с композитором это будет отличное знание нотной грамоты, а кодер должен хорошо знать общие правила программирования. Только при следовании этим общепринятым правилам отдельные элементы композиции или кода будут работать вместе и станут понятны окружающим.
Точно так же, как плохо построенная структура аккордов создаст диссонанс, программа, написанная без учета правил, будет полна ошибок.
Создание чего-то большего из мелких элементов
О величии композитора свидетельствуют, в частности, тонкая настройка каждого аккорда. Невозможно создать шедевр без кропотливой отработки основ, таких как гаммы или аппреджио. Точно так же, чтобы стать великим программистом, вы должны потратить много времени на то, чтобы каждый кусочек вашей программы был правильно и элегантно закодирован.
И в случае с программистом, и с создателем музыки небольшие фрагменты, из которых работа строится как кирпичики, часто определяют качество конечного продукта.
Возможность увидеть готовую работу в целом
В обеих этих областях маленькие элементы служат для построения большего целого, образ которого и композитор, и кодер должны создать в своей голове. Нетрудно предугадать, как выглядел бы конечный эффект работы первого из них, если бы он не мог представить себе, как будут звучать вместе музыканты разделов отдельных групп инструментов, прежде чем он услышит их вживую.
Точно так же хороший программист должен увидеть свою работу во всей ее полноте глазами своего воображения.
Результат индивидуальной и командной работы
Вопреки стереотипным представлениям, и авторы музыки, и программы имеют мало общего с эксцентричными одиночками. Да, индивидуальный аспект работы в обоих случаях чрезвычайно важен, но музыкальное произведение, созданное без соучастия с теми, кто будет его исполнять, есть только искусство ради искусства.
То же самое и с программированием. Недаром от сегодняшних кодеров ожидают развитые коммуникативные навыки. Обычно они входят в состав команд, состоящих из нескольких человек, и, помимо выполнения самостоятельной работы, их повседневная жизнь — это сотрудничество с пользователями, тестировщиками, руководителями проектов и т. д.
Техническое мастерство
Новые технологии, проникая в другие сферы нашей жизни, коснулись и музыки. Все чаще инструменталисты, ищущие новые звуки, должны обладать значительными техническими знаниями, позволяющими им использовать все более и более совершенные усилители или микшеры. В свою очередь, само создание музыки, благодаря ряду инструментов, предлагаемых новейшими технологиями, все меньше и меньше похоже на сочинение эпохи Моцарта, а ближе к… программированию.
Конечно, утверждение о том, что у всех программистов есть условия стать музыкальными виртуозами, и что каждый выпускник Музыкальной академии может достичь мастерства в программировании, слишком далеко идущий вывод… Несмотря на множество общих черт, отрицать это сложно, посколько есть и существенные различия между этими двумя областями. Однако трудно не согласиться с тем, что хорошее программирование — это искусство, а что еще такое нотация, как не вид кода?
Есть ли в вашем окружении программисты-музыканты? Согласны ли вы с тезисом о том, что эти две области особенно близки друг другу?
Статья написана по материалам сайта https://obuchenie24.com/