Skip to content

Las herramientas que usamos (Programmer’s toolbox)

4 min.

El trabajo de un desarrollador es tan complejo como caótico. Tanto, que la única esperanza de conseguir algo de orden en el día a día es usar un montón de programas. Herramientas que mantienen nuestras tareas un poco más organizadas y nos hacen más eficientes. Ser conscientes de lo que necesitamos es necesario para saber qué utilidades elegir.

Editores de texto

La principal actividad de un desarrollador, a parte de pensar, es escribir código. En un principio, cualquier programa que sirva para escribir texto plano (es decir, no nos sirve el Word®) es válido.
Existen versiones para consola, escritorio e incluso tenemos servicios web que nos permiten escribir el código en el navegador para tenerlo siempre en la nube. ¿Quieres una lista? Aquí la tienes:

  • Notepad++, disponible para Windows únicamente
  • Sublime Text, para todas las plataformas. Es muy rápido
  • Atom, creado por Github y de código abierto. Es muy moderno y cool, pero da algún problema con archivos grandes
  • TextMate, disponible para Mac
  • Gedit, se puede instalar en linux usando apt-get

Todos estos editores ofrecen resaltado de sintaxis, tienen diversos temas de colores personalizables y pueden tener varios archivos abiertos a la vez. Algunos permiten también instalar plugins para obtener características más especializadas para tu lenguaje de programación.

Personalmente, uso Sublime Text desde hace años. Recientemente he probado Atom… Pero de momento, no consigue convencerme tanto como Sublime. Si me conoces y me preguntas por el tema, es el editor que recomiendo siempre (y no, no me pagan por decirlo).

IDEs

Cuando tenemos que meternos en un proyecto con más de dos archivos, con dependencia de librerías… Los entornos integrados de desarrollo se hacen necesarios.

IntelliJ Idea
Captura de IntelliJ Idea, IDE para Java que ha sido adaptado a casi todos los lenguajes populares

Comprueban la sintaxis del código que escribes para evitar errores innecesarios. Completan el código con funciones y variables usadas en los trozos ya escritos. Conocen la estructura de tu proyecto, de forma que conocen las relaciones entre distintas partes del código. Así, ir a la declaración de una clase, función o método suele hacerse con un Ctrl+click.

Todas estas pequeñas ayudas nos evitan tener que memorizar el funcionamiento de un proyecto por completo, así que hay quien critica usar un IDE ya que nos deja ponernos cómodos. Me gustaría poder gestionar y conocer el trabajo que hace un equipo de más de una persona yo solito… Pero mi pequeño y limitado cerebro se empeña en no permitírmelo 😊.

Estos entornos suelen ser específicos para cada lenguaje de programación, para cada caso tendrás que buscar uno diferente. Suelen incluir un debugger para probar el código sin tener que salir del programa, compilarlo/ejecutarlo a mano y pasarte horas buscando un fallo tonto. La única pega de los IDE es su uso intensivo de memoria ram, pero en la mayoría de máquinas no hay ningún problema.

Cliente GIT gráfico

Al trabajar en equipo, se hace necesario usar algún tipo de control de versiones. El que conozco yo es git, el más popular hoy en día gracias a la aparición de Github hacia el año 2008. Todos los programas de control de versiones son extremadamente minimalistas: hacen muy bien su trabajo, pero hay que pasar por la Terminal para usarlos. Y como son muy potentes, hay cientos de comandos para aprender…

La solución son los clientes gráficos. Permiten ver los cambios en el código de forma visual, viendo lo que se ha introducido en cada commit, el historial, y los autores de cada cambio.

Hace poco hice una presentación de un cliente que ha aparecido hace poco, GitKraken. Tiene un diseño bonito. Aún es pronto para valorarlo, pero tengo planeado compararlo con otros clientes como SourceTree y SmartGit.

El año pasado utilicé intensivamente SourceTree. Recientemente me he cambiado a GitKraken porque quiero ver si me convence. Si lo hace, lo pondré en mi ordenador Linux, en el que no puedo poner el cliente de Atlassian ST y tengo que escribir todos los comandos a mano en la consola.

Productividad

Sí, las listas de tareas y los organizadores también tienen cabida a la hora de picar código. Escribir un simple programa tiene multitud de subtareas. Mantener código ya escrito (es decir, corregir pequeños bugs, dar soporte a los usuarios y dar a conocer el proyecto) no es nada sencillo.

De hecho, incluso los grandes proveedores de servidores para git como el mencionado Github y Bitbucket implementan Bug Trackers, que no son más que listas para recordar qué errores hay que solucionar en el código.

Lo ideal es tenerlo todo más o menos anotado, aunque sea una lista de cosas que tenemos que hacer periódicamente. Personalmente, uso una combinación de la aplicación Notas y listas de Wunderlist. Pero cualquier opción es válida, sea gratis o de pago, más o menos completa, mientras te sea útil para mantenerte al día y organizado. ¡No vaya a ser que te olvides de algo!

Team Chat

Se dice que los grupos de whatsapp y facebook se están convirtiendo en herramientas de comunicación interna en todo tipo de empresas. Aunque doy fe de ello, hay momentos en que no puedes estar pendiente de lo que dicen tus amigos: estás trabajando. Necesitas estar concentrado, o la procrastinación llega tarde o temprano. Además, estas vías de comunicación no siempre son las más eficientes si estamos trabajando desde un ordenador.

Los chats como Slack y HipChat permiten una comunicación rápida con tu equipo. Puedes mencionar a @personas @en @concreto, para no molestar a todo el mundo. Puedes crear salas para unas pocas personas, y luego una para todos. ¡Sencillo! Es la comunicación interna hecha rápida. Se suele decir que estos servicios son sustitutos ideales para el correo electrónico.

· · ·

¿Qué herramientas usas tú para programar? ¡No olvides dejar tu comentario!

Published inCajón de sastre
Copyright © 2017 Enric Florit
efz1005(at)gmail(dot)com

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR