Статья. Инга Смирнова «Виртуальная реальность политико-технологического разума»

Статья. Инга Смирнова «Виртуальная реальность политико-технологического разума»

материал с сайта

 

Сегодня очевидно, что само понятие виртуальной реальности — такое, каким его использует наше современное культурное пространство, заставляет вспомнить о значении реальности психической, открытой З. Фрейдом, указывает на предельную актуальность этого открытия. Для Фрейда психическая реальность, заключающая в себе «бессознательные желания и связанные с ними фантазии», делает абсолютно полноправными, абсолютно реальными все содержания, которыми наполнено для нас наше бытие [9]. В контексте этого положения все феномены, про-исходящие с современным субъектом, субъектом медийного пространства, приобретают особое звучание. Жизненная виртуальность — это симптом современного общества. Если, согласно Ж. Лакану, предположить, что симптом — это просто означающее, то у каждого он должен быть особенным, сугубо индивидуальным. Как известно, за интерфейсом пользователя, этим сервисом оформления его фантазма, всегда стоит «чистое бессубъектное исчисление, ряды единиц и нулей, плюсов и минусов» [32]. Но ведь есть еще и тот, кто стоит между рядами битов и байтов и тем самым интерфейсом — тот, кто «позволяет» интерфейсу состояться. Традиционно субъект виртуальной реальности рассматривается с позиции пользователя неких систем, образующих кибернетическое пространство. Мы же предлагаем посмотреть на это пространство из точки взгляда ее конструкторов. Как выглядит виртуальная киберреальность для тех, кто имеет отношение к ее построению? Каким является их симптом?Попробуем предположить, кто такой современный программист. С одной стороны, мы отдаем себе отчет в том, что это просто профессия, специальность, такая же, как, скажем, экономист или медик. С другой стороны, современный социокультурный дискурс подразумевает постоянный оттенок мифологизации программиста как человека вообще. В ходе развития информационных технологий фигура программиста в сознании социума отчетливо эволюционировала: от брутального неопрятного мужчины в свитере, связанного с бездушной машиной неестественно интимными отношениями, до притягательного мистера Андерсона, продукта творчества Вачовски. Но если уйти в сторону от художественных образов и обратиться к разработчику программного обеспечения в его повседневности, что мы увидим там, за исключением математических способностей и логического мышления?Говоря о неком абстрактном разработчике, о котором исходно мы ничего не знаем, нас интересует, что именно будет основополагающим для него в процессе его становления как субъекта реальности информационных технологий. Важным аспектом здесь является как специфика разрабатываемой программы, — чьи задачи она будет решать, какую реальность конструировать, — так и выбор модели разработки, языка программирования — как символического пространства. Попробуем обратиться к тем понятиям и категориям из мира программного обеспечения, которые стали наиболее известны.

ВОЗВЫШЕННЫЙ ОБЪЕКТ WEB

Мы хорошо представляем, что в основе своей для нас являет Интернет-пространство и его приложения сейчас. Интернет-магазины, серверы электронной почты, форумы и чаты, мутирующие в так называемые «социальные сети», и просто бездонное море самой разнородной информации, находящей свое пристанище на сайтах любой сложности и любого тематического направления. Все это — взгляд со стороны пользователя, который, безусловно, жаждет своего «опутывания» Всемирной паутиной в нашу предельно нарциссическую эпоху. О чем же в этот момент думает создатель очередной «медиа ловушки», очередного веб-приложения?Он думает, конечно, о выборе хостинга и об организации данных, о разделении доступа и заполнении контентом, о кроссплатформенности и кроссбраузерности своего творения. Но самое приятное для нас заключается в том, что ничуть не меньше он думает о своем пользователе. В работе веб-программиста всегда достаточно много пользовательского интерфейса, его в наибольшей степени из всех других его коллег окружают образы (исключение составляют, пожалуй, разве что создатели игр) — ведь ими в основном и задается веб-реальность, их отображению уделяется первостепенное значение. В своей жизни программист так же вовлечен в воображаемые отношения Всемирной паутины, как и все остальные. Но при этом ему довелось определять место другого в создаваемой им части этой реальности — никакого веб-ресура еще нет, а программист наш уже знает, какими образами будет захвачен другой, закладывая объекты его воображаемого пространства, и то, как именно другому будет позволено проявить себя в условиях новой реальности. Необходимо помнить еще и о том, какой масштаб всегда подразумевает эта конструируемая реальность: ведь количество таких других, в нее вовлеченных, может исчисляться миллионами, оно поистине глобально, ведь мы говорим о глобальной сети. Эта массовость внимания к порождаемому мной не может не навевать пьянящую иллюзию всемогущества. Здесь и обнаруживается ловушка: конституируя множественные идеальные Я пользователей моей программы, я, сам того не осознавая, в этот момент приобретаю свою воображаемую идентификацию, я уже захвачен своим нарциссическим образом Творца Реальности. Мы помним, что воображаемая идентификация — это образ, которого я хочу достичь, который меня пленил и кажется мне привлекательным. Символическая идентификация — идентификация с местом, из которого я мог бы видеть себя привлекательным. Причем, следует помнить о том, что, во-первых, воображаемая идентификация может состояться как с «объективно» привлекательным объектом (визуально привлекательным, социально одобряемым), так и с образом, прямо противоположным. Во-вторых, воображаемая идентификация всегда осуществляется через призму взгляда Другого — субъект пытается принять определенный образ для того, чтобы его оценил Другой. С. Жижек говорит о разрыве между двумя идентификациями, возвращаясь к феномену истерии, пользуясь гегелескими понятиями «для других/для себя»: «истерический невротик воспринимает себя как того, кто играет роль для другого, его воображаемая идентификация — это «бытие для других» [5,112].Веб-программист совершает свою воображаемую идентификацию с Творцом новой реальности с постоянной оглядкой на тех, чей взгляд будет видеть в нем Творца — начиная от первого Другого — заказчика, который ждет от него некоего «блага», «успешности», и продолжая всеми остальными, кто включит его творение в картину своей «виртуальной реальности».Символическая же идентификация веб-разработчика, идентификация с Другим достигается принятием им его символического мандата «Творца реальности». Как мы помним, символическая идентификация строится вокруг существования несимволизированного остатка, представляющего конститутивную нехватку, во мне и в Другом, — объекта а. Это причина нашего желания, одновременно являющая собой воплощение избыточного наслаждения. Согласно Жижеку, любая идеология имеет свой возвышенный объект (объекта а): этот «химерический объект фантазма, объект, являющийся причиной нашего желания и одновременно — в этом состоит его парадоксальность — ретроактивно предполагаемый этим желанием» [5, 70]. Веб-разработчик — тот, кто конструирует раму фантазма современного массмедийного общества, в соответствии с современной идеологией жизненной виртуальности.

