{"id":34618,"date":"2026-01-26T15:22:18","date_gmt":"2026-01-26T14:22:18","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/?p=34618"},"modified":"2026-01-26T15:29:51","modified_gmt":"2026-01-26T14:29:51","slug":"menos-es-mas-tambien-en-programacion","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/","title":{"rendered":"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n"},"content":{"rendered":"\n<p>Escribir software es un acto que, aparentemente, cualquiera puede realizar. Te sientas, enciendes un ordenador, abres un IDE, un editor, VI si tienes el coraz\u00f3n puro o cualquier otra cosa (s\u00ed, tambi\u00e9n vale el Notepad) y empiezas a teclear.<\/p>\n\n\n\n<p>Ni siquiera hacen falta especificaciones detalladas: \u00bfpara qu\u00e9 sirven cuando lo tienes todo en la cabeza? A veces basta con una idea y las ganas de conseguir un resultado. Y algo, inevitablemente, sucede.<\/p>\n\n\n\n<p>El primer &#8220;Hello World&#8221; es siempre un momento m\u00e1gico, pero es solo el principio.<\/p>\n\n\n\n<p>Superado el primer obst\u00e1culo, se descubre que escribir software es un proceso continuo de aprendizaje y adaptaci\u00f3n. Aunque al principio es complicado, con el tiempo se aprenden los rudimentos: frameworks, librer\u00edas, patrones de dise\u00f1o. Se entiende c\u00f3mo estructurar el c\u00f3digo, c\u00f3mo modularizarlo, c\u00f3mo probarlo. Y al final, tras d\u00edas o semanas de trabajo, se obtiene algo que funciona \u2014quiz\u00e1s no exactamente como lo ten\u00edamos en la cabeza, pero funciona: y en ese momento es una explosi\u00f3n de adrenalina y satisfacci\u00f3n.<\/p>\n\n\n\n<p>Incluso los m\u00e1s pesimistas, esos a los que les cuesta pedir hasta un vaso de agua a su madre, tras horas, d\u00edas y semanas siempre encuentran una soluci\u00f3n.<\/p>\n\n\n\n<p>Antes estaban los amigos, luego llegaron los foros. Hoy podemos incluso confiar en una inteligencia artificial o un agente: escribimos nuestra idea, aunque sea con errores gramaticales, y empieza la magia.<\/p>\n\n\n\n<p>Pero hoy no quiero hablar de esto. Dejemos de lado por una vez el aspecto rom\u00e1ntico de la programaci\u00f3n, la creencia popular de que basta con poner las manos en un teclado para hacer cosas incre\u00edbles, y no hablemos de c\u00f3mo se construye el software o de c\u00f3mo se llega a un resultado: el mundo est\u00e1 lleno de cursos y manuales.<\/p>\n\n\n\n<p>De lo que me gustar\u00eda hablar hoy es de uno de los aspectos m\u00e1s complejos y menos discutidos de la programaci\u00f3n: el coraje de eliminar c\u00f3digo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-el-verdadero-desafio-no-es-un-programa-que-funcione\">El verdadero desaf\u00edo no es un programa que funcione<\/h2>\n\n\n\n<p>El resultado es solo el primer escal\u00f3n de la construcci\u00f3n de un software. Cualquier programador, m\u00e1s o menos convencido de sus propios medios, dir\u00e1 siempre que puede conseguirlo. Quiz\u00e1s mienta un poco sobre los tiempos o los objetivos reales, pero su respuesta siempre ser\u00e1: &#8220;Puedo hacerlo&#8221;. (Excluyo de este grupo a los pesimistas cr\u00f3nicos que empiezan diciendo &#8220;es imposible&#8221;; a esos los descartaremos por practicidad).<\/p>\n\n\n\n<p>El verdadero desaf\u00edo no es, por tanto, entregar un programa que funcione. El verdadero desaf\u00edo es no dejarse abrumar por el propio software: no perder el control, no transformar un banal servicio REST de 10 l\u00edneas en un monstruo devora-discos (y hablo por experiencia personal).<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">El crecimiento del software es entrop\u00eda y el trabajo del programador experto es combatir esta entrop\u00eda.<\/code><\/span><\/pre>\n\n\n<p>A menudo se compara el c\u00f3digo con un activo, cuando en realidad es un pasivo. Si razonamos pensando que el c\u00f3digo que escribimos es un patrimonio, perdemos el aspecto m\u00e1s fundamental de todo el proceso de creaci\u00f3n: cuando escribimos c\u00f3digo estamos creando una deuda. Cada l\u00ednea de c\u00f3digo debe ser le\u00edda, entendida, mantenida, probada y, un d\u00eda, actualizada o eliminada.<\/p>\n\n\n\n<p>Cuanto menos c\u00f3digo hay, menor es la superficie de ataque para los bugs y menor es el coste de mantenimiento.<\/p>\n\n\n\n<p>Esto a menudo se subestima, especialmente en contextos empresariales donde el foco est\u00e1 en &#8220;entregar funcionalidades&#8221; m\u00e1s que en &#8220;mantener un c\u00f3digo sano y manejable&#8221;.<\/p>\n\n\n\n<p>Quien trabaja para empresas de producto iluminadas deber\u00eda saber lo importante que es tambi\u00e9n el mantenimiento, la eliminaci\u00f3n del c\u00f3digo obsoleto, la gesti\u00f3n de las dependencias. Porque un software nunca est\u00e1 &#8220;terminado&#8221;. Es un organismo vivo que evoluciona, crece, a veces enferma. Cuando falta esta visi\u00f3n, falta una planificaci\u00f3n que tarde o temprano llevar\u00e1 inevitablemente al colapso.<\/p>\n\n\n\n<p>He tenido la suerte\/mala suerte de seguir ambos tipos de proyectos. Algunos donde solo hab\u00eda un objetivo: entregar, y que con el tiempo implosionaron en toneladas de c\u00f3digo descoordinado; otros en los que era normal hacer refactorizaci\u00f3n continua, eliminar c\u00f3digo obsoleto y mantener una base de c\u00f3digo limpia y mantenible. La diferencia entre los dos mundos es abismal.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-todos-somos-acumuladores-compulsivos\">Todos somos acumuladores compulsivos<\/h2>\n\n\n\n<p>\u00bfConoc\u00e9is el programa &#8220;T\u00fa ensucia que yo limpio&#8221; (o &#8220;Acumuladores compulsivos&#8221;)? Personas que acumulan objetos in\u00fatiles, llenando sus casas hasta hacerlas invivibles. El software sufre de la misma patolog\u00eda.<\/p>\n\n\n\n<p>Ya sea que lo escribamos nosotros o, peor, que lo haga una IA, el c\u00f3digo empieza a aumentar de volumen. Primero pocas clases, pocas funciones y pocos scripts, pero con el tiempo nos encontramos inundados no solo de nuestro c\u00f3digo, sino tambi\u00e9n de dependencias externas, librer\u00edas, m\u00f3dulos, plugins. Admito que yo tambi\u00e9n he ca\u00eddo varias veces en esta vor\u00e1gine, dado que me impongo que cada repositorio que creo sea autocontenido, con todas las dependencias necesarias para funcionar: he visto proyectos bloquearse por la falta de una sola librer\u00eda.<\/p>\n\n\n\n<p>Los VibeCoders que me lean quiz\u00e1s no me entiendan a\u00fan, pero con el tiempo se dar\u00e1n cuenta de que las IAs tienen un solo objetivo: producir c\u00f3digo que funcione y, si no lo hace, autoconvencerse de que s\u00ed.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"545\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-2-nanobananpro_redux.png\" alt=\"\" class=\"wp-image-34624\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-2-nanobananpro_redux.png 1000w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-2-nanobananpro_redux-300x164.png 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-2-nanobananpro_redux-768x419.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>El \u00faltimo objetivo de una IA es optimizar el c\u00f3digo o reducir su complejidad: este aspecto no es importante para ellas y, por ahora, est\u00e1 delegado completamente a nosotros los humanos. Si los &#8220;humanos&#8221; no se preocupan del problema, mucho menos se preocupar\u00e1n las IAs por nosotros.<\/p>\n\n\n\n<p>Es aqu\u00ed donde nuestro papel cambia radicalmente. Las IAs generativas son potentes &#8220;f\u00e1bricas de a\u00f1adidos&#8221;, capaces de escribir miles de l\u00edneas en pocos segundos. Esto desplaza el papel del humano de &#8220;escritor&#8221; a &#8220;editor&#8221; o &#8220;curador&#8221;. Nuestra habilidad m\u00e1s importante se convertir\u00e1 en la capacidad de validar, simplificar y rechazar el c\u00f3digo generado por la IA, no solo de producirlo. Por esto es importante dar una gu\u00eda a las herramientas basadas en el <em>vibe<\/em>: no basta con decir &#8220;genera un CRM&#8221;, debemos tener en la cabeza la arquitectura, las dependencias, el mantenimiento futuro y, en consecuencia, dividir todo dando un bocado a la vez a la IA.<\/p>\n\n\n\n<p>Si quer\u00e9is daros cuenta de si est\u00e1is al borde del abismo o ya en ca\u00edda libre, haced una prueba: inspeccionad la carpeta <code>node_modules<\/code> de un proyecto vuestro, o las creadas por Maven o NuGet. En un proyecto m\u00edo bastante simple tengo 1 MB de mi c\u00f3digo y 20 MB de node_modules. La sensaci\u00f3n de que se me ha ido de las manos es muy alta y apenas estoy al inicio del proyecto.<\/p>\n\n\n\n<p>\u00bfOs hab\u00e9is preguntado alguna vez: &#8220;\u00bfPor qu\u00e9 mi &#8216;Hello World&#8217; de tres l\u00edneas requiere 200 MB de dependencias?&#8221;? Si nunca lo hab\u00e9is hecho, hacedlo. Descubrir\u00e9is un mundo nuevo, a menudo subestimado, que puede transformar un proyecto simple en una pesadilla de mantenimiento.<\/p>\n\n\n\n<p>Chateando con otros programadores escucho a menudo frases como esta:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">No me he pasado de Vue 2 a Vue 3 porque tengo 18 dependencias que no puedo actualizar sin reescribir la mitad del proyecto.<\/code><\/span><\/pre>\n\n\n<p>Parece una excusa, pero es una realidad con la que muchos desarrolladores se enfrentan a diario.<\/p>\n\n\n\n<p>Las dependencias a menudo se toman a la ligera: acumulamos una monta\u00f1a de funcionalidades sin una verdadera raz\u00f3n. Se a\u00f1ade, se a\u00f1ade, y luego se a\u00f1ade m\u00e1s. Es f\u00e1cil a\u00f1adir una funcionalidad, especialmente si la petici\u00f3n llega de un cliente o de un product manager. Pero raramente nos paramos a preguntar: &#8220;\u00bfEs realmente necesaria esta funcionalidad?&#8221; y sobre todo nunca se vuelve atr\u00e1s.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"545\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-3-nanobananpro_redux.png\" alt=\"\" class=\"wp-image-34625\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-3-nanobananpro_redux.png 1000w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-3-nanobananpro_redux-300x164.png 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-3-nanobananpro_redux-768x419.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>Este fen\u00f3meno tiene un nombre: feature creep.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-feature-creep-el-enemigo-silencioso\">Feature Creep: el enemigo silencioso<\/h2>\n\n\n\n<p>La pregunta que debemos hacernos cada d\u00eda, cuando vemos una l\u00ednea de c\u00f3digo parada desde hace a\u00f1os, es: &#8220;\u00bfEs realmente necesaria?&#8221;<\/p>\n\n\n\n<p>La respuesta a menudo es &#8220;no&#8221;. Pero actuar frente a ese &#8220;no&#8221; es costoso. Explicarlo a un cliente o a un product manager requiere una justificaci\u00f3n t\u00e9cnica y verbal s\u00f3lida, que pocos tienen el coraje, o la fuerza, de sostener.<\/p>\n\n\n\n<p>El &#8220;feature creep&#8221; no es solo un problema de c\u00f3digo, sino de producto. Una interfaz de usuario con demasiados botones, opciones y configuraciones sufre del mismo problema. El coraje de &#8220;quitar&#8221; se aplica tambi\u00e9n al Product Manager que dice &#8220;no&#8221; a una nueva funcionalidad para mantener el producto enfocado y simple.<\/p>\n\n\n\n<p>Desconfiad tambi\u00e9n de quien os dice:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">El problema es tu cliente pesado (fat client), no las dependencias que usas.<\/code><\/span><\/pre>\n\n\n<p>Esto es solo una forma de desviar la atenci\u00f3n del verdadero problema: la acumulaci\u00f3n incontrolada de c\u00f3digo y dependencias. No es que una arquitectura tenga una ventaja sobre otra, el problema de la acumulaci\u00f3n compulsiva sigue siendo el mismo.<\/p>\n\n\n\n<p>Siendo muy quisquillosos, un cliente pesado podr\u00eda tener ventajas respecto a un cliente ligero seccionado en N servicios, dado que representa un \u00fanico punto de control, frente a verificar servicios que son, virtualmente, utilizados por un n\u00famero incontrolado de clientes, pero eso es otro tema.<\/p>\n\n\n\n<p>Las funcionalidades superfluas y las dependencias fuera de control lo complican todo. El software se vuelve fr\u00e1gil, lento, dif\u00edcil de mantener. La deuda t\u00e9cnica crece de forma invisible, hasta que se vuelve imposible ignorarla.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-la-pesadilla-del-mantenimiento\">La pesadilla del mantenimiento<\/h2>\n\n\n\n<p>Mientras estamos &#8220;con la cabeza en el proyecto&#8221; y trabajamos a diario en <em>features<\/em> y refactorizaci\u00f3n, tenemos alguna probabilidad adicional de conseguir gestionar el caos. Pero inevitablemente, si ese proyecto se deja de lado y despu\u00e9s de meses se retoma, o si el equipo var\u00eda mucho, la inevitable deriva es el caos y el aumento de la deuda t\u00e9cnica.<\/p>\n\n\n\n<p>Cuanto mayor es el n\u00famero de dependencias importadas, mayor es el problema de la obsolescencia transversal.<\/p>\n\n\n\n<p>Pero con &#8220;dependencias&#8221; no pensamos solo en la librer\u00eda X o Y que usamos para hacer el parsing de un archivo JSON. Pensamos en todo el ecosistema: versiones de lenguaje, librer\u00edas, frameworks, toolchain, sistemas de build, entornos de ejecuci\u00f3n y dem\u00e1s.<\/p>\n\n\n\n<p>A veces se acaba en un callej\u00f3n sin salida t\u00e9cnico: la actualizaci\u00f3n que necesitamos entra en conflicto con otra librer\u00eda fundamental, que a\u00fan no ha sido actualizada o cuyo mantenedor ha desaparecido en la nada. Poco importa si es open source, tambi\u00e9n este es un concepto sobrevalorado en el desarrollo de software.<\/p>\n\n\n\n<p>En ese punto las opciones son pocas: reescribir partes del software, aceptar el agujero de seguridad, o dejar todo como est\u00e1, esperando que no se derrumbe.<\/p>\n\n\n\n<p>Es f\u00e1cil decir &#8220;mi software es perfecto&#8221;. Puede ser cierto para las l\u00edneas que has escrito t\u00fa \u2014aunque a menudo son solo sesgos\u2014 pero no lo es para el ecosistema de componentes externos sobre el que se apoya.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-por-que-no-quitamos\">\u00bfPor qu\u00e9 no quitamos?<\/h2>\n\n\n\n<p>Pero \u00bfpor qu\u00e9 no quitamos? Porque tenemos miedo. Miedo de romper algo (&#8220;\u00bfY si este c\u00f3digo serv\u00eda para ese caso X que no he probado?&#8221;).<\/p>\n\n\n\n<p>Para quitar con coraje hacen falta dos cosas fundamentales: seguridad t\u00e9cnica y psicol\u00f3gica, pero sobre todo la voluntad de hacerlo.<\/p>\n\n\n\n<p>Hace falta tambi\u00e9n una cultura empresarial que premie la sustracci\u00f3n.<\/p>\n\n\n\n<p>En muchas empresas, la productividad se mide en &#8220;funcionalidades entregadas&#8221; o &#8220;tickets cerrados&#8221;. Pero \u00bfcu\u00e1ntas veces un programador es alabado por haber eliminado 1000 l\u00edneas de c\u00f3digo obsoleto? Una &#8220;Pull Request&#8221; con -1000 l\u00edneas deber\u00eda ser celebrada. Hace falta una cultura que vea la refactorizaci\u00f3n y la limpieza no como &#8220;tareas dom\u00e9sticas&#8221;, sino como parte integrante y noble del proceso de desarrollo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-el-coraje-de-quitar\">El coraje de quitar<\/h2>\n\n\n\n<p>Los verdaderos programadores son aquellos capaces de reducir.<\/p>\n\n\n\n<p>Ken Thompson, cocreador de Unix y del lenguaje C, dijo una vez:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">Uno de mis d\u00edas m\u00e1s productivos fue eliminar 1000 l\u00edneas de c\u00f3digo.<\/code><\/span><\/pre>\n\n\n<p>No s\u00e9 cu\u00e1nto de cierta es esta afirmaci\u00f3n, pero el concepto es potente. La verdadera maestr\u00eda no est\u00e1 en a\u00f1adir, sino en saber quitar sin perder funcionalidad.<\/p>\n\n\n\n<p>Tambi\u00e9n hay una frase famosa de Tony Hoare, el inventor de Quicksort:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">Hay dos formas de dise\u00f1ar software: una es hacerlo tan simple que sea obvio que no tiene defectos, la otra es hacerlo tan complicado que no haya defectos obvios. El primer m\u00e9todo es mucho m\u00e1s dif\u00edcil.<\/code><\/span><\/pre>\n\n\n<p>\u00bfC\u00f3mo no darle la raz\u00f3n? Adem\u00e1s, su licenciatura en letras, anterior a su carrera inform\u00e1tica, le daba quiz\u00e1s una ventaja para comprender la elegancia de la simplicidad.<\/p>\n\n\n\n<p>Pero dado que no hay rosas sin espinas, adem\u00e1s de esta perla, Hoare nos ha dejado tambi\u00e9n una de las mayores tragedias de la inform\u00e1tica moderna: el concepto de &#8220;NULL POINTER&#8221;. Si alguna vez os ha arruinado el d\u00eda, ahora sab\u00e9is a qui\u00e9n dar las gracias.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-solo-los-valientes-quitan-cosas\">Solo los valientes quitan cosas<\/h2>\n\n\n\n<p>Pero volvamos a nosotros. \u00bfC\u00f3mo se hace, concretamente, para quitar?<\/p>\n\n\n\n<p>El primer paso es eliminar el c\u00f3digo in\u00fatil. Parece f\u00e1cil, pero es aqu\u00ed donde saltan las resistencias, tanto estructurales como humanas. Para ganar esta batalla hacen falta armas adecuadas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tests autom\u00e1ticos robustos: una suite de tests que d\u00e9 la confianza de que, si se elimina algo esencial, un test fallar\u00e1, protegi\u00e9ndonos de regresiones inesperadas.<\/li>\n\n\n\n<li>Seguridad psicol\u00f3gica: un entorno de trabajo donde &#8220;romper&#8221; algo en un entorno de test o staging no sea un crimen, sino parte del proceso de aprendizaje y limpieza.<\/li>\n\n\n\n<li>Verificaci\u00f3n continua del uso: \u00bfcu\u00e1ntas features se han implementado a petici\u00f3n de un cliente que hoy ya no lo es? \u00bfCu\u00e1ntos procedimientos no son usados por nadie? Es fundamental hacerse estas preguntas y actuar en consecuencia.<\/li>\n\n\n\n<li>Afrontar el miedo al &#8220;\u00bfy si un d\u00eda hiciera falta?&#8221;: esta es la excusa m\u00e1s com\u00fan para no borrar. Spoiler: ese d\u00eda no llegar\u00e1 casi nunca. Y aunque llegase, las exigencias habr\u00e1n cambiado hasta tal punto que reescribir el c\u00f3digo desde cero ser\u00e1 de todos modos la mejor opci\u00f3n, antes que adaptar una soluci\u00f3n vieja y olvidada. El c\u00f3digo escrito para una &#8220;futura implementaci\u00f3n&#8221; es una hipoteca sobre el futuro que raramente se rescata.<\/li>\n<\/ul>\n\n\n\n<p>El paso siguiente es simplificar las l\u00f3gicas complejas y reducir al m\u00ednimo las dependencias. Existen casos virtuosos de software pensados para tener cero o poqu\u00edsimas dependencias, precisamente para facilitar la difusi\u00f3n y el mantenimiento.<\/p>\n\n\n\n<p>Todo proyecto de software que se precie deber\u00eda dedicar tiempo a eliminar y limpiar, como un ritual sagrado. Cada l\u00ednea de c\u00f3digo es un peso, una responsabilidad que llevamos con nosotros. Cada l\u00ednea que a\u00f1adimos es una l\u00ednea que tendremos que mantener, probar y sobre la que tendremos que hacer debug.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"545\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-4-nanobananpro_redux.png\" alt=\"\" class=\"wp-image-34626\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-4-nanobananpro_redux.png 1000w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-4-nanobananpro_redux-300x164.png 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-4-nanobananpro_redux-768x419.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>No es un drama borrar. Con los sistemas de control de versiones como Git, siempre podemos recuperar lo que se ha eliminado. Pero la verdad es que, nueve de cada diez veces, ese c\u00f3digo era solo lastre.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-la-verdadera-maestria-es-la-simplicidad\">La verdadera maestr\u00eda es la simplicidad<\/h2>\n\n\n\n<p>Es f\u00e1cil a\u00f1adir. Todos son buenos a\u00f1adiendo. \u00bfPero quitar? Es ah\u00ed donde se juega el verdadero partido.<\/p>\n\n\n\n<p>La maestria de un desarrollador senior se mide no tanto por cu\u00e1nto c\u00f3digo sabe escribir, sino por cu\u00e1nto c\u00f3digo sabe eliminar preservando las funcionalidades esenciales.<\/p>\n\n\n\n<p>Lo que nos frena es el miedo al &#8220;no lo quito porque quiz\u00e1s sirva ma\u00f1ana&#8221;. Pero ese &#8220;ma\u00f1ana&#8221; no llega casi nunca. Como afirma el principio YAGNI (You Aren&#8217;t Gonna Need It): si no lo necesitas ahora, no lo implementes.<\/p>\n\n\n\n<p>El verdadero valor no est\u00e1 en a\u00f1adir, sino en destilar lo esencial, eliminar el ruido y construir algo que funcione de verdad. Este es el coraje de quitar. Y es esto lo que diferencia a un programador iluminado de alguien que no ve m\u00e1s all\u00e1 de su propio fin de semana.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Escribir software es un acto que, aparentemente, cualquiera puede realizar. Te sientas, enciendes un ordenador, abres un IDE, un editor, VI si tienes el coraz\u00f3n puro o cualquier otra cosa (s\u00ed, tambi\u00e9n vale el Notepad) y empiezas a teclear. Ni siquiera hacen falta especificaciones detalladas: \u00bfpara qu\u00e9 sirven cuando lo tienes todo en la cabeza?&#8230; <a class=\"more-link\" href=\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/\">Read more<\/a><\/p>\n","protected":false},"author":246,"featured_media":34623,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[10593],"tags":[],"collections":[],"class_list":{"0":"post-34618","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-uncategorized-es","8":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n - Codemotion Magazine<\/title>\n<meta name=\"description\" content=\"La maestr\u00eda de un dev senior no se mide por cu\u00e1nto c\u00f3digo escribe, sino por cu\u00e1nto puede eliminar sin que el sistema deje de funcionar.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n\" \/>\n<meta property=\"og:description\" content=\"La maestr\u00eda de un dev senior no se mide por cu\u00e1nto c\u00f3digo escribe, sino por cu\u00e1nto puede eliminar sin que el sistema deje de funcionar.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-26T14:22:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-26T14:29:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"545\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Matteo Baccan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matteo Baccan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/\"},\"author\":{\"name\":\"Matteo Baccan\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/58743a83113a6ac22788ab19bea03ad1\"},\"headline\":\"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n\",\"datePublished\":\"2026-01-26T14:22:18+00:00\",\"dateModified\":\"2026-01-26T14:29:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/\"},\"wordCount\":2597,\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png\",\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/\",\"name\":\"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n - Codemotion Magazine\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png\",\"datePublished\":\"2026-01-26T14:22:18+00:00\",\"dateModified\":\"2026-01-26T14:29:51+00:00\",\"description\":\"La maestr\u00eda de un dev senior no se mide por cu\u00e1nto c\u00f3digo escribe, sino por cu\u00e1nto puede eliminar sin que el sistema deje de funcionar.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#primaryimage\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png\",\"width\":1000,\"height\":545,\"caption\":\"a great programmer\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Uncategorized\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/it\/uncategorized-es\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Codemotion.Italy\/\",\"https:\/\/x.com\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/58743a83113a6ac22788ab19bea03ad1\",\"name\":\"Matteo Baccan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/02\/matteo-baccan-100x100.jpg\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/02\/matteo-baccan-100x100.jpg\",\"caption\":\"Matteo Baccan\"},\"description\":\"Matteo Baccan is a professional software engineer and trainer with over 30 years of experience in the IT industry. He has worked for several companies and organizations, dealing with design, development, testing, and management of web and desktop applications, using various languages and technologies. He is also a passionate computer science educator, author of numerous articles, books, and online courses aimed at all levels of expertise. He runs a website and a YouTube channel where he shares video tutorials, interviews, reviews, and programming tips. Active in open-source communities, he regularly participates in programming events and competitions. He defines himself as a \\\"realistic dreamer\\\" who loves to experiment, innovate, and share his knowledge and passions, following the motto: \\\"Never stop learning, because life never stops teaching.\\\"\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/author\/matteo-baccan\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n - Codemotion Magazine","description":"La maestr\u00eda de un dev senior no se mide por cu\u00e1nto c\u00f3digo escribe, sino por cu\u00e1nto puede eliminar sin que el sistema deje de funcionar.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/","og_locale":"en_US","og_type":"article","og_title":"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n","og_description":"La maestr\u00eda de un dev senior no se mide por cu\u00e1nto c\u00f3digo escribe, sino por cu\u00e1nto puede eliminar sin que el sistema deje de funcionar.","og_url":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2026-01-26T14:22:18+00:00","article_modified_time":"2026-01-26T14:29:51+00:00","og_image":[{"width":1000,"height":545,"url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png","type":"image\/png"}],"author":"Matteo Baccan","twitter_card":"summary_large_image","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Matteo Baccan","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/"},"author":{"name":"Matteo Baccan","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/58743a83113a6ac22788ab19bea03ad1"},"headline":"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n","datePublished":"2026-01-26T14:22:18+00:00","dateModified":"2026-01-26T14:29:51+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/"},"wordCount":2597,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png","inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/","url":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/","name":"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n - Codemotion Magazine","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png","datePublished":"2026-01-26T14:22:18+00:00","dateModified":"2026-01-26T14:29:51+00:00","description":"La maestr\u00eda de un dev senior no se mide por cu\u00e1nto c\u00f3digo escribe, sino por cu\u00e1nto puede eliminar sin que el sistema deje de funcionar.","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png","width":1000,"height":545,"caption":"a great programmer"},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/es\/uncategorized-es\/menos-es-mas-tambien-en-programacion\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"Uncategorized","item":"https:\/\/www.codemotion.com\/magazine\/it\/uncategorized-es\/"},{"@type":"ListItem","position":3,"name":"Menos es m\u00e1s\u2026 tambi\u00e9n en programaci\u00f3n"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/58743a83113a6ac22788ab19bea03ad1","name":"Matteo Baccan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/02\/matteo-baccan-100x100.jpg","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/02\/matteo-baccan-100x100.jpg","caption":"Matteo Baccan"},"description":"Matteo Baccan is a professional software engineer and trainer with over 30 years of experience in the IT industry. He has worked for several companies and organizations, dealing with design, development, testing, and management of web and desktop applications, using various languages and technologies. He is also a passionate computer science educator, author of numerous articles, books, and online courses aimed at all levels of expertise. He runs a website and a YouTube channel where he shares video tutorials, interviews, reviews, and programming tips. Active in open-source communities, he regularly participates in programming events and competitions. He defines himself as a \"realistic dreamer\" who loves to experiment, innovate, and share his knowledge and passions, following the motto: \"Never stop learning, because life never stops teaching.\"","url":"https:\/\/www.codemotion.com\/magazine\/author\/matteo-baccan\/"}]}},"featured_image_src":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-600x400.png","featured_image_src_square":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-600x545.png","author_info":{"display_name":"Matteo Baccan","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/matteo-baccan\/"},"uagb_featured_image_src":{"full":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png",1000,545,false],"thumbnail":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-150x150.png",150,150,true],"medium":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-300x164.png",300,164,true],"medium_large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-768x419.png",768,419,true],"large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png",1000,545,false],"1536x1536":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png",1000,545,false],"2048x2048":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux.png",1000,545,false],"small-home-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-100x100.png",100,100,true],"sidebar-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-180x128.png",180,128,true],"genesis-singular-images":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-896x504.png",896,504,true],"archive-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-400x225.png",400,225,true],"gb-block-post-grid-landscape":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-600x400.png",600,400,true],"gb-block-post-grid-square":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2025\/11\/17-IlCoraggioDiTogliere-1-nanobananpro_redux-600x545.png",600,545,true]},"uagb_author_info":{"display_name":"Matteo Baccan","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/matteo-baccan\/"},"uagb_comment_info":0,"uagb_excerpt":"Escribir software es un acto que, aparentemente, cualquiera puede realizar. Te sientas, enciendes un ordenador, abres un IDE, un editor, VI si tienes el coraz\u00f3n puro o cualquier otra cosa (s\u00ed, tambi\u00e9n vale el Notepad) y empiezas a teclear. Ni siquiera hacen falta especificaciones detalladas: \u00bfpara qu\u00e9 sirven cuando lo tienes todo en la cabeza?&#8230;&hellip;","lang":"es","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/34618","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/246"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=34618"}],"version-history":[{"count":2,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/34618\/revisions"}],"predecessor-version":[{"id":35148,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/34618\/revisions\/35148"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media\/34623"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=34618"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=34618"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=34618"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=34618"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}