He notado un comportamiento en mí mismo que llamo "síndrome del punto de parada" ... significa que no puedo dejar de trabajar hasta que llegue a un "punto de parada" (o me agote). En otras palabras, si estoy en la zona trabajando para completar una función, no me detendré hasta que lo haga. Si es un error en el que estoy trabajando, este efecto es aún más pronunciado ... No me detendré hasta que se solucione, o al menos, se entienda. Aunque trabajo desde una computadora portátil y tengo VPN y podría irme fácilmente a casa y retomar el trabajo más tarde esa noche, ese hecho no me ayuda a dejar el trabajo ... es como si tuviera miedo de morir antes de encontrar el error .
Me cuesta mucho explicar esto a los miembros de la familia que no pueden entender por qué nunca llego a casa del trabajo al mismo tiempo y, a veces, a las 11 de la noche. Incluso los gerentes se han desconcertado por esto, y he notado que la mayoría de mis colegas no tienen problemas para trabajar las mismas horas todos los días.
¿Alguien más tiene este problema? ¿Debería preocuparme por esto y / o intentar cambiarlo? ¿Si es así, cómo?
Respuestas:
Me pasa todo el tiempo. Estarás en la zona codificando y notarás el reloj ... hora de ir a casa, pero luego te dices a ti mismo, "bueno, tan pronto como termine X". Entonces lo siguiente que sucede es ... "bueno, tan pronto como termine X + Y".
Para combatir esto, puse una nota en el código que dice "COMIENCE AQUÍ" y me dejo un post-it de lo que estaba trabajando y cualquier clave que fuera importante para hacerlo.
La conclusión es que el programador en mí AMA cuando esto sucede, pero es importante equilibrar esto y no dejar que se salga de control, especialmente si tienes una familia.
fuente
Creo que este es un comportamiento normal, lo mismo aquí, y la mejor manera de manejarlo es NO comenzar un nuevo punto de trabajo si no parece que pueda completarlo hasta su partida planificada. Seguramente tienes suficiente trabajo ocupado para completar esos 50 minutos, ¿no?
fuente
De hecho, reconozco esto. Puedo obsesionarme con un problema toda la noche hasta que solo tengo que rendirme, exhausto y frustrado. Brain Fog .
Lo curioso es que generalmente me las arreglo para resolver el problema de inmediato cuando regreso a trabajar por la mañana. Supongo que es porque mi cerebro funciona mucho mejor después de un buen sueño.
Lo que he aprendido de todo esto es que no tiene sentido trabajar todas las noches, ya que el cerebro es muchas veces más efectivo cuando está bien descansado y energizado. Al menos para mí, pero sospecho que esto es lo mismo para todos.
También vea ritmo sostenible y marcha de la muerte .
fuente
La programación, especialmente la depuración, consume mucha memoria a corto plazo. detenerse antes de que termine, borra el caché y pierde mucho tiempo volviendo a donde estaba.
así que esto es natural, eficiente y no es algo contra lo que se deba "luchar", aunque debería planearse.
Una cosa que ayuda es tomar notas mientras estás trabajando, y cuando dejes de tomar nota de lo siguiente que debes hacer
fuente
Me sorprende que esto no se haya mencionado todavía.
Si necesita detenerse, pare el pavo frío, en la mitad de la línea, en medio de algo fácil y obvio. Su IDE probablemente pondrá algunas líneas rojas y amarillas en todas partes diciendo que hay un error, esto está bien. Tal vez haga un breve / * comentario * / sobre el artículo en el que trabajó antes de esa línea.
Guarda tu trabajo y sal.
Cuando regreses al día siguiente, dirás, "oh, claro, estaba en el medio de X debido a Y" y no debería ser demasiado difícil volver a caer en lo que estabas trabajando.
Lo último en lo que trabajé (aplicación de pasatiempo menor para uso personal), lo haría cuando noté que pasaban las horas cuando cazaba insectos. Cuando llegara demasiado tarde, pensaría, "atornille esto" y guarde y salga, los errores de compilación serán condenados. Luego, cuando lo abría de nuevo, decía: "¿errores? ¡Wtf?! 1 /", que se convertiría en "oh sí, estaba tratando de probar por qué este método arrojaba una excepción".
Fue sorprendentemente eficiente y planeo usar esta técnica de ahora en adelante.
fuente
Definitivamente es una forma muy eficiente de trabajar si su vida gira en torno al trabajo.
He pasado por un tiempo en el que tuve el mismo problema. Trabajaba todo el tiempo y no paraba hasta que llegaba a un punto en el que todo estaba atado y podía sentarme la próxima vez con una pizarra completamente limpia. Desafortunadamente, si no se controla, puede reducir el tiempo con familiares, amigos y otros pasatiempos.
Aquí hay algunos consejos que me ayudaron a enfocar mi hábito en algo un poco más manejable:
fuente
Solía tener una pequeña aplicación que reiniciaba mi computadora en un temporizador. Lo había configurado para cuando se suponía que debía hacerlo. Mi computadora tardó 5 minutos en arrancar, lo que fue una interrupción suficiente en mi flujo de trabajo para convencerme de irme a casa. Combiné esto con asegurarme de que mi vida fuera del trabajo estuviera tan llena de actividades que tengo problemas para detener, y estoy ansioso por comenzar, como lo estuvo mi vida laboral. Me costó un poco encontrar esas actividades, pero valió la pena.
fuente
Creo que a todos los programadores les sucede a veces. Creo que es causado por el miedo. Teme que al día siguiente te olvides por completo de lo que estás haciendo ahora. Entonces tendrías que pasar mucho tiempo repasando cosas que ya has revisado para descubrir lo que dejaste a medias. Esto es muy ineficiente. En mi experiencia, la mayoría de los programadores odian la ineficiencia.
Para combatir esto, toma nota de dónde estás y qué estás haciendo para el día siguiente, luego soborna con algo que no esté en el trabajo para moverte.
fuente
Es la naturaleza de la programación trabajar en un ciclo de tiempo más largo en comparación con lo que la mayoría de las personas hacen.
Una capa de ladrillos puede colocar otro ladrillo en solo un minuto, y puede detenerse en cualquier momento +/- un minuto, y retomar donde dejó el trabajo. Pasos simples, ciclo de tiempo corto. En el comercio minorista, es uno o dos minutos por cliente. Un terapeuta de masaje trabaja en un ciclo de tiempo de una o dos horas, y todo lo que se logró en la mañana es independiente de las citas para la tarde. Un cliente puede correr con el tiempo o presentarse temprano, pero es razonable esperar que se haga en un momento dado de 10 o 20 minutos.
Volar un avión en solitario alrededor del mundo para establecer un nuevo récord mundial, eso no es una parada y comenzar un tipo de actividad. Aterrizar cada hora o dos para tomar un aperitivo o divertirse en una playa hace que el esfuerzo sea mucho menos impresionante. Su incremento mínimo de tiempo es todo el viaje, independientemente del número de días.
Es común que un desarrollador de software comience una tarea, desarrolle el caché mental de hechos y detalles, encuentre el error o vea cómo agregar una nueva función y retenga ese caché de memorias a corto plazo hasta que se termine la codificación. No puedes detenerte ni un centavo en el tiempo. El incremento de tiempo natural que no puede dividirse sin pérdida es probablemente de una hora a diez más o menos, YMMV, y hay varios puntos de detención más pequeños y débiles en el camino donde se toleraría cierta pérdida de memoria mental, así como mayor puntos de parada donde la tarea está realmente hecha.
Por supuesto, nuestros cuerpos se cansan, y uno solo debe detenerse antes de hacer más daño que bien. Podría aplicarse el viejo dicho "la muerte es la forma en que la naturaleza le dice que disminuya la velocidad".
fuente
Sí, yo también tengo esto. Bueno, en realidad a medida que envejezco es menos pronunciado.
También noté que al final del día, y cuando estoy cansado, cometo más errores. Al llegar al trabajo al día siguiente, la solución se hace evidente y tengo que volver a escribir una carga de código. Sin embargo, toma una fracción del tiempo que fue el día anterior.
fuente
Tuve este problema hasta que tuve perros (dos). Tengo que estar en casa a cierta hora o limpiar la orina, puede que no sea lo que estás buscando, pero funciona como un gran motivador. También estoy de acuerdo, casi siempre encuentro que la solución es obvia en la mañana.
fuente
Si tienes una familia, es obvio.
Si salgo del trabajo a las 5 p.m., el código será exactamente como lo dejé cuando llegue mañana.
Si salgo del trabajo a las 10 p.m., mi hijo ya estará en la cama cuando llegue a casa y no lo habré abrazado ni lo habré visto mostrar nada de lo que aprendió ese día. Y mi esposa estará de mal humor porque ha tenido que trabajar todo el día sin ayuda.
Pero si usted es soltero y no está demasiado interesado en la "escena social", ¡enloquezca!
Sin embargo, tenga en cuenta que el trabajo que realiza a las 9 p.m. probablemente será de menor calidad que el trabajo que realiza a las 9 a.m. No subestimes la ventaja de estar bien descansado y tener una mente clara.
fuente
Necesitas mantener esto bajo control. Me parece que actualmente no puede dividir su trabajo en piezas manejables o no puede estimar cuánto tiempo tomará algo. Entonces trabajas hasta que esté hecho. Quizás estás siendo demasiado competitivo o temes no poder hacer tu trabajo a tiempo.
Este es un círculo vicioso y no lo ayudará a largo plazo. Podría provocar agotamiento, agotamiento, ...
Por lo tanto, practique dividir su trabajo en tareas más pequeñas y manejables. Intenta estimar cuánto tiempo llevará cada tarea. Ninguna tarea debería tomar más de un par de horas. Date suficiente tiempo para hacer esto bien. Date tiempo para descansos. Y dese tiempo para disfrutar, aprender, apreciar y experimentar otros aspectos de la vida, en lugar de programar.
fuente
Tengo un punto de parada: es alrededor de la 1:30 a.m. Entonces puedo permanecer despierto, pero no hay forma de que haga ningún tipo de trabajo. Y no valdré nada al día siguiente a menos que duerma.
Entonces, aprendí a dejar de trabajar después de las 11 y me voy a la cama. De esa manera estoy fresco al día siguiente y puedo trabajar de manera constante durante la semana.
fuente
Creo que es la naturaleza del programador. A veces puede que tenga que irse antes de comenzar a trabajar en un nuevo problema. Con todo el tiempo extra que ha invertido, no necesita sentirse culpable. Entonces debes tener cuidado de no pensar demasiado en ello. Prepárese para abordarlo a primera hora de la mañana siguiente.
fuente
Es genial que disfrutes de tu trabajo. Pero también es muy triste cómo tantas personas aquí parecen llevar vidas que giran en torno al trabajo.
fuente
No, no estás solo. Tengo el mismo problema. Es posible que desee ver las respuestas en la pregunta similar que hice hace un tiempo: ¿Qué hacer cuando la actividad de programación se convierte en un problema?
fuente
Es natural, pero creo que debería ser combatido. Por lo general, avanzo mucho más allá del punto donde estoy generando código de alta calidad, y termino pasando mucho tiempo por la mañana arreglando cosas que se veían bien cuando estaba demasiado cansado para pensar con claridad.
Por lo general, puedo decir cuándo me estoy volviendo irracional al respecto, pero es útil tener a alguien cerca para abofetearlo si no presta atención a las señales de advertencia.
fuente
Sí, lo hago todo el tiempo.
Curiosamente, los mejores gerentes con los que trabajé siempre estaban listos para decirme que me fuera a casa cuando lo exageraba.
fuente