ОБЪЕКТНО-ОРИЕНТИРОВАННАЯ ИДЕЯ

Как говорится в книге Г. Буча, посвященной подробному анализу объектно-ориентированной парадигмы, «термин объектно-ориентированный затаскан до потери смысла, как «материнство», «яблочный пирог» и «структурное программирование» [2, 50]. Единственное, что всегда верно — понятие объекта является центральным во всем, что касается объектно-ориентированной методологии. Объектно-ориентированное программирование в свое время пришло на смену структурному, — в котором программа являет собой последовательный код, выполняемый «сверху-вниз», с использованием процедур и делением на модули. Объектно-ориентированная технология программирования, подразумевает подход, при котором программа рассматривается как набор дискретных объектов, содержащих, в свою очередь, наборы структур данных и процедур, взаимодействующих с другими объектами.В теории объектно-ориентированного программирования объект определяют как осязаемую сущность, объединяющую данные и процедуры, четко проявляющую свое поведение и сохраняющую свое локальное состояние. Главным в понятии объекта является объединение идей абстракции данных и алгоритмов. В объектном подходе акцент переносится на конкретные характеристики физической или абстрактной системы, являющейся предметом программного моделирования. Объекты обладают целостностью, которая не должна, — а в действительности, не может — быть нарушена. Объект может менять только свое состояние, вести себя, управляться или становиться в определенную позицию по отношению к другим объ-ектам. Свойства, характеризующие объект и его поведение, всегда остаются неизменными. Объектно-ориентированное программирование — это методология программирования, основанная на представлениях программы в виде совокупности объектов, каждый из которых является экземпляром определенного класса, а классы образуют иерархию наследования [2, 52]. В сущности, весь материальный мир состоит из объектов, обладающих свойствами и вступающих в то или иное взаимодействие с другими объектами — именно эта идея и лежит в основе объектного подхода. Например, в природе существует объект шар, он может быть наделен разными свойствами — может быть деревянным, каучуковым, металлическим, может иметь размер, цвет. Он может занимать позицию в пространстве относительно других объектов, может перемещаться по заданной траектории. Объекты моделируют характеристики и поведение элементов окружающего нас объективного мира. Они являются окончательной абстракцией данных.Итак, объект — это нечто, обладающее состоянием, поведением и идентичностью; структура и поведение схожих объектов определяет общий для них класс. Класс — это группа, множество или вид с общими свойствами, разновидностями, отличиями по качеству, возможностями или условиями; это некое подмножество объектов, имеющих общую структуру и общее поведение [2, 111]. В то время как объект обозначает конкретную сущность, определенную во времени и пространстве, класс определяет лишь абстракцию существенного в объекте. Объектно-ориентированная парадигма, помимо упомянутой выше абстракции данных оперирует другими своими основными понятиями, такими как: инкапсуляция, наследование, полиморфизм.Понятие инкапсуляции — это принцип, согласно которому все объекты представлены черными ящиками, о которых известны лишь их возможности/функции, но не то, как эти возможности/функции реализованы. Данный принцип теоретически способствует уменьшению количества связей между классами и объектами, и добавляет возможность независимого изменения содержания того или иного класса или объекта.Наследование, вероятно, следует считать наиболее семантически интересным отношением. [2, 114]. Понятие наследования вносит возможность расширять возможности одного объекта-родителя в другом объекте-потомке, сохранив при этом свойства и методы родителя. Зачастую набор классов, связанных отношением наследования, называют иерархией, так как по своей сути наследование как раз и направлено на отображение такого свойства реального мира как иерархичность. Полиморфизмом называют такое явление, когда одно и тоже свойство объекта реализуется по-разному в зависимости от конкретного объекта. Аналогом полиморфизма может служить многозначность одних и тех же слов, например, «ходить» могут как часы, так и человек. С точки зрения программирования полиморфизм является основным преимуществом объектно-ориентированной парадигмы. Итак, перед нами не что иное, как один из способов моделирования мира, ведь в системе объектов каждый объект представляет собой упрощенное идеализированное описание реальных объектов мира. Программист, находясь в условиях объектно-ориентированной парадигмы, по сути, создает свой собственный мир — населяет его своими собственными объектами, выстраивает связи между ними, определяет иерархию их отношений между собой. Новый объект так легко создать: операция создания объекта и/или его инициализации называется конструктор и включается в каждый создаваемый класс. Его так же легко удалить из своего мира: деструктор — операция, освобождающая состояние объекта и/или разрушая сам объект — тоже входит в число обязательных для каждого класса методов. Класс может ограничивать доступ к своему «содержимому», своим методам (функциям) и данным, используя разные варианты области видимости: открытую (public) — видимую всем остальным, защищенную (protected) — видимую самому классу, его подклассам и друзьям (friends), закрытую (private) — видимую только самому классу и его друзьям. Друзья класса — классы, которым предоставляется привилегия видеть отдельные области класса. Тем самым нарушается инкапсуляция, поэтому здесь, как и в жизни, друзей нужно выбирать осторожно [2,112]Очевидно, что любой язык программирования, имеющий в своей основе объектно-ориентированную парадигму, предоставляет разработчику свои правила, не соблюдая которых работающую программу написать невозможно. С другой стороны, учитывая все тонкости объектно-ориентированного подхода, связанные с построением структуры классов, организацией взаимодействия объектов, учитывая то же наследование, не могут не указывать на некий индивидуальный путь, который проходит разработчик в процессе построения своей модели реальности. Нам было бы сложно пытаться отследить этот путь без оперирования узкоспециализированными категориями, поэтому попытаемся посмотреть на объектно-ориентированную программу дистанцированно, в отрыве от авторства, представляя ее как текст в понятиях структурализма. Анализируя знаковые единицы объектно-ориентированного текста, такие как: объект, класс-родитель, класс-потомок, друг, интерфейс (в смысле предоставления доступа), мы можем приближаться к различным моделям означивания имеющихся у человека представлений. С другой стороны, специфичность подобного текста в условиях его анализа заставляет обратиться к аналогии с текстом поэтическим — как пишет Лотман о Блоке: «он вынужден как поэт, материалом которого является слово, пытаться в пределах этого материала выразить то, что принципиально им не выражаемо… вопросительные интонации выражают сомнение в адекватности слова его значению». В связи с этим наше внимание обращается на то, что какой-либо «адекватный» язык для выражения всего спектра испытываемого человеком в принципе невозможен. Все, что мы можем выразить нашим естественным языком, отражает лишь суть вещей и принципов. Здесь мы опять вспоминаем «постсруктуралисткий» взгляд Ж. Лакана, в отношении бесконечной попытки приблизиться к ускользающему объекту а — этой фундаментальной нехватке, остающейся после любой символизации, к тому, что сокрыто от нас где-то в глубине ядра Реального. А так же его «точку пристежки» [5, 93] — как некую «узловую точку», заставляющую остановиться скольжение означающих и, тем самым, организующую идеологическое пространство. Выражение конкретного отношения наследования в объектно-ориентированной программе вполне можно в таком контексте рассматривать как этот самый кореллят «жесткого дессигнатора» в измерении реального: это не главное слово, которое «конденсирует всю полноту значения того поля, которое она пристегивает» [5, 102], а то самое, которое «унифицирует данное поле, задает его идентичность». Это то означающее, к которому все остальные «вещи» данного поля (полиморфизм, инкапсуляция, область видимости) «обращаются за уяснением себя в своей целостности» в условиях идеологии конкретной программы. Очевидно, это тот самый «недостижимый «Икс», объектно-ориентированное желание в условиях объектно-ориентированного программирования.

