Не так давно мне попалось эссе, затрагивающее философские вопросы, написанное известным физиком. Оно навело меня на кое-какие мысли о компьютерах, курсах компьютерной грамотности, и даже выразительности языков программирования.
Но сначала надо объяснить, откуда взялся заголовок. (Надеюсь, характер заголовка достаточно ясно показывает, что это «статья выходного дня», чтиво, не претендующее ни на что серьёзное).
В далёком 1996-м (или 1997-м?) году в журнале «КомпьюТерра» вышла колонка тогдашнего главреда под названием «Где ошибался ...анян?» Я решил, что писать про реального ...аняна, наверно, не стоит, а лучше заменить его выдуманным персонажем по имени Джигарханян. Мой Джигарханян, в отличие от настоящего, работал преподавателем в техникуме (директор которого отличился неумением посчитать процент в прямом эфире). Ещё он занимался сексологией. Наконец, в 90-х Джигарханян написал и опубликовал книжку «Фигачим по клавиатуре!», фрагменты которой публиковались в одном компьютерном журнале (откуда и взялось название колонки). То, что Джигарханян, возможно, допустил ошибку, написав и опубликовав свою книжку, говорили многие злые языки. Но в чём именно она состояла — лично мне пришло в голову совсем недавно.
Отвлечёмся пока от его книги и вернёмся к философии. Философия для многих — болтологическая лженаука, максимально оторванная от реальности и обладающая невысокой практической ценностью. Неудивительно, что пародийной квинтэссенцией такого отношения для них стала шутка: «Самурай без меча подобен самураю с мечом, но только без меча». Особенно в стране, где слово «гуманитарий» является почти ругательным, а инженер последнюю сотню лет воспринимался чуть ли не единственной формой существования разумной материи.
Тем интереснее бывает читать, когда за философию берётся хороший естественник, например, физик. Да не просто физик, а физик выдающийся, отмеченный престижными наградами, профессор Оксфорда! (Называть его с ходу я пока не хочу, но если вы его узнали — пишите в комментариях). А конкретно — за рассмотрение философского свойства подобия с физической точки зрения.
В первую очередь возникает вопрос: является это свойство субъективным (случайным атрибутом, произвольным измышлением) или же объективным (отражающим какое-то фундаментальное свойство физической реальности, некую закономерность)?
Как найти на него ответ при помощи эксперимента, хотя бы мысленного? Давайте (мысленно) сделаем яркую, красочную и качественную фотографию Млечного пути, каким мы видим его с Земли. Пусть фотография будет сделана в высоком разрешении и распечатана по лучшей доступной технологии полиграфии. Покажем её тем немногим оставшимся на нашей планете жителям изолированных островов, которые видели небо и Млечный путь, но не имели дела с фотографией. Можно повторять этот эксперимент раз за разом, с вариациями, и вновь и вновь убеждаться, что люди находят связь между фотографией и реальным небом. Правда, связь эту некоторые назовут всё-таки субъективной, потому, что в эксперименте в качестве измерительного инструмента задействованы люди. Что ж, избавимся от людей, заменив их нейронной сетью, натренированной отслеживать, когда изображение, поступающее с камеры, является Млечным путём. Если направить камеру не на Млечный путь, а на его фотографию, компьютер с высокой степенью вопроизводимости сможет зафиксировать наличие подобия. А это значит, что подобие действительно является не искуственным философским построением, а объективным свойством реальности, подтверждаемым экспериментами!
Далее наш физик предлагает внимательно поглядеть на это привычное на первый взгляд свойство природы. Какие у него самого могут быть свойства? (Иными словами, мета-свойства). А они у подобия действительно интересные!
Во-первых, зачастую непонятно, на какой сопле вообще держится это самое подобие. Давайте сравним физико-химические свойства объекта-оригинала (звёзд) и объекта, подобного звёздам (фотографии).
Температура звёзд — тысячи и миллионы кельвинов. Температура фотографии — что называется, комнатная. Более того, фотография при приближении её температуры к звёздной быстро перестанет быть фотографией (и просто быть).
Звёзды излучают много энергии. Мощность этого излучения поражает: весьма малая часть лучей нашего не самого яркого Солнышка попадает на Землю, но обеспечивает почти все происходящие на ней процессы. И излучать так оно может миллиарды лет (что Солнце, в общем-то, и делает). Фотография, напротив, почти ничего не излучает. (Нет, что-то она, не будучи тёмной материей, всё-таки излучает, но несопоставимо мало и запас энергии для этого в ней меньше в огромное число раз). Более того, в тех диапазонах частоты и интенсивности, в которых мы наблюдаем свойство подобия (видимый свет), фотография не излучает вообще ничего!
Фотография содержит большое количество сложных органических молекул, без которых она перестанет быть фотографией. Звёзды, дай бог, чтобы обладали сколько-нибудь заметной металличностью. (Напомню, что у астрономов металлами называются все элементы тяжелее водорода и гелия).
И так далее, и так далее. Ещё можно вспомнить давление, плотность, структуру (во многих смыслах). Всё это у фотографии и звёзд будет отличаться, и сильно. Что не мешает, однако, существованию подобия между ними.
Во-вторых, свойство подобия часто является хрупким. Не в том смысле, что для разрушения звёзд надо постараться, а для разрушения фотографии достаточно чиркнуть зажигалкой. Если на лакированную поверхность фотографии нанести неглубокие, но частые борозды, в результате чего она начнёт иначе преломлять свет, подобие сильно пострадает или вовсе исчезнет. Между тем, свойства её изменятся при этом не слишком существенно. Химсостав, например, останется тем же самым, лишь некоторое количество молекул на поверхности изменит своё положение. Ещё нагляднее будет, если мы возьмём электронную фоторамку и отключим питание. Что в ней поменяется? Всего лишь электронные конфигурации некоторых атомов! И этого будет достаточно, чтобы подобие полностью пропало. Что в этом случае мы увидим, взглянув на фотографию? Всего лишь саму эту фотографию! (Ведь раньше, глядя на неё, мы её вовсе не видели, а видели — звёзды). Вдобавок, на помощь нам спешит лингвистика. Естественно будет сказать: «Да ничего. Увидим экран, вот и всё». Или, как формулирует наш физик, возьмите достаточно сложный и чувствительный лабораторный прибор, обладающий высокой степенью подобия изучаемому предмету, внесите в него совсем небольшие изменения — и всё, что вы увидите, это кучу деталей, из которых он состоит.
В-третьих, подобие может быть (а может и не быть) универсальным. Бумажная фотография будет обладать высокой степенью подобия, но абсолютно никакой универсальностью (ничему другому, кроме звёзд, она подобна быть не может). Экран компьютера, на который может быть выведена любая фотография, обладает высокой степенью не только подобия, но и универсальности.
Физические объекты, обладающие универсальным подобием — редкие гости в нашей Вселенной! Если их и нельзя назвать экзотической материей, то уж экзотическим состоянием обычной материи — можно наверняка! И компьютеры, которые появились в конце прошлого века, были на этом пути одним из величайших изобретений с тех пор, как эволюция «изобрела» органы чувств.
Мы привыкли считать глаза частью себя, но мы, всё-таки — наш мозг. Когда мы на что-то смотрим, в действительности мозг (то есть, мы) «смотрит» на глаза — объект, обладающий универсальным высоким подобием... Чему? Да чему угодно, воспринимаемому в видимом диапазоне! Любому объекту, на который направлен наш взгляд: звёздам с температурой в миллионы кельвинов, жидкому газу с температурой, близкой к абсолютному нулю, а кроме того — фотографии, обладающей своим, независимым, подобием.
Что нового добавляют к этому компьютеры? Чему вообще может быть подобен компьютер?
Всему, что мы можем «непосредственно видеть». (Выражение взято в кавычки потому, что как следует из написанного выше, мы ничего не видим непосредственно). То есть, объектам физического мира, которым могут быть подобны наши органы чувств (развившиеся в результате биологических адаптаций Homo sapiens). Например, тем же звёздам. Или смешным котятам.
Тому, что мы НЕ можем «непосредственно видеть» — объектам физического мира, которым НЕ могут быть подобны наши органы чувств. Например, электронам. (Если вы возразите, что на экране можно наблюдать лишь некоторые аспекты электронов, я отвечу, что невооружённым взглядом тоже можно наблюдать лишь некоторые аспекты звёзд).
Объектам, с которыми мы могли встретиться в физическом мире, но не встречались — инопланетным городам, невиданным животным, вымышленным людям.
Абстракциям, которые не встречаются в виде физических объектов. Например, отрезку, не имеющему толщины. (Его можно визуализировать, если рендерить с одной и той же толщиной независимо от масштаба).
Бесконечному числу других вещей.
В итоге, бывает трудно объяснить миллениалам, с детства окружённым ноутами-смартфонами-планшетами, каким откровением стали для нас в конце прошлого века компьютеры, ранее нам вовсе недоступные. Это действительно было окно в бесконечное число новых миров!
Стоит, правда, добавить, что степень и универсальность подобия этих компьютеров была не так, что бы очень высока. (Мультимедиа-компоненты, например, шли дополнительным комплектом! Проще говоря — купил компьютер, а на нём ни кино не посмотреть, ни музыку не послушать, не говоря о 3D-графике). Зато хрупкость этого подобия превосходила всякие приличия. Достаточно вспомнить, что plug-n-play появился позже, а изначально нормой было сообщение: «Ваша клавиатура не подсоединена, для продолжения нажмите любую клавишу». Неверно выставил параметры диска в BIOS'e? Белая строчка на чёрном экране! Неверно указал системный диск? Белая строчка на чёрном экране! Успешно загрузилась операционная система?.. Правильно — белая строчка на чёрном экране! На котором нужно было затем набирать текстовые команды, чтобы добиться подобия компьютера хоть чему-то ещё.
Когда в начале 90-х компьютерами стали обзаводиться дяденьки, присвоившие их в госорганах, и тётеньки, успешно торганувшие сникерсами, эта проблема встала перед ними в полный рост. И на помощь им пришла книжка «Фигачим по клавиатуре!» Типичный отрывок оттуда выглядел примерно так:
Наберите «фыва» сто раз. Наберите «олдж» ещё сто раз. Уложитесь в пять минут. Закройте левый глаз, сядьте на правую руку и попытайтесь побить свой рекорд.
Ну, всё правильно! Если не рассматривать компьютер как объект, который при должном управлении способен стать подобным чему угодно, что же ещё остаётся? Рассматривать его как набор деталей! Из которых самая очевидная, занимающая наибольшую площадь, лежащая непосредственно перед глазами — клавиатура. Коей и была посвящена, по сути, вся книга. Но несправедливо будет умолчать о преимуществах такого метода обучения компьютерной грамотности. Например, при нём абсолютно не требуется электропитание! Да и компьютер как таковой.
(На самом деле, я глубоко уважаю Владимира. Если некоторым людям нужен был наставник, чтобы хотя бы знать, с какой стороны подойти к этим самым компьютерам, честь ему и хвала. Тем более, что человек он хороший).
Годится ли физико-философское представление о свойстве подобия ещё хоть на что-то, кроме сведения счетов с писателями, публиковавшимися четверть века назад? Ну, разумеется — многое в нашей культуре и даже в нашей биологии построено вокруг него!
Что лучше — посмотреть интересный фильм в разрешении 400x300, или фильм категории Г в 4K? (Что важнее: слабое подобие интересному объекту или более сильное менее интересному?) А насколько интересным делают фильм спецэффекты? (Которые сильнее уподобляют экран тому, что мы знаем, или, наоборот, тому, чего мы вовсе не видели!)
Или вот — нетипичное программирование. (Пусть уж у нас сегодня никто не уйдёт обиженным!) Инструмент для создания программ, например, язык программирования, должен обладать высокой степенью универсального подобия. Хороший язык общего назначения может быть подобен чему угодно — от бухгалтерии до кровавой бани в марсианском аду. Это свойство мы и называем выразительностью. Но если посмотреть на код, написанный на языке не столь выразительном... мы увидим в первую очередь сам этот язык, и хорошо ещё, если во вторую или третью очередь — программу на нём. (Именно такое чувство и возникает лично у меня при взгляде на разбросанные там и сям reinterpret_cast<>
и прочие элементы, мешающие видеть, что тут происходит). А такие вещи, как вычисление факториала на шаблонах, или умение предсказать результат вывода в консоль следующего кода:
function a(value) { return true - value; }
var b = a('4') + a('-4') + a(-'4') + a(4);
console.log(b);
почему-то считаются ныне «глубоким знанием инструмента» и вообще — делом чести и доблести. (Я знаю многие неплохие конторы с сильными и талантливыми программистами, где задают такие вопросы на собеседованиях). В то время как с моей точки зрения гораздо большее уважение заслуживает умение распознавать такие ситуации, в которых ослабевает подобие предметной области, и всячески с ними бороться.
rjhdby
Так где же ошибался Джигарханян?
ImagineTables Автор
Между нами говоря, история основана на реальных событиях. Мои родители, например, весьма котировали упомянутую книжку, это, по-моему, единственное, что они вообще читали в «Терре». Я относился к этому скептически и однажды поинтересовался, чему они научились. Оказалось — печатать на неподключенной клавиатуре. Даже найти и запустить любимый Lines не в силах, не говоря уж о чём-то большем. Значит, в чём-то автор определённо ошибался, если, конечно, исходить из предполагаемой (и, по-моему, прямо декларируемой) цели «познакомить читателя с компьютерами». И если не копать глубоко в строну таких понятий как «синергия» или «самоподобие», можно дать интуитивный ответ: компьютер не просто сумма деталей, рассматривать их по отдельности (так сказать, солировать на отдельных комплектующих, ЕВПОЧЯ) смысла нет.