Cómo mejorar nuestros code review

Hace casi veinte años, comencé como desarrollador en una empresa que implementaban code review. En ese momento, nunca había hecho una revisión de código ni mi código nunca había sido revisado.

Para mi primer proyecto, tuve que crear un componente COM en C ++ usando el marco ATL. ATL utiliza el recuento de referencias para administrar la vida útil de un objeto. El recuento de referencias significa que debe llamar a Release () cuando haya terminado de usar el objeto. Si olvida llamarlo, se produce una pérdida de memoria.

Recuerdo el resultado de mi primera revisión de código como si fuera ayer. Fue dramático.

No recuerdo el número exacto, pero estoy seguro de que hubo más de 100 comentarios de revisión. El revisor mencionó cada Release () que olvidé. El tono de la crítica fue duro. Luché con eso.

¿Fui un desarrollador tan terrible?

Actualmente, llevo más de una década haciendo revisiones de código. Realizar revisiones de código es el mejor método para mejorar la calidad del código y crear una cultura de aprendizaje y respeto.

Sin embargo, hay una receta específica para revisiones de código exitosas.

 

¿Por qué son críticas las revisiones de código?

Abra el último libro que leyó sobre programación u otro tema técnico y busque un párrafo titulado Agradecimientos al comienzo del libro.

Estoy seguro de que en este párrafo, el autor agradece a su editor por ayudar a crear una mejor versión del libro. La edición y revisión es el procedimiento estándar al escribir un libro.

¿Por qué no es lo mismo para el desarrollo de software?

Durante una revisión de código, otro desarrollador verifica su trabajo en busca de errores. El desarrollador señalará mejoras, tales como:

  • código difícil de entender
  • nombres poco claros
  • código comentado
  • código no probado

Además de buscar mejoras, el revisor aprende de la solución. Debería ver las revisiones de códigos como una oportunidad para crecer y como una red de seguridad, no como una oportunidad para criticar.

Las revisiones de código también son conocidas para prevenir errores. La investigación realizada por IBM² encontró que cada hora de inspección evitaba aproximadamente 100 horas de trabajo relacionado (prueba y corrección de defectos).

 

Automatizar lo que se puede automatizar

Antes de continuar y mirar mi receta para revisiones de código exitosas, tenemos que hablar sobre la automatización.

No pierda el tiempo durante las revisiones de código para comprobar si hay errores de estilo. En su lugar, acuerde una guía de estilo y use un linter o una herramienta de análisis estático para verificar ese estilo.

Además, asegúrese de que es posible ejecutar una compilación completa para verificar que todo sigue compilando correctamente y que todas las pruebas unitarias tienen éxito.

La automatización de todas estas tareas hará que la contribución de un revisor sea más valiosa. El revisor puede centrarse más en otros aspectos, como errores funcionales y legibilidad.

 

Receta para revisiones de código

Mi receta para una revisión exitosa del código consiste en dos conjuntos de ingredientes, uno para el autor de los cambios y otro conjunto para el revisor.

 

Ingredientes para el autor

Como autor de los cambios, usted tiene la responsabilidad de facilitar que el revisor comprenda la revisión de su código.

El tamaño del conjunto de cambios debe ser pequeño.

A nadie le gusta hacer revisiones de código que consisten en miles de líneas de cambios de código. Tomará mucho tiempo y existe una alta probabilidad de que sea necesaria una nueva revisión debido a una gran cantidad de cambios. Investigaciones han demostrado que el tamaño del conjunto de cambios influye en la utilidad de los comentarios. A medida que el conjunto de cambios aumenta, el número de comentarios útiles disminuye.

Así que asegúrese de que el tamaño de su conjunto de cambios sea pequeño, digamos, menos de 250 líneas de código. La revisión será de mayor calidad.

Revisa tu diff

No puedo decirte cuántas veces encontré errores simples al corregir mis pull request. La mayoría de las herramientas como GitHub, Bitbucket o Azure DevOps contienen herramientas para corregir su diferencia antes de enviar su pull request.

Como autor, siempre debe corregir los cambios en su código para encontrar errores comunes para que el revisor pueda centrarse en otros puntos.

Ingredientes para el revisor

Apunta a mejorar, no a la perfección

