Saturday, August 22, 2009

Windows Vista did not steal ideas from Mac OS X! (English, ЮМОР)

Визуалы, аудиалы, кинестетики и другие умные слова в занимательной психологии

В оригинале статье есть тест, как определить кто вы и рассуждение по поводу связи этого деления с программированием.


....предпочтительный для человека способ получения информации.

Это могут быть:

Видео - глаза

Аудио - уши

Кинестетика - разные ощущения....

....В целом соотношение по предпочтениям примерно следующее в мире: 40% визуалов, 40% аудиалов, 20% кинестетиков.

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

И те люди, которые любят, чтобы информация была списками типа:

1

1.1

1.1.2

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

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

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

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

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

Ещё у кинестетиков есть противная черта - разговаривать с людьми, читая почту, и ещё и отвечать на неё.

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

Кино тоже задействует все модальности, но кинестетикам во время просмотра необходимо что-нибудь жевать, например. Ну или девушку трогать. :)

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

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

Кино "Матрица" больше всего нравится визуалам, т.к. там видео красивое, а все остальное так себе.

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


http://itblogs.ru/blogs/hr/archive/2008/01/22/25006.aspx

В мире все неортогонально

Это взято из комментов.


Эндрю Хант, Дэвид Томас "Программист-прагматик Путь от подмастерья к мастеру". Раздел "23. Программирование утверждений"

Быстрый тест на ощущение реальности. Какие из перечисленных «невозможных» событий могут случаться в реальности?

1. Месяц, количество дней в котором меньше 28. Бывает?

4. Треугольник, сумма величин внутренних углов которого не равна 180°. Бывает?

5. Минута, состоящая не из 60 секунд. Бывает?

6. В языке Java: (а + 1) <= а
...

Ответы:

1. В сентябре 1752 г. было всего лишь 19 дней. Это было сделано с целью синхронизации при переходе с юлианского на григорианский календарь.

4. В неевклидовой геометрии сумма углов треугольника не будет составлять 180°. Подумайте о треугольнике, отображаемом на поверхности сферы.

5. Минуты, приходящиеся на високосный год, могут состоять из 61 или 62 секунд.

6. Переполнение может оставить результат операции а+1 отрицательным (это также может произойти в языках С и С++).
...

http://dumtest.livejournal.com/2211.html?thread=6051#t6051

Agile and Scrum (Russian)

http://www.slideshare.net/Cartmendum/agile-and-scrum

Разница между моделью и методологией

http://www.slideshare.net/Cartmendum/model-of-capability-maturity-model-1404931

Не стоит применять статистику там, где она не работает


Рассматривал область управления рисками. Немного даже думал...
Предположим, мы составили список всех рисков, выполнили все ритуалы, требуемые в компании по завету великой книги, и пришли к выводу, что у нас имеется 5 рисков, которые мы принимаем (то есть тупо считаем добавку к бюджету для предотвращения последствий этих рисков). Для простоты положим, что вероятность каждого из 5 рисков равна 10% и последствия (стоимость) $$$1,000. На сколько PMBoK советует увеличить бюджет проекта в этом случае?

Продолжение см. http://cartmendum.livejournal.com/5657.html, http://cartmendum.livejournal.com/6131.html и наконец http://cartmendum.livejournal.com/6150.html

Мультипликативная природа ошибок планирования


Предположим, вы ведете проект, план которого состоит из 5-ти больших задач:
1. Разработка модуля 1,
2. Разработка модуля 2,
И т.д.

Каждую из этих задач вы оценили в 2 недели, огласив руководству общую длительность проекта в 10 недель. Спустя некоторое время, вы обнаруживаете, что разработка модуля 1 заняла 3 недели. Естественно имеет место срыв локального срока, который с очень большой вероятностью повлечет за собой срыв конечной даты поставки. Как любой здравомыслящий руководитель вы сообщили об этом руководству. Теперь стоит вопрос, на сколько нужно сдвигать финальную дату поставки?

Очень наивный ответ: «Дата поставки не сдвинется, мы нагоним упущенное время при разработке остальных 4-х модулей».

Просто наивный ответ: «Дата поставки сдвинется на неделю. Дальше все должно идти по плану».

Более осмысленный ответ: «Каждый из модулей кажется одинаковым с точки зрения трудозатрат и времени. Если мы ошиблись в полтора раза с оценкой первого модуля, то, скорее всего, аналогичную ошибку мы совершили и при оценке остальных модулей. Скорее всего, мы задержимся на 5 недель».

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

http://cartmendum.livejournal.com/4594.html

Считаем людей

http://www.slideshare.net/Cartmendum/pmlabs09-part-ii

Ловушки статистического планирования




Market for lemons, или почему умные не выигрывают

