Сталкер - еженедельный обзор российского интернета
ПУТЕВОДИТЕЛЬ ПО РОССИЙСКОМУ ИНТЕРНЕТУ
Сталкер


RB2 Network

RB2 Network

Гостевая книга

АРХИВ

1998

1999

Вот тебе, бабушка, и Юрьев день

Чу! Программистским духом пахнет!

Не так страшен FrontPage, как его малюют

Интернет и религия. Бизнес и фанатики.

Одержимые программисты - это не термин, а диагноз

Одержимые программисты. Часть вторая

Хватит болтать, работать надо!

Черный дым пиратских дисков

Компромат в интернете

Инструкция для Васи Пупкина "Как стать пиратом"

Генералы песчаных карьеров

Не акция, а процесс

Интернет в провинции

Апология Христа

Избушка, избушка, повернись к нам передом!

Сибирские крестьяне пишут письму султану Брунея

 Вот ЧИХнула так ЧИХнула!

Сумма технологий

Перемена участи

Казнить нельзя помиловать

Эх, обозрю!

А поутру они вменили

Охота пуще неволи

Испорченный телефон

Что значит имя?

Программа - не продукт

Зачем вам сайт? Не, вам сайт не нужен!

К вопросу о реализме Г.Г.Маркеса

Бесконвойный

Downgrade, или кладбище знаний

Нортландия-online

Поток сознания

Страницы, сайты, проекты

Три тонны презервативов

История с историей

Игра в БИСЕР

Сорок пять

Прокляты и забыты

Система жизни. Ч.1

Система жизни. Ч.2

Система жизни. Ч.3

Пальчики оближешь!

Перечитывая Гессе. Курортник

Перечитывая Гессе. Шизофрения.

Плач палача

Русская рулетка

 

<< | Красноярск | Мысли вслух | MrDeSign | >>

8 февраля 1999 года

Мысли вслух

Вот так и живём...

01kra06.jpg (25522 bytes) Посмотрел я на этот снимок Ильи Наймушина, да и загрустил: "Чому я не сокил? Чому не летаю?"

Чому, чому... Лень летать, вот и не летаешь!  Хочешь летать - бери да летай, как этот парень на параплане. Хочешь быть счастливым - будь им...  Вот я прочитал прошлый СТАЛКЕР и увидел, что написал там полную глупость. Дескать, выселить бы политиков с чиновниками на Новую землю - эх, зажили бы.

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

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

А еще потому не зажили бы, что все киваем на кого-то. То они нам жить не дают, то облагодетельствовать должны... А не даем мы себе жить сами.

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


Одержимые программисты - это не термин, а диагноз

Книга Джозефа Вейценбаума "Возможности вычислительных машин и человеческий разум (от суждений к вычислениям)", судя по названию, посвящена проблемам искусственного интеллекта. Вот в таком качестве я ее и купил в 1982 году, поскольку этим самым искусственным интеллектом я тогда занимался очень плотно. Вообще, мои амбиции были на самом деле гораздо больше - еще в школе я задумал создать компьютерную модель человека (не больше не меньше), не особенно задумываясь, для чего это нужно. В шестом классе я пытался вывести формулу любви,  в студенчестве сильно увлекался математическими методами в психологии и социологии, дипломная работа у меня была - программа, составляющая школьные расписания, потом была еще программа, довольно неплохо играющая в рэндзю, а затевались еще и программы, сочиняющие стихи, да мало ли еще глупостей затевалось... В общем, я был типичным представителем "искусственной интеллигенции" (термин Вейцебаума, очень удачный). И, хотя к 1982 году я уже читал Толстого, Торо, Руссо, Библию и много еще хороших и умных книг, был я в ту пору исключительно дремучим человеком по части того, что хорошо, а что плохо, как надо жить и к чему стремиться.

Так вот, книга оказалась совсем не о том.  Эта книга не только об искусственном интеллекте (хотя и о нем тоже). И не только об опасности технократического подхода (хотя и об этом тоже). Кое-кто видит в этой книге всего лишь извечный спор между "физиками" и "лириками".  И это тоже есть. Это книга о том, как нам следует смотреть на явления и с какой точки зрения их оценивать.  Благодаря, в частности, и этой книге, я смотрю на вещи (особенно на процессы, происходящие в компьютерном мире) совершенно перпендикулярно, отчего часто остаюсь непонятым среди компьютерщиков. Может быть, хотя бы кто-то начнет меня понимать после этого выпуска СТАЛКЕРа? Ну вот, например,как вы смотрите на такой тезис: ум - это умение решать проблемы, а разум - это понимание того, какие проблемы важные, а какие нет? Я всего лишь пытаюсь показать вам, что есть проблемы более важные, чем войны браузеров и операционных систем...

Впрочем, введение затянулось. Всю книгу я разбирать здесь не буду (кто желает, сходите на мой сайт ППСС, там содержится подробный конспект этой книги,  а еще лучше - найдите эту книгу и прочитайте от корки до корки. Очень помогает, по себе знаю:о). Так вот, я сегодня вкратце остановлюсь на одной лишь главе книги, которая называется "НАУКА И ОДЕРЖИМЫЙ ПРОГРАММИСТ". Я думаю, это самая близкая  для вас глава.