Intenta mejorar el código una muesca en lugar de hacerlo perfecto. Me ayuda a pensar en términos de calificaciones. Cuando recibo un pull request que comienza en una D, ayudo al autor a llevarla a una C, no perfecta pero mejor de lo que era.

¿Esto no degradará toda la base de código a una C? No lo creo. Me parece que cuando ayudo a un desarrollador a pasar de una D a una C, la próxima solicitud de extracción que envían comenzará en una C. Dentro de un par de pull request, me envían reviews que comienzan como Bs, que se convierten en As al final de la revisión.

Respetar el alcance de la revisión.

Simplemente, solo revise el código que se modificó. Si ve algo cerca del código modificado que cree que debería arreglarse, puede pedirle al autor que lo arregle. Pero recuerde que no está dentro del alcance de la revisión.

Si el pull request no cambió una línea, está fuera de alcance.

El tono de la reseña.

El tono de la revisión me parece uno de los aspectos más importantes de una revisión de código. Siempre trate de hacer preguntas abiertas en lugar de hacer declaraciones con opiniones. Ofrezca otras alternativas o posibles soluciones alternativas. Pero no insista en esas alternativas o soluciones alternativas.

Si no comprende algo, suponga que, como revisor, le falta algo y solicite una aclaración. Intente usar la palabra considerar. Por ejemplo: «¿Consideró refactorizar esto en un solo método?» o «Considere cambiar el nombre de este método por legibilidad».

Revisar de manera oportuna

Intente revisar la solicitud de extracción lo antes posible. Si primero tiene que terminar su tarea, informe al autor cuándo comenzará la revisión.

Use una lista de revisión

Debería intentar crear una lista de verificación que pueda usarse como referencia al realizar la revisión del código. Eche un vistazo a las siguientes categorías para obtener inspiración sobre los elementos que debe incluir en su lista de verificación:

  • Robustez
  • Corrección
  • Diseño
  • Mantenibilidad
  • Diseño de API REST
  • Globalización
  • Actuación
  • Seguridad
  • Escalabilidad
  • Testabilidad

Otra fuente de inspiración es ISO 25010, un estándar que define las características de calidad de un sistema de software.

 

Fuente: https://medium.com/better-programming/how-to-improve-your-code-reviews-f5e9d5a6536c

Cuarentena Trabajando en Casa. 5 Cápsulas para sobrevivir a la Contingencia

Para nadie es un secreto que el Teletrabajo siempre ha sido percibido como un beneficio y una opción muy atractiva para la mayoría de las personas, sobre todo para aquellas con profesiones asociadas a la tecnología, por lo que Initium Software no escapa de esta percepción. Sin embargo, cuando el Teletrabajo se vuelve una medida obligatoria producto de la cuarentena mundial a la que nos hemos visto sometidos por la actual pandemia de Covid-19, pudiera llegar a convertirse en una experiencia algo estresante y pesada.

Para la mayoría de nosotros llegar a la oficina marcaba el inicio de la jornada laboral y eso hacía que automáticamente nuestro “Chip” cerebral entrara en modo trabajo facilitando lograr el tiempo, espacio y concentración necesaria para alcanzar las metas planteadas para cada día. Así mismo, la cuarentena nos tomó por sorpresa, obligándonos a quedar en casa con muy poca, por no decir ninguna preparación de un ambiente que nos permita hacer esa activación del chip de manera natural.

Cuando han pasado alrededor de 3 meses bajo esta “nueva normalidad” es probable que ya estemos un poco más adatados a nuevas rutinas, sin embargo, no esta de más chequear estos sencillos consejos que nos permitirán optimizar nuestra productividad, mejorar nuestro niveles de concentración y sobre todo equilibrar la relación hogar/trabajo tan necesaria cuando pasamos las 24 horas del día dentro del mismo espacio.

  1. Encuentra un espacio para ti

Conviene limitar un espacio en el que realizar tu trabajo. Si no puede ser una habitación, basta con que definas un sitio que te permita trabajar cómodamente. A partir de ahora será tu lugar de trabajo por un buen tiempo. Puri Paniagua, digital & tech regional head Iberia & Latam de Pedersen and Partners, explica que el ruido doméstico o familiar es uno de los principales factores de desconcentración, además que puede resultar poco profesional el atender todas las llamadas con estas situaciones de fondo.

 

  1. ¡Los momentos de descanso se respetan!

