{"id":29187,"date":"2024-08-08T10:37:57","date_gmt":"2024-08-08T08:37:57","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/?p=29187"},"modified":"2024-08-08T10:37:58","modified_gmt":"2024-08-08T08:37:58","slug":"programadores-cabezadura","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/","title":{"rendered":"Programadores cabezadura"},"content":{"rendered":"\n<p>En el mundo de la programaci\u00f3n, existe un fen\u00f3meno curioso que podr\u00edamos definir como &#8220;cabezadura&#8221;. Este t\u00e9rmino describe una actitud de obstinada resistencia a la evoluci\u00f3n de las herramientas y pr\u00e1cticas de desarrollo de software.<\/p>\n\n\n\n<p>En el pasado, cuando los recursos eran limitados y valiosos, los programadores deb\u00edan ser incre\u00edblemente ingeniosos para exprimir cada gota de potencia de sus sistemas. Esta necesidad forj\u00f3 h\u00e1bitos y mentalidades que, en algunos casos, han sobrevivido mucho m\u00e1s all\u00e1 de su utilidad pr\u00e1ctica, transform\u00e1ndose en una especie de folclore profesional.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>640K ought to be enough for anybody<br><\/code><\/pre>\n\n\n\n<p>Esta famosa frase, a menudo atribuida a Bill Gates pero que \u00e9l mismo ha negado haber dicho, representa bien la actitud de muchos &#8220;cabezaduras&#8221; hacia la innovaci\u00f3n tecnol\u00f3gica. Para estos programadores, la idea de utilizar herramientas modernas como IDE avanzados, depuradores gr\u00e1ficos o asistentes de IA parece casi una herej\u00eda, una violaci\u00f3n de los principios fundamentales de la programaci\u00f3n &#8220;verdadera&#8221;, un s\u00edntoma de debilidad e incapacidad.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-las-raices-historicas\">Las ra\u00edces hist\u00f3ricas<\/h2>\n\n\n\n<p>En los albores de la inform\u00e1tica, cuando los ordenadores funcionaban a base de tarjetas perforadas, programar significaba trabajar con sistemas dotados de memoria y procesadores limitados. Los programadores de la \u00e9poca deb\u00edan ser verdaderos artistas de la optimizaci\u00f3n, capaces de escribir c\u00f3digo que fuera a la vez funcional y eficiente.<\/p>\n\n\n\n<p>Esta era produjo obras maestras de ingenio y pr\u00e1cticas que a\u00fan sobreviven en entornos con recursos limitados: \u00bfalguna vez has intentado programar para microcontroladores o sistemas embebidos? Aqu\u00ed, cada byte de memoria y cada ciclo de reloj cuentan, y el arte de la optimizaci\u00f3n sigue gozando de buena salud, aunque ya se empiezan a ver algunas grietas en el horizonte.<\/p>\n\n\n\n<p>Con el paso del tiempo y la evoluci\u00f3n del hardware, muchas de estas limitaciones han desaparecido, pero la \u00e9tica del &#8220;hacer m\u00e1s con menos&#8221; ha quedado profundamente arraigada en la cultura de la programaci\u00f3n, a veces transform\u00e1ndose en una actitud de resistencia hacia herramientas y pr\u00e1cticas que podr\u00edan simplificar y acelerar el trabajo de desarrollo.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>\"El c\u00f3digo m\u00e1s eficiente es el que no tienes que escribir\"<br><\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-el-manifiesto-de-la-cabezadura\">El manifiesto de la cabezadura<\/h2>\n\n\n\n<p>Para descubrir qu\u00e9 tipo de programadores sois, aqu\u00ed os propongo una peque\u00f1a prueba para evaluar vuestro grado de &#8220;pureza&#8221;. Intentad determinar hasta qu\u00e9 punto est\u00e1is a favor o en contra de las siguientes afirmaciones:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-1-el-ide-no-sirve-para-nada\">1. El IDE no sirve para nada<\/h3>\n\n\n\n<p>Un programador debe ser espartano: cuantos menos herramientas use, m\u00e1s competente es.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>\"Para escribir c\u00f3digo me basta con Notepad (o Vi) y la CLI\"<br><\/code><\/pre>\n\n\n\n<p>Esta afirmaci\u00f3n suele expresarse con una mezcla de orgullo y nostalgia. Quien la defiende parece querer decir: &#8220;Soy un verdadero programador, no necesito ayudas&#8221;. Sin embargo, esta postura ignora deliberadamente las ventajas que brindan los IDE modernos.<\/p>\n\n\n\n<p>Personalmente, he visto programadores usar comandos como:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>copy con: pippo.prg<br><\/code><\/pre>\n\n\n\n<p>con el mismo orgullo de quien obtiene una buena nota en el colegio.<\/p>\n\n\n\n<p><text x=\"-9999\" y=\"-9999\"><\/text><path d=\"M37.5324 16.8707C37.9808 15.5241 38.1363 14.0974 37.9886 12.6859C37.8409 11.2744 37.3934 9.91076 36.676 8.68622C35.6126 6.83404 33.9882 5.3676 32.0373 4.4985C30.0864 3.62941 27.9098 3.40259 25.8215 3.85078C24.8796 2.7893 23.7219 1.94125 22.4257 1.36341C21.1295 0.785575 19.7249 0.491269 18.3058 0.500197C16.1708 0.495044 14.0893 1.16803 12.3614 2.42214C10.6335 3.67624 9.34853 5.44666 8.6917 7.47815C7.30085 7.76286 5.98686 8.3414 4.8377 9.17505C3.68854 10.0087 2.73073 11.0782 2.02839 12.312C0.956464 14.1591 0.498905 16.2988 0.721698 18.4228C0.944492 20.5467 1.83612 22.5449 3.268 24.1293C2.81966 25.4759 2.66413 26.9026 2.81182 28.3141C2.95951 29.7256 3.40701 31.0892 4.12437 32.3138C5.18791 34.1659 6.8123 35.6322 8.76321 36.5013C10.7141 37.3704 12.8907 37.5973 14.9789 37.1492C15.9208 38.2107 17.0786 39.0587 18.3747 39.6366C19.6709 40.2144 21.0755 40.5087 22.4946 40.4998C24.6307 40.5054 26.7133 39.8321 28.4418 38.5772C30.1704 37.3223 31.4556 35.5506 32.1119 33.5179C33.5027 33.2332 34.8167 32.6547 35.9659 31.821C37.115 30.9874 38.0728 29.9178 38.7752 28.684C39.8458 26.8371 40.3023 24.6979 40.0789 22.5748C39.8556 20.4517 38.9639 18.4544 37.5324 16.8707ZM22.4978 37.8849C20.7443 37.8874 19.0459 37.2733 17.6994 36.1501C17.7601 36.117 17.8666 36.0586 17.936 36.0161L25.9004 31.4156C26.1003 31.3019 26.2663 31.137 26.3813 30.9378C26.4964 30.7386 26.5563 30.5124 26.5549 30.2825V19.0542L29.9213 20.998C29.9389 21.0068 29.9541 21.0198 29.9656 21.0359C29.977 21.052 29.9842 21.0707 29.9867 21.0902V30.3889C29.9842 32.375 29.1946 34.2791 27.7909 35.6841C26.3872 37.0892 24.4838 37.8806 22.4978 37.8849ZM6.39227 31.0064C5.51397 29.4888 5.19742 27.7107 5.49804 25.9832C5.55718 26.0187 5.66048 26.0818 5.73461 26.1244L13.699 30.7248C13.8975 30.8408 14.1233 30.902 14.3532 30.902C14.583 30.902 14.8088 30.8408 15.0073 30.7248L24.731 25.1103V28.9979C24.7321 29.0177 24.7283 29.0376 24.7199 29.0556C24.7115 29.0736 24.6988 29.0893 24.6829 29.1012L16.6317 33.7497C14.9096 34.7416 12.8643 35.0097 10.9447 34.4954C9.02506 33.9811 7.38785 32.7263 6.39227 31.0064ZM4.29707 13.6194C5.17156 12.0998 6.55279 10.9364 8.19885 10.3327C8.19885 10.4013 8.19491 10.5228 8.19491 10.6071V19.808C8.19351 20.0378 8.25334 20.2638 8.36823 20.4629C8.48312 20.6619 8.64893 20.8267 8.84863 20.9404L18.5723 26.5542L15.206 28.4979C15.1894 28.5089 15.1703 28.5155 15.1505 28.5173C15.1307 28.5191 15.1107 28.516 15.0924 28.5082L7.04046 23.8557C5.32135 22.8601 4.06716 21.2235 3.55289 19.3046C3.03862 17.3858 3.30624 15.3413 4.29707 13.6194ZM31.955 20.0556L22.2312 14.4411L25.5976 12.4981C25.6142 12.4872 25.6333 12.4805 25.6531 12.4787C25.6729 12.4769 25.6928 12.4801 25.7111 12.4879L33.7631 17.1364C34.9967 17.849 36.0017 18.8982 36.6606 20.1613C37.3194 21.4244 37.6047 22.849 37.4832 24.2684C37.3617 25.6878 36.8382 27.0432 35.9743 28.1759C35.1103 29.3086 33.9415 30.1717 32.6047 30.6641C32.6047 30.5947 32.6047 30.4733 32.6047 30.3889V21.188C32.6066 20.9586 32.5474 20.7328 32.4332 20.5338C32.319 20.3348 32.154 20.1698 31.955 20.0556ZM35.3055 15.0128C35.2464 14.9765 35.1431 14.9142 35.069 14.8717L27.1045 10.2712C26.906 10.1554 26.6803 10.0943 26.4504 10.0943C26.2206 10.0943 25.9948 10.1554 25.7963 10.2712L16.0726 15.8858V11.9982C16.0715 11.9783 16.0753 11.9585 16.0837 11.9405C16.0921 11.9225 16.1048 11.9068 16.1207 11.8949L24.1719 7.25025C25.4053 6.53903 26.8158 6.19376 28.2383 6.25482C29.6608 6.31589 31.0364 6.78077 32.2044 7.59508C33.3723 8.40939 34.2842 9.53945 34.8334 10.8531C35.3826 12.1667 35.5464 13.6095 35.3055 15.0128ZM14.2424 21.9419L10.8752 19.9981C10.8576 19.9893 10.8423 19.9763 10.8309 19.9602C10.8195 19.9441 10.8122 19.9254 10.8098 19.9058V10.6071C10.8107 9.18295 11.2173 7.78848 11.9819 6.58696C12.7466 5.38544 13.8377 4.42659 15.1275 3.82264C16.4173 3.21869 17.8524 2.99464 19.2649 3.1767C20.6775 3.35876 22.0089 3.93941 23.1034 4.85067C23.0427 4.88379 22.937 4.94215 22.8668 4.98473L14.9024 9.58517C14.7025 9.69878 14.5366 9.86356 14.4215 10.0626C14.3065 10.2616 14.2466 10.4877 14.2479 10.7175L14.2424 21.9419ZM16.071 17.9991L20.4018 15.4978L24.7325 17.9975V22.9985L20.4018 25.4983L16.071 22.9985V17.9991Z\" fill=\"currentColor\"><\/path>No subestimemos, sin embargo, las ventajas de los IDE modernos. Para empezar, <strong>quit\u00e9monos de la cabeza que los IDE son simples editores de texto con algunos adornos<\/strong>. Son herramientas poderosas que integran numerosas funcionalidades para mejorar la productividad y la calidad del c\u00f3digo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Depuraci\u00f3n: Puntos de interrupci\u00f3n, inspecci\u00f3n y alteraci\u00f3n de variables en tiempo real, ejecuci\u00f3n paso a paso del c\u00f3digo, pila de llamadas y mucho m\u00e1s.<\/li>\n\n\n\n<li>Refactorizaci\u00f3n: Renombrar variables o funciones en todo el proyecto con un solo clic, extrayendo m\u00e9todos o reorganizando el c\u00f3digo de manera segura.<\/li>\n\n\n\n<li>An\u00e1lisis est\u00e1tico: Identificaci\u00f3n de posibles errores, violaciones de estilo o patrones problem\u00e1ticos antes de la ejecuci\u00f3n.<\/li>\n\n\n\n<li>Integraci\u00f3n con sistemas de versionado: Gesti\u00f3n de ramas, commits y merges directamente desde la interfaz del IDE.<\/li>\n\n\n\n<li>Soporte para frameworks y bibliotecas: Autocompletado, no solo de las bibliotecas base, sino tambi\u00e9n sugerencias espec\u00edficas para los frameworks utilizados en el proyecto.<\/li>\n<\/ul>\n\n\n\n<p>Estos son solo algunos de los motivos por los cuales, cuando uso un editor de los a\u00f1os 70, me siento como si me hubieran quitado un brazo.<\/p>\n\n\n\n<p>Para ser intelectualmente honestos, no podemos negar que en ciertas situaciones un IDE podr\u00eda resultar excesivo, como cuando se necesita realizar una modificaci\u00f3n r\u00e1pida o cuando se trabaja en sistemas remotos con recursos limitados. En estos casos, editores minimalistas o herramientas que abran una consola textual pueden ser la mejor opci\u00f3n. Sin embargo, para el trabajo diario y proyectos de cierta complejidad, rechazar categ\u00f3ricamente el uso de un IDE moderno implica renunciar a herramientas que pueden mejorar significativamente tanto la calidad del c\u00f3digo como la productividad del programador y del equipo en general (porque el c\u00f3digo no es solo tuyo, sino de todos los que colaboran en \u00e9l).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-2-la-cli-es-la-solucion-a-todos-los-problemas\">2. La CLI es la soluci\u00f3n a todos los problemas<\/h3>\n\n\n\n<p>No nos enga\u00f1emos, la CLI tiene un encanto innegable. A\u00f1os de pel\u00edculas con hackers inclinados sobre teclados mec\u00e1nicos y pantallas negras con letras verdes han formado generaciones de programadores. \u00bfQu\u00e9 hay m\u00e1s poderoso que controlar un ordenador escribiendo comandos textuales? Este enfoque, aunque tiene el encanto del primer amor del instituto, tiene una serie de limitaciones que a menudo se pasan por alto:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Curva de aprendizaje: Memorizar unos pocos comandos es f\u00e1cil, memorizar decenas o cientos de comandos, con todas sus opciones, puede ser desalentador para los novatos y para quienes no usan la CLI diariamente.<\/li>\n\n\n\n<li>Visualizaci\u00f3n de datos: Algunas informaciones son simplemente m\u00e1s f\u00e1ciles de comprender cuando se presentan gr\u00e1ficamente.<\/li>\n\n\n\n<li>Operaciones complejas: Ciertas actividades, como la gesti\u00f3n de ramas en un repositorio Git, pueden volverse mucho m\u00e1s intuitivas con una representaci\u00f3n visual.<\/li>\n<\/ul>\n\n\n\n<p>Git es un excelente ejemplo de c\u00f3mo CLI y GUI pueden coexistir y complementarse mutuamente. Mientras que la CLI de Git ofrece un control granular y la posibilidad de automatizar operaciones a trav\u00e9s de scripts, herramientas GUI como las integraciones en VSCode pueden hacer m\u00e1s accesibles operaciones complejas como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Visualizar el historial de commits con un gr\u00e1fico de ramas<\/li>\n\n\n\n<li>Realizar rebase interactivos<\/li>\n\n\n\n<li>Resolver conflictos de merge con herramientas de diff visual<\/li>\n<\/ul>\n\n\n\n<p>Como siempre, la verdad est\u00e1 en el equilibrio, y la opci\u00f3n m\u00e1s sensata es dominar ambas herramientas. Utiliza la CLI para operaciones r\u00e1pidas y para crear scripts automatizados, pero no dudes en recurrir a una GUI cuando pueda ofrecer una visi\u00f3n m\u00e1s clara o un flujo de trabajo m\u00e1s eficiente.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-3-no-usamos-windows-porque-los-programadores-usan-linux-o-macos\">3. No usamos Windows porque los programadores usan Linux (o MacOS)<\/h3>\n\n\n\n<p>Ya he perdido la cuenta de las noches que he pasado leyendo y comentando las &#8220;guerras de religi\u00f3n&#8221; entre los sistemas operativos.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>\"Winzoz\" no funciona<br>Ser\u00e1 bonito Linux que tiene 200 versiones y todas incompatibles<br>Dejadlo, con MacOS todo funciona<br>Mira que Apple te hace pagar el doble de lo que vale ese ordenador<br><\/code><\/pre>\n\n\n\n<p>Se podr\u00eda seguir indefinidamente, creando debates llenas de odio y cargadas de ignorancia, pero la realidad es que cada sistema operativo tiene sus pros y contras, y es un error afirmar que uno es superior a los otros de manera absoluta.<\/p>\n\n\n\n<p>Un programador deber\u00eda ir m\u00e1s all\u00e1 de estas discusiones triviales. No est\u00e1 mal tener una preferencia por un sistema operativo, pero es contraproducente cerrarse a la idea de que existen otros sistemas adem\u00e1s del que uno prefiere.<\/p>\n\n\n\n<p>Reflexionemos sobre el hecho de trabajar diariamente en plataformas diferentes y de las ventajas que este enfoque puede traer:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cross-platform: Desarrollar y probar en m\u00faltiples plataformas asegura que el software funcione correctamente para una amplia base de usuarios. &#8220;Write once, run anywhere&#8221; es un objetivo importante para muchas aplicaciones y, aunque de base los lenguajes aseguran que esto pueda ser cierto, cada programador pone de su parte para que no lo sea.<\/li>\n\n\n\n<li>Flexibilidad: Muchas empresas utilizan entornos mixtos y la capacidad de adaptarse es una ventaja competitiva.<\/li>\n\n\n\n<li>Comprensi\u00f3n de las diferencias: Trabajar en diferentes sistemas ayuda a comprender mejor las peculiaridades de cada uno, mejorando la capacidad de depuraci\u00f3n y optimizaci\u00f3n.<\/li>\n<\/ul>\n\n\n\n<p>En lugar de aferrarse dogm\u00e1ticamente a un solo sistema operativo, un enfoque m\u00e1s productivo es elegir la herramienta adecuada para el trabajo adecuado, manteniendo la flexibilidad de moverse entre diferentes plataformas cuando sea necesario.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-4-el-depurador-es-para-los-debiles\">4. El depurador es para los d\u00e9biles<\/h3>\n\n\n\n<p>Desmintamos una idea<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>Un \"verdadero programador\" escribe c\u00f3digo perfecto al primer intento<\/code><\/pre>\n\n\n\n<p>Esta historia ha estado circulando en el mundo de la programaci\u00f3n durante a\u00f1os. Pr\u00e1cticamente todos los programadores famosos han adoptado esta imagen, y muchos de nosotros estamos listos para compartirla al final de la noche, cuando ya se han terminado las cervezas. La realidad es que la depuraci\u00f3n y las pruebas son una parte esencial e inevitable del desarrollo de software, y superar la mentalidad que considera las herramientas de depuraci\u00f3n como una especie de &#8220;muleta&#8221; es fundamental.<\/p>\n\n\n\n<p>Ya no cuento las veces que he tomado un software considerado &#8220;concluido&#8221;, lleno de pruebas funcionales, y poco a poco han surgido problemas, casos de uso no cubiertos, problemas de an\u00e1lisis y dise\u00f1o: no, la ilusi\u00f3n de que la primera versi\u00f3n de un programa sea capaz de generar un software perfecto y que las pruebas sean suficientes para entender qu\u00e9 funciona o no es solo una ilusi\u00f3n.<\/p>\n\n\n\n<p>En estas situaciones: logs, depuraci\u00f3n y nuevas pruebas se vuelven necesarios para entender qu\u00e9 no funciona y c\u00f3mo resolverlo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. El c\u00f3digo est\u00e1 todo en mi cabeza<\/h3>\n\n\n\n<p>El an\u00e1lisis, la transferencia de conocimientos y la documentaci\u00f3n suelen ser aspectos descuidados en el mundo de la programaci\u00f3n.<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">Lo tengo todo en la cabeza<\/code><\/span><\/pre>\n\n\n<p>No existe una frase menos productiva que esta, que atrofia cualquier tipo de discusi\u00f3n y colaboraci\u00f3n.<\/p>\n\n\n\n<p>Existe una narrativa rom\u00e1ntica del programador como genio solitario, capaz de mantener sistemas complejos enteros en su mente y de ver su software como Neo ve\u00eda Matrix.<br>Este enfoque tiene un error de base: la mente humana, aunque maravillosa, tiene l\u00edmites en la cantidad de informaci\u00f3n que puede mantener.<\/p>\n\n\n\n<p>No todos somos Dennis Nedry, el programador de Jurassic Park que sab\u00eda todo el c\u00f3digo del parque de memoria y, aunque lo fu\u00e9ramos, recordemos qu\u00e9 le pas\u00f3.<\/p>\n\n\n\n<p>Olvidar el pasado es una forma de protecci\u00f3n que activa nuestro cerebro para evitar volverse loco. Por eso, es crucial documentar el c\u00f3digo, compartir el conocimiento y trabajar en equipo.<\/p>\n\n\n\n<p>Incluso si nuestra mente tuviera una capacidad infinita, a\u00fan existen otras razones por las que tener el &#8220;c\u00f3digo en mi cabeza&#8221; es problem\u00e1tico:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Colaboraci\u00f3n<\/strong>: Si el funcionamiento del c\u00f3digo solo es claro para quien lo escribi\u00f3, se vuelve dif\u00edcil para otros contribuir o mantener el proyecto.<\/li>\n\n\n\n<li><strong>Propensi\u00f3n a errores<\/strong>: Sin documentaci\u00f3n clara o comentarios en el c\u00f3digo, es f\u00e1cil olvidar detalles importantes o hacer suposiciones incorrectas.<\/li>\n\n\n\n<li><strong>Onboarding complicado<\/strong>: Los nuevos miembros del equipo tendr\u00e1n problemas para entender y colaborar en el proyecto si no hay una buena documentaci\u00f3n..<\/li>\n<\/ul>\n\n\n\n<p>Es necesario que el &#8220;celodurista&#8221; se d\u00e9 cuenta de que el c\u00f3digo es un producto colaborativo y no compartir informaci\u00f3n no es el mejor enfoque para mantener su trabajo, sino la mejor manera de perderlo.<\/p>\n\n\n\n<p>Animemos a estos programadores a documentar, escribir wikis, hacer revisiones de c\u00f3digo, usar diagramas y esquemas, para compartir el conocimiento.<\/p>\n\n\n\n<p>Un enfoque que valore la documentaci\u00f3n y la compartici\u00f3n del conocimiento no solo hace el proyecto m\u00e1s robusto y mantenible, sino que tambi\u00e9n contribuye al crecimiento profesional de todo el equipo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. Los programadores no usan ChatGPT<\/h3>\n\n\n\n<p>Seamos sinceros: la inteligencia artificial es todo menos inteligente.<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">Mira cu\u00e1ntos errores comete ChatGPT, no puede reemplazar a un programador<\/code><\/span><\/pre>\n\n\n<p>Las alucinaciones, pero sobre todo el uso incorrecto y superficial de las IA, llevan a muchos programadores a pensar que son herramientas inutilizables.<br>No, las IA no son motores de b\u00fasqueda, <strong>son herramientas de agregaci\u00f3n ling\u00fc\u00edstica<\/strong>, que pueden aprender nuestro contexto de trabajo, y como tales deben ser usadas.<\/p>\n\n\n\n<p>A estas teor\u00edas se superponen cada vez m\u00e1s las teor\u00edas de que en el futuro las IA reemplazar\u00e1n a los programadores.<\/p>\n\n\n\n<p>El programador &#8220;duro y puro&#8221; no usa estos instrumentos, porque no los necesita, porque no funcionan, porque &#8220;yo soy mejor&#8221;.<\/p>\n\n\n\n<p>Todo cierto, pero solo en parte. La realidad es que las IA son herramientas que pueden ayudar a los programadores a escribir c\u00f3digo m\u00e1s r\u00e1pido y con menos errores, pero no basta una hora para llegar a este resultado, se necesitan semanas de uso para entender mejor c\u00f3mo usar esta herramienta e identificar r\u00e1pidamente sus pros y contras.<\/p>\n\n\n\n<p>La IA debe ser vista como una herramienta de potenciaci\u00f3n, como la evoluci\u00f3n del autocompletado de los IDE modernos, pero capaz de extender el completado a un contexto m\u00e1s amplio y complejo.<\/p>\n\n\n\n<p>Recientemente vi la pel\u00edcula Atlas, no por Jennifer Lopez, como muchos de vosotros estar\u00e9is propensos a pensar, sino para enriquecer mi mente con nuevas im\u00e1genes sobre futuros posibles. Dentro de esta pel\u00edcula, la IA se ve como un complemento del trabajo del hombre y ambos se mejoran y potencian, trabajando en simbiosis.<\/p>\n\n\n\n<p>Para quienes pasaron las tardes de su infancia viendo Star Trek: es la evoluci\u00f3n de la fusi\u00f3n mental de los vulcanianos o del simbionte de los Trill.<\/p>\n\n\n\n<p>Hay muchos aspectos de la vida de un programador que se benefician de una IA:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Generaci\u00f3n de boilerplate: La IA puede producir r\u00e1pidamente estructuras de c\u00f3digo b\u00e1sicas, permitiendo a los programadores concentrarse en los aspectos m\u00e1s complejos y creativos.<\/li>\n\n\n\n<li>Depuraci\u00f3n asistida: Modelos como ChatGPT pueden ayudar a identificar errores en el c\u00f3digo y sugerir posibles soluciones.<\/li>\n\n\n\n<li>Exploraci\u00f3n de nuevas tecnolog\u00edas: La IA puede proporcionar explicaciones y ejemplos de uso para frameworks o bibliotecas con las que el programador no est\u00e1 familiarizado.<\/li>\n\n\n\n<li>Optimizaci\u00f3n: Sugerencias para mejorar la eficiencia o la legibilidad del c\u00f3digo.<\/li>\n\n\n\n<li>Pruebas: Generaci\u00f3n de pruebas autom\u00e1ticas para verificar el correcto funcionamiento de su trabajo.<\/li>\n<\/ul>\n\n\n\n<p>En lugar de rechazar categ\u00f3ricamente el uso de las IA, los programadores deber\u00edan considerarlas como herramientas que pueden mejorar su productividad y la calidad de su trabajo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n<\/h2>\n\n\n\n<p>Los <strong>programadores cabezadura, <\/strong>aunque arraigados en la historia como s\u00edmbolos de ingenio y optimizaci\u00f3n, <strong>corren el riesgo de convertirse en un freno a la innovaci\u00f3n y la eficiencia en el mundo del desarrollo <\/strong>de software moderno.<\/p>\n\n\n\n<p>Un enfoque m\u00e1s equilibrado reconoce el valor de la <strong>tradici\u00f3n y la experiencia<\/strong>, pero permanece abierto a las nuevas tecnolog\u00edas y metodolog\u00edas que pueden mejorar el proceso de desarrollo.<\/p>\n\n\n\n<p>El verdadero signo de un programador experimentado no es la adhesi\u00f3n dogm\u00e1tica a pr\u00e1cticas del pasado, <strong>sino la capacidad de evaluar cr\u00edticamente y adoptar las herramientas y pr\u00e1cticas m\u00e1s adecuadas<\/strong> para cada situaci\u00f3n espec\u00edfica.<\/p>\n\n\n\n<p>Admiro a los celoduristas por su tenacidad, pero estoy seguro de que si tuvieran m\u00e1s coraje podr\u00edan obtener grandes beneficios de una reevaluaci\u00f3n de sus posiciones.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>En el mundo de la programaci\u00f3n, existe un fen\u00f3meno curioso que podr\u00edamos definir como &#8220;cabezadura&#8221;. Este t\u00e9rmino describe una actitud de obstinada resistencia a la evoluci\u00f3n de las herramientas y pr\u00e1cticas de desarrollo de software. En el pasado, cuando los recursos eran limitados y valiosos, los programadores deb\u00edan ser incre\u00edblemente ingeniosos para exprimir cada gota&#8230; <a class=\"more-link\" href=\"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/\">Read more<\/a><\/p>\n","protected":false},"author":246,"featured_media":29167,"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":[10620],"tags":[11462],"collections":[],"class_list":{"0":"post-29187","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-dev-life-es","8":"tag-chatgpt-es","9":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Programadores cabezadura - Codemotion Magazine<\/title>\n<meta name=\"description\" content=\"En este art\u00edculo, Matteo Baccan reflexiona sobre el concepto de &#039;cabezadura&#039; en el mundo del desarrollo de software, analizando c\u00f3mo esta mentalidad influye en las pr\u00e1cticas de programaci\u00f3n y la cultura empresarial.\" \/>\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\/dev-life-es\/programadores-cabezadura\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Programadores cabezadura\" \/>\n<meta property=\"og:description\" content=\"En este art\u00edculo, Matteo Baccan reflexiona sobre el concepto de &#039;cabezadura&#039; en el mundo del desarrollo de software, analizando c\u00f3mo esta mentalidad influye en las pr\u00e1cticas de programaci\u00f3n y la cultura empresarial.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/\" \/>\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=\"2024-08-08T08:37:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-08-08T08:37:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1184\" \/>\n\t<meta property=\"og:image:height\" content=\"672\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\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=\"11 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\\\/dev-life-es\\\/programadores-cabezadura\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/\"},\"author\":{\"name\":\"Matteo Baccan\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/person\\\/58743a83113a6ac22788ab19bea03ad1\"},\"headline\":\"Programadores cabezadura\",\"datePublished\":\"2024-08-08T08:37:57+00:00\",\"dateModified\":\"2024-08-08T08:37:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/\"},\"wordCount\":2463,\"publisher\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg\",\"keywords\":[\"ChatGPT\"],\"articleSection\":[\"Dev life\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/\",\"name\":\"Programadores cabezadura - Codemotion Magazine\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg\",\"datePublished\":\"2024-08-08T08:37:57+00:00\",\"dateModified\":\"2024-08-08T08:37:58+00:00\",\"description\":\"En este art\u00edculo, Matteo Baccan reflexiona sobre el concepto de 'cabezadura' en el mundo del desarrollo de software, analizando c\u00f3mo esta mentalidad influye en las pr\u00e1cticas de programaci\u00f3n y la cultura empresarial.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg\",\"width\":1184,\"height\":672,\"caption\":\"hardcore programmer\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/programadores-cabezadura\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dev life\",\"item\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/es\\\/dev-life-es\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Programadores cabezadura\"}]},{\"@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\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/matteo-baccan-100x100.jpg\",\"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":"Programadores cabezadura - Codemotion Magazine","description":"En este art\u00edculo, Matteo Baccan reflexiona sobre el concepto de 'cabezadura' en el mundo del desarrollo de software, analizando c\u00f3mo esta mentalidad influye en las pr\u00e1cticas de programaci\u00f3n y la cultura empresarial.","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\/dev-life-es\/programadores-cabezadura\/","og_locale":"en_US","og_type":"article","og_title":"Programadores cabezadura","og_description":"En este art\u00edculo, Matteo Baccan reflexiona sobre el concepto de 'cabezadura' en el mundo del desarrollo de software, analizando c\u00f3mo esta mentalidad influye en las pr\u00e1cticas de programaci\u00f3n y la cultura empresarial.","og_url":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2024-08-08T08:37:57+00:00","article_modified_time":"2024-08-08T08:37:58+00:00","og_image":[{"width":1184,"height":672,"url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg","type":"image\/jpeg"}],"author":"Matteo Baccan","twitter_card":"summary_large_image","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Matteo Baccan","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/"},"author":{"name":"Matteo Baccan","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/58743a83113a6ac22788ab19bea03ad1"},"headline":"Programadores cabezadura","datePublished":"2024-08-08T08:37:57+00:00","dateModified":"2024-08-08T08:37:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/"},"wordCount":2463,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg","keywords":["ChatGPT"],"articleSection":["Dev life"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/","url":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/","name":"Programadores cabezadura - Codemotion Magazine","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg","datePublished":"2024-08-08T08:37:57+00:00","dateModified":"2024-08-08T08:37:58+00:00","description":"En este art\u00edculo, Matteo Baccan reflexiona sobre el concepto de 'cabezadura' en el mundo del desarrollo de software, analizando c\u00f3mo esta mentalidad influye en las pr\u00e1cticas de programaci\u00f3n y la cultura empresarial.","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg","width":1184,"height":672,"caption":"hardcore programmer"},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/programadores-cabezadura\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"Dev life","item":"https:\/\/www.codemotion.com\/magazine\/es\/dev-life-es\/"},{"@type":"ListItem","position":3,"name":"Programadores cabezadura"}]},{"@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\/wp-content\/uploads\/2024\/02\/matteo-baccan-100x100.jpg","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\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-600x400.jpg","featured_image_src_square":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-600x600.jpg","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\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg",1184,672,false],"thumbnail":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-150x150.jpg",150,150,true],"medium":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-300x170.jpg",300,170,true],"medium_large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-768x436.jpg",768,436,true],"large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-1024x581.jpg",1024,581,true],"1536x1536":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg",1184,672,false],"2048x2048":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai.jpg",1184,672,false],"small-home-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-100x100.jpg",100,100,true],"sidebar-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-180x128.jpg",180,128,true],"genesis-singular-images":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-896x504.jpg",896,504,true],"archive-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-400x225.jpg",400,225,true],"gb-block-post-grid-landscape":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-600x400.jpg",600,400,true],"gb-block-post-grid-square":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/08\/05-CelodurismoDeiProgrammatori-articolo-2-leonardo-ai-600x600.jpg",600,600,true]},"uagb_author_info":{"display_name":"Matteo Baccan","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/matteo-baccan\/"},"uagb_comment_info":0,"uagb_excerpt":"En el mundo de la programaci\u00f3n, existe un fen\u00f3meno curioso que podr\u00edamos definir como &#8220;cabezadura&#8221;. Este t\u00e9rmino describe una actitud de obstinada resistencia a la evoluci\u00f3n de las herramientas y pr\u00e1cticas de desarrollo de software. En el pasado, cuando los recursos eran limitados y valiosos, los programadores deb\u00edan ser incre\u00edblemente ingeniosos para exprimir cada gota&#8230;&hellip;","lang":"es","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/29187","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=29187"}],"version-history":[{"count":2,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/29187\/revisions"}],"predecessor-version":[{"id":29247,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/29187\/revisions\/29247"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media\/29167"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=29187"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=29187"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=29187"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=29187"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}