Hablar de un problema ayuda (desarrollo de software)

Tengo 42 años y soy desarrollador de software desde hace 20 años.

Desde hace varios años sé que hablar de un problema ayuda.

Si no puedo encontrar una solución fácil, hablo con un compañero de equipo o pregunto en un sitio como stackoverflow.

A menudo basta con hablar de ello (o escribir la pregunta). Si hago esto, a menudo encuentro la solución yo mismo.

Me gustaría encontrar un término coincidente (de psicología o neurociencia) para esto.

Pregunta: ¿Cómo llamas a esto?

Si tiene enlaces a estudios relacionados, por favor deje un comentario. Gracias.

Esta no es la respuesta, no creo, pero sé de lo que estás hablando, creo que tiene algo que ver con el concepto del logotipo en sí. Es decir, escribir o hablar algo lo expone para un análisis más profundo de alta resolución por parte del resto del cerebro, como si fuera un objeto en el mundo. Mientras que simplemente usar su imaginación para albergar el problema y analizarlo potencialmente lo separa de otras facultades del cerebro para resolver problemas.
No sé si hay un nombre real para esto, pero hay una expresión idiomática que se escucha a menudo que es " un problema compartido es un problema reducido a la mitad ".
En general, escribir un problema en una forma lo suficientemente comprensible para que alguien lo responda es un buen paso inicial para resolverlo. En el nivel de evidencia anecdótica, es fácil encontrar apoyo para lo que dije, por ejemplo , phils-career-blog.com/2012/01/problem-definition No sé si hay estudios sistemáticos sobre esto. Supuestamente es parte del "algoritmo Feynman": wiki.c2.com/?FeynmanAlgorithm LOL.
Supuestamente es porque escribirlo te hace entenderlo mejor. Los Principios de Polya comienzan con "Asegúrate de entender el problema". cs.yale.edu/homes/aspnes/pinewiki/…
También conocido como "depuración de pato de goma" en ingeniería de software.

Respuestas (3)

Puedo pensar en dos razones por las que hablar de un problema ayuda:

  • Explicar su conocimiento puede revelar lagunas y errores

El siguiente extracto es del libro Smart Thinking de Art Markman:

ingrese la descripción de la imagen aquí

  • Hablar de un problema cambia su representación mental

Nuestra representación mental son las ideas, conceptos, historias, teorías y habilidades que componen cómo interiorizamos algo en nuestra mente. Gardener escribe:

“Genéricamente, el cambio mental implica la alteración de las representaciones mentales. Todos nosotros desarrollamos representaciones mentales con bastante facilidad desde el comienzo de la vida. Muchas de estas representaciones son útiles, algunas tienen un encanto notable, otras son engañosas o completamente erróneas. Las representaciones mentales tienen un contenido: pensamos en estos contenidos como ideas, conceptos, habilidades, historias o teorías completas (explicaciones del mundo). Estos contenidos se pueden expresar en palabras, y en un libro, ese medio se usa habitualmente. Sin embargo, casi todos los contenidos pueden expresarse en una variedad de formas, medios, sistemas de símbolos: estos sistemas pueden exhibirse públicamente como marcas en una página y también pueden interiorizarse en un 'lenguaje de la mente' o una 'inteligencia' particular. ”

El mero hecho de intentar formular nuestro pensamiento en discurso, cambia su representación ( ver este artículo ).

Bueno, antes que nada, analicemos brevemente el proceso de pensar.

El pensamiento solitario y silencioso es la internalización de las palabras que le enseñaron a una edad muy temprana. La literatura clínica sugiere que si pierde el período de aprendizaje, ya no podrá aprenderlo. Niño salvaje en Wikipedia

Especulación: Basado en esto, creo firmemente que entender palabras y hablar vino antes en nuestro proceso evolutivo que pensar. Esto postula la idea de que somos mejores discutiendo cosas en entornos sociales que pensando internamente.

Ahora, escribir obviamente vino después que entender palabras, hablar palabras y pensar, sin embargo, es un poco diferente a pensar. Cuando estás escribiendo, exteriorizas algo interior y realmente lo miras, lo que cambia por completo la percepción del tema.

Además, para avanzar en mi punto. Como mencioné anteriormente, pensar es la internalización de una conversación y es realmente difícil pensar correctamente porque requiere que actives diferentes partes de tu personalidad que realmente pueden discutir/comunicarse como lo harías en una conversación normal. Técnicamente hablando, para pensar correctamente, debe crear una disonancia cognitiva; de lo contrario, será un sesgo de confirmación.

También es útil incluir términos como subconsciente y consciente. Carl Jung pensó que esos dos existen 'en diferentes dimensiones'. Puedes atribuir aspectos simbólicos y metafóricos de tu psique al subconsciente, mientras que el aspecto verbal de tu mente es consciente. En otras palabras, hay una diferencia entre conocimiento no articulado y articulado.

El conocimiento no articulado es algo subconsciente, por lo que no tienes acceso completo a él, sin embargo, si logras articularlo, obtienes acceso completo. Pensar es un proceso rápido y los pensamientos pueden escabullirse mientras que escribir es más lento y realmente percibes, te corriges y rectificas los problemas a medida que avanzas. (Lo mismo se aplica a la comunicación, excepto que hay dos o más cabezas en lugar de una).

Encontré este artículo relacionado de Wikipedia:

https://en.wikipedia.org/wiki/Rubber_duck_debugging

Depuración de pato de goma

En ingeniería de software, la depuración de patitos de goma o el patito de goma es un método de depuración de código. El nombre es una referencia a una historia en el libro El programador pragmático en el que un programador llevaría un pato de goma y depuraría su código obligándose a explicárselo, línea por línea, al pato.[1] Existen muchos otros términos para esta técnica, a menudo relacionados con diferentes objetos inanimados.

Muchos programadores han tenido la experiencia de explicar un problema a otra persona, posiblemente incluso a alguien que no sabe nada de programación, y luego encontrar la solución en el proceso de explicar el problema. Al describir lo que se supone que debe hacer el código y observar lo que realmente hace, se hace evidente cualquier incongruencia entre estos dos. De manera más general, la enseñanza de una materia obliga a su evaluación desde diferentes perspectivas y puede proporcionar una comprensión más profunda. Mediante el uso de un objeto inanimado, el programador puede intentar lograr esto sin tener que interrumpir a nadie más.

Esto es exactamente lo que le escribí como comentario a su pregunta cuando la hizo por primera vez . :) Es un comentario (le sugiero que lo incluya incluso en su pregunta, en su lugar). Esto no constituye una respuesta (basada en Psicología o Neurociencia) en este sitio.
@StevenJeuris sí, tienes razón. Lo siento. No lo he visto. Acabo de encontrar este término hace unos días y quería mejorar esto aquí.
Puedes, mejorando/editando tu pregunta. Esto es más relevante en su pregunta que sus antecedentes personales con los que comienza (muestra que esto no es anecdótico, sino una observación generalizada), por ejemplo (una de las razones por las que no voté la pregunta).