Establece un horario similar para cada día laboral y que difiera del de los días de descanso. Eva Rimbau, profesora de Recursos Humanos en la Universitat Oberta de Catalunya (UOC), señala que “la jornada laboral no debe exceder las ocho horas y debe cumplir con los requisitos fijados por la empresa, si lo hubiera”. La especialista destaca que es importante que se ajuste a las necesidades del profesional y de la compañía. Marta Romo, socia directora de Be-Up, apuesta por empezar pronto a trabajar y, después, dedicar tiempo a entretenerse.

 

  1. Concentrarse, Concentrarse, Concentrarse….

Rimbau aconseja cerrar todas las redes sociales, “excepto alguna que sirva para trabajar. Si es posible, dejar fuera del alcance de la mano el celular y cerrar aquellas pestañas del navegador, salvo las que se necesiten”. Al estar en casa la televisión también puede resultar un atractivo distractor, recuerda dejarla solo para los momentos de esparcimiento. La misma regla puede aplicar para visitar las redes sociales, sólo en el caso de que sean imprescindibles para realizar su trabajo.

De igual forma, es importante que le hagas saber a los miembros de tu familia que estás trabajando, puede pasar que al estar todos en casa tengan la tentación de sentarse contigo a tener una amena conversación o invitarte a ver una película en medio de tu jornada laboral. Habla con ellos y establece un acuerdo de ponerle pausa a ese rato en familia para el final de la jornada.

 

  1. Mantente conectado y disponible

Durante este confinamiento, el correo electrónico, la Intranet y el Skype van a ser los  canales de comunicación con tus supervisores, líderes y compañeros. Procura revisar el correo con más frecuencia (Al menos 3 veces durante la jornada) y estar atento a las notificaciones del Skype.

 

  1. Hasta Mañana!!!

La jornada tiene un fin y… termina en su casa. Tienes la oportunidad de pasar del trabajo al ocio en un ‘clic’. Desconéctate para descansar. Romo dice que, si se trabaja en equipo “es bueno acordar juntos ese horario compartido para no ir a destiempo”. Rimbau insiste: “Hay que evitar que la jornada se eternice”.

 

Bonus Tip: Pensar en Positivo

En estos momentos, resulta difícil desengancharse de la actualidad de las consecuencias del Covid-19. Y, como señala San Andrés, es fácil que la mente se llene de ideas pesimistas o que generan ansiedad. “La recomendación es limitar las noticias de modo inteligente. No deberíamos pasarnos el día oyendo comentarios amenazantes y recuento de víctimas. En principio, dos o tres veces al día sería suficiente”.

 

Recuerde que, si puedes seguir trabajando desde tu casa eres un privilegiado y en tus manos está demostrar que eres más eficaz

 

5 herramientas de desarrollo web que pueden mejorar su productividad

El tiempo es siempre un recurso escaso para los desarrolladores. Desde plazos agresivos hasta proyectos múltiples, hasta requisitos inesperados, nuestro tiempo está constantemente en demanda. Es por eso que siempre estamos buscando herramientas y procesos que nos ayuden a aumentar la productividad.
En este artículo, veremos cinco herramientas de desarrollo web que podrían darle el impulso adicional de productividad que necesita.

1.- Domina la línea de comando con Oh My Zsh

Las interfaces de línea de comandos predeterminadas para Windows y OS X (el símbolo del sistema y Bash) pueden ser desalentadoras de aprender y difíciles de personalizar. Si no eres un experto, puedes terminar repitiendo tareas serviles que podrían automatizarse.
Oh My Zsh es un marco de código abierto impulsado por la comunidad construido sobre Zsh, un shell de línea de comandos que muchas personas encuentran más fácil y mejor que las opciones predeterminadas.
Oh My Zsh proporciona una gran cantidad de complementos (250) y temas (140) listos para usar, lo que le permite personalizar su terminal según sus preferencias. Es más rápido, más cómodo para trabajar y le permite automatizar fácilmente sus tareas diarias. Debido a que la línea de comandos se está convirtiendo cada vez más en una parte del flujo de trabajo de cada desarrollador web, esta podría ser una gran herramienta de productividad para incorporar a su trabajo diario.

