0 added
0 removed
Original
2026-01-01
Modified
2026-02-21
1
<p><a>#статьи</a></p>
1
<p><a>#статьи</a></p>
2
<ul><li>26 окт 2021</li>
2
<ul><li>26 окт 2021</li>
3
<li>0</li>
3
<li>0</li>
4
</ul><p>Знакомимся с Max - любимым языком программирования гитариста Radiohead Джонни Гринвуда.</p>
4
</ul><p>Знакомимся с Max - любимым языком программирования гитариста Radiohead Джонни Гринвуда.</p>
5
<p>Филолог, полиглот, IT-гик. В прошлом - преподаватель английского и литературы и рецензент Rolling Stone Russia. Ныне переводит для РБК и пишет о программировании и образовании для Skillbox.</p>
5
<p>Филолог, полиглот, IT-гик. В прошлом - преподаватель английского и литературы и рецензент Rolling Stone Russia. Ныне переводит для РБК и пишет о программировании и образовании для Skillbox.</p>
6
<p>Пока некоторые разработчики говорят, что творчеству нет места в программировании, музыканты нашли место<em>программированию</em>в творчестве. Разбираем Max - музыкальный инструмент будущего, на котором не играют, а кодят.</p>
6
<p>Пока некоторые разработчики говорят, что творчеству нет места в программировании, музыканты нашли место<em>программированию</em>в творчестве. Разбираем Max - музыкальный инструмент будущего, на котором не играют, а кодят.</p>
7
Изображение: комикс World’s Finest / Dave Gibbons / DC Comics, 1993<p>Max - это язык и среда визуального программирования, с помощью которых создают музыкальные и мультимедийные приложения. В отличие от традиционных языков вроде Java или Ruby, программы на Max не пишут, а собирают, как в конструкторе, перетаскивая и соединяя объекты.</p>
7
Изображение: комикс World’s Finest / Dave Gibbons / DC Comics, 1993<p>Max - это язык и среда визуального программирования, с помощью которых создают музыкальные и мультимедийные приложения. В отличие от традиционных языков вроде Java или Ruby, программы на Max не пишут, а собирают, как в конструкторе, перетаскивая и соединяя объекты.</p>
8
Соединение эффектов в Max/MSP. Скриншот: официальный сайт<a>Max</a><p>В Max сравнительно простой интерфейс, а модификации тестируются на ходу. Например, если добавить к проигрываемой дорожке эффект эхо, то его можно услышать сразу, не перезапуская программу.</p>
8
Соединение эффектов в Max/MSP. Скриншот: официальный сайт<a>Max</a><p>В Max сравнительно простой интерфейс, а модификации тестируются на ходу. Например, если добавить к проигрываемой дорожке эффект эхо, то его можно услышать сразу, не перезапуская программу.</p>
9
<p>У Max также есть два расширения:<strong>MSP</strong>для работы со звуком в реальном времени и <strong>Jitter</strong>для работы с визуальным контентом. Поэтому в творческих кругах язык часто называют Max/MSP или полностью - Max/MSP/Jitter.</p>
9
<p>У Max также есть два расширения:<strong>MSP</strong>для работы со звуком в реальном времени и <strong>Jitter</strong>для работы с визуальным контентом. Поэтому в творческих кругах язык часто называют Max/MSP или полностью - Max/MSP/Jitter.</p>
10
<p>Благодаря низкому порогу вхождения и множеству фич платформа собрала крепкий фандом среди поклонников IT и музыки. Самый известный среди них - гитарист Radiohead Джонни Гринвуд. Он использует фишки Max в песнях культовой британской группы.</p>
10
<p>Благодаря низкому порогу вхождения и множеству фич платформа собрала крепкий фандом среди поклонников IT и музыки. Самый известный среди них - гитарист Radiohead Джонни Гринвуд. Он использует фишки Max в песнях культовой британской группы.</p>
11
<p>С точки зрения разработчиков и инженеров, Max - это среда визуального программирования или фреймворк. Программист использует не слова, а готовые объекты - например, объект<a>seq~</a>эмулирует секвенсер, а <a>delay~</a>создаёт затухающий эффект эхо. Связки объектов можно переиспользовать в других проектах. С другой стороны, Max напоминает интерпретируемый язык - тот же код, только визуализируется объектами.</p>
11
<p>С точки зрения разработчиков и инженеров, Max - это среда визуального программирования или фреймворк. Программист использует не слова, а готовые объекты - например, объект<a>seq~</a>эмулирует секвенсер, а <a>delay~</a>создаёт затухающий эффект эхо. Связки объектов можно переиспользовать в других проектах. С другой стороны, Max напоминает интерпретируемый язык - тот же код, только визуализируется объектами.</p>
12
<p>В компании<a>Cycling '74</a>, которая разрабатывает Max, проект называют обобщённо -<a>software</a>. Поэтому единого обозначения нет: кто-то называет его языком или средой программирования, а кто-то - приложением. В этой статье будем считать, что Max - это платформа со своим языком программирования, и будем использовать оба термина.</p>
12
<p>В компании<a>Cycling '74</a>, которая разрабатывает Max, проект называют обобщённо -<a>software</a>. Поэтому единого обозначения нет: кто-то называет его языком или средой программирования, а кто-то - приложением. В этой статье будем считать, что Max - это платформа со своим языком программирования, и будем использовать оба термина.</p>
13
<p>Язык разработал в конце 1980-х математик и программист Миллер Пакетт, который в свободное от науки время писал электронную музыку. С 1985 по 1987 год Пакетт был членом исследовательской лаборатории при MIT Media Lab. Лаборатория проводит эксперименты в области медицины и технологий, а также искусства, музыки и дизайна.</p>
13
<p>Язык разработал в конце 1980-х математик и программист Миллер Пакетт, который в свободное от науки время писал электронную музыку. С 1985 по 1987 год Пакетт был членом исследовательской лаборатории при MIT Media Lab. Лаборатория проводит эксперименты в области медицины и технологий, а также искусства, музыки и дизайна.</p>
14
<p>Среди наиболее интересных проектов MIT Media Lab - программа<a>Hyperscore</a>. Интуитивный интерфейс приложения учит людей без музыкального бэкграунда сочинять музыку - обучающиеся рисуют линии, которые затем трансформируются в мелодии. В этой лаборатории и появились заготовки Max.</p>
14
<p>Среди наиболее интересных проектов MIT Media Lab - программа<a>Hyperscore</a>. Интуитивный интерфейс приложения учит людей без музыкального бэкграунда сочинять музыку - обучающиеся рисуют линии, которые затем трансформируются в мелодии. В этой лаборатории и появились заготовки Max.</p>
15
<p>Однако инициировал создание языка французский институт IRCAM, специализирующийся на музыкальных исследованиях. IRCAM основали в 1977 году по поручению французского президента Жоржа Помпиду, чтобы исследовать авангард и электроакустическую музыку - главные академические направления того времени.</p>
15
<p>Однако инициировал создание языка французский институт IRCAM, специализирующийся на музыкальных исследованиях. IRCAM основали в 1977 году по поручению французского президента Жоржа Помпиду, чтобы исследовать авангард и электроакустическую музыку - главные академические направления того времени.</p>
16
<p>В то время в IRCAM не знали, как написать программу, чтобы музыканты могли играть авангардные электронные композиции в реальном времени. Из-за этого приходилось кодить новую программу для каждого нового музыкального произведения. Это было<em>неудобно, отнимало много времени и ресурсов</em>. Пакетта пригласили поработать над одной из таких программ.</p>
16
<p>В то время в IRCAM не знали, как написать программу, чтобы музыканты могли играть авангардные электронные композиции в реальном времени. Из-за этого приходилось кодить новую программу для каждого нового музыкального произведения. Это было<em>неудобно, отнимало много времени и ресурсов</em>. Пакетта пригласили поработать над одной из таких программ.</p>
17
<p>"Всю разработку оплачивал IRCAM. У них не было проблем с оборудованием, но нужна была программа для живых выступлений. В июле 1988 года состоялась премьера композиции Pluton Филиппа Манури. Для неё нужно было создать новую программу, но к тому времени я уже решил написать её так, чтобы её могли использовать повторно для разных музыкальных произведений. Так родилась программная среда Max, которую музыканты и композиторы могут полностью подстраивать под свои нужды".</p>
17
<p>"Всю разработку оплачивал IRCAM. У них не было проблем с оборудованием, но нужна была программа для живых выступлений. В июле 1988 года состоялась премьера композиции Pluton Филиппа Манури. Для неё нужно было создать новую программу, но к тому времени я уже решил написать её так, чтобы её могли использовать повторно для разных музыкальных произведений. Так родилась программная среда Max, которую музыканты и композиторы могут полностью подстраивать под свои нужды".</p>
18
<p><strong>Миллер Пакетт,</strong>создатель Max</p>
18
<p><strong>Миллер Пакетт,</strong>создатель Max</p>
19
<p>Пакетт справился с поставленной задачей, но коммерческий успех пришёл к Max только через 10 лет. В середине 1990-х проект передали компании Cycling '74. Тогда же они выпустили для Max расширение<em>MSP</em>, а в начале 2000-х разработали<em>Jitter</em>. Так язык Max превратился в полноценную мультимедийную платформу<em>Max/MSP/Jitter</em>.</p>
19
<p>Пакетт справился с поставленной задачей, но коммерческий успех пришёл к Max только через 10 лет. В середине 1990-х проект передали компании Cycling '74. Тогда же они выпустили для Max расширение<em>MSP</em>, а в начале 2000-х разработали<em>Jitter</em>. Так язык Max превратился в полноценную мультимедийную платформу<em>Max/MSP/Jitter</em>.</p>
20
Jitter - расширение Max для создания и работы с визуальным контентом. Соединение эффектов в Max/MSP. Скриншот: официальный сайт<a>Max</a><p>Max назвали в честь пионера компьютерной музыки - Макса Мэтьюса, который в 1970-х работал в IRCAM. В конце 1950-х Мэтьюс создал MUSIC - первую программу, которая синтезировала и воспроизводила звук музыкальных инструментов на компьютере и получила широкое распространение за пределами лаборатории. Разработанный им алгоритм планирования в реальном времени<em>RTSKED</em>позднее лёг в основу работы Пакетта.</p>
20
Jitter - расширение Max для создания и работы с визуальным контентом. Соединение эффектов в Max/MSP. Скриншот: официальный сайт<a>Max</a><p>Max назвали в честь пионера компьютерной музыки - Макса Мэтьюса, который в 1970-х работал в IRCAM. В конце 1950-х Мэтьюс создал MUSIC - первую программу, которая синтезировала и воспроизводила звук музыкальных инструментов на компьютере и получила широкое распространение за пределами лаборатории. Разработанный им алгоритм планирования в реальном времени<em>RTSKED</em>позднее лёг в основу работы Пакетта.</p>
21
<p>Пакетт и инженеры IRCAM так и не смогли использовать программную среду Мэтьюса в своём проекте - ПО и оборудование, на котором оно запускалось, принадлежало Bell Labs. Пакетту пришлось заново придумать и переосмыслить концепцию, чтобы музыканты могли работать с Max независимо от оборудования и сложности композиций.</p>
21
<p>Пакетт и инженеры IRCAM так и не смогли использовать программную среду Мэтьюса в своём проекте - ПО и оборудование, на котором оно запускалось, принадлежало Bell Labs. Пакетту пришлось заново придумать и переосмыслить концепцию, чтобы музыканты могли работать с Max независимо от оборудования и сложности композиций.</p>
22
<p>Но платформу всё же назвали в честь Макса Мэтьюса - отдавая дань уважения революционным разработкам инженера. А имя Пакетта увековечили в Cycling '74, назвав его именем MSP (Miller Smith Puckette).</p>
22
<p>Но платформу всё же назвали в честь Макса Мэтьюса - отдавая дань уважения революционным разработкам инженера. А имя Пакетта увековечили в Cycling '74, назвав его именем MSP (Miller Smith Puckette).</p>
23
<p>В Max есть несколько ключевых понятий:</p>
23
<p>В Max есть несколько ключевых понятий:</p>
24
<ul><li><strong>Объекты (англ. - objects)</strong> - это фундамент языка. С их помощью можно генерировать звук, эмулировать музыкальное оборудование, создавать визуальные и аудиоэффекты. Группу объединённых объектов называют<strong>модулем</strong>.</li>
24
<ul><li><strong>Объекты (англ. - objects)</strong> - это фундамент языка. С их помощью можно генерировать звук, эмулировать музыкальное оборудование, создавать визуальные и аудиоэффекты. Группу объединённых объектов называют<strong>модулем</strong>.</li>
25
<li><strong>Виртуальные провода (англ. - patch cords)</strong>соединяют объекты и модули через входы и выходы (<strong>англ. - inlets и outlets</strong>).</li>
25
<li><strong>Виртуальные провода (англ. - patch cords)</strong>соединяют объекты и модули через входы и выходы (<strong>англ. - inlets и outlets</strong>).</li>
26
<li><strong>Патч (англ. - patch)</strong> - это полноценная программа, написанная на Max. Патчи сохраняются в форматах<em>.maxpatch, .maxhelp или .json</em>.</li>
26
<li><strong>Патч (англ. - patch)</strong> - это полноценная программа, написанная на Max. Патчи сохраняются в форматах<em>.maxpatch, .maxhelp или .json</em>.</li>
27
<li><strong>Субпатч (англ. - subpatch)</strong> - дочерний элемент патча. Субпатч может как находиться внутри патча, так и храниться отдельным файлом.</li>
27
<li><strong>Субпатч (англ. - subpatch)</strong> - дочерний элемент патча. Субпатч может как находиться внутри патча, так и храниться отдельным файлом.</li>
28
<li><strong>Патчер (англ. - patcher)</strong> - окно, в котором собирается патч.</li>
28
<li><strong>Патчер (англ. - patcher)</strong> - окно, в котором собирается патч.</li>
29
</ul>MIDI-контроллер MAX. Как и в других языках программирования, под каждой функцией можно оставлять комментарий. Соединение эффектов в Max/MSP. Скриншот: официальный сайт<a>Max</a><p>Работа в Max напоминает ООП. Пользователи создают объекты или кастомизируют готовые, объединяют их в модули, а из модулей собирают полноценные программы.</p>
29
</ul>MIDI-контроллер MAX. Как и в других языках программирования, под каждой функцией можно оставлять комментарий. Соединение эффектов в Max/MSP. Скриншот: официальный сайт<a>Max</a><p>Работа в Max напоминает ООП. Пользователи создают объекты или кастомизируют готовые, объединяют их в модули, а из модулей собирают полноценные программы.</p>
30
<p>Например, если надо создать блок эффектов для электрогитары, то можно собрать каждый эффект отдельно и объединить в одну педаль. Потом эту педаль можно добавить в другие Max-программы, изменить её или создать "дочернюю".</p>
30
<p>Например, если надо создать блок эффектов для электрогитары, то можно собрать каждый эффект отдельно и объединить в одну педаль. Потом эту педаль можно добавить в другие Max-программы, изменить её или создать "дочернюю".</p>
31
<p>В патчи Max даже добавляют программы, написанные с нуля на других языках. В <a>официальной документации</a>есть куча примеров и туториалов. А благодаря открытому API можно подключать сторонние приложения.</p>
31
<p>В патчи Max даже добавляют программы, написанные с нуля на других языках. В <a>официальной документации</a>есть куча примеров и туториалов. А благодаря открытому API можно подключать сторонние приложения.</p>
32
<p>Ещё одна крутая фича Max - возможность превращать визуальные объекты в код. Для этого их просто нужно выделить в патче и скопировать в любой текстовый редактор. Особенно полезно тем, у кого аллергия на визуальное программирование. Кстати, в Max лучше всего программировать традиционным способом на JavaScript - для этого языка есть<a>официальная документация</a>, а данные программы, по сути, представляются в JSON.</p>
32
<p>Ещё одна крутая фича Max - возможность превращать визуальные объекты в код. Для этого их просто нужно выделить в патче и скопировать в любой текстовый редактор. Особенно полезно тем, у кого аллергия на визуальное программирование. Кстати, в Max лучше всего программировать традиционным способом на JavaScript - для этого языка есть<a>официальная документация</a>, а данные программы, по сути, представляются в JSON.</p>
33
<p><strong>Если вы уже захотели протестировать возможности Max, советуем начать с этих ресурсов:</strong></p>
33
<p><strong>Если вы уже захотели протестировать возможности Max, советуем начать с этих ресурсов:</strong></p>
34
<ol><li><a>Cycling74.com</a> - официальный сайт с кучей видеоуроков, форумом сообщества и, конечно, самим Max.</li>
34
<ol><li><a>Cycling74.com</a> - официальный сайт с кучей видеоуроков, форумом сообщества и, конечно, самим Max.</li>
35
<li>Меню<strong>Help</strong>в Max - там есть полезные обучалки и советы.</li>
35
<li>Меню<strong>Help</strong>в Max - там есть полезные обучалки и советы.</li>
36
<li><a>Pattr.ru</a> - русскоязычный блог энтузиастов с кучей мануалов: от "как включить тёмную тему" до "написания полиритмических секвенсоров".</li>
36
<li><a>Pattr.ru</a> - русскоязычный блог энтузиастов с кучей мануалов: от "как включить тёмную тему" до "написания полиритмических секвенсоров".</li>
37
</ol><p>"Мне никогда не нравилось пользоваться чужим музыкальным софтом. Какие бы возможности ни открывали аудиоредакторы и плагины, они всё равно ограничивают творческий потенциал художника и заставляют его подстраиваться под программу. С Max я наконец-то обрёл полную свободу в работе со звуком и получил прямой доступ к возможностям компьютера".</p>
37
</ol><p>"Мне никогда не нравилось пользоваться чужим музыкальным софтом. Какие бы возможности ни открывали аудиоредакторы и плагины, они всё равно ограничивают творческий потенциал художника и заставляют его подстраиваться под программу. С Max я наконец-то обрёл полную свободу в работе со звуком и получил прямой доступ к возможностям компьютера".</p>
38
<p><strong>Джонни Гринвуд,</strong>гитарист Radiohead</p>
38
<p><strong>Джонни Гринвуд,</strong>гитарист Radiohead</p>
39
<p>Впервые музыканты из Radiohead использовали Max на шестом альбоме группы -<strong>Hail To The Thief</strong>. И хотя на концертах технической частью заправляет преимущественно Гринвуд, в студии с Max работает вся группа. Например, для записи восьмого студийника<strong>The King Of Limbs</strong>Radiohead создали на Max целую цифровую звуковую рабочую станцию.</p>
39
<p>Впервые музыканты из Radiohead использовали Max на шестом альбоме группы -<strong>Hail To The Thief</strong>. И хотя на концертах технической частью заправляет преимущественно Гринвуд, в студии с Max работает вся группа. Например, для записи восьмого студийника<strong>The King Of Limbs</strong>Radiohead создали на Max целую цифровую звуковую рабочую станцию.</p>
40
<p>Среди композиций Radiohead ярче и отчётливее всего Max слышен на <strong>The Gloaming</strong>. Почти весь аккомпанемент песни создан на этой платформе. Но по полной Гринвуд использует Max во время экспериментальных гитарных соло на живых концертах. Звук, который выдаёт гитарист Radiohead, даже называют "<em>stutter effect</em><em>Джонни Гринвуда"</em>. Почему<em>stutter</em>(с англ. - запинаться, заикаться) - можно понять из этого видео:</p>
40
<p>Среди композиций Radiohead ярче и отчётливее всего Max слышен на <strong>The Gloaming</strong>. Почти весь аккомпанемент песни создан на этой платформе. Но по полной Гринвуд использует Max во время экспериментальных гитарных соло на живых концертах. Звук, который выдаёт гитарист Radiohead, даже называют "<em>stutter effect</em><em>Джонни Гринвуда"</em>. Почему<em>stutter</em>(с англ. - запинаться, заикаться) - можно понять из этого видео:</p>
41
<p>На этом список известных музыкантов, которые работают в Max, заканчивается. Большинство культовых и популярных артистов либо пишут аранжировки вживую, либо пользуются классическим музыкальным софтом вроде<em>FL Studio, Steinberg Cubase</em>и <em>Ableton Live</em>. Последний, кстати, хоть и написан на C++, но содержит<a>аудиоустройства, спроектированные на Max</a>.</p>
41
<p>На этом список известных музыкантов, которые работают в Max, заканчивается. Большинство культовых и популярных артистов либо пишут аранжировки вживую, либо пользуются классическим музыкальным софтом вроде<em>FL Studio, Steinberg Cubase</em>и <em>Ableton Live</em>. Последний, кстати, хоть и написан на C++, но содержит<a>аудиоустройства, спроектированные на Max</a>.</p>
42
<p>Но хотя многие известные музыканты не горят желанием самостоятельно писать музыкальный софт, Max отнюдь не бессмысленная побрякушка инженеров и программистов. На этом языке создают мультимедийные инсталляции, пишут музыкальный софт и исследуют звук. А ещё экспериментируют андеграунд-композиторы и глитч-художники. Оценить проекты фанатов Max можно<a>на сайте платформы</a>.</p>
42
<p>Но хотя многие известные музыканты не горят желанием самостоятельно писать музыкальный софт, Max отнюдь не бессмысленная побрякушка инженеров и программистов. На этом языке создают мультимедийные инсталляции, пишут музыкальный софт и исследуют звук. А ещё экспериментируют андеграунд-композиторы и глитч-художники. Оценить проекты фанатов Max можно<a>на сайте платформы</a>.</p>
43
Кадр из клипа на трек Facelyzer токийской арт-группы BRIDGE, созданный с помощью Max/MSP/Jitter<p>У Max всего один известный амбассадор, но это вовсе не означает, что он бесполезен и на нём невозможно написать симфонию. В отличие от многих других цифровых музыкальных инструментов, Max ничем не ограничен в своих возможностях. Вот только чтобы постичь их все, недостаточно быть только Канье Уэстом. Нужно быть программистом :)</p>
43
Кадр из клипа на трек Facelyzer токийской арт-группы BRIDGE, созданный с помощью Max/MSP/Jitter<p>У Max всего один известный амбассадор, но это вовсе не означает, что он бесполезен и на нём невозможно написать симфонию. В отличие от многих других цифровых музыкальных инструментов, Max ничем не ограничен в своих возможностях. Вот только чтобы постичь их все, недостаточно быть только Канье Уэстом. Нужно быть программистом :)</p>
44
<p>А вот стать программистом со Skillbox можно за три простых шага. Заходите в раздел "<a>Программирование</a>", выбирайте подходящий курс и учитесь у опытных разработчиков из "Яндекса", Mail.ru, Tinkoff и других крупных IT-компаний.</p>
44
<p>А вот стать программистом со Skillbox можно за три простых шага. Заходите в раздел "<a>Программирование</a>", выбирайте подходящий курс и учитесь у опытных разработчиков из "Яндекса", Mail.ru, Tinkoff и других крупных IT-компаний.</p>
45
<a><b>Бесплатный курс по Python ➞</b>Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе. Смотреть программу</a>
45
<a><b>Бесплатный курс по Python ➞</b>Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе. Смотреть программу</a>