На заре новой эры. Автобиография отца виртуальной реальности - читать онлайн книгу. Автор: Джарон Ланир cтр.№ 99

читать книги онлайн бесплатно
 
 

Онлайн книга - На заре новой эры. Автобиография отца виртуальной реальности | Автор книги - Джарон Ланир

Cтраница 99
читать онлайн книги бесплатно

Мне до сих пор больно думать об этом! Еще больнее наблюдать, как при возрождении виртуальной реальности ее разработка до сих пор ведется с использованием традиционных языков программирования на традиционных экранах. Это напоминает попытку выучить иностранный язык по книге, никогда не говоря с его носителями.

Наши редакторы на традиционных мониторах по внешнему виду немного напоминают MAX, средство визуального программирования, которое используется в наши дни для создания экспериментальной компьютерной музыки и анимации [151].

По крайней мере, мы заглянули в альтернативное будущее, которое, надеюсь, изучат более тщательно в последующие годы.

Масштаб

Масштабирование – основной импульс информатики. Это означает надежду специалистов в области информатики на то, что наша работа приобретет неограниченный простор и сложность.

Как получить все более и более масштабные фенотропные структуры? Фенотропный редактор преобразует машинные биты в пользовательский интерфейс таким образом, чтобы человек мог изменять биты. Но может ли один редактор вносить изменения в другой редактор? Можно ли получить целые башни редакторов, изменяющих редакторы, целые паутины из них, гигантские грибницы?

Разумеется, можно. Но в этом случае нужно ли придерживаться неких абстрактных принципов, которые обязан соблюдать каждый редактор, чтобы в него было возможно внести изменения с помощью других редакторов? Не помешает ли это достижению цели избежать обязательного использования тех или иных абстракций?

Невероятно, но нет! Фенотропному редактору не обязательно использовать одни и те же абстракции, чтобы им можно было управлять при помощи других редакторов.

Причина заключается в том, что каждый редактор – это пользовательский интерфейс, пригодный к использованию человеком. Таким образом, редакторы могут имитировать человека, чтобы вносить изменения в другие редакторы. Редактор может интерпретировать пользовательский интерфейс и использовать его на условиях этого интерфейса.

Например, редактор для низкоуровневого доступа к библиотеке математической обработки данных мог выглядеть как калькулятор. Можно было пользоваться им напрямую или через другой редактор, имитирующий взаимодействие системы с пользователем.

Программа-календарь, которой необходимо производить арифметические действия для расчета даты будущей встречи, имитировала нажатие кнопок на имитации калькулятора.

И для этого совершенно не нужна общая абстракция, которая бы диктовала, как одной программе нужно обращаться к другой. Вместо этого каждый редактор отвечает за то, как найти способ использования человекоориентированных пользовательских интерфейсов в других редакторах [152].

Может показаться, что это сомнительный и крайне неэффективный способ заставить одну часть программы взаимодействовать с другой ее частью, и это правда! Но только в отношении небольших программ.

В основе фенотропной гипотезы лежит утверждение, что при работе с крупномасштабными системами, программы которых огромны, фенотропный принцип становится намного эффективнее традиционного, который обязывает к оперированию абстракциями.

Можно представлять фенотропную систему как множество редакторов, в которых имитации людей выглядывают из-за каждого редактора. В паре наших старых проектов можно было заглянуть за фасад большой программы и увидеть все редакторы, на основе которых она работает, парящие в информационном пространстве, как защитные экраны в космической войне.

За каждым редактором находился анимированный персонаж, похожий на мультипликационного, стоявший в профиль, и его движения имитировали управление другими редакторами, которые в свою очередь поддерживали другие персонажи. И все это создавалось в эпоху, когда единственным практическим стилем была графика восьмибитных игр. Мы никогда не воплощали всю картину целиком, но были к этому весьма близки. Я бы и хотел показать вам изображение, но ни одно из них так и не сохранилось.

Этот вид сбоку был, конечно же, еще одним редактором.

Ничего особенного.

(Если вы уже прочитали раздел о том, что я думаю относительно искусственного интеллекта, то подумайте вот о чем: в отличие от искусственного интеллекта, когда имитация личности обращена к вам, в фенотропной системе все персонажи обращены в противоположную от вас сторону, к другим редакторам, но они находятся под вашим контролем. Очевидно, что это лишь инструменты, и они не равны вам. Алгоритмы те же, что и у искусственного интеллекта, но концепция другая.)

Мотивация

Существует множество причин поддерживать фенотропную гипотезу. Но прежде чем разбирать на винтики эффективность функционирования, рассмотрим удобство и простоту использования человеком.

Всегда проще написать новую программу, чем понять и изменить уже кем-то написанную, но, по крайней мере, если программа фенотропная, те ее части, которые вы обнаружите, заглянув за фасад, всегда будут пользовательскими интерфейсами, разработанными для людей. Потому что это все, что в них есть.

Фенотропная система будет стремиться состоять из компонентов подходящего размера для использования людьми, поскольку каждый редактор с самого начала разработан для людей. Это означает, что фенотропные системы стремятся к образованию из «более грубых блоков», чем прочие разновидности архитектуры.

Вместо бешеных миллионов мелких абстрактных функций организация крупномасштабной программы будет подразделяться на более крупные и отчетливые составные части, каждая из которых – сама по себе понятный пользовательский интерфейс. Формирование блоков обычно следует принципам практической пригодности для использования людьми, а не идеализированной схеме отдельного инженера, и будет сохранять тенденцию к тому, чтобы его было как можно проще понять и поддерживать.

В фенотропной системе должна существовать возможность наблюдать за анимированным персонажем, который стоит за каждым редактором, выполняющим свои функции, чтобы сложилось отчетливое понимание того, как работает вся система; но можно также и расположить самого себя на любом участке сети редакторов, чтобы действовать непосредственно внутри программы, экспериментировать.

Вернуться к просмотру книги Перейти к Оглавлению Перейти к Примечанию