Como programador, ¿cuáles son sus técnicas favoritas de productividad personal? ¿Qué métodos o hábitos de pensamiento aplica que le ayudan a ser lo más productivo posible al escribir código?

Siga atentamente su progreso de principio a fin

Eso significa hacer un seguimiento explícito de lo que necesita hacer, lo que está haciendo y lo que ha completado. El uso de un flujo de trabajo de git ayuda a realizar un seguimiento de lo que ha completado, pero no aborda lo que debe hacer ni lo que está haciendo actualmente.

Usar una herramienta como Catalist u otro sistema que aproveche GTD / Kanban / etc. puede cerrar este ciclo Escriba las tareas del tamaño de un bocado que demoran entre 30 y 45 minutos en completarse. Trabaje en una de estas tareas a la vez y marque dicha tarea como “en progreso”. Complete la tarea, confirme los cambios y use el mismo texto descriptivo de su tarea para su mensaje, y presione cuando / donde sea necesario.

Al tener un proceso disciplinado como este, puede asegurarse de enfocarse y mantenerse en la tarea al tiempo que realiza un seguimiento de su progreso general hacia sus proyectos.

Echa un vistazo a mi respuesta aquí para ver cómo la interfaz de usuario de Catalist admite estas situaciones: la respuesta de Sumedh Jigjinni siento que me distraigo con bastante facilidad y mi mente corre en un millón de direcciones, pero sigo insatisfecho cuando las tareas están incompletas. ¿Cuáles son algunas sugerencias con las que puedo mejorar mi enfoque?

Compre un par de auriculares con cancelación de ruido de gran sonido. Este es mi único consejo. Cuando esté codificando y necesite atención desinhibida para concentrarse en un problema o fecha límite, póngalos, reproduzca buena música y solo codifique. Funciona para mi.

El beneficio de los auriculares es que, a menos que alguien tenga algo realmente urgente, será menos probable que te moleste en persona, en lugar de optar por enviar un correo electrónico, Skype o registrar un ticket. Los auriculares pueden ser el cono de silencio que los desarrolladores necesitan más de una vez.

Mi favorito está tomado del libro de Timothy Ferris “La semana laboral de 4 horas”.

Obtenga lo más importante del día antes de las 11 a.m. (el tiempo se puede cambiar aquí para adaptarse a su horario)

Eso es. No requiere una solución SaaS elegante ni cuesta dinero.

Si haces de esto tu único enfoque, todo lo demás se acomodará perfectamente para que esto suceda. Por ejemplo

  • Cuando llegue a su escritorio, no revise su correo electrónico. No abras Slack. No revises reddit o las noticias.
  • Evite verificar qué nuevos refrigerios se almacenan en el estante de refrigerios.
  • Evite un café de 20 minutos por la mañana. Guárdelo para después del almuerzo con sus compañeros de trabajo. Toma un café camino al trabajo.

Simplemente llega, abre su computadora portátil y comienza a trabajar de inmediato. Actualice rápidamente su memoria sobre sus prioridades y comience a trabajar de inmediato en la principal. Elija un tiempo de aproximadamente 1.5 a 2.5 horas desde el comienzo de su día. Este es el momento todos los días en que no dejas que nada te distraiga. Eres una máquina durante este período. ¡No puedes asustarte!

Lo encontré tan efectivo cuando comencé a usarlo, lo implementé con todo mi equipo. Dejamos de programar las reuniones matutinas, retrasamos un poco nuestro levantamiento matutino, y todos programamos tiempo en nuestros calendarios durante las primeras 2 horas de nuestra mañana para “GSD” (hacer las cosas).

Básicamente, está invirtiendo el primer 10% + de su día en su principal prioridad. Su efecto es profundo. Sugiero probarlo durante una semana y medir su efectividad, luego reflexionar sobre los comentarios al final de la semana.

More Interesting

¿Cómo fue tu viaje de tus días de B.Tech en DR BC Roy a un ingeniero de software?

¿Qué es el CleanWeb?

¿Por qué muchas personas odian las tecnologías de Microsoft?

Cómo no abrumarme por todas las formas en que podría estructurar mi código

¿Cuáles son las preguntas de entrevista más comunes para un puesto de desarrollo de software integrado de nivel básico?

Ingenieros de software: ¿con qué frecuencia aprendes nuevos lenguajes de programación?

¿Cómo debo dividir mi idea de software en partes más pequeñas para fines de outsourcing?

¿Cuáles son los conceptos que necesito cubrir antes de ir a una prueba de selección para un puesto de ingeniero de software?

¿Qué opciones hay para un estudiante con una licenciatura de cuatro años, sin tener antecedentes en investigación, que busque la admisión en un doctorado en ciencias de la computación / ingeniería de software para demostrar a una institución que él / ella es investigador?

¿Cómo comienzas a construir software desde cero? ¿Qué idioma uso? Si quiero que el programa pueda integrarse con otros, ¿qué debo considerar? ¿Dónde puedo aprender todo lo básico?

¿Cuáles son los pros y los contras del desarrollo de software de outsourcing / offshoring a Vietnam (en comparación con otras ubicaciones de outsourcing / offshoring)?

Cómo analizar un software ATS

¿Cuánto tiempo le tomaría a la persona promedio aprender lo suficiente sobre el desarrollo de software para ser empleable?

¿Cuáles son las mejores prácticas para construir software complejo poco a poco?

¿Por qué la gente de la industria (en oposición a la academia) soporta MATLAB y paga fortunas por ello?