На самом деле содержание этого поста дублирует последний ролик (Теория игр: Персики и Лимоны) предыдущего поста, ну да ладно.


...лекция Скотта Стивенса по теории игр, где он рассказывал про Джорджа Акерлофа (George Akerlof), нобелевского лауреата, получившего премию в области экономики за работу «The Market for Lemons» - анализ рынков с ассиметричной информацией...

...Итак, основной вывод Джорджа Акерлофа – рынок лимонов убивает рынок персиков (the market for lemons destroys the market for peaches). Теперь отходим от сельскохозяйственной тематики и смотрим на примере.

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

Пусть на рынке труда существует два типа кандидатов – lemons (кандидаты из разряда «так себе», которые не учатся, мало знают и мало чего умеют) и peaches («дорогие» кандидаты, способные к обучению и самосовершенствованию – идеальные объекты для инвестиций).

На путь к неосознанному разрушению рынка персиков нас подталкивают следующее:
1. Рекрутер хочет персик, но готов взять и лимон, если его устроит цена,
2. Рекрутер не знает кто я персик или лимон,
3. Я сам прекрасно знаю кто я лимон или персик (и если я лимон, то готов прикинуться персиком)

Добавим конкретики, для простоты будем считать, что процентное соотношение лимонов и персиков на рынке труда – 50/50. Рекрутер готов заплатить за лимон до 50 абстрактных платежных единиц, а за персик до 200 (именно столько приносят сотрудники этих категорий в бюджет компании). Я же готов продаться за 40, если я лимон или за 150, если все же персик (и рекрутер догадывается об этих цифрах).

Начинаем игру, рекрутер предлагает, кандидат принимает предложение или отказывается. Какую цену должен предлагать рекрутер? Он ведь не знает, кто я. Естественно, ниже 40 рекрутеру предлагать нет смысла – кто бы я ни был, я откажусь. Выше 150 предлагать можно, кто бы я ни был – я соглашусь. Но смысла для компании в этом нет никакого, ибо в среднем она будет тратить на сотрудников больше, чем они приносят ей.

Попробуем любую точку между 50 и 200. Например, 125. В этом случае лимоны будут приносить компании убытки в среднем по 75 платежных единиц на человека, а персики – прибыль, тоже в среднем 75 платежных единиц на человека. В среднем получаем 0, баланс и гармония.

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

Если я лимон и мне предлагают 125? Вау! Конечно я с вами, ребята! А если персик? Данунах.

Пока мы играем в эту игру с ассиметричной информацией результатом этой игры будут:
1. Переоцененные лимоны,
2. Изначально недооцененные персики и потом…
3. … исчезновение рынка персиков как такового.

Вот именно за эти выводы в 2001 Джордж Акерлоф (и еще его два сотоварища) получили нобелевскую премию по экономике.

Здесь нужна хоть чуточку оптимистичная нотка. Исчезновения рынка персиков можно избежать если:
1. Когда вам нужен персик, то вы покупаете именно персик, а не лимон (даже если он в 10 раз дешевле),
2. Лимоны не притворяются персиками,
3. В большинстве случаев вы знаете, как отличать персик от лимона.

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

http://cartmendum.livejournal.com/11350.html

Приложение к курс естествознания для менеджера проекта.

Здесь находятся формулы: (см. также уточнение ниже)

http://www.slideshare.net/Cartmendum/freakonomics-of-scrum


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

Выложил ексельку специально для любознательных. По каждой итерации нужно ввести 2 цифры - размер бэклога на начало итерации (в колонку Work Remains) и количество "заработанных" story point-ов (в колонку Velocity). Через 5-6 итераций график уже будет содержать полезную информацию.

Вопрос самым любознательным. Формулы в этой эксельке [приведена ниже] и в слайдкасте [выше] отличаются на корень из 2-х. Какие формулы все же правильные? Я склоняюсь к тому, что в этой ексельке, но что-то под вечер моск плохо соображает.

http://cartmendum.livejournal.com/29387.html

http://www.slideshare.net/Cartmendum/freakonomicsofscrum-spreadsheet-1890974

Курс естествознания для менеджера проекта

http://www.slideshare.net/Cartmendum/traininglabs09-part-1-of-4

http://www.slideshare.net/Cartmendum/training-labs09-dorofeev-max-part2of4

http://www.slideshare.net/Cartmendum/traininglabs09-part-3-of-4

http://www.slideshare.net/Cartmendum/traininglabs09-part-4-of-4

Кто зачем становится программистом

Орфография сохранена.


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

http://cotoha.info/thoughts/it-inflation/#more-58
Из комментов внизу статьи.

Идиот



