Соционика и подходы в программировании

Перенос из темы «Спроектировать процессор «на коленке». Возможно ли?»
 

au

   
★★☆
Рома, оффтоп:
Подсунь табличку где соционический тип (ну там "Пушкин", "Пупкин") сопоставлен с тем что ты написал (кто что может или не может, и у кого с чем проблемы). Интересно стало :) Типа такого:
1 Пушкин — деловой логик — может и не может
2 ...
   1.5.01.5.0

Balancer

администратор
★★★★★
au> Подсунь табличку где соционический тип (ну там "Пушкин", "Пупкин") сопоставлен с тем что ты написал (кто что может или не может, и у кого с чем проблемы). Интересно стало :) Типа такого:
au> 1 Пушкин — деловой логик — может и не может

К счастью (во избежание превращения во вторую астрологию ;)) соционика базируется не на описаниях, а на абстрактой теории. Подобные вышеприведённым выводы в отношении конкретных моделей поведения, поэтому, в соционике получаются путём статистических исследований и/или выведением определённых паттернов поведения из
соционического базиса. Я не видел сторонних исследований конкретно по вопросу привязки особенностей программирования к особенностям логик тех или иных ТИМов, но имею достаточный для оценки статистический материал, который блестяще ложится на теоретические предположения :)

Может быть стоило бы работу какую-нибудь написать по этой теме, но, как писал ранее, от соционики как самоцели сейчас почти отошёл, так что - ломает.

Если совсем вкратце (потом подветку можно будет в соционический перекинуть) то танцевать лучше начиная от базиса.

БЛ - внешняя статика поля. Явное описание взаимодействия объектов. Структуры. Поэтому и зовётся логикой структурной. Сильные БЛ заняты взаимоотношением объектов. В программировании такие люди закладывают качественный каркас, скелет проекта. Хорошо представляют общий образ системы, сильные и слабые стороны, как она функционирует в целом. Но не бывает людей, одинаково сильных и в БЛ, и в ЧЛ. И когда дело доходит до конкретных мелочей и деталей, БЛ оказывается в проигрышном положении относительно ЧЛ.

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

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

Типовой ЧЛ (из реальных людей - например, Мэд Мэхем, автор форумного движка iPB - мне приходилось с ним общаться ;) Или пресловутый Билл Гейтс. Но он, как раз, вообще почти не программист - ЧЛ очень часто бывают хорошими бизнесменами. Несколько знакомых ЧЛ-программистов из реала, конечно, но их имена вам вряд ли что-то скажут.), наоборот. Пишет свои программы путём налепливания куска кода на кусок кода. Не продумывая целостную логику системы. Когда система начинает разрушаться от своей сложности - легко и без напряжения переписывает её полностью с нуля (упомянутая iPB в версиях 1.x в каждой минорной версии переписывалась практически полностью :)). Зато умеет подать такого франкенштейна в очень красивой одежде. Удобное управление, красивый интерфейс, подробная документация...

Мой опыт говорит, что в успешной команде структуру проекта должен продумывать в первую очередь белый логик. Чёрный должен заниматься интерфейсом пользователя и юзабилити. Руководить же проектом должен, опять же, ЧЛ. Финансы и бизнес - это чернологичная область :)
   3.0.103.0.10

Balancer

администратор
★★★★★
au> 1 Пушкин — деловой логик — может и не может

В принципе, без привязки к программированию и на примере конкретных ТИМов можно, скажем, так проиллюстрировать.

Вот так работает базовая ЧЛ у Володи Малюха: http://socionics.org/type/Default.aspx?type=ESTJ&load=type_gul2.html

Вот так работает базовая БЛ у меня: http://socionics.org/type/Default.aspx?type=INTJ&load=type_gul2.html

(первые абзацы).

Следует только учитывать, что это краткие и субъективные оценки автора этих описаний :)
   3.0.103.0.10
RU Владимир Малюх #07.06.2009 14:36  @Balancer#07.06.2009 14:29
+
-
edit
 
Balancer> В принципе, без привязки к программированию и на примере конкретных ТИМов можно, скажем, так проиллюстрировать.
Balancer> Вот так работает базовая ЧЛ у Володи Малюха: http://socionics.org/type/...
Balancer> Вот так работает базовая БЛ у меня: http://socionics.org/type/...

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

"организаторские способности, стремление и умение к сбору полной и достоверной информации" и "понимание формальных правил, стремление к систематизации информации и деятельности"? Не, похоже все-таки "новая астрология" :)
   7.07.0
RU Balancer #07.06.2009 14:38  @Владимир Малюх#07.06.2009 14:36
+
-
edit
 

Balancer

администратор
★★★★★
В.М.> Не, похоже все-таки "новая астрология" :)

Владимир, ну не нужно в 10-й раз показывать то, что мои сообщения читаешь через строчку. Я этот вопрос озвучил отдельно буквально парой сообщений выше.
   3.0.103.0.10
RU Владимир Малюх #07.06.2009 15:29  @Balancer#07.06.2009 14:38
+
-
edit
 