2.- Prueba de API sobre la marcha con insomnio

La prueba de los endpoint REST puede ser engorrosa, lenta y confusa. Insomnia es un cliente GraphQL y REST multiplataforma gratuito y de código abierto que no solo es potente, sino que también viene con una interfaz de usuario intuitiva y simple que facilita las pruebas. Algunas características del insomnio incluyen:

• Generación de fragmentos de código: Insomnia puede generar código de cliente para más de 20 lenguajes diferentes, incluidos Node.js, Go, Swift, Python, Java y C.
• Sistema de complementos: el sistema de complementos le permite ampliar la funcionalidad de Insomnia. Puede crear una etiqueta de plantilla personalizada para representar valores personalizados o crear un tema de color personalizado utilizando la API de complementos.
• Variables de entorno: son valores reutilizables que se utilizan en cualquier entrada de texto dentro de Insomnia. Algunas variables comunes son URL base, tokens de autenticación e ID de recursos.

Una de las principales características beneficiosas de Insomnia es la compatibilidad con GraphQL. La demostración a continuación muestra un flujo de trabajo típico para consultar un endpoint GraphQL.

En este ejemplo, estoy enviando una solicitud utilizando una API pública de GraphQL llamada países. El insomnio genera automáticamente el esquema cuando se pasa una URL. Después de enviar la consulta a la izquierda, devuelve la respuesta a la derecha.

La aplicación se entrega con muchas funciones útiles que pueden optimizar su flujo de trabajo. Por ejemplo, aquí podemos ver la capacidad de usar variables de entorno.

Cuando se trabaja con API, es común repetir valores idénticos en varias solicitudes. Realizar esta tarea manualmente puede ser lento y difícil. El uso de variables de entorno resuelve este problema al permitirle definir un valor y luego hacer referencia a ese valor donde sea necesario.

 

3.- Boost Git Superpoderes con hub

La mayoría de nosotros pasamos mucho tiempo en GitHub. Hub es una herramienta de línea de comandos que le ayuda a realizar tareas cotidianas de GitHub sin tener que cambiar constantemente desde el terminal. Hub envuelve Git y lo extiende con funcionalidad adicional, que incluye repositorios de clonación, enumera los últimos problemas abiertos y comparte registros o fragmentos de código a través de Gist. Hub no solo facilita el trabajo con GitHub, sino que mejora la productividad al reunir todas sus herramientas en un solo entorno.

Hay una extensa lista de comandos y acciones que puede realizar con hub. Aquí está la lista completa de comandos de instalación. También puede encontrar la lista ejecutando el comando man hub en su terminal.

 

4.- Acceso a la documentación sin conexión con DevDocs

Todos usamos documentación (algunos de nosotros bastante). Cuando trabaja en una pila de múltiples tecnologías, puede llevar mucho tiempo y puede ser inconveniente cambiar constantemente de un conjunto de otro a otro. DevDocs resuelve este problema. DevDocs es una herramienta gratuita y de código abierto para explorar una amplia variedad de lenguajes de programación y documentación de herramientas de desarrollo, todo a la vez en una única interfaz de usuario web limpia y organizada.

     DevDocs ofrece:

  • Búsqueda instantánea
  • Soporte fuera de línea
  • Soporte móvil
  • Tema oscuro
  • Shortcut de teclado
    Y más

 

Lo uso para trabajar con múltiples idiomas o herramientas. Por ejemplo, lo uso ampliamente para leer y buscar la documentación de Vue y Cypress al mismo tiempo.

 

5.- Escalar imágenes SVG con SVGOMG

Y, finalmente, cambiando de marcha a una herramienta más práctica, tenemos SVGOMG, una herramienta en línea gratuita para optimizar archivos de gráficos vectoriales escalables (SVG).
Las imágenes SVG son preferibles a otros formatos (como PNG o JPG) debido a su capacidad para escalar y seguir respondiendo en varios dispositivos y tamaños de pantalla. Una desventaja de usar SVG es que los archivos pueden llegar a ser muy grandes debido a la información redundante, como metadatos del editor, comentarios, elementos ocultos y valores predeterminados o no óptimos.
SVGOMG es una herramienta que elimina y optimiza de manera segura estos datos para reducir el tamaño del archivo.

