Este programador no está de acuerdo con elegir la herramienta adecuada a cada problema. Así explica por qué

"El lenguaje Go es mi martillo, y para mí todo es un clavo"

Go
6 comentarios Facebook Twitter Flipboard E-mail

En el mundo del desarrollo de software, existe un viejo adagio que reza: "Siempre elige la herramienta adecuada para el trabajo". Sin embargo, Markus, un desarrollador independiente de productos digitales, ha decidido no sólo desafiar este fragmento de sabiduría convencional, sino argumentar en contra del mismo, y a favor de su decisión de apostar por una única herramienta para todas sus necesidades como programador: el lenguaje de programación Go.

Fue en 2016 cuando Markus comenzó a experimentar con Go, un lenguaje de programación desarrollado por Google que, en ese momento, no le causó una gran impresión. Sin embargo, con el tiempo, algo hizo clic, y Go se convirtió en su herramienta de referencia, hasta el punto de abandonar otros lenguajes como Python y Javascript.

Un vistazo a…
La carrera de programador en 2017 y en el futuro (con Javier Santana)

Una filosofía de trabajo

Para Markus, el verdadero éxito no se mide por la cantidad de lenguajes que uno domina, sino por la capacidad de desarrollar proyectos relevantes de manera eficiente. Y para él, el lenguaje Go es la herramienta perfecta para lograrlo. De hecho, una frase resume su filosofía personal en este campo:

"Go es mi martillo, y [para mí] todo es un clavo".

Pero hay un factor a tener en cuenta para comprender esa filosofía:

"Estoy solo: no tengo equipo ni subcontratistas y tengo la intención de que siga siendo así. He seguido un estilo de vida que incluye tener mi propio negocio [...] estructurar mi trabajo en torno al resto de mi vida, por así decirlo".

Para Markus, ser un desarrollador solitario afecta decisivamente a las elecciones sobre qué herramientas usar: en un entorno de equipo, es fácil dividir la carga de trabajo entre varios miembros, pero cuando se está solo, la complejidad de la tecnología puede convertirse rápidamente en un obstáculo.

Como él mismo señala, tener una 'pila tecnológica' demasiado compleja puede provocar que se dedique más tiempo a mantener la infraestructura que a desarrollar productos.

Razón 1: Go es multifacético

Una de las razones principales por las que Markus decidió adoptar Go como su herramienta universal es su versatilidad. Aunque cada lenguaje de programación tiene sus fortalezas y debilidades, la mayoría de ellos pueden, en última instancia, hacer casi cualquier cosa.

Go, según Markus, es simple, fácil de leer y coherente. Aunque reconoce que no todo en Go es perfecto, sí es ideal para tareas 'normales' como el desarrollo de aplicaciones de línea de comandos, o de infraestructura en la nube y servidores HTTP, pero también permite cosas menos habituales como la creación de juegos para la Nintendo Switch o de aplicaciones con interfaz gráfica (GUI).

Razón 2: Buscar estabilidad

Markus destaca un problema común entre los desarrolladores que trabajan con múltiples lenguajes: el cambio constante de contexto. Pasar de un lenguaje a otro puede ser un desafío mental significativo, ralentizando el trabajo y generando frustración. Sin embargo, al limitarse a un solo lenguaje, Markus ha eliminado esta fricción.

Pero cada lenguaje de programación no es sólo un conjunto de reglas de sintaxis para desarrollar software; también implica un compilador, un entorno de desarrollo integrado (IDE), un ecosistema de bibliotecas y programas y una comunidad con la cual interactuar. Mantenerse al día con todos estos elementos en varios lenguajes puede resultar estresante.

Razón 3: Profundizar

Así, al centrarse exclusivamente en Go, Markus ha podido 'limitarse' a profundizar en su comprensión y dominio de Go. Este enfoque le ha permitido explorar aspectos del lenguaje que de otro modo no habría considerado, lo que no sólo ha aumentado su productividad, sino que también le ha permitido convertirse en un verdadero experto en Go.

Markus es consciente de que su decisión podría parecer que limita sus opciones de carrera, pero no lo ve de esa manera: para él, el mundo del desarrollo de software es inmenso, con un número prácticamente infinito de proyectos... y aun limitándose de esta forma, este campo es suficientemente vasto como para mantenerlo ocupado durante toda su carrera.

Vía | Maragu.dev

Imagen | Marcos Merino mediante IA

En Genbeta | Por qué muchos programadores dicen que los lenguajes no importan: el secreto está en el pseudocódigo y la sintaxis

Inicio