Выбрать главу

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

* Идентификация

Проблема идентификации идеально решается в программировании. Что неудивительно - ведь там это необходимое условие самого процесса (т.к. всё должно быть идентифицировано, чтобы использовать его в дальнейшем). Для всего остального мира, проблема идентификации как стояла, так и стоит, как никогда остро (впрочем, проблема существует даже в программировании на месте его стыка с миром не-программирования, например, идентификации предметов, не включенных в программу напрямую). Текстовый интерфейс усугубил проблему идентификации тысячей аббревиатур, которые необходимо запомнить (или найти). Графический интерфейс облегчил проблему тем, что показывает идентификаторы явно, однако проблема его заключается в том, что эти идентификаторы не доступны для переиспользования (например, чтобы сослаться на какой-либо элемент и изменить его значение/состояние). Файловая система вводит еще один уровень сложности идентифицирования, т.к. необходимо запоминание имен файлов и путей. Доменная система заставляет запоминать имена доменов и URL-ы. В целом, конечно, любое запоминание полезно для тренировки памяти, но на выходе мы также видим свалку из миллионов идентификаторов. И ладно, когда чужие идентификаторы нам ничего не говорят о содержимом, так даже те идентификаторы, которые мы используем для собственных файлов, со временем тоже могут потерять смысл.

* Абстракция

Проблема абстракции более-менее решена в программировании. Что неудивительно - ведь там это достаточное условие самого процесса, а именно, программирование постоянно оперирует с абстракциями, которые соответствуют другим абстракциям или предметам реального мира. Существует, конечно, и небольшая проблема, а именно: пройдя через несколько этапов абстрагирования (например, в цепочке "пользователь-дизайнер-разработчик-пользователь") на выходе мы имеем абстракции, которым не всегда можно поставить в соответствие исходные абстракции. Отброшенная информация либо подразумевается (дизайнером, разработчиком, и т.п.), либо просто игнорируется. Для мира вне программирования проблема выглядит по-другому, т.к. здесь абстрагирование отсутствует вообще. Почему? Главным образом, потому что не существует формального алгоритма абстрагирования. Впрочем, абстрагирование частично доступно через идентификацию (ведь идентификатору соответствует содержимое, т.е. идентификатор, по сути, и является абстракцией информации, особенно это очевидно, если в роли идентификатора выступает текст на естественном языке), что неудивительно, так как идентификация - это как бы "идеальное" абстрагирование, когда похожесть источника и результата абстрагирования является полной.