La imagen de arriba muestra un escenario típico, donde un archivo SVG ha sido optimizado en un 69.42%. Esta es una herramienta bastante simple, pero puede ayudar a mejorar el rendimiento general de su sitio web y evitar la hinchazón en su página web. SVGOMG es una implementación de interfaz de usuario de SVGO Optimizer, que es una herramienta de línea de comandos basada en Node.js.

 

Conclusión

Encontrar formas de mejorar la forma en que trabajamos es importante. Al aprovechar las herramientas anteriores, puede aumentar su productividad y optimizar su flujo de trabajo.
Comience a priorizar las herramientas que ayudan a automatizar su flujo de trabajo, y será recompensado con ahorros de tiempo y ganancias de productividad.

 

fuente5 Web Development Tools That Can Improve Your Productivity

3 hábitos que te ayudarán a convertirte en un mejor desarrollador

¿Quién o qué, según usted, es el mejor amigo de un programador?

Algunos dicen café, otros dicen atajos de teclado pero creo que es Stack Overflow.

Siempre ahí para ayudar, en las buenas y en las malas. No importa si los problemas son pequeños o grandes, siempre está ahí.

Pero a veces las respuestas que buscas no están ahí y solo tienes que hacerlo hasta que funcione. Te garantizo que has estado en ese lugar muchas veces. A veces esa rutina puede ser horas, y toda la motivación se escapa por la ventana.

Hay algunas cosas que he aprendido trabajando en varios proyectos, aparte de la nueva tecnología / lenguaje / marco: la necesidad de documentación y la capacidad de ver la visión holística del sistema.

Esto puede sonar muy simple y obvio, pero no muy común entre los desarrolladores. He visto varias veces que los problemas que surgen durante el desarrollo son bastante similares. E incluso si los ha resuelto en el pasado, tiende a buscar en Google y encontrar la solución exacta.

Este enfoque funciona siempre, pero hay muchas búsquedas y desplazamientos, ya que no todas las soluciones son simples. Debe desplazarse por varias publicaciones y varias respuestas en Stack Overflow solo para llegar a la que resuelve su problema. Puede ser frustrante a veces.

Estos tres hábitos lo ayudarán a reducir el tiempo de respuesta para un problema y mejorarán su comprensión en general.

 

  1. Documente los problemas

Muchas veces durante el desarrollo, nos topamos con muchos problemas con las librerías y frameworks que utilizamos. Es más evidente al usar nuevas tecnologías como Spring Boot con Kotlin en lugar de Java.

En general, tenemos todo el contexto y la comprensión del problema en cuestión cuando estamos desarrollando la función. Y, naturalmente, se convierte en el mejor momento para documentar el problema.

Recientemente estaba trabajando con Hibernate en Kotlin y me encontré con un problema en el que no era posible usar clases de datos para crear entidades. Luché por algún tiempo antes de encontrar un buen artículo que explicara el problema y la posible solución. Guardé ese enlace.

Y en lugar de saltar rápidamente a la solución e implementarla mi problema, comencé a cavar más profundo. Observé que hay muchas bibliotecas que tienen problemas similares debido a los problemas de compatibilidad con Kotlin. La próxima vez que vea algo así, puedo revisar rápidamente ese artículo para actualizar mi memoria y dar con la solución.

¡No intentes terminar rápidamente la tarea que tienes en tu plato, en lugar de eso, trata de aprender y documentar tanto como puedas!

 

  1. Crear diagramas de arquitectura

Este es muy importante para todos los desarrolladores. No importa en qué nivel estés. Debe ser bueno para ver la imagen más grande de cualquier sistema de software. Cuando comienza a crear los diagramas de arquitectura, comienza a darse cuenta de cuánto no sabe sobre el sistema. Esto le brinda la oportunidad de profundizar y comprender bien el sistema.

Generalmente trato de entender la imagen completa de un sistema de software. Comienzo mirando el servidor de fondo, entendiendo cómo se configura la infraestructura y las dependencias de terceros. Obtener una vista rápida del sistema completo me ayuda a comprender cuáles son los componentes móviles del sistema, independientemente de si estaría trabajando en eso directamente.

Lo siguiente que hago es dibujar un diagrama aproximado de mi comprensión. Me suele faltar mucha información importante durante la primera versión, pero mejoro iterando y haciendo preguntas a las personas relevantes. Un diagrama muy parecido a una imagen vale más que mil palabras. Consulte este enlace para comprender varios tipos de diagramas de arquitectura.

 

  1. Mantener un registro diario

Muy simple y muy efectivo. Mantenga un registro diario del trabajo que realiza. Intenta resaltar las cosas más importantes que haces en un día en particular. No tomará más de 5 minutos.

Escribir sobre el problema con el que tropezó en un día en particular sería lo primero que documentaría. Intenta ser detallado y mencionar información relevante. Además, asegúrese de anotar las cosas que están pendientes de usted o las cosas que necesita de otros miembros del equipo. Podrían ser nuevos diseños del equipo de diseño o el alcance de una característica particular de los dueños del producto.

Esto lo ayudará a asegurarse de no olvidar nada. Serás proactivo al acercarte a las personas y podrás terminar las cosas rápidamente. Esta es una de las cosas que puede diferenciarte del resto de la multitud.

El día de un desarrollador puede estar muy ocupado a veces, con todas las reuniones y la presión de entrega. Y cuando olvida algo para implementar o cambiar, no importa cuán pequeño sea, puede generar grandes problemas.

Consejos de productividad para programadores

6 consejos que le ayudan a maximizar la productividad

“Enfocarse en ser productivo en lugar de estar ocupado». Es una cita de Tim Ferriss que lo resume bastante bien. Aunque nos gustaría pensar que estar ocupado y ser productivo son lo mismo, la mayoría de las veces no lo son.

Es fácil parecer o sentirse ocupado como programador, sin lograr realmente mucho. Pasar demasiado tiempo leyendo correos electrónicos o en tareas repetitivas no aporta mucho valor.

Cuando eres productivo, realizas un trabajo de calidad que te ayuda a terminar tareas importantes o acercarte a una meta. Por otro lado, estar ocupado significa que no se está permitiendo mucho tiempo libre porque constantemente está tratando de trabajar en demasiadas cosas, independientemente de si son productivas o no.

Una persona ocupada puede pasar días sin nada tangible que mostrar por su tiempo y esfuerzo. No quieres ser esa persona que solo está ocupada. ¿Cómo puedes ser más productivo como programador en lugar de solo estar ocupado?

Consejo 1. Sepa cuándo alejarse de su computadora

La codificación puede ser intensa, especialmente cuando terminas codificando durante varias horas seguidas. Es inevitable que mire fijamente su pantalla de vez en cuando sin saber cómo resolver el problema que enfrenta.

Como se dijo antes, la productividad no equivale a las horas que pasan detrás del teclado. Mirar fijamente tu pantalla durante demasiado tiempo te dará una falsa sensación de productividad, ya que estás ocupado pero aún no haces nada.

Despeja tu cabeza por unos minutos y refresca tu enfoque. Estire las piernas o tome algo de beber. Descubrirá que puede resolver los problemas más rápidamente.

Descubrirá que la solución a muchos problemas difíciles aparece repentinamente en su cabeza mientras realiza alguna otra tarea mundana. Cada vez que te encuentres mirando tu pantalla nuevamente, aléjate. ¡Lo más probable es que te ayude!

«A veces es mejor dejar algo solo, hacer una pausa, y eso es muy cierto en la programación». – Joyce Wheeler

 

Consejo 2. Pase tiempo aprendiendo nuevas herramientas

Las herramientas que usa definen su forma de trabajar. Además de dominar las herramientas que usa, debe pasar tiempo aprendiendo nuevas herramientas.

Los desarrolladores tienen necesidades únicas dependiendo de su área de enfoque. No hay una lista de herramientas que todo desarrollador necesita. Las herramientas que necesita son diferentes para cada desarrollador. En gran parte, depende de su pila tecnológica, un desarrollador de Java utiliza herramientas diferentes que un desarrollador de Python. E incluso si la pila tecnológica es la misma, cada desarrollador tiene sus propias preferencias, por supuesto.

Debe dedicar algo de tiempo para averiguar qué herramientas tiene disponibles y qué herramientas le gustan más.

El objetivo es siempre buscar herramientas que puedan reducir la cantidad de trabajo manual y repetitivo posible. Esto nos lleva al siguiente consejo.

 

Consejo 3. Automatiza todo lo que puedas

