﻿{"id":3620,"date":"2015-03-03T12:39:11","date_gmt":"2015-03-03T18:39:11","guid":{"rendered":"https:\/\/www.uv.mx\/cienciauv\/?p=3620"},"modified":"2015-03-03T13:13:57","modified_gmt":"2015-03-03T19:13:57","slug":"poesiaprogramacioncomputadoras","status":"publish","type":"post","link":"https:\/\/www.uv.mx\/cienciauv\/blog\/poesiaprogramacioncomputadoras\/","title":{"rendered":"La poes\u00eda al servicio de la programaci\u00f3n de computadoras"},"content":{"rendered":"<p style=\"text-align: right\"><strong>Wulfrano Arturo Luna Ram\u00edrez*<\/strong><\/p>\n<p>En literatura, y en particular, en poes\u00eda, no hay pa\u00edses atrasados o en v\u00edas de desarrollo. Una mejor manera de decir lo anterior, una manera po\u00e9tica, la encontramos en el poema o mejor dicho poem\u00ednimo \u201cAy Poeta\u201d como lo nombr\u00f3 su creador, el escritor mexicano Efra\u00edn Huerta: <em>Primero \/ Que nada: \/ Me complace \/\u00a0 Enorm\u00edsimamente \/ Ser \/ Un buen \/ Poeta \/ De segunda \/ Del Tercer \/ Mundo.<\/em><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-3621 alignleft\" src=\"https:\/\/www.uv.mx\/cienciauv\/files\/2015\/03\/computacion-Y-POESIA-1-150x150.jpg\" alt=\"computacion Y POESIA 1\" width=\"442\" height=\"442\" \/>La creaci\u00f3n po\u00e9tica,\u00a0 expresi\u00f3n motivada desde la reflexi\u00f3n y el sentimiento, evitando el debate sobre si la poes\u00eda tiene m\u00e1s de uno que de otro,\u00a0 engendra un proceso cognitivo com\u00fan a todas las personas. En el esfuerzo po\u00e9tico se dan cita abstracciones, ideas, concepciones, y circunstancias, entre otras cosas, abordados en extenso en los tratados de poes\u00eda y los debates literarios. Dichas abstracciones obtienen su concreci\u00f3n en palabras, frases, versos y poemas. Esto manifiesta un paralelismo con la actividad de programaci\u00f3n de computadoras (en lenguajes de alto nivel), orientada a resolver un problema, partiendo de su entendimiento y posterior traducci\u00f3n a una representaci\u00f3n rigurosa que evita ambig\u00fcedades, misma que finalmente ser\u00e1 convertida en una representaci\u00f3n ejecutable en una m\u00e1quina, es decir, un programa de computadora. La generaci\u00f3n y uso de las abstracciones y met\u00e1foras propios de la creaci\u00f3n po\u00e9tica, funciona tambi\u00e9n como entrenamiento para desarrollar la capacidad de resolver problemas mediante algoritmos y programas de computadora (sin soslayar las indispensables herramientas otorgadas por el pensamiento l\u00f3gico-matem\u00e1tico).<\/p>\n<p>Obviamente, no hay que caer en el exceso de comparar directamente poemas con programas. \u00c9stos son distintos en tanto que en los programas el sentido de funcionalidad y desempe\u00f1o son cruciales, existen m\u00e9tricas y m\u00e9todos de evaluaci\u00f3n objetiva; mientras que en los poemas (y las artes en general) la valoraci\u00f3n est\u00e1 dada en buena medida pro el sentido est\u00e9tico y la comunicaci\u00f3n lograda con el lector, de un car\u00e1cter eminentemente m\u00e1s subjetivo (hasta donde s\u00e9, no existe una metodolog\u00eda de evaluaci\u00f3n de poes\u00eda que trascienda la valoraci\u00f3n de los cr\u00edticos literarios y los colegas y el grado de aceptaci\u00f3n entre los lectores).<\/p>\n<p>Algunos autores ya se han ocupado del uso del quehacer art\u00edstico o literario como herramienta did\u00e1ctica para generaci\u00f3n de conocimiento, tal es el caso de las obras \u201cPoes\u00eda para aprender a aprender\u201d de Jos\u00e9 Negrete, \u201c<em>What has literature to offer Computer Science\u201d<\/em> de Mark Dougherty, o \u201c<em>Hackers and Painters\u201d<\/em> de Paul Graham. Adem\u00e1s de algunas iniciativas que ya las vinculan en la pr\u00e1ctica, en particular la Competencia de Poes\u00eda en C\u00f3digo Fuente (<a href=\"http:\/\/www.sourcecodepoetry.com\/\">http:\/\/www.sourcecodepoetry.com\/<\/a>). Amparada en uno de sus lemas \u201cLos verdaderos programadores pueden codificar poes\u00eda\u201d (<em>Real programmers can code poetry<\/em>), se enfoca a generar c\u00f3digo en un lenguaje de programaci\u00f3n de alto nivel de corte imperativo y orientado a objetos (Java, C++ y C#,) que rimen, tengan significado y sean legibles. Cabe se\u00f1alar, que en nuestro caso, se impone la barrera del idioma dado que gran mayor\u00eda de los lenguajes de programaci\u00f3n de alto nivel usan una base de palabras reservadas en ingl\u00e9s.<\/p>\n<p>Sin embargo, este esfuerzo de programaci\u00f3n po\u00e9tica o poes\u00eda programable\/programada\/codificada (a\u00fan no se establece un nombre), no incluye la resoluci\u00f3n de problemas, es decir, deja fuera el objetivo principal de un programa. Si bien pudiera arg\u00fcirse que el problema es justamente la creaci\u00f3n de un poema en c\u00f3digo fuente, los programas resultantes no son aplicables a alg\u00fan dominio en particular, adem\u00e1s, excluyen tambi\u00e9n a los lenguajes inspirados por otros paradigmas \u2013funcionales, l\u00f3gicos, etc., como puede verse en los ejemplos al final de este art\u00edculo. Ya sea que se trate de un poema de autor\u00eda propia o no, estamos hablando de esfuerzos l\u00fadicos al alcance de quienes ya saben programar y conocen bien el lenguaje a utilizar, y el desaf\u00edo se puede complicar a\u00fan m\u00e1s, pregunt\u00e9monos por ejemplo, \u00bfc\u00f3mo poner en t\u00e9rminos de un programa alg\u00fan haik\u00fa o alg\u00fan poem\u00ednimo de Huerta?<\/p>\n<p>Las iniciativas de poes\u00eda codificada o programaci\u00f3n po\u00e9tica tienen una utilidad no s\u00f3lo l\u00fadica, sino eminentemente pedag\u00f3gica y did\u00e1ctica que puede y debe ser explotada en la formaci\u00f3n de profesionales de la computaci\u00f3n. Concretamente, incentivar la lectura y la creaci\u00f3n literaria en los aprendices de programaci\u00f3n de computadoras, especialmente me refiero a la creaci\u00f3n po\u00e9tica por la s\u00edntesis que exige y por el uso de met\u00e1foras y su poder expresivo, traer\u00eda algunos beneficios, entre los que se encuentran:<\/p>\n<ol>\n<li>El uso cuidadoso del lenguaje. Usar adecuadamente las palabras y la ortograf\u00eda desarrolla un ojo cr\u00edtico necesario en la programaci\u00f3n de computadoras. Ayuda a reducer el n\u00famero de errores, no s\u00f3lo ortogr\u00e1ficos (cualquiera que sea su origen, \u00e9stos ser\u00edan f\u00e1cilmente identificables y corregibles por el ambiente de desarrollo v\u00eda un mensaje de error de \u201ccompilaci\u00f3n\/interpretaci\u00f3n\u201d), sino otros m\u00e1s graves, como los errores en \u201ctiempo de ejecuci\u00f3n\u201d que derivan en: a) un mal funcionamiento (hacer mal la tarea para la que fue dise\u00f1ado, que es una forma de decir que no la hace) pese a que el programa parezca ejecutarse sin problemas; y b) detenci\u00f3n abrupta del programa (conocido como petici\u00f3n de interrupci\u00f3n) por insuficiencia de memoria, tipos de datos incongruentes o fallas de otra \u00edndole. Si cambiando una palabra por otra se puede alterar el sentido de una frase, arruinando la m\u00e9trica y distorsionando la emotividad y el mensaje; en un c\u00f3digo, esto puede originar literalmente otro programa.<\/li>\n<li>Incentivar el trabajo original. El ya cl\u00e1sico \u201ccopiar y pegar\u201d, frecuente entre los estudiantes principiantes para reutilizar c\u00f3digos enteros o fragmentos, ya sea por ignorancia metodol\u00f3gica o intenci\u00f3n deliberada (plagio), adem\u00e1s de implicar cuestiones \u00e9ticas y legales, el hecho es que lesiona el mismo proceso de aprendizaje. Presentar una copia en donde debiera ir el resultado de un esfuerzo creativo (un programa) es quiz\u00e1 peor que copiar en un examen. Cosa distinta es tomar c\u00f3digo y estudiarlo, modificarlo y hasta compartirlo, ideolog\u00eda en que se sustenta el c\u00f3digo bajo licencias de software libre.<\/li>\n<li>Mejorar el estilo de programaci\u00f3n. El uso de las met\u00e1foras y la oportuna disposici\u00f3n de frases para transmitir una idea, puede ser \u00fatil para la programaci\u00f3n, la depuraci\u00f3n y optimizaci\u00f3n de programas, y la reestructuraci\u00f3n de c\u00f3digo, denominada refactorizaci\u00f3n (del ingl\u00e9s <em>re-factoring<\/em>).<\/li>\n<\/ol>\n<p>Y ya entrados en los interregnos de la poes\u00eda programada, qu\u00e9 tal ser\u00eda hacer que los programas-poemas trasciendan la mera creaci\u00f3n de rimas, es decir, aprovechar la sem\u00e1ntica del lenguaje en cuesti\u00f3n para construir el discurso po\u00e9tico. Esto exigir\u00eda mayor dominio del lenguaje de programaci\u00f3n y de sus abstracciones. \u00bfC\u00f3mo suena generar poemas en c\u00f3digo fuente con la expresividad de un haik\u00fa o de un poem\u00ednino huertiano? No es trivial desarrollar esta expresividad. Sin embargo, al margen de generar tales programas-poemas, lo verdaderamente importante es aprovechar las herramientas cognitivas que este esfuerzo permitir\u00eda desarrollar.<\/p>\n<p>Finalmente, creo que el desarrollo de software en M\u00e9xico es uno de los potenciales nacionales que deber\u00edan ser explotados. Requiere incluso inversiones menores que en otros campos de la tecnolog\u00eda, el equipo de c\u00f3mputo y herramientas de desarrollo (muchas de ellas bajo licencias de software libre), de no muy dif\u00edcil adquisici\u00f3n. La inversi\u00f3n real est\u00e1 en la obtenci\u00f3n del conocimiento necesario, la preparaci\u00f3n y el esfuerzo constante para generar software de calidad y desarrollar proyectos, \u00fatiles, eficientes, y robustos, que resuelvan problemas del mundo real. Esto puede situarnos a la vanguardia en esta industria, adem\u00e1s de atender al mercado nacional necesitado de opciones viables y funcionales.<\/p>\n<p>El poema ganador del concurso de poes\u00eda en c\u00f3digo fuente de 2014 puede consultarse en: <a href=\"http:\/\/instacod.es\/90608\">http:\/\/instacod.es\/90608<\/a>.<\/p>\n<p>&nbsp;<\/p>\n\n\t\t<style type=\"text\/css\">\n\t\t\t#gallery-1 {\n\t\t\t\tmargin: auto;\n\t\t\t}\n\t\t\t#gallery-1 .gallery-item {\n\t\t\t\tfloat: left;\n\t\t\t\tmargin-top: 10px;\n\t\t\t\ttext-align: center;\n\t\t\t\twidth: 33%;\n\t\t\t}\n\t\t\t#gallery-1 img {\n\t\t\t\tborder: 2px solid #cfcfcf;\n\t\t\t}\n\t\t\t#gallery-1 .gallery-caption {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\t\t\t\/* see gallery_shortcode() in wp-includes\/media.php *\/\n\t\t<\/style>\n\t\t<div id='gallery-1' class='gallery galleryid-3620 gallery-columns-3 gallery-size-thumbnail'><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon portrait'>\n\t\t\t\t<a href='https:\/\/www.uv.mx\/cienciauv\/blog\/poesiaprogramacioncomputadoras\/attachment\/experiencia4001\/'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.uv.mx\/cienciauv\/files\/2015\/03\/experiencia4001-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/dt><\/dl><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.uv.mx\/cienciauv\/blog\/poesiaprogramacioncomputadoras\/attachment\/poesiatic\/'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.uv.mx\/cienciauv\/files\/2015\/03\/poesiaTIC-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" \/><\/a>\n\t\t\t<\/dt><\/dl>\n\t\t\t<br style='clear: both' \/>\n\t\t<\/div>\n\n<p><a href=\"https:\/\/www.uv.mx\/cienciauv\/files\/2015\/03\/images-8.pdf\">Descargar versi\u00f3n impresa<\/a><\/p>\n<p><strong>*Licenciado en Inform\u00e1tica por la Universidad Nacional Aut\u00f3noma de M\u00e9xico y Maestro en Inteligencia Artificial por la Universidad Veracruzana.<\/strong><\/p>\n<p><strong>Actualmente labora en el Departamento de Tecnolog\u00edas de la Informaci\u00f3n, Divisi\u00f3n de Ciencias de la Comunicaci\u00f3n y Dise\u00f1o,Universidad Aut\u00f3noma Metropolitana-Unidad Cuajimalpa y cursa el Doctorado en Ciencias de la Computaci\u00f3n en la Escuela de Ciencias de la Computaci\u00f3n e Ingenier\u00eda Electr\u00f3nica, de la Universidad de Essex, Reino Unido.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wulfrano Arturo Luna Ram\u00edrez* En literatura, y en particular, en poes\u00eda, no hay pa\u00edses atrasados o en v\u00edas de desarrollo. Una mejor manera de decir lo anterior, una manera po\u00e9tica, la encontramos en el poema o mejor dicho poem\u00ednimo \u201cAy Poeta\u201d como lo nombr\u00f3 su creador, el escritor mexicano Efra\u00edn Huerta: Primero \/ Que nada: [&hellip;]<\/p>\n","protected":false},"author":1746,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ventana_nueva":"","tipo_url":"","url":"","extracto":"","imagen_halign":"","imagen_valign":"","bg_size":"","text_hide":"","media_url":"","tipo_media":"","video_url":"","video_pos":"","video_youtube":"","footnotes":""},"categories":[28],"tags":[],"class_list":["post-3620","post","type-post","status-publish","format-standard","hentry","category-blog"],"_links":{"self":[{"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/posts\/3620","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/users\/1746"}],"replies":[{"embeddable":true,"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/comments?post=3620"}],"version-history":[{"count":0,"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/posts\/3620\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/media?parent=3620"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/categories?post=3620"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.uv.mx\/cienciauv\/wp-json\/wp\/v2\/tags?post=3620"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}