АППАРАТНОЕ «ДО-СИМВОЛИЧЕСКОЕ» В ЯЗЫКЕ АССЕМБЛЕРАЯ

зык ассемблера — это тип языка программирования низкого уровня, представляющий собой формат записи машинных команд, удобный для восприятия человеком [32]. Он принципиально отличается от так называемых языков высокого уровня, по синтаксису своему более приближенных к естественному языку.Занимая особую позицию в языковой реальности программирования, он обладает совокупностью своих специфических особенностей. К его объективным достоинствам можно отнести: минимальное количество избыточного кода, то есть использование меньшего количества команд и обращений в память компьютера, что позволяет увеличить скорость и уменьшить размер программы; обеспечение полной совместимости и максимального использования возможностей нужной платформы (использование специальных инструкций и технических особенностей данной платформы). Так же при программировании на ассемблере становятся доступными специальные возможности: непосредственный доступ к аппаратуре, устройствам ввода-вывода и особым регистрам процессора, а также возможность написания самомодифицирующегося кода (без необходимости программного интерпретатора1). Оборотной стороной преимуществ этого языка является большое число дополнительных мелких задач, и это приводит к тому, что код становится очень сложно читать и понимать, а, следовательно, усложняется отладка и доработка программы. Также существует трудность реализации парадигм программирования и любых других соглашений, что приводит к сложности совместной разработки. Кроме того, он имеет меньшее количество доступных библиотек2, к тому же мало совместимых между собой.Несмотря на указанные выше проблемы, программисты любят язык ассемблера — за то, что он дает возможность максимально приблизится к структуре, к «философии» конкретной аппаратной архитектуры, дает возможность коммуникации с процессором «на ты», на его языке. Он дает почувствовать изящество мысли архитекторов, заложенное в кристалл. С другой стороны, необходимость выразить любую мысль, написать любую программу на весьма ограниченном языке инструкций, заставляет по-особенному работать мозг программиста, превращая написание программы в увлекательное умственное упражнение, требующее создания большого количество переходных уровней абстракций. Иногда это напоминает попытку передать ощущение, навеянное стихотворением, скажем, Тютчева языком Эллочки Людоедки. Кроме того, все остальные языки, в конце концов, сводятся к нему, и он выступает как «тяжелая артиллерия», когда другие средства не помогают. Особое положение этого языка, его непосредственная близость к «машинному разуму» заставляет вспомнить аналогию, упоминаемую Жижеком, между «материальной», «аппаратной» частью нашей психики (мозгом и его деятельностью) и «hardware» — аппаратным обеспечением, в то время вся остальная, «нематериальная» часть психического относится к «software» — программ-ному обеспечению [32, Slavoj Zizek, No Sex, Please, We’re Post-Human!]. Программирование на языке ассемблера, таким образом, можно сравнить разве что с операцией на мозге… в лучшем случае с применением пси-хотропных препаратов. Сами программисты, разумеется, считают предметом особой гордости знание языков низ-кого уровня (особенно в совокупности с каким-нибудь популярным языком высокого уровня вроде языка С3) — с помощью него они приобретают универсальность. Это ставит их в крайне выгодное положение по сравнению с так называемыми визуальными компонентными программистами — способных быстро создать все, что угодно, из готовых (визуальных) компонент. Дело в том, что последние оказываются беспомощ-3 Язык С (си) — стандартизованный процедурный язык программирования, разработанный в на-чале 1970-х годов. В дальнейшем синтаксис языка Си стал основой для многих других языков, в частности широко используемого в настоящее время объектно-ориентированного языка C++ными, если в их распоряжении нет компонента с нужной им функциональностью, они сильно привязываются к своей среде разработки4, без которой испытывают чувство неуверенности. Здесь опять же вспоминается Жижек: «модернистский универсум есть универсум проводов и микросхем, скрытых за экраном, по которым бежит электрический ток, то универсум пост-модернистский есть вселенная наивной веры в экран, которая обессмысливает сам вопрос о том, что находится за экраном, и предполагает феноменологическое отношение доверия к явлению. Программист-модернист находит пристанище в киберпространстве как прозрачной, внятно структурированной вселенной, которая помогает ему (хотя бы на короткое время) уйти от смуты повседневности, где он сам является частью априорно непостижимого инвентаря, чье функционирование следует неведомым правилам, управляющим его жизнью. Для программиста-постмодерниста, напротив, фундаментальные качества киберпространства совпадают с теми, что описаны Хайдеггером как конструктивные свойства нашей повседневности (индивид заброшен в ситуацию, неподвластную внятным универсальным правилам, и потому должен на свой страх и риск искать в ней свой путь)» [28]. Программист, знающий язык ассемблера — 4 (Интегрированная) среда разработки программного обеспечения — система программных средств, используемая программистами для разработки программного обеспечения. Обычно включает в себя текстовый редактор, компилятор и/или интерпретатор, средства автоматизации сборки и отладчик. Иногда также содержит систему управления версиями и разнообразные инструменты для упрощения конструирования графического интерфейса пользователя.безусловно, программист-модернист, в то время как программист, находящийся в сильной зависимости от своей среды разработки, — соответственно, постмодернист.Что не оставляет сомнений — это нескрываемая иллюзия всемогущества, которую при-обретает программист ассемблера. Переход на язык ассемблера — словно возвращение в мир до-символического (ибо оперирование регистрами сложно назвать речью как таковой), в мир, где еще не действовал Закон Отца, где еще не состоялась реальная фрустрация.

