{"id":3879,"date":"2015-04-13T09:00:15","date_gmt":"2015-04-13T07:00:15","guid":{"rendered":"https:\/\/blogs.ua.es\/pi\/?p=3879"},"modified":"2015-03-03T00:47:06","modified_gmt":"2015-03-02T23:47:06","slug":"las-cosas-que-no-soporto-que-diga-un-programador-y-un-alumno","status":"publish","type":"post","link":"https:\/\/blogs.ua.es\/pi\/2015\/04\/13\/las-cosas-que-no-soporto-que-diga-un-programador-y-un-alumno\/","title":{"rendered":"Las cosas que no soporto que diga un programador (y un alumno)"},"content":{"rendered":"<p>Muy bueno el art\u00edculo\u00a0<a href=\"https:\/\/gallir.wordpress.com\/2015\/02\/01\/las-cosas-que-no-soporto-que-las-diga-un-programador\/\">Las cosas que no soporto que diga un programador<\/a> de Ricardo Galli. Muchas cosas de esas las dicen mis alumnos cuando fallan sus pr\u00e1cticas. Por ejemplo, hace tiempo escrib\u00ed\u00a0<a href=\"https:\/\/blogs.ua.es\/pi\/2013\/10\/28\/no-esta-mal-funciona\/\">No est\u00e1 mal, funciona<\/a>, que coincide plenamente con la siguiente explicaci\u00f3n:<\/p>\n<blockquote><p>Pero el c\u00f3digo funciona<\/p>\n<p>Esta es una respuesta tambi\u00e9n muy habitual entre estudiantes y programadores novatos. Es como si un novelista respondiese a la mala cr\u00edtica con un \u201cpero si al final el mayordomo era el asesino, se entiende\u201d. Se da en dos situaciones diferentes:<\/p>\n<p>La soluci\u00f3n es inadecuada: Muchas veces recurren a soluciones que no s\u00f3lo no son \u00f3ptimas, tambi\u00e9n las peores de su clase. Por ejemplo re-implementar un ordenamiento de burbuja cuando tienen la funci\u00f3n qsort(), o una b\u00fasqueda secuencial cuando el array est\u00e1 ordenado (los dos \u00faltimos son problemas de no recurrir a la menor complejidad de ejecuci\u00f3n bien conocidas), o hacer una espera activa cuando tienen primitivas sencillas con bloqueo, etc. En la \u201cciencias de la computaci\u00f3n\u201d se estudian estos temas, algunos de ellos son fundamentales y de conocimiento obligatorio. No sirve que el programa funcione para un caso concreto, debe funcionar para todos los casos previstos y con la eficiencia \u201cformal\u201d bien conocida en el \u00e1rea. Conocer esos temas es parte del proceso de aprendizaje de un programador, si alguien te indica que la soluci\u00f3n es err\u00f3nea quiz\u00e1s pueda estar equivocado, pero nunca la excusa puede ser \u201cpero funciona\u201d.<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Muy bueno el art\u00edculo\u00a0Las cosas que no soporto que diga un programador de Ricardo Galli. Muchas cosas de esas las dicen mis alumnos cuando fallan sus pr\u00e1cticas. Por ejemplo, hace tiempo escrib\u00ed\u00a0No est\u00e1 mal, funciona, que coincide plenamente con la &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"more-link\" href=\"https:\/\/blogs.ua.es\/pi\/2015\/04\/13\/las-cosas-que-no-soporto-que-diga-un-programador-y-un-alumno\/\"> <span class=\"screen-reader-text\">Las cosas que no soporto que diga un programador (y un alumno)<\/span> Leer M\u00e1s  &raquo;<\/a><\/p>\n","protected":false},"author":40,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3879","post","type-post","status-publish","format-standard","hentry","category-general"],"_links":{"self":[{"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/posts\/3879","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/users\/40"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/comments?post=3879"}],"version-history":[{"count":1,"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/posts\/3879\/revisions"}],"predecessor-version":[{"id":3880,"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/posts\/3879\/revisions\/3880"}],"wp:attachment":[{"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/media?parent=3879"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/categories?post=3879"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.ua.es\/pi\/wp-json\/wp\/v2\/tags?post=3879"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}