Итак, прочтите. Знакомая картина, не так ли?

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

Где бы ни организовывались вычислительные центры [...], можно наблюдать блестящих молодых людей, всклокоченных, часто с запавшими, но сияющими глазами, которые сидят за пультами управления вычислительных машин, сжав в напряжении руки в ожидании возможности пустить в ход свои пальцы, уже занесенные над кнопками и клавишами, приковывающими их внимание так же, как брошенная игральная кость приковывает взгляд игрока. Если они не находятся в таком трансе, то часто сидят за столами, заваленными машинными распечатками, которые они сосредоточенно изучают подобно людям, одержимым постижением кабалистического текста. Они работают чуть ли не до полного изнеможения, по 20-30 часов подряд. Еду, если только они о ней заботятся, им приносят (кофе, кока-кола, бутерброды) . Если возможно, они спят около вычислительной машины на раскладушках, но всего несколько часов, а затем - снова за пульт управления или к распечаткам. Их измятая одежда, немытые и небритые физиономии, нечесаные волосы - все свидетельствует о том, что они не обращают внимания ни на свое тело, ни на мир, в котором живут. Они существуют, по крайней мере когда они так увлечены, лишь в связи с вычислительными машинами и ради них. Они - "машинные наркоманы", одержимые программисты. Это явление наблюдается во всем мире.

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

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

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

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

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

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

О! Как нам это знакомо! Не будем далеко ходить за примерами в программирование. Создание сайтов - не то же ли самое? Анонсируются глобальные проекты, раздаются щедрые обещания, создаются с гигантским замахом сайты, на которых когда-нибудь, как-нибудь,  может быть, что-нибудь будет очень замечательное... А потом мыльный пузырь лопается.... а почему? Об этом речь в следующей цитате:

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

В отличие от профессионала одержимый программист не может заниматься другими задачами, даже тесно связанными с его программой, в те периоды, когда он непосредственно не работает на машине. Он с трудом переносит разлуку с машиной. Если же волею обстоятельств ему приходится с ней расстаться, то по крайней мере с ним остаются его распечатки. Он штудирует их, рассказывает о них всякому, кто согласен его выслушивать, хотя, естественно, никто разобраться в них не в состоянии. Действительно, когда он охвачен своей манией, он не может говорить ни о чем, кроме своей программы. Но единственный момент, когда он счастлив, время, проведенное за пультом управления вычислительной машины. И тогда он не станет беседовать ни с кем, кроме машины. Скоро мы узнаем, о чем они беседуют.

Одержимый программист посвящает работе над своими великими проектами столько времени, сколько ему удается. "Работать" - это, однако, не то слово, которое он использует; то, что он делает, он называет "хакированием". "То hack", согласно словарю, - это "рассекать беспорядочно, неумело или без определенной цели; кромсать с помощью или как бы посредством многократных ударов какого-либо рубящего инструмента"). Я уже отмечал, что одержимый программист, или хакер, .как он сам себя называет, обычно превосходный "технарь". Казалось бы, он не действует "неумело", как это указывается в определении. Однако определение справедливо здесь в том более глубоком смысле, что хакер "действует без определенной цели"; он не в состоянии поставить перед собой ясно сформулированную долгосрочную цель и выработать план ее достижения, поскольку он обладает лишь умением, но не знанием. Он не располагает ничем, что он мог бы анализировать или синтезировать; короче говоря, у него нет предмета для построения теорий. Его мастерство, таким образом, бесцельно, даже беспредметно. Оно просто не имеет никакого отношения к чему-нибудь, кроме того инструмента, с помощью которого оно может быть реализовано, Его мастерство напоминает искусства переписчика в монастыре, хотя и неграмотного, но первоклассного каллиграфа. Следовательно, все эти великолепные проекты должны неизбежно сопровождаться иллюзиями, а именно иллюзиями грандиозности. Он создаст одну грандиозную систему, в рамках которой все остальные специалисты будут потом писать свои системы.

Вот оно, слово, найдено. Слово "хакер" только сейчас стало обозначать "взломщик". Но оно впервые появилось в семидесятых годах и тогда означало именно бесцельное, беспредметное программистское рукоблудие. Хакеру интересно опробовать новый инструмент, ему интересно опробовать новый метод. Решать задачи, нужные остальному человечеству, хакеру неинтересно. Людей, которые этим занимаются, он презрительно называет чайниками и ламерами. Кстати, в последнее время, в связи с широким распространением компьютеров и снижением общего профессионального уровня, разновидность одержимых программистов появилась и в среде юзеров. Это люди, которые завели себе компьютер и готовы сидеть с ним сутками, но не знают, что с ним делать.  Они даже программировать не умеют (а умели бы - превратились бы в одержимых программистов). Поэтому они покупают пачками китайские диски, ставят подряд все, что на них записано, гробят и переустанавливают операционку по десять раз на дню.По сравнению с обычным "чайником" они гораздо подкованнее ("чайник"  порой и MS Office не в состоянии себе поставить), но на самом деле они гораздо дремучее "чайников", потому что они умеют делать с компьютером все, кроме одного - применить его для какого-нибудь полезного дела. Эту разновидность юзеров я когда-то назвал "юзарями".

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