city_rat: (Default)
[personal profile] city_rat
Алан Купер, "Психбольница в руках пациентов".

Я обычно не пишу о non-fiction, которую читаю по работе или просто так, но вдруг кому интересно будет. Книжка заявлена, как труд о проектировании взаимодействия программ с человеком. Юзабилити и все такое. Довольно активно расхваливается разными людьми, наприемер, Татьянычем. Впечатления оставляет двойственные. С одной стороны - психотерапия для манагеров программных проектов отменная, читаешь, и киваешь, похихикивая - "это он верно подметил, хорошо поддел". С другой стороны - ничего особо ценного он не сказал. Как всегда у западной литературы по управлению: треть книги благодарности и расшаркивания с объяснением мотивации автора, треть - бесконечные примеры того, как все плохо, и треть - "ща мы скажем, как надо", которая представляет собой еще столько же примеров того, как все было плохо, но теперь с заключением "но мы это изменили, и теперь все хорошо" (иногда "но нам не дали это изменить, поэтому проект быстро загнулся"). Ни о какой привычной нам, советским технарям, систематизации проблем, методов и подходов речи не идет. Кое-какие мысли почерпнуть можно, на некоторые примелькавшиеся и потому не замечаемые несообразности обращает внимание, но и только.

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

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

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

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

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

И, кстати, салоны самолетов тоже, видимо, проектируют хомо логикусы. Либо просто извращенцы. Ничем другим объяснить бесконечное воспроизведение кресла-ковша авиастроителями я объяснить не могу.

Date: 2012-02-04 09:57 am (UTC)
From: [identity profile] gineer.livejournal.com
\\Будьте извозчиком, а не претендуйте на роль инструктора по самолетовождению. В конце концов, завтра эти люди долетят до места и будут вас лечить, кормить или ремонтировать ваш унитаз (это уже не от Купера, это моя отсебятина).

Угу.
Особенные кони начинаются,
когда эти "пассажиры" начинают указывать
программисту че и как ему делать,
а когда утомленно и сдержано начинаеш объяснять
что оно так "не взлетит",
с милым удивлением вопрошают "почему, это ведь чисто техническая проблема для вас".

Date: 2012-02-04 10:06 am (UTC)
From: [identity profile] city-rat.livejournal.com
Ох, ща тут в комментах будет очень много боевых плясок программистов. Что забавно - и о вашем случае у Купера есть. Тему он действительно знает. Программисты глубоко уверены, что лучше всего пассажиров усыплять, замораживать и затем перевозить штабелями в негерметизированном салоне. Потому что так намного надежнее и привычнее. А когда пакс робко просит хотя бы кислородную маску ему дать - утомленно и сдержанно (хотя и с орфографическими ошибками) начинает объяснять глупому юзверю, что тянуть шланг с земли для каждого пакса - совершенно нереально, с ними не взлетит.

Date: 2012-02-04 10:09 am (UTC)
From: [identity profile] sabotagecat.livejournal.com
"усыплять, замораживать и затем перевозить штабелями в негерметизированном салоне"

я бы назвал это "эконом класс с большим местом для ног и неограниченным питанием"

Date: 2012-02-04 10:22 am (UTC)
From: [identity profile] city-rat.livejournal.com
Ты мыслишь не как программист, а как маркетолог, которому программисты всучили свое творчество :)

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

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

Date: 2012-02-04 11:07 am (UTC)
From: [identity profile] sabotagecat.livejournal.com
"Не взлетит, я сказал"

Я лично полагаю, что в этом собственно и корень проблемы - узкая специализация. Прав был старик Хайнлайн, прав.

Это не к тому что каждый должен стать homo universalis, гхы. Но компетенция программиста должна выходить за рамки понимания "как сделать X" и затрагивать вопросы "как и кем будет использоваться X?","какова важность X для проекта в целом?","нужен ли X вообще?", "продадим ли мы X?".

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

Короче, множества компетенций(гхы) участников проекта должны в достаточной степени пересекаться, imho.

