Недавно мне посчастливилось оторваться от компьютера и заняться новым для себя видом творчества. Предлагаю фидбек "по-программистски".
Разложим творческий процесс "по полочкам", как программисты ;)
Исходные данные (материалы и инструменты для работы):
- эпоксидная смола
- красители разных цветов
- стаканчики для разведения и смешивания цветов и оттенков
- поверхность для нанесения
- стики для нанесения
Фактически мы описали переменные и структуры данных, некоторым из которых задали начальные значения (инициализировали).
Предлагаем тем, кто хотя бы немного знаком с программированием, еще раз взглянуть на этот список и подумать над типами и структурами описанных данных.
Методы "движка":
- Подготовить состав.
- Подготовить стаканчики с цветовыми наполнителями.
- Организовать рабочее место.
- Дать доступ к поверхностям и другим инструментам и материалам.
- Выдать спецодежду (в нашем случае это защитный фартук и перчатки).
«Движок» - это наш художник, который владеет технологией работы с эпоксидной смолой, организует для нас рабочее место, выполняет предварительные подготовительные работы.
Перечисленные выше методы (функции) для нас-исполнителей (непосредственных участников творческого процесса) могут быть непонятны и даже неизвестны. Нам не надо знать, как они выполняются. В программировании это называют "черным ящиком". Для нас важно, чтобы все "само" сработало ;)
Итак, движок функционирует, у исполнителя имеются все необходимые исходные данные. Пишем и исполняем программу!
В программировании именно так работают программы, написанные на интерпретируемых языках: по шагам. Интерпретатор "видит" очередной шаг программы и старается его выполнить. Если исходных данных недостаточно (либо команды непонятны, ошибочны), выполнение программы останавливается и выдается сообщение об ошибке.
Итак, наша программа выглядит примерно следующим образом.
Шаг 1. Прийти на мастер-класс.
Шаг 2. Получить спецодежду.
Шаг 3. Надеть спецодежду.
Шаг 4. Выбрать материалы и инструменты (исходные данные): стаканчики с эпоксидной смолой и красителями; поверхность(и) для творчества; стики для нанесения.
Шаг 5. Занять выделенное рабочее место.
Шаг 6. Разложить и расставить на рабочем месте полученные исходные данные.
Шаг 7. Приступить к творчеству, в цикле Пока не достигнут желаемый результат:
Шаг 7.1. С помощью стика набрать смолу желаемого цвета ИЛИ взять стаканчик со смолой.
Шаг 7.2. Нанести на поверхность смолу желаемого цвета (стиком ИЛИ выливая аккуратно из стаканчика) в выбранном месте.
Шаг 7.3. Наблюдать за получаемыми результатами и изменениями "картины".
Мы постарались описать данный выше алгоритм (программу) для исполнителя максимально кратко. Более опытные и внимательные программисты заметят, что во многих местах требуются уточнения и детализация. Но мы люди, которые имеют определенный жизненный опыт и знания, а не роботы. Поэтому нам не надо объяснять, как например, надеть перчатки или взять в руку стаканчик, что значит "выбрать", "выбранный", "желаемый", и т.д., и т.п. Упрощая, будем считать, что всё это входит в базовый набор команд интерпретатора, которые он «понимает» и может выполнить.
Представьте, сколько еще деталей и уточнений потребуется внести в нашу программу и даже "движок", чтобы ее смог выполнить робот!
Подумайте, какие из деталей алгоритма для робота описать будет сложнее всего.
Завершим наш программистский опус размышлениями о творчестве :)
Эпоксидная смола - материал, с которым хочется творить!
В процессе создания своего шедевра с использованием эпоксидной смолы всегда получится нечто неожиданное! Картина будет меняться до тех, пока смола не застынет. Ее можно дополнительно немного разогревать и наблюдать за новыми изменениями. Поистине творческий и даже слегка магический процесс, результатом которого всегда является нечто уникальное!
Если начать размышлять о "движке" Мира, в котором мы живем, все волшебство процесса можно описать с помощью математических формул происходящих физических и химических процессов. Восхищает то, что человеку повторить только что созданный шедевр практически невозможно. Тогда как, если мы всё точно запрограммируем и рассчитаем для робота, то он может «наштамповать» какое угодно количество практически одинаковых вещиц. Уникальность при этом также гарантируется, так как помимо исполнителя (робота или человека – даже не важно) в процессе участвует окружающая среда. Например, температура воздуха и влажность в помещении. Все эти внешние факторы влияют на конечный результат.
Так что нам, начинающим творцам и программистам есть чему поучиться у Создателей Движка! ;)
Любой вид творчества фактически представляет собой сплав программирования (алгоритмизации) с вариациями (случайностью, непредсказуемостью) результатов. Действительно, и художник, и скульптор, и даже кулинар действуют по заранее известным правилам, алгоритмам, выполняют действия, которым обучались также по заранее заданным алгоритмам. При этом в процессе создания картины, скульптуры, блюда человек-творец не просто выполняет программы, а привносит некие неформализумые факторы (описать которые для роботов практически невозможно).
Алгоритмичность творческих процессов уже позволила программистам создать программы, которые сочиняют стихи, пишут музыку, создают картины и прочие художественные произведения. Сегодня такие программы становятся незаменимыми помощниками не только для тех, кого мы привыкли относить к "творческой интеллигенции", но и делают творчество более доступным для каждого.
С помощью компьютерных программ каждый может быстрее научиться рисовать или сочинять музыку. Это породило новый вид творчества, который называют цифровым. Нам еще предстоит переосмыслить этот новый феномен человеческой деятельности.
Возникает вполне логичный вывод: между творчеством и логикой (программированием) разница не велика. Соответственно, и разделение на лево-право-полушарников (о которых мы размышляли в предыдущей публикации) не такое уж и четкое.
В заключение - несколько фото шедевров, собственноручно созданных программистом ;)
Благодарим lanaart.by за предоставленную возможность попробовать такой потрясающий вид творчества!
Эта статья – один из экспериментов АЭЛИТ, в котором мы пробуем описывать любые части нашей жизни в виде алгоритмов, помогая понять каждому, что по сути все мы в той или иной мере программисты и исполнители программ, которые были созданы кем-то другим.
Автор статьи: Ольга Елисеева.