OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 17:49

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Психология программиста
СообщениеДобавлено: Вторник, 28 Февраль, 2012 09:34 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Давно хотел пообсуждать эту тему.
Боб Мартин в последней книжке: http://www.ozon.ru/context/detail/id/7360633/
пишет:
Цитата:
Видите ли, программисты обычно бывают самонадеянными эгоцентричными интравертами

Это он попал в самую точку! Во всяком случае в нашем с ним поколении программисты были именно такими.
Контуперный гений = самонадеянный эгоцентричный интроверт ?
Хотя сейчас меня воспринимают психологи как экстраверта. Очевидно, сказывается почти 20 лет преподавания... :)
Но они ошибаются. Я как был интровертом, так им и остался.
Ибо предпочитаю общение с компутером, а не с людьми... :)

Еще я как-то сформулировал обязательные качества программиста:
1. Программисты — люди повышенной честности. И профессия еще усугубляет это качество. Ибо машину не обманешь: что написал, то и получил...
Более того, за многие годы преподавания убедился: если студень пытается словчить на лабораторных и/или зачете-экзамене — из него программиста не получится... Жизнь подтверждает: такие пацаны уходят в другие области. Часто в предприниматели...
2. Программисты — клинические оптимисты! Без оптимизма невозможно отлаживать программы. Программист всегда уверен, что программа вот сейчас заработает. Вот уже одна маленькая последняя ошибка осталась...
Пессимисты в нашей профессии плохо приживаются. Собственно, мне и не попадалось таких...
3. Программисты — супернастойчивые люди. Додолбить программу до рабочего состояния — это надо быть очень упертым. Опять же, если у человека это качество отсутствует, то программист из него не получится.
4. Программист естественно должен обладать аналитическим складом ума. Ибо требуется много анализировать: и предметную область, и поведение программы.
5. Для программиста внутренняя мотивация важнее внешней. Люди, у которых внешняя мотивация (карьера, заработки...) превалирует — со временем уходят из программирования в манагеры-предприниматели-руководители...

Поделитесь своими наблюдениями.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Вторник, 28 Февраль, 2012 10:20 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
Валерий Лаптев писал(а):
Еще я как-то сформулировал обязательные качества программиста:
Наверное, стоит уточнить, что Вы постарались выделить качества, программиста "по призванию", но не программиста по должности.

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Вторник, 28 Февраль, 2012 12:02 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 327
Откуда: Ленинград, Емельянов Алексей Николаевич
Насчет аналитического склада ума я, пожалуй, не в полне согласен. Я, например, слабый аналитик, нет ну если сравнивать с уровнем современного среднего студента вполне себе ничего, но я то знаю... Выезжаю за счет погружения. Это похоже на медитацию, переходишь в какое-то другое пространство, где задача приобретает объемность, цвет, ее (мысленно) можно буквально потрогать руками, повертеть, возникают почти эмоции "в эту дырку лезть не стоит" , а здесь "лепота". Интересно я один такой? Не думаю.

По поводу "честности" здесь скорее атрофирование некторых социальных навыков из-за упорной "интравертной" работы :) .


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Вторник, 28 Февраль, 2012 13:42 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
1. Да. конечно, я имею ввиду программиста по призванию. Не представляю себе, как можно вообще жить, не занимаясь любимым делом. Это же УЖОС!!!, если 40 лет человек вынужден делать то, что ему не нравится, или к чему он равнодушен.
2. Я давно пришел к выводу, что общечеловеческие и профессиональные качества неразделимы. Вот от женщин часто слышал фразы "как человек...", как мужчина...", "как профи..."... И мне всегда было смешно, так как нельзя в человеке от сих до сих считать человеческие качества, а вот от сих до сих - профессиональные.
Однажды сижу за компом. Женщина за соседним столом заводит разговор о "личной жизни". Я ей так и сказал: хочешь участвовать в МОЕЙ личной жизни - садись рядом. Это - моя личная жизнь. Хоть дома, хоть на работе, хоть где.
Если человек равнодушен к делу, которое делает, то профессионал из него очень плохой. Исключения - очень редки, да я их и не знаю... :)
3. О необходимости аналитичности ума. Во-первых, на мой взгляд - это воспитывается. То есть, программист может этому научиться. Во-вторых, "погружение" в задачу - да, в молодости тоже такое было. Но и об этом пишет Боб Мартин в той же книжке. У него есть глава, которая называется "Зона потока". Однозначный совет: Избегайте зоны! В настоящее время я склонен с ним согласиться. В программировании гораздо важнее простая методичная кропотливая работа, а не Зона.

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

Во время отладки это помогало.
Но в других этапах разработки зоны надо избегать.

Однако Мартин делает оговорку: Вы должны находиться в Зоне во время тренировок!. Но никогда во время профессиональной работы.
Он разделяет эти два вида деятельности.
У нас, конечно, спошь и рядом на работе тренируются... :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Вторник, 28 Февраль, 2012 15:46 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 327
Откуда: Ленинград, Емельянов Алексей Николаевич
Боюсь без умения работать в "зоне" я буду выглядеть очень заурядно. Вообще, по моему, программисту одиночке без "зоны" никак. Но если под другими этапами понимать работу с документами (описания, отчеты, инженерные записки, ТЗ т.д.), то да, тут аналитические способности (которые я всю жизнь развивал :) ) самое то.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Вторник, 28 Февраль, 2012 17:09 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Евгений Темиргалеев писал(а):
мотивация внешняя ("приматическая", скотская)
А вот не надо.

"приматическая" не значит ни внешняя, ни скотская.

Это значит простейшим образом завязанная на комбинаторный механизм доставания конкретно видимых "бананов".

99.9% (цифра метафорическая, т.е. львиная-прельвиная доля) всей активности человечества не выходит за пределы приматического.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Вторник, 28 Февраль, 2012 18:41 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
Я бы программистов перед тем как говорить о их психологии разделил на категории (ИМХО разумеется)
1. Штатный программист. Одна организация. Фиксированный набор задач. (т.е. который выполняет задачи для своей конторы)
2. Программист в компании-разработчике/внедренце (как я например). Много различных клиентов, много различных и нестандартных задач.
3. Программист в компании-разработчике не занимающейся внедрениями. Т.е. выпускают конечный продукт.
4. Фрилансер
5. Любители

Во всех этих 5 категориях психология сильно различается. Могу сказать что у нас (2) интроверт просто не выживет. А вот в 1 категории интровертов много.
Я сам еще в школе считал себя интровертом. Сейчас любому человеку, знакомому со мной сказать, что я интроверт, то он наверно воспримет это как шутку. :D

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

Про 3 не знаю. Я в таких компаниях не работал.
Фрилансер-интроверт тоже не выживет. Ему вообще нужно много качеств нестандартных для кодера.
А вот среди любителей интровертов наверно больше всего.

Насчет оптимистичности. Даже не знаю. За собой заметил, что с опытом все больше развивается критическое мышление. И подход к решению задач конечно меняется

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

Насчет мотивации... Вроде так и есть. Могу только добавить что люди с внешней мотивацией обычно злостные говнокодеры :)

Вот еще в тему:
http://habrahabr.ru/blogs/hr/138692/


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Среда, 29 Февраль, 2012 08:15 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 710
Откуда: Псков
ilovb писал(а):
Я бы программистов перед тем как говорить о их психологии разделил на категории (ИМХО разумеется)
1. Штатный программист. Одна организация. Фиксированный набор задач. (т.е. который выполняет задачи для своей конторы)
2. Программист в компании-разработчике/внедренце (как я например). Много различных клиентов, много различных и нестандартных задач.
3. ...
...

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

было выведено из своего опыта, судя по:
ilovb писал(а):
Про 3 не знаю. Я в таких компаниях не работал.


Вот обобщать на основании единичного опыта - это проявление "психологии программиста" или конкретная индивидуальная черта? :)
Непонятно также, что такое в п.1 "Фиксированный набор задач", а в п.2 - "много различных и нестандартных задач".
Вот если компания-разработчик делает решения на платформе 1-С для многих заказчиков - это и есть "много различных и нестандартных задач" ? :)
Можно ведь предположить, что вот как раз штатному программисту из п.1 и приходится решать "много различных и нестандартных задач ",
а в компании-разработчике благодаря разделению труда и внутренней специализации как раз наоборот.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Среда, 29 Февраль, 2012 08:30 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
albobin писал(а):
Вот обобщать на основании единичного опыта - это проявление "психологии программиста" или конкретная индивидуальная черта? :)
Непонятно также, что такое в п.1 "Фиксированный набор задач", а в п.2 - "много различных и нестандартных задач".
Вот если компания-разработчик делает решения на платформе 1-С для многих заказчиков - это и есть "много различных и нестандартных задач" ? :)
Можно ведь предположить, что вот как раз штатному программисту из п.1 и приходится решать "много различных и нестандартных задач ",
а в компании-разработчике благодаря разделению труда и внутренней специализации как раз наоборот.


Что не понятного? Если вы для одной конторы (например Торговой) для одних и тех же людей код пишите, то наверно вы будете решать только фиксированный набор задач связанный с деятельностью этой конторы. Так?

А в компании которая обслуживает под сотню самых разнообразных клиентов работа должна быть несколько пестрее разнообразием. Так?

Что тут может быт не понятного?

Цитата:
внутренней специализации

Ну да. Я например специализирован на кодинге... Но решаю то я любые задачи для любого из наших клиентов.

И обратите внимание что во 2 пункте компания-внедренец


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Среда, 29 Февраль, 2012 08:36 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 710
Откуда: Псков
ilovb писал(а):
Что не понятного? Если вы для одной конторы (например Торговой) для одних и тех же людей код пишите, то наверно вы будете решать только фиксированный набор задач связанный с деятельностью этой конторы. Так?

А в компании которая обслуживает под сотню самых разнообразных клиентов работа должна быть несколько пестрее разнообразием. Так?

Что тут может быт не понятного?

Сотня разнообразных - это в смысле сотня "Торговых" клиентов c разными названиями? :)
Я утрирую, конечно, но класс задач -то наверное один и платформа одна.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Среда, 29 Февраль, 2012 10:17 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
1. Штатный программист. В советское время поработал много в подобных конторах. Справлялся.
Но становилось как-то скучно, и я уходил на новое место. Там или новые задачи, и/или новая платформа. Которую и изучал в процессе работы.
2. В СССР не помню подобных контор-внедренцев ПО. Или я забыл ? Внедренцы железа - были. Сейчас подобных контор море. Особенно в области бухгалтерии на 1С. У нас в Астрахани - Пилот, где многие наши выпускники работают.
Или в Москве - там системы типа SAP/3 внедряют.
Про себя могу сказать, что мне подобные задачи просто неинтересны.
3. Вы забыли, что были конторы, которые выполняли для некоей конторы конкретную разработку. Договор. Мне довелось поработать в 80-е годы - делали разработку для НПО Аврора, сидючи в Ташкенте. Это было лучшее время моей жизни. Самые интересные договора.
4. Ну, типа фрилансера пришлось попробовать в пору кооперативов. Но работы были исключительно по написанию зарплаты. После этого я поклялся никогда не заниматься бухгалтерией... :)
Ну, и любителем пришлось поработать. И сейчас работаю.

Анализируя свой опыт, могу сказать, что моя самая большая составляющая мотивации - чтобы мне было интересно.
Материальные стимулы сейчас уже вообще не играют никакой роли.
Вот в 80-е годы как раз писали операционную систему на бортовую ось.
Но больше подобной работой я заниматься не хочу - не интересно. Я там уже все прошел.
Или вот задачи асу и особенно зарплата... :)
В АСУ работал, пока там было для меня что-то новенькое: языки, системы, задачи. Потом - перестал..
Стимул заняться бухгалтерией первоначально был материальный.
Но его хватило ненадолго... :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Среда, 29 Февраль, 2012 16:13 
Аватара пользователя

Зарегистрирован: Суббота, 12 Июль, 2008 22:49
Сообщения: 575
Откуда: Россия, Санкт-Петербург
В рамках психологической разрядки портрет программиста.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Среда, 29 Февраль, 2012 17:44 

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 563
Откуда: Москва
Вот свежак от более взрослых http://habrahabr.ru/blogs/hr/138912/


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Среда, 29 Февраль, 2012 18:23 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Peter Almazov писал(а):
Вот свежак от более взрослых http://habrahabr.ru/blogs/hr/138912/

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

Цитата:
Гиперконцентрация

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

Цитата:
Погруженность во внутренние образы и конструкции

Цитата:
Не менее сложные конструкции возникают и в процессе профессиональной работы программиста. Данный эффект называется образно-чувственным конструированием. Если обыватель видит на экране только наборы символов, то в голове программиста этот код превращается в целые части мира. Как чтение книги создает образы и переживания в человеке, так и код способен такое же делать с программистом. Именно поэтому программисты «чувствуют» код, знают когда он «красив», когда «грязен», будет ли он работать и т.д. С какой-то стороны хороший программист сравним с писателем художественных произведений.

Это уже профессионально-приобретенное. Ибо изначально программист не знает, что такое "красиво" в коде.

Цитата:
Низкий уровень социального взаимодействия и его разнообразия в повседневной работе

А вот это как раз та самая интровертность. Это изначально в моем (и Боба Мартина) поколении было...

Цитата:
Обостренное восприятие причинно-следственных связей

И без этого программистами не становятся.
То есть - изначально в человеке должно это быть.
Цитата:
Привыкание к формализованной постановке задач

Изначально этого точно нет.
Но если появилось - это реальная профессиональная деформация.
Я однако избежал... :)

Цитата:
Жертвы «инженерного-гламура»

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Четверг, 01 Март, 2012 09:21 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
albobin писал(а):
Сотня разнообразных - это в смысле сотня "Торговых" клиентов c разными названиями? :)
Я утрирую, конечно, но класс задач -то наверное один и платформа одна.


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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Четверг, 01 Март, 2012 09:52 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
Валерий Лаптев писал(а):
...Особенно в области бухгалтерии на 1С.

Сегодня 1С это полноценная ERP. Бухгалтерия это очень малая часть задач решаемых на отечественной платформе :D Самый сложный и крупный раздел - это управленческий учет


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Четверг, 01 Март, 2012 10:20 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 710
Откуда: Псков
ilovb писал(а):
Нет. Сотня - это в смысле сотня разных клиентов с разными производствами и разными задачами.
Автоматизировать приборостроительный завод и биокомбинат - это совершенно разные задачи.
Каждое крупное предприятие - это как маленькая страна со своими тараканами, законами и психологией. Даже два торговых холдинга могут отличаться как небо и земля.
Так как торговать например автомобилями и торговать автозапчастями - не одно и то же.

Задачи то разные но схожие, подобные, и т.п.
Вот если бы сегодня писали бух.учёт, завтра симулятор авиационный, а послезавтра числодробилку научную или скажем управление производственным процессом - вот тогда я бы согласился, что задачи воистину разные :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Четверг, 01 Март, 2012 10:53 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 710
Откуда: Псков
2 ilovb
Но, в добавлении к предыдущему посту, не в наполнении конкретным смыслом словов "разные задачи" дело.
Хочу сказать, что из приведённого распределения программистов по категориям вовсе не стоит делать выводы о различиях в способностях, даже если
какой то единичный опыт работы в том или ином качестве и в тех или иных местах провоцирует на обобщения.
Есть множество других обстоятельств - житейских, положение на местном рынке труда, здоровья и т.д. которые влияют на возможность проявить свои способности.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Четверг, 01 Март, 2012 11:02 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
Все так. Я просто о личных наблюдениях говорю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Психология программиста
СообщениеДобавлено: Четверг, 01 Март, 2012 11:07 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Madzi писал(а):
В рамках психологической разрядки портрет программиста.

Один из наших студентов 4 курса признался, что при поступлении он мыслил именно таким образом... :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB