La terminal como mi IDE
Como desarrollador back-end, paso gran parte de mi día en la terminal trabajando en proyectos. Siempre estoy buscando optimizar mi flujo de trabajo para ser más productivo. En este post, quiero compartir la configuración de herramientas en la terminal que finalmente me permite tener un entorno ágil y eficiente.

En particular, les hablaré de cómo uso zsh junto con oh-my-zsh para tener una experiencia más agradable en la línea de comandos. También les contaré cómo vim se ha convertido en un reemplazo perfecto para un IDE tradicional en mi flujo de trabajo. Por último, les explicaré por qué wezterm se ha ganado el puesto de emulador de terminal predilecto para mí, además de algunas otras herramientas.
Antes solía usar editores como Sublime Text y Visual Studio Code. Pero empecé a tener problemas con el rendimiento lento debido a la acumulación de plugins y extensiones. Además, encontrar la configuración ideal entre tantas opciones siempre fue difícil.
Por ello, decidí darle una oportunidad a Vim. Al principio fue frustrante, ¡incluso tuve que cerrar la terminal un par de veces porque no podía “salir” de Vim! Estaba tan acostumbrado a los atajos y el flujo de trabajo de otros editores, que memorizar todos los nuevos atajos y comandos en modo normal de Vim se me hizo todo un desafío. Pero después de esas batallas iniciales, una vez que logré entrar al modal editor de Vim, rápidamente empecé a notar beneficios. Vim es increíblemente ligero y rápido. Los atajos de teclado me permiten navegar y editar sin necesidad del mouse. Y la cantidad de plugins y personalizaciones es enorme.
Configuré Vim con plugins esenciales como NERDTree para explorar archivos y fzf para búsquedas rápidas. También instalé un tema limpio para evitar distracciones. Con atajos de teclado para todo, ahora puedo mantener las manos en el teclado y lograr más en menos tiempo.

Además, Vim me permite tener un entorno de desarrollo consistente en cualquier máquina sin importar el sistema operativo. Combinado con tmux para administrar múltiples ventanas y paneles, y zsh para una experiencia superior en la terminal, siento que finalmente he creado mi configuración perfecta.
Si bien Vim no es para todos, para mí representa velocidad, eficiencia y flexibilidad. Justo lo que buscaba para mis necesidades como desarrollador. Con la configuración correcta, Vim puede ser un editor liviano, minimista y muy productivo.
Ahora con un par de años de uso he incorporado algunas otras herramientas que complementan muy bien mi flujo en Vim. Por ejemplo, tmux y tmuxinator me permiten administrar múltiples paneles y sesiones en la terminal. lazy-git y lazy-docker agilizan las tareas de Git y Docker directamente desde la línea de comandos.

También he mejorado mucho mi experiencia en zsh instalando oh-my-zsh, lo cual me brinda acceso a plugins útiles como z para navegar rápido entre directorios, así como temas y autocompletado inteligente. Otras herramientas como bat, ripgrep y fd son perfectas para trabajar con archivos y búsquedas en la terminal.

La combinación de todas estas herramientas me da un entorno de desarrollo ágil y productivo completamente en la terminal. Puedo codificar, debuggear, controlar versiones, desarrollar con contenedores y más, sin necesidad de un GUI. La curva de aprendizaje valió la pena, ya que ahora siento que tengo un flujo eficiente optimizado para productividad.
Luego de unos años refinando mi configuración, finalmente siento que logré un entorno productivo que me permite aprovechar al máximo las horas de trabajo. Si deseas tips para mejorar tu propia terminal, ¡sígueme! Estaré compartiendo más sobre cómo optimicé cada una de estas geniales herramientas.