Realmente sentí tu dolor cuando comencé, pero ahora realmente amo la programación. Hubo algunas respuestas excelentes en este hilo, así que intentaré ser diferente dando una respuesta más general para combatir todo tipo de frustración. La principal “calificación” que tengo es haber pensado en la causa común de la frustración y haber realizado una estrategia que funcionó personalmente en todas estas actividades (incluida la programación), ¡así que espero que funcione para usted!
Primero, una nota rápida sobre “flujo” (ver la respuesta de Joshua Engel). Ahora, la mayoría de las definiciones son inútiles por sí mismas y sirve solo para reformular el problema, pero una de
Los conceptos clave de “flujo” que me encantan es que se producen cuando ” la dificultad de la tarea actual coincide con la competencia actual (ajustada por
entorno y estado mental) . “Esto ha sido lo que me abrió los ojos ya que hace que el flujo sea una actividad controlable. Ahora, repasemos la frustración: me gustó la división de Ajmal Afif en” Cómo “y” Por qué “, así que ‘ Lo haré en esa forma.
Por qué: nos frustramos porque no conseguimos lo que queremos. Esto es básicamente lo que dijo Ajmal, pero lo reformularé de la siguiente manera: la tarea actual es demasiado difícil. Esto significa que no tenemos ninguna estrategia que podamos implementar y no sabemos si algún paso nos lleva a la solución. Un caso especial muy común de esto que deseo enfatizar es no entender los requisitos de la tarea .
Cómo: comience a escribir un correo electrónico a un amigo que es un experto muy ocupado .
- ¿Qué se siente pasar por una experiencia traumática y sobrellevarla?
- Cuando la programación te parece un dolor, ¿qué haces?
- ¿Por qué el estrés me da ganas de vomitar?
- ¿Cómo lidia la gente con el estrés de saber que en cualquier momento las personas pueden difundir sus mentiras viciosas sobre usted en Internet, lo que puede llevar meses, o incluso más, corregirlo?
- ¿Por qué podrían haber aumentado los niveles de estrés en los Estados Unidos en los últimos 30 años?
Ahora, antes de que me grites por dar una respuesta barata, el punto clave es que el amigo no tiene que existir. Con eso en mente, hazme el humor:
- El acto de escribir una pregunta o correo electrónico es mucho más fácil de hacer que resolver su problema en su estado frustrado, que está haciendo el trabajo 0.
- El acto mismo será una experiencia de clarificación, ya que te estás haciendo preguntas mentales como “¿Cómo expreso exactamente lo que quiero en mi pregunta?” Que suele ser el obstáculo para comprender una visión de arriba hacia abajo del problema.
- Si no lo necesitó (2) y cree que comprende el problema de arriba a abajo, debería haber podido dividirlo en tareas más pequeñas que “enlazan entre sí, y luego intenta fluir las tareas más simples, una en un momento.
- Si el amigo existe, bonificación! Tienes que presionar el botón enviar!
Esta es la razón por la que StackOverflow, etc. es tan genial. Por lo general, respondo mis preguntas a medida que las escribo. Además, tenga en cuenta cómo las personas de mayor reputación en StackOverflow hacen las preguntas: preguntan de una manera que soluciona el problema y tratan de definir realmente su problema, en lugar de un problema de “cómo hago XYZ” que realmente no ayudar al que pregunta si nadie tiene ganas de responder.
Como un guiño a las otras respuestas relacionadas con TDD, esta es la razón por la cual TDD (desarrollo basado en pruebas) funciona tan bien; te obliga a desglosar la interfaz de tu programa y los casos de uso, lo que ayuda a aclarar la definición de tu problema y te ayuda a dividirlo en varias partes para que puedas descubrir qué parte es incorrecta en lugar de “esto no funciona” . ” Creo que el poder de TDD es realmente que aborda el problema del flujo extremadamente bien. Para mí, TDD realmente está preguntando a una futura versión experta de ti mismo “¿Cuál es el problema y qué quiero?”