Date: 2012-02-04 11:46 am (UTC)
From: [identity profile] city-rat.livejournal.com
Есть опасение, что для большинства программистов выход за рамки собственного мировосприятия затруднителен не в силу ограниченности компетенции, а в силу принципиального нежелания за них выходить - в силу определенных психологических особенностей, являющихся обязательным условием для успешной работы в качестве собственно программиста. Конечно, не все программисты таковы - иначе бы мы до сих пор бы в командной строке сидели, но их мало, и они дорогие, либо не очень хорошие программисты.

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

Date: 2012-02-08 06:21 pm (UTC)
From: [identity profile] old-sam.livejournal.com
Поэтому нужны такие, как мы. Наша основная задача, работа и рыночная ценность - умение выходить за рамки. А иногда - и загонять в них. :)

--
Коган-варвар

Date: 2012-02-08 06:41 pm (UTC)
From: [identity profile] old-sam.livejournal.com
И, кстати, именно поэтому хороший проект-менеджер -- штука редкая и стоит дорого.

У нас недавно прикол был. Типа, кризис, массовое увольнение. Как часто бывает, last in - first out. В частности, пощипали проект-менеджеров. Встретил в коридоре одного из них, с которым много работал по установке HFT-серверов в биржевых коллокациях. Здоровый такой швед, спокойный всегда, как удав. Ну, пожал руку, пособолезновал, попрощался. Все. Через два дня смотрю - снова появился. What the FUCK?! Оказывается, наш начальни отдела (Инфраструктура) слегка перестарался. А когда главный по HFT (из бывших наших, кстати, грузин, раньше работал в ЦЕРНе очень секретным физиком - вот уж он всегда поворачивает налево, причем в семи измерениях сразу, - а теперь зарабатывает всем нам много денег) про это узнал, он устроил гигантский распиздон и приказал шведа вернуть немедленно, ЁБ ВАШУ МАТЬ, где я еще такого найду?! Ну, и вернули. Вся контора ржет до сих пор.

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

--
Коган-варвар

Date: 2012-02-04 11:06 am (UTC)
From: [identity profile] gineer.livejournal.com
\\А когда пакс робко просит хотя бы кислородную маску ему дать - утомленно и сдержанно (хотя и с орфографическими ошибками) начинает объяснять глупому юзверю, что тянуть шланг с земли для каждого пакса - совершенно нереально, с ними не взлетит.

На это ответ простой.
Нефиг на место инженера граждаской авиации брать РНР былокодера. :)))

Я понимаю, что для "пассажира" все программисты одинаковы с лица -- бормочут что-то непонятное и топчут клаву... после чего на экране появляются чудесные картинки.

Да и манагеры так себе размышляют "зачем я буду брать распальцовистого спеца, если за те же деньги можно нанять десяток студентов... так даже лучше, они ведь явно сделают работы в 10 раз больше", правда?

Date: 2012-02-04 11:49 am (UTC)
From: [identity profile] city-rat.livejournal.com
Проблема в том, что большинство инженеров гражданской авиации - это тоже хомо логикусы...

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

Date: 2012-02-04 11:55 am (UTC)
From: [identity profile] gineer.livejournal.com
А надо брать тех "кто поворачивает направо"? Оригинально, оригинально. :))

Date: 2012-02-04 12:07 pm (UTC)
From: [identity profile] city-rat.livejournal.com
Вообще говоря, за рулем автомобилей сидят в основном "поворачивающие направо". И ничего - ездим как-то. Причем квалификация водителей в среднем падает, а аварийность (в передовых странах) снижается.

Тут, конечно, есть засада - и логическая, и психологическая, которая у Купера, кстати, крайне слабо освещена. Кому-то налево поворачивать все равно надо. Проблема в том, что "логикусы" ("поворачивающие налево") считают свое направление единственно правильным, и заведомо отказывают "правакам" в праве на собственное мнение, что усугубляет расслоение. А ресурсы-то - в руках "праваков", просто потому, что их больше, и всегда будет больше.

А на рынке действительно до сих пор нет ни одного видеомагнитофона (хоть они теперь и представляют собой медиа-центры с жестким диском и линуксом внутри) с удобным управлением таймером.

Забавное совпадение - я параллельно читал "Дневник грабителя" Дэнни Кинга (криминальный "производственный роман"), так там книга начинается с комедийной сцены, где домушники перерывают квартиру в поисках инструкции к уже украденному видаку, потому что скупшик краденного на них ругается, когда они приносят ему незнакомые аппараты: "Чуваки, мне нужно продавать эти штуки людям, они спросят у меня, как они работают, а что я им скажу, если и сам этого не знаю?"

Date: 2012-02-04 12:26 pm (UTC)
From: [identity profile] sabotagecat.livejournal.com
Кстати! Извини за нескромность, но "Дневник киллера" - как он на вкус оказался? :-)

Date: 2012-02-04 12:35 pm (UTC)
From: [identity profile] city-rat.livejournal.com
До киллера я еще не добрался, пока прочитал только "грабителя" (правильнее, конечно, было бы перевести "домушника"), и начал "налетчика".

В меру забавно, но не то чтобы прямо взахлеб. Чего не отнять у автора - в целом герои вполне реалистично описаны, т.е. как довольно туповатые и ограниченные ребята, так что читать про них довольно скучно, только гэги оживляют обстановку. Впрочем, некоторые рассуждения в "грабителе" были довольно любопытны. "Налетчик" попрямоугольнее пока выглядит.

Date: 2012-02-05 09:57 am (UTC)
From: [identity profile] city-rat.livejournal.com
Киллера тоже прочитал, адский макабр и ржака.

Date: 2012-02-08 06:23 pm (UTC)
From: [identity profile] old-sam.livejournal.com
Это явно было до интернета. Сейчас можно просто скачать и распечатать такую инструкцию.

--
Коган-варвар

Date: 2012-02-09 03:51 pm (UTC)
From: [identity profile] city-rat.livejournal.com
Ну, во-первых - оно и правда до интернета, во-вторых - тамошние персонажи с интернетом плохо совместимы сами по себе :)

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

Date: 2012-02-15 05:46 pm (UTC)
From: [identity profile] nepilsonis.livejournal.com
… и это из-за того, что каждому менеджеру-маркетологу-итд в днк с середины 80х годов стали зашивать максиму «чем меньше элементов управления, тем лучше».
Никакого исследования не надо, когда и на устройстве, и на пульте есть кнопки «настроить таймер» и «писать по таймеру».

Когда таймер сна активируется одним нажатием кнопки на пульте — это полезная и используемая функция. Когда для её настройки нужно 12 нажатий, глядя на экранное меню, и ещё 5 — для включения — то «таймер сна? нет, не слышали. а кому он нужен, никто им не пользуется».
Зато на пульте на 1 кнопку меньше.

Date: 2012-02-04 10:17 am (UTC)
From: [identity profile] daregod.livejournal.com
А вы иногда послушайте, что говорят. Внезапно, "пассажиры" немного по-другому всё видят и удобно им не так, как вам.

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

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

Date: 2012-02-15 05:47 pm (UTC)
From: [identity profile] nepilsonis.livejournal.com
Слишком часто из такой примерки у меня выходило «да тут вообще всю систему менять надо».

Date: 2012-02-17 04:14 am (UTC)
From: [identity profile] daregod.livejournal.com
Это правда. Тут нужно (важно) уметь находить внутренние компромиссы: "по-хорошему, надо бы всё сломать к чертям и сделать нормально, но мы вот тут и тут костылики подставим и будет как живое"
:)

Шутка, но только частично.

Profile

city_rat: (Default)
city_rat

July 2016

S M T W T F S
     12
345 6789
10111213141516
17181920212223
24252627282930
31      

Style Credit

Page generated Jul. 9th, 2025 05:11 pm
Powered by Dreamwidth Studios

Expand Cut Tags

No cut tags