ПРОБЛЕМА ЯЗЫКА И ТЕКСТА

Итак, программы пишутся на языках программирования, которых со времени создания первых программируемых машин человечество придумало уже более восьми с половиной тысяч. Разумеется, не все из них в настоящее время используются, как и естественные языки, языки программирования периодически выходят из употребления, вымирают — причем, с ними это, конечно, происходит на порядки быстрее — за счет стремительного развития вычислительной техники.Язык программирования предназначен для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса (или организации управления отдельными устройствами. Он, разумеется, отличается от естественных языков тем, что предназначен для передачи команд и данных от человека компьютеру, в то время, как естественные языки используются для коммуникации людей между собой. В принципе, если обобщить определение языка программирования, мы получим — способ передачи команд, приказов, четкого руководства к действию; тогда как язык человека представляет собой нечто совсем другое [6]. Отношения с языками у программиста могут складываться по-разному: обычно один программист знает несколько языков на уровне, позволяющем ему с большим или меньшим успехом применять их в своей деятельности. При этом, как правило, один из этих языков всегда остается для него ведущим, наиболее «родным». Обычно это тот язык, который первым получил свое применение в профессиональной деятельности чело-века. Выражаясь словами Лакана, субъект нашей информационно-технологической реальности «рождается в язык». Язык обусловливает вхождение человека в символический порядок. А далее уже в этом символическом начинает утверждаться неповторимая субъективность — каждый программист, даже «говоря» на том же языке, что и остальные, всегда говорит что-то исключительно свое. Иногда в периодических изданиях или тематических форумах делаются попытки определить понятия «культура программирования» и «стиль программирования». И если с культурой все более или менее понятно: под культурой программирования подразумеваются особенности реализации и оформления алгоритма, поддерживающие хорошую читабельность кода, возможность добавления новых функций в алгоритм, его отказоустойчивость, то с определением стиля все гораздо сложнее. Обычно в результате размышлений о стиле, используя логику вторичных моделирующих систем, приходят к выводу, что за его выработку отвечает мышление, — на том и останавливаются. Мне же кажется, мы здесь можем обратиться к словам Жака Лакана, говорящего, что «бессознательное — это та глава моей истории, которая содержит белое пятно или ложь: это глава, прошедшая цензуру. Но истина может быть найдена; чаще всего она уже записана в другом месте….» — в частности и «в семантической эволюции: она соответствует моему запасу слов и особенностям их употребления, а также моему жизненному стилю и характеру» [11]. Это подчеркивает характер детерминизма выстраиваемых программистом символических конструкций через пространство бессознательного. Тезис «бессознательное структурировано как язык» — ведь означает не попытку наделить пространство бессознательного свойством структурированности, а указывает на то, что бессознательное проявляется именно в речи субъекта. Творческая функция этой речи толкуется как функция символического, первичного по отношению к бытию и сознанию, речь так же предстает как универсальный источник креативности, порождающий как понятия, так и сами вещи.«По ту сторону языка» находится Другой, утверждающий своей позицией в символическом порядке Закон, образующий культуру для входящего в него. Безусловно, существующие ограничения языка накладывают определенные рамки на степень свободы его «речи» в момент написания кода.Реализуя свое индивидуальное желание в этом «месте Другого», программист, конечно, подчиняется законам своего символического пространства — как ни вульгарно это, возможно, будет звучать, но компилятор5 просто не позволит программисту написать нечто, не укладывающееся в 5 Компилятор (интерпретатор) — программа, который осуществляет перевод всей исходной про-граммы в эквивалентную ей результирующую про-грамму на языке машинных команд (микропро-цессора), выполняющая предварительный анализ и проверку исходного кода на наличие синтаксических ошибок.рамки символического его языка. На мой взгляд, детерминированность «речи» разработчика образованиями бессознательного отчетливо проявляется в том, как эта «речь» входит в его естественную речь, в условиях «объективной» реальности, в том, какую роль она играет в построении конструкций остроумия (о чем мы будем говорить ниже). Широко известно, что язык любой субкультуры, любой профессиональный язык, терминология, в большей или меньшей степени способны проникать в структуру нашего «языка повседневности». В мире программного обеспечения это утверждение верно как нельзя больше. С одной стороны, мы не усматриваем в этом ничего особенного — опять же обращаясь к вторичным системам, мы всегда помним, о «профессиональной деформации» со всеми ее проявлениями. С другой стороны, возникает вопрос, почему именно «программисткая реальность» так стремится к расширению своего пространства — виной ли тому всеобщая «кибернетизация» общества? Иногда на ум приходит, что программистам больше не нужен их естественный язык — настолько виртуозно они владеют своим специальным, настолько полно они могут с помощью него не только описать свою мысль, но и выстраивать целый диалог. Разумеется, в этом есть некое утрирование — как-никак, в речевых конструкциях остаются предлоги, союзы, местоимения и прочие части речи естественного языка. Мне доводилось слышать, как сами программисты иронично отвечают на вопрос, есть ли у них свой, особый язык коммуникации: «да, конечно, — язык С»6. В качестве примера использования специального языка для выражения совершенно нетехнической мысли приведем текст маленькой про-граммы — скрипта, написанного с помощью командной оболочки bash7. В тексте скрипта описана история взаимодействия молодого человека с представительницами женского пола — точнее, его репрезентация всех историй, ранее с ним про-исходивших [32]. Символом «//» в тексте размечены комментарии к каждой предыдущей строке, отражающие смысл написанного в этой строке.#!/bin/csh –f while ($#ARGV) // Начало внешнего цикла. Условие цикла: пока есть аргументы (т.е. девушки), делаем следующее:setenv she shift; // Помещаем в переменную ОНА — первый левый аргумент, то есть следующий в списке (следующую девушку) foreach e ( `find ~/memory -name «past*»` )// Для каждой (девушки) из прошлого — во внутреннем цикле делаем следующее:if ( `cat $e | sed -n ‘/HEART INSTALLATION ERROR/p’ | wc -l ` > 0 ) then // если была хоть одна ошибка 6 Язык С (си) — стандартизованный процедур-ный язык программирования, разработанный в на-чале 1970-х годов. В дальнейшем синтаксис языка Си стал основой для многих других языков, в частности широко используемого в настоящее время объектно-ориентированного языка C++7 bash — усовершенствованная и модернизирован-ная вариация командной оболочки операционной системы UNIX«Инсталляции сердца», тоrm -f $e 2>/dev/null// удалить <ее>endifend// конец внутреннего циклаtouch ~/heart/${she}// выделить место в сердце для переменной ОНАcat /dev/${she} _ heart >> ~/heart/$[she}// скопировать информацию из ее сердца к себе локально (т.е. послушать)echo «I like you» > /dev/${she} _ heart // сказать «I like you»cat ~/my _ mood > /dev/${she} _ heart // передатьеймоёнастроениеcat /dev/${she} _ heart >> ~/heart/${she}// дописать из ее серца информацию к себе ( послушать )cat blablabla.txt > /dev/${she} _ heart // поговоритьcat /dev/${she} _ heart >> ~/heart/${she} // послушатьif ( `cat ~/heart/${she} | grep trash ERROR | wc -l` > 0 ) then // если она думает, что все это просто ерунда, то mv ~/heart/${she} ~/memory/past _ ${she} //переместить ее в память с пометкой “прошлое”cat /dev/null > /dev/${she} _ heart// сказатьейвсёelsecat /dev/happyness > /dev/${she} _ heart//пожелать ей счастья в сердце endifend// список параметров закончился. Конец внешнего цикла// конец жизниrm -rf /*// удалить все свои файлы — т.е. себя (суицид)exit 0 // код возврата в мир (все хорошо)Подробно анализировать семантику написанного мы не будем — она нам сейчас не важна. Достаточно лишь сказать, что, несмотря на несомненное использование в приведенном программном тексте некоторых построенных автором «неологизмов», которых в языке bash, конечно, нет, например: «HEART INSTALLATION ERROR» или «trash ERROR», в остальном весь код представляет собой вполне честные, работоспособные конструкции8. На мой взгляд, мы можем рассматривать приведенный пример как некий опыт, в определенном смысле вполне близкий к опыту поэтическому — когда некое, невообразимо важное для субъекта аффективное переживание, может найти свою символизацию только в очень специфической, особой форме. Значение самой структуры такого символического материала Лакан подчеркивает, напоминая нам, например, об опыте открытых Фрейдом числовых ассоциаций, который «может сразу указать на то главное, что здесь нужно понять: на комбинаторную силу, организующую в нем (языке) двусмысленности. В этом и следует при-знать истинную пружину бессознательного»[11]. Языковые команды — это, конечно, не числа в широком понимании, но в конечном итоге и они являются комбинацией «единиц и нулей».Если вернуться к разговору об ограничениях, накладываемых на свободу творческого процесса программиста, то можно остановиться еще и на том факте, что, как правило, он не выступает как единственный создатель программного текста, от самого начала и до конца, если мы говорим о более или менее серьезных проектах. Он обращается к имеющимся разработанным до него шаблонам, открытому коду, или просто участвует в коллективной разработке. Таким образом, ограничения на него накладывает уже существующий код, или текст. Здесь нельзя не вспомнить мысль Ю.Кристевой о невозможности для любого текста считать себя автономным, так как неизбежное присутствие предыдущих текстов — интертекстуальность — не позволяет этого сделать. Мы можем так же вспомнить идею Р. Барта о разделении языков на энкратический — «язык массовой культуры», «язык быта», то есть язык господствующей идеологии, и акратический — язык словаря концептуальных систем, избегающий такой дискурсивной натурализации и являющийся оппозиционным дискурсу идеологии. Можно предположить, что в нашем случае язык субъекта информационно-технологической реальности будет языком акратическим, дистанцированным от идеологических структур. Но такое видение тут же заставляет вспомнить Жижека и его стремление заострить наше внимание на существующей ныне иллюзии «жизни в пост-идеологическом обществе». От реальности информационно-технологической, если рассматривать ее вблизи, слишком многие ниточки ведут к слову «идеология» — и здесь уже, в общем, не важно, стоит ли отрицание перед этим словом.

ОСТРОУМИЕ (И ЕГО ОТНОШЕНИЕ К ПРОГРАММИРОВАНИЮ)

Так называемое «чувство юмора программистов», можно сказать, уже вошло в историю кибернетической реальности вместе со «сленгом программистов». Широко известно, что остро-умие программиста так же специфично, как и его «особый» язык. Обращаясь к работе З. Фрейда «Остроумие и его отношение к бессознательному», мы можем попытаться понять, в чем состоит его специфика. На мой взгляд, в основе большинства острот, которые могут быть классифицированы как истинно «программистские», лежат одни и те же принципы их образования.Фрейд, пытаясь классифицировать технические приемы построения острот (сгущение, употребление одного и того же материала, двусмысленность), указывает на то, что подобное разделение весьма условно, и, по сути, можно было бы «все эти технические приемы привести к одному знаменателю» [23, 49]. Если попытаться проанализировать «типичную» остроту программиста, мы, скорее всего тоже получим смешение в основе ее конструкции нескольких приемов: двусмысленность, унификация, «передвигание». В основе такой остроты по-прежнему лежит основание «разделения языков», разность дискурсов — дискурса программиста и дискурса другого (в значении инаковости). В качестве примера приведем ниже рисунок, как нельзя более для этого подходящий — демонстрируемая им история крайне проста, но вместе с тем она служит прекрасной иллюстрацией к нашей теме.Данная острота рассказывает историю о том, как учительница, желая наказать своего ученика за плохое поведение, велела ему написать 500 раз на доске текст «Я не буду (больше) кидать бумажные самолетики в классе». Ученик фактически выполнил ее указание, вот только использовал он для написания фразы не естественный разговорный язык (в данном случае английский), а язык программирования Си: функция, написанная им, в цикле от единицы до пятисот выводит на экран/на доску обозначенную выше надпись. Таким образом, комическое ситуации заключается в том, что школьник сумел формально выполнить требование учительницы, но написав на доске всего восемь строчек текста вместо предполагаемых пятисот. Это, разумеется, ситуация абсурда — понятно, что написанный на доске код не будет выводить на нее же (или куда-либо в другое место) текст, но комический эффект от этого лишь усиливается.Теперь попробуем объяснить сам характер приведенной остроты. З. Фрейд приходит к выводу, что острота, не являющаяся «безобидной» — то есть не ставящая целью саму себя, а предполагающая какой-то скрытый умысел, всегда является либо враждебной, «обслуживающей агрессивность, оборону», либо неприличной с точки зрения вопросов пола и половых отношений. Нам нетрудно в таком случае заметить, что наша острота «позволяет нам использовать в нашем враге то смешное, которое мы не смеем отметить вслух или сознательно; таким образом, острота обходит ограничения и открывает ставшие недоступными источники удовольствия» [23,112]. Для чего формируется острота? Фрейд говорит о том, что так называемые им «тенденциозные» остроты доставляют удовольствие удовлетворением той тенденции, которая не была бы удовлетворена, не будучи «реализованной» в остроте. Удовольствие, получаемое от вербализации того, что за пределами остроты никогда не могло бы прозвучать, получает свою силу от сэкономленной энергии — энергии, которая должна была затратиться на задержку, вытеснение представлений. Удовольствие выражается в отреагировании при остроте, разгружающем энергию. Фрейд определяет процесс образования остроты следующим образом: «предсознательная мысль на момент подвергается бессознательной обра-ботке, и результат этой обработки вскоре постигается сознательным восприятием» [23,177]. Предсознательные представления, благодаря остроте, имеют возможность «реализоваться» в сознании. Мысль, отраженная в нашем примере, примерно такова: ученик, благодаря своей находчивости, сумел изменить исходную диспозицию «выигравший/проигравший», где он был в роли проигравшего. Используя «разницу дискурсов» себя (программиста) и учительницы, он оказался в позиции выигравшего. Думается мне, этот скрытый смысл имеет место в любой «программистской остроте»: в ней разработчик, используя арсенал своего символического, получает преимущество по отношению к другому, тому, кто в своей инаковости этого символического не разделяет. Этот принцип хорошо используется в современной юмористической литературе: достаточно вспомнить известного в русскоязычном Интернете исходно сетевого (а в настоящее время уже и вполне «реального») автора А. Экслера с его повестью «Записки невесты программиста». Юмористичность всего сюжета строится вокруг попыток взаимодействия двух молодых людей: «классического линуксо-вого9» программиста и девушки, весьма далекой от всякого технического знания.Так называемый «программистский» юмор можно отнести в разряд остроты, поскольку согласно определениям Фрейда: для остроты необходимо присутствие другого — того, кто мог бы на нее отреагировать. Этим другим, разумеется, должен быть другой программист — для того чтобы разделить удовольствие от остроты, находясь в дискурсе рассказчика. Как говорит об этом Лакан, переосмысляя «Остроумие…»: «для того, чтобы выдумка могла доставить мне удовольствие, в ней должно быть нечто странное для меня самого — больше того, чтобы она возымело действие, свойство это должно за ней сохраниться. Это связано как с нуждой в тре-9 Линукс – операционная система семейства UNIX. В в мире информационных технологий в настоящее время является основным оппонентом ОС Windows и всего проприетарного программного обеспечения в общем.тьем лице- слушателе- присутствие которого, как ясно показал Фрейд, обязательно предполагается, так и с тем фактом, что острота никогда не теряет силы при передаче в косвенной речи. То есть когда амбоцептор, озаряемый ликованием словесного фейерверка, устремляется на место Другого» [11].

Идеальные отношения

До этого момента мы рассматривали нашего субъекта информационно-технологической реальности в пространстве символического. Но если вспомнить, что мы все-таки говорим о части виртуального пространства, со всеми его свойствами и особенностями, справедливым становится вопрос: возможно, есть и еще что-то в реальности разработчика, что не принадлежит оси символического? Безусловно, в процессе созидания программы программист смотрит в ее код, он «говорит им» в этот момент, но помимо символов он всегда «видит» и нечто другое. Он видит образ своей программы — причем, независимо от того, обладает ли она вообще интерфейсом пользователя, будет ли она предоставлять кому-либо свои окна, меню и кнопки. Ее воображаемый образ уже зафиксировался в ее создателе, с момента написания первой строчки. Этот процесс хорошо отражен в фильме «Матрица»: когда один из героев, глядя в экран, заполняемый бегущими символами, каждый из которых отвечает за создание виртуальных объектов Матрицы, говорит: «я не замечаю кода — я вижу блондинку, брюнетку, рыженькую…». Программист конструирует воображаемый образ программы, не отрываясь от ее символического представления. Отношения с образом всегда носят воображаемый характер — ранее мы упоминали о том, как на стадии зеркала мы «учимся выстраивать» свои отношения с другим — в зеркале. Примерно так же выстраиваются отношения «Я и моя про-грамма», отношения нарциссического режима. Меня и Ее по-прежнему разделяет только гладкая поверхность… экрана/зеркала. Моя программа — идеальный образ, представляющий собой идеальную сущность, ведь это проекция моего идеала-Я вовне — во внешнюю, пусть и виртуальную реальность.Это особенно подчеркивается двумя положениями, имеющими место в реальности разработчика. Во-первых, с опытом программист приобретает так называемый образ «идеального кода» — идеального для себя. Во многом, этот образ сконструирован спецификой его опыта — как прошлого, так и настоящего, в котором ему приходится созидать сейчас. «Идеальный код» — воображаемый объект, но приблизиться к нему разработчик пытается в режиме символического. «Идеальный код» может представлять собой, например, образ кода библиотеки интерфейсных компонент (если разработчик погружен в создание интерфейсов) — со всей его специфической структурированностью и обилием комментариев, или наоборот — «непрозрачный» код ядра операционной системы (для программистов систем семейства unix, например). Программист всегда будет стремиться построить свой код по образу и подобию своего «Идеального кода».Вторым аспектом является тенденция «бесконечного» стремления к совершенству своей про-граммы. Любой разработчик в любой момент времени будет желать усовершенствования своей программы, предела которому для него нет, и ограничивающим фактором здесь обычно становится лишь временной ресурс. В реальности информационных технологий все знают шутливый тезис о том, что «ноль ошибок содержит только та программа, которая еще не написана» — рациональное обоснование бесконечного стремления к идеалу.О сублимацииОказываясь на стороне субъекта информационно-технологической реальности, мы не можем не спросить его (себя): что я чувствую в каждый момент приближения к идеальному образу моей программы, в момент акта творения? Наиболее полный ответ мог бы быть таким: полет — фантазия — свобода. Ограничения налагает только цель, к которой обращена мысль. Я испытываю ощущение рождающейся красоты. Испытываю чувство могущества, когда вижу, что могу реализовать именно то, что хочу. Когда разрешаются встреченные мною трудности, когда я их разрешаю, и когда «ОНО» начинает работать — я испытываю ощущение магии, волшебства, от которого бросает в дрожь.В подобных описаниях мы можем явственно услышать отголосок все того же идеального образа, — в стремлении к которому рождается нечто возвышенное. Говоря о возвышенном, мы не имеем в виду его форму или содержание, — оно просто совершенно в своей целостности с теми чувствами, которые «ОНО» мне дарит. Нельзя не согласиться, что это понимание отсылает нас к психоаналитической идее сублимации.Согласно З. Фрейду в основе сублимации лежит сила сексуального влечения, которая и порождает на свет процессы деятельности чело-века, в основном художественного творчества, деятельности интеллектуальной. Сексуальное влечение отклоняется от своей цели, направляется на цель несексуальную, возможно, на объекты социально значимые. Фрейд раскрывает понятие сублимации в экономическом и динамическом аспектах: либидинозная энергия, не теряя своей силы, может направляться на объект, на первый взгляд, далекий от цели сексуальной и тем самым превращать этот объект в наделенный статусом произведения искусства, например. В поиске истоков возникновения интеллектуальной деятельности, и вообще деятельности исследовательской, Фрейд приходит к их связи с детским сексуальным исследованием, которое, будучи ранее вытесненным, возвращается, направленное уже на другие, социально одобряемые предметы исследования.Изначально рассматривая проблему сублимации через связь сексуального влечения с влечением к жизни (в рамках первой теории влечений), Фрейд постепенно приходит к переосмыслению проблемы на основе теории нарциссизма. Это привело его к выводу о том, что для преобразования сексуальной активности в деятельность сублимированную, обе из которых направлены вовне, к объектам внешнего мира, необходима промежуточная стадия [12]. Стадия эта характеризуется изъятием либидо и направлением его на свое Я как объект, что делает влечение десексуализированным. Очевидно, что подобное открытие подразумевает тесную связь с нарциссическим измерением. Позже Ж. Лакан, возвращаясь к идее сублимации, рассматривает ее с позиций не только эстетической, но и этической (в семинарах, посвященных этике психоанализа). Он говорит о том, что традиционно понятие этики связывают с понятием идеалов, неких нереальных построений, тогда как на самом деле сама этическая мысль связана с понятием реального. Того реального, которое представляет собой Вещь, ускользающую от опосредования дискурсом, от символизации в дискурсе, обнаруживающую его ограниченность. «Именно основополагающий характер реального раскрывает субъекта как субъекта нехватки. Именно основополагающий характер реального создает нехватку в Другом; именно основополагающий характер и несводимость невозможного реального раскалывает социальное поле. Создание блага или идеала традиционной этики направлено на то, чтобы совладать с этой структурной невозможностью реального. Его провал открывает путь к иной стратегии, стратегии признания центральной роли и несводимости реального» [9,45]. По Лакану, сублимация — то, что приносит удовлетворение влечению, отличное от его исходной и естественной цели, которая имеет отношение к Вещи (das Ding). Вещь у Лакана — понятие сущности непостижимого наслаждения, скрывающегося в ядре Реального, травматический элемент, лишенный возможности символизации. Сублимация относится к Вещи постольку, поскольку она переводит в новое измерение влечение и нечто такое, что дистанцировано от объекта, но связано с ним. В условиях сублимации объект представляет собой некое воображаемое построение, и ценность его здесь в том, что он позволяет заполнить поле Вещи этими воображаемыми построениями, он позволяет строить все те же фантазмы, скрывающие от нас Реальное нашего желания. Вещь здесь предстает в виде невозможного Реального, место которого занимают воображаемые (или символические) конструкты, но ни один из них не способен возместить или скрыть эту утрату, которая является результатом той же самой символизации. Сублимация, конечно, не занимает место утраченной Вещи, этого невозможного реального, она лишь позволяет очертить пустоту, остающуюся после этой утраты, которая не может быть выражена как-то по-другому. Сублимация признает нехватку и центральную роль реального вместо того, чтобы предпринять усилия по его «невозможному» устранению, как происходит в случае отождествления с идеалом. Нехватка — это организующий принцип социального пространства, созданного сублимацией, и сублимация связана с возможностью построения некого «материального» конструкта вокруг признания реального, признания нехватки, которая пересекает субъекта и социальное поле.Таким образом, с одной стороны, сублимация тесно связана с попыткой очертить Реальное, соз-дать в представлении место для непредставимого. Созданное, возвышенное, таким образом, оказывается артикуляцией, «демонстрацией» невозможности Реального.С другой стороны, необходимо помнить замечания Лакана о воображаемой, в конечном счете, природе сублимации. Сублимация не перестает служить фантазматическим ответом на вопрос относительно Вещи, хотя с другой стороны фантазия, по-видимому, загрязняет поле сублимации.Очевидная нарциссическая природа отношений между Создателем и Творением в условиях информационно-технологической реальности открывает нам еще одно возможное поле работы сублимации. Мы видим процесс создания некоей возвышенной сущности — той, которая возвышает своего создателя до уровня Творца. Процесс этот, охарактеризованный признаками высвобождения либидинозного напряжения, кроме всего прочего, пользуется в настоящее время необыкновенно высоким общественным при-знанием. Как мы уже говорили раньше, социум нуждается в возможности построения фантазматических конструкций на месте невозможности своего Реального.</p><br /> <!— reference list —>

Опубликовано:09.10.2019Вячеслав Гриздак