– привет, я аналитик в вашем проекте. Сейчас мы быстро всё выясним и программисты это сделают в лучшем виде. Итак – что же вам нужно?
- это совсем просто: мне нужен человечек!
- ок. нет проблем, для нас это не ново. только надо выяснить некоторые минорные детали – что такое человечек?
- ну… эээ… хм… ну типа кружочек… там под ним идёт вертикальная линия и её пересекает горизонтальная… ага и внизу ещё 2 диагональные из одной точки – это ноги…
- ноги? впрочем неважно. я всё понял – скоро будет, ждите.

Знакомо? Наверняка до боли…


В этом месте многие поднимут руку, чтобы сказать сакраментальное “ну так заказчик же – идиот!” Так-то оно так, да не совсем… Если рассмотреть этот диалог со стороны заказчика, то после второго вопроса у заказчика наступает стресс (если не шок!) – он встречает человека незнакомого с понятиями, без которых заказчик себя не мыслит. В его кругу общения наверняка нет людей, которые не знают, что такое человечек. И он лихорадочно пытается придумать, как донести до нас “очевидные” вещи. Кстати, можно только догадываться, что думает заказчик про нас в этот момент… :-) Вы можете поставить себя на место заказчика, попытавшись объяснить воображаемому другу понятие “оператор”, не впадая в лекции по языкам программирования.

Есть ли решение этой проблемы? Конечно есть, вот только не всем оно подходит: хотя бы аналитик (а в идеале и разработчик) должен иметь знания из предметной области – бизнеса клиента. Да это трудно, но с другой стороны только так и получаются действительно хорошее ПО. Другими словами, чтобы переводить с языка заказчика, надо этот язык знать, а лучше, чтобы переводить не надо было.

http://cotoha.info/thoughts/being-on-the-same-line-2/#more-6

Инфляция IT

В тексте есть ещё интересные вещи, которые я выкинул.


проблема: странно, но люди почему-то (в большинстве своём), пытаясь заиметь “достижение в IT”, прилагают Y усилий, как будто этого достаточно… [* - см. пояснение ниже ]

....чем дальше, тем меньше значат “достижения” в IT. Раньше можно было гордиться тем, что смог написать “Hello World!” на каком-нибудь языке, а теперь за тебя это делает IDE.

А это значит, что требования к людям, приходящим в IT неуклонно растут – от них можно и нужно требовать большего, чем от нас.

Но что странно – судя по собеседованиям – несмотря на то, что “достигать” чего-то в IT всё проще и проще, достижений у соискателей на должность разработчика всё меньше и меньше… Очень мало студентов пишут какие-нибудь программы для себя, помимо лаб и курсовых. А когда я был студентом, то достаточная часть моих одногруппников что-то ваяло, с чем-то разбиралось из того, чего в программе не было. А если взять людей на год старше, то там таких ещё больше было. Почему так?

Инфляция… люди не успевают за технологиями. Люди всё ещё настроены на достижения уровня прошлого века – вроде простых програмок, а этого уже мало.



http://cotoha.info/thoughts/it-inflation/#more-58
http://cotoha.info/thoughts/being-on-the-same-line-2/#more-6

* Пояснение. Сейчас 2000 год и вы хотите кого-то удивить. Решаете, "а давай-ка я нарисую окно и покажу". Рисуете, показываете, удивляете. Вы на это приложили X усилий. Допустим X=7 дней (вы ещё подучили походу дела некоторые вещи). Теперь переносимся "в будущие" в 2009 год (видите кризис и читате Хазина) и решаете опять кого-то удивить. Если вы захотите опять нарисовать окна, даже если допустить, что путешествия в машине времени вызвало у вас амнезию, и вы не может повторить то, что "только что" сделали в 2000 году. У вас на это уйдёт ну от силы три дня, включая установку IDE и т.д. Т.е. Y=3 (это то самый Y с текста). Усилий надо затратить намного меньше, НО.... И кого же мы удивим в 2009 году окнами? Сейчас, когда есть куча Frameworks и т.п. этим никого не удивишь... Далее следует вопрос, так почему же люди прилагают Y < X усилий для того чтобы удивить? Почему они пытаются рисовать окошки? Вот если бы они прилагали X усилий, вот тогда бы они удивили.

Объявляю день IT


Все модели неправильные, но некоторые из них полезны.

(с) Максим Дорофеев

Несмотря на мою критику идей Талеба я с ним согласен в пункте некорректного использования статистических методов для оценивания рисков (Талеб говорит, применительно к фондовую рынку). Несмотря на это, я решил всё-таки включить посты с использованием этих самые методы, но в сфере IT.

Я наткнулся на блог http://cartmendum.livejournal.com/. Ну не совсем случайно, на него я вышел при помощи СОТОНА, точнее его блога http://cotoha.info/.


P.S. Может быть также кому будет также интересно прочитать мою давнюю запись Handling the exceptions in J2EE environment.(English)