Como con la mayoría de los trabajos, algunas cosas tienden a ser muy repetitivas. La programación definitivamente no es una excepción a esto. De hecho, la programación es probablemente uno de los trabajos en los que podría automatizar la mayoría de sus tareas repetitivas.

Automatizar tantas cosas como sea posible lo ayuda a pasar menos tiempo haciendo cosas manuales y costosas. Por supuesto, inicialmente debe dedicar un tiempo a crear el script para automatizar una determinada tarea, pero a la larga esto se amortizará.

Esto no es solo porque podría ahorrar algunos minutos debido al hecho de que no tiene que hacer una determinada tarea manualmente. Lo que también importa es que no necesitas romper tu enfoque para hacer una tarea aburrida que has hecho infinitamente.

La automatización te ayuda a concentrarte en las tareas más grandes al ocuparte de las monótonas.

 

Consejo 4. Primero trabaje en su tarea más importante

Su tarea más importante es una responsabilidad crítica que creará los resultados más esenciales que desea lograr. Todas las tareas en su plato no son críticamente importantes, así que no las trate como si fueran lo mismo.

Identifique su tarea más importante y hágalo primero.

Eso es todo lo que se necesita.

A continuación, debe tener la disciplina de programar el tiempo para trabajar en su tarea más importante. Trabaja en esa tarea a primera hora de la mañana. No puedo enfatizar esto lo suficiente. Los psicólogos conductuales dicen que estamos en nuestro mejor momento durante un período de dos horas por la mañana.

Deje de trabajar en la tarea más importante de todos los demás en este período de tiempo respondiendo sus correos electrónicos y llamadas telefónicas, por ejemplo. Termine su tarea más importante antes de responder a todos estos correos electrónicos y llamadas telefónicas.

 

Consejo 5. Cree un plan antes de escribir el código

Crear un plan antes de comenzar a escribir código lo mantiene enfocado. Como resultado, usted sabe exactamente qué construir y cómo quiere abordar la solución del problema. Esto le permite no dejar que sus pensamientos se desvíen o agregar algunas características innecesarias que cree que podrían ser útiles en el futuro.

Antes de siquiera pensar en la codificación, debe asegurarse de comprender todos los requisitos. Para construir o arreglar algo, debes entender lo que se supone que debes codificar.

Los detalles más pequeños pueden tener un gran impacto en la solución que está buscando implementar, por lo que realmente debe comprender los requisitos.

Una vez que haya hecho esto, puede comenzar a hacer un plan que puede hacer al desglosar su problema o presentarlo en partes más pequeñas.

Piense en los problemas que enfrentará e investigue todo lo que necesita. Si bien es posible que no planifique cuando trabaje en una aplicación pequeña, para aplicaciones más grandes, la no planificación tiene un gran efecto negativo.

 

Consejo 6. Apártate de las redes sociales

El último, pero definitivamente, no menos importante consejo para aumentar su productividad es desconectarse de las redes sociales. Las redes sociales son una gran distracción. Y por alguna razón, tendemos a verificarlo cada 10 minutos para ver si no nos estamos perdiendo algo. Solo para descubrir que no pasó nada interesante.

Si no tiene cuidado, las redes sociales pueden absorber gran parte de su valioso tiempo. Cada vez que te distraes con las redes sociales, lleva tiempo volver a centrarte y, mientras tanto, nada se hace fácilmente.

Este es posiblemente el consejo que podría aumentar más su productividad, dependiendo de sus hábitos en las redes sociales. La mejor parte de este consejo es que se puede aplicar sin mucho esfuerzo.

Resumen rápido

Las ganancias de productividad vienen con el tiempo, así que no espere ver ganancias masivas de productividad a corto plazo. Concéntrese en un elemento de esta lista a la vez y verá que se vuelve más productivo con el tiempo.

Estas son las 6 cosas que puedes hacer para ser más productivo:

  • Sepa cuándo alejarse de su computadora
  • Pase tiempo aprendiendo nuevas herramientas
  • Automatiza todo lo que puedas
  • Primero trabaje en su tarea más importante
  • Cree un plan antes de comenzar a escribir código
  • Desconectarse de las redes sociales

 

Fuente: https://levelup.gitconnected.com/productivity-tips-for-programmers-6519939914ca