В.М.>> Не, похоже все-таки "новая астрология" :)
Balancer> Владимир, ну не нужно в 10-й раз показывать то, что мои сообщения читаешь через строчку.


А это ром я уже и не тебя откомментировал, а самих адептов и подвижников. :)
   7.07.0
US Сергей-4030 #07.06.2009 19:24  @Balancer#07.06.2009 14:26
+
-
edit
 

Сергей-4030

исключающий третье
★★
Balancer> Типовой ЧЛ (из реальных людей - например, Мэд Мэхем, автор форумного движка iPB - мне приходилось с ним общаться ;)

Не касаясь всей этой соционической парапсихологии - а почему ты думаешь, что он не представляет "все взаимодействия" и пр.? Потому, что не старается сделать все максимально расширяемым? Стремление сделать все максимально расширяемым - отнюдь не такой плюс. Надо понимать, что надо делать расширяемым, а что можно рефакторить "по месту", когда понадобится. И это понимание - очень важно, куда как важнее "расширяемости" в каждой затычке. Вообще, стремление "все сделать правильно" - оно характерно разработчикам на каком-то этапе. Но красота кода и стройность дизайна - она, в конце концов, относительна. А вот функциональность - абсолютна.
   1.0.154.651.0.154.65
EE Татарин #07.06.2009 19:44  @Сергей-4030#07.06.2009 19:24
+
-
edit
 

Татарин

координатор
★★★★★
Сергей-4030> Но красота кода и стройность дизайна - она, в конце концов, относительна. А вот функциональность - абсолютна.
ППКС.
Более того, на самом деле, любая функциональность есть снижение расширяемости (если ты сделал что-то так, ты потерял возможность сделать этак).
   2.0.172.302.0.172.30
RU Владимир Малюх #07.06.2009 20:56  @Сергей-4030#07.06.2009 19:24
+
-
edit
 
Сергей-4030> Вообще, стремление "все сделать правильно" - оно характерно разработчикам на каком-то этапе. Но красота кода и стройность дизайна - она, в конце концов, относительна. А вот функциональность - абсолютна.

+100. И не только в программировании.
   7.07.0
RU Balancer #07.06.2009 21:03  @Сергей-4030#07.06.2009 19:24
+
-
edit
 

Balancer

администратор
★★★★★
Сергей-4030> Не касаясь всей этой соционической парапсихологии - а почему ты думаешь, что он не представляет "все взаимодействия" и пр.?

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

Сергей-4030> Стремление сделать все максимально расширяемым - отнюдь не такой плюс.

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

Сергей-4030> Но красота кода и стройность дизайна - она, в конце концов, относительна. А вот функциональность - абсолютна.

Красота кода - понятие относительное (и то - с серьёзными оговорками). Но вот структура проекта, как и функциональность - абсолютна :) Другое дело, что как я уже отмечал, человеческая натура такова, что имеющие хороший задел для реализации функционала имеют слабые возможности к проработке (и оценке) структуры и наоборот :)
   3.0.103.0.10
US Сергей-4030 #08.06.2009 06:19  @Balancer#07.06.2009 21:03
+
-
edit
 

Сергей-4030

исключающий третье
★★
Balancer> Красота кода - понятие относительное (и то - с серьёзными оговорками). Но вот структура проекта, как и функциональность - абсолютна :) Другое дело, что как я уже отмечал, человеческая натура такова, что имеющие хороший задел для реализации функционала имеют слабые возможности к проработке (и оценке) структуры и наоборот :)

Это все отговорки.
   2.0.172.302.0.172.30
RU Balancer #08.06.2009 06:31  @Сергей-4030#08.06.2009 06:19
+
-
edit
 

Balancer

администратор
★★★★★
Сергей-4030> Это все отговорки.

Т.е. по-твоему, такое понятие, как структура системы - необъективно? :)
   3.0.103.0.10
PT MIKLE #08.06.2009 21:42  @Владимир Малюх#07.06.2009 14:36
+
-
edit
 

MIKLE

старожил

В.М.> "организаторские способности, стремление и умение к сбору полной и достоверной информации" и "понимание формальных правил, стремление к систематизации информации и деятельности"? Не, похоже все-таки "новая астрология" :)

Учит людей, как жить с умом, не растрачивать свои способности попусту.

:P :F :D
   
+
-
edit
 

zyxman

опытный

Неужели добрались до святого - чуства меры? :D

- имеется в виду, что "самый лучший проект 3-й" это-ж классика (см историю проектирования os/360) - в первом идет обязательно перебор (толи чересчур сложно, то ли наоборот нерасширяемо), во втором идет перебор в другую сторону в сравнении с первым, и в третьем обычно все уравновешено.
А "всего-то" нужно в определенный момент остановиться и перестать расширять функциональность, а перейти к доводке того что уже есть. И понятно что в мелких проектах это намного легче сделать чем в больших (потому что в больших и хуже видно прогресс и медленнее работает управление).
   1.5.0.61.5.0.6
Это сообщение редактировалось 13.06.2009 в 23:14

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru