<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DevTics.com.Mx &#187; Mi Opinion de&#8230;</title>
	<atom:link href="http://www.devtics.com.mx/wp/category/mi-opinion-de/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.devtics.com.mx/wp</link>
	<description></description>
	<lastBuildDate>Sat, 03 Sep 2011 18:59:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Google el patrocinador de JavaScript</title>
		<link>http://www.devtics.com.mx/wp/339-google-el-patrocinador-de-javascript/</link>
		<comments>http://www.devtics.com.mx/wp/339-google-el-patrocinador-de-javascript/#comments</comments>
		<pubDate>Sun, 23 May 2010 13:30:10 +0000</pubDate>
		<dc:creator>pako</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Mi Opinion de...]]></category>

		<guid isPermaLink="false">http://www.devtics.com.mx/wp/?p=339</guid>
		<description><![CDATA[En algunos foros y aquí no he dejado de dejar plasmado mi gusto y pasión por el lenguaje de scripting JavaScript(JS), Google siguiendo su tradición de conmemorar los eventos históricos importantes alguno que otro homenaje a personajes, programas, inventos, científicos. etc.. etc.. etc… el pasado Viernes 21 Google sorprendido a varios incluyéndome al cambiar un [...]]]></description>
			<content:encoded><![CDATA[<div align="center">
<a href="http://www.google.com/pacman" target="_blank"><br />
<img src="/imgs/blogimgs/google-el-patrocinador-de-javascript/pacman-google.png" alt=""  border="0"/><br />
</a>
</div>
<p>En algunos foros  y aquí no he dejado de dejar plasmado mi gusto y pasión por el lenguaje de scripting JavaScript(JS), Google siguiendo su <a href="http://www.google.com/logos/index.html" target="_blank">tradición de conmemorar los eventos históricos importantes</a> alguno que otro homenaje a personajes, programas, inventos, científicos. etc.. etc.. etc… el pasado Viernes 21 Google sorprendido a varios incluyéndome al cambiar un poco la dinámica de sus logos en esta ocasión google coloca una imagen conmemorando el 30 aniversario del uno de los grandes clásicos de los videojuegos <a href="http://www.google.com/pacman" target="_blank">pacman</a>, pero esta imagen tiene algo en particular, es una imagen que atreves de la técnica de sprite  y un excelente trabajo en javascript logran un mini-juego de pacman.. Basado solamente en CSS/Javascript/DOM, algo que para muchos resulta increíble, hubo quien al ver, casi afirmo que se trataba de HTML5-Canvas, pero no, <a href="/imgs/blogimgs/google-el-patrocinador-de-javascript/pacman10-hp-sprite.png" target="_blank" >es un par de png’s</a>  y<a href="/imgs/blogimgs/google-el-patrocinador-de-javascript/pacman10-hp.2.js" target="_blank"> un rutinario JS</a> que bien pudimos haber programado hace 10 o 12 años… incluso tuve una pequeña discusión por el origen de ese script ya que incluso hay quien asegura que se pudo haber utilizado GWT pero la verdad lo dudo por que el código pese a estar compactado para producción al pasarlo por una herramienta para reordenarlo queda muy limpio y entendible algo imposible para un código generado por GWT.</p>
<p>Tengo tiempo queriendo escribir algo que me molesta un poco de los programadores actuales más aun, de los que migran de la programación tradicional a la web, en lo personal inicie con a programar en C/C++ en mis clases de bachiller, por gusto incursione en la programación web, en aquel entonces 2001, la Web aun no dejaba de ser un periódico mural donde solo se mostraba información y muy pocas páginas iniciaban a tener comunicación en dos vías(un librito de visitas), que el usuario subiera información al web, tenían poco tiempo los web mails, poco se sabía de paginas conectadas a bases de datos y mucho menos se sabía de la existencia de técnicas como AJAX aunque se podía lograr algo muy parecido, en IE ya existía XHR!, en ese tiempo conocí un poco de Javascript y algo de PHP, vi como podían interactuar y lograr verdaderos sitios muy ricos y que a la larga se convertían en sistemas de información y ya no solo una revista, que podía atreves de una web alimentar una DB, en el servidor procesar esa información y atreves de la web manipularla y consultarla. Lo que se venía haciendo en los sistemas de escritorio tradicionales y afortunadamente evite la tentación de aprender e invertir mi tiempo en aprender Java por aprender y perfeccionar HTML/CSS/JavaScript/PHP/MySQL, creo que fue una buena elación hoy Java sigue siendo muy potente pero incluso al llegar al Java EE terminas haciendo lo que se hace en PHP claro con algunas mejoras en los procesos del lado servidor pero al final caemos a lo mismo y creo la tendencia hoy día esta mas que clara.
</p>
<p>Creo que Google a creado una Joya de la programación en JS, es una muestra de su potencial, creo que es una lástima y es algo que me llega a molestar es que pocos programadores crean en este lenguaje y su falta de interés por invertir en aprender este lenguaje, hoy veo incluso que en foros se hablar más de librerías como jQuery que también es  joyas del JS, pero le quitan el crédito principal a JS incluso muchos novatos y no tan novatos creen que al programar un Script JS que use jQuery están programando en algo distinto a JS, algo que para mí me parece lamentable, el uso del término AJAX para el manejo general del objeto XHR es otra cosa que me parece lamentable y no deja de molestar ya que se le quita el crédito al lenguaje muchos creen que AJAX es otra cosa e incluso le llaman “tecnología” pero no todo esto no es más que simple y sencillo JS común y corriente y aun así hay quien sigue creyendo que es un lenguaje débil al cual no hay que invertir mucho tiempo en aprender, o siguen anteponiendo el adjetivo “dificil “ y buscan atajos para no aprender.. Llámense frameworks(ZK, GWT, XAJAX) o librerías como jQuery</p>
<p align="center">
<img src="/imgs/blogimgs/google-el-patrocinador-de-javascript/apps-javascript-google.jpg" alt=""/>
</p>
<p>Google ha sido el Gran patrocinador de JavaScript no solo con la creación de este juego conmemorativo, si no porque prácticamente todas sus app’s están basadas en este lenguaje en el lado cliente he allí su Gmail o sus Google Docs o su potente y tan incomprendido Google Wave todas ellas aplicaciones RIA basadas en JS. Este post no es más que una invitación a los programadores a invertir un poco de tiempo en aprender JavaScript fuera de librerías esto al final le ayudara incluso a comprender y explotar mejor librerías tipo jQuery incluso crear grandes aplicaciones con solo JS/HTML/CSS,JS se puede orientar a objetos aunque con algunas diferencias que notaran ya que JS no usa clase en su modelo de OOP lo cual afecta directamente al paradigma de herencia que solemos utilizar en lenguajes como Java es algo importante mencionar que es otro paradigma de OOP al cual le llaman OOP basado en Prototipos contario al de Java y otros que son basados a Clases, prometo crear algunos contenidos de JS Orientado a Objetos, bueno sin mas solo les invito a conocer este gran lenguaje muy desvalorado el cual a pesar de los años se sigue creyendo que es para trivialidades como la validación de un form. </p>
<p>
Bueno recomendaciones, antes de entrar a JS, estudia HTML/CSS son indispensables, para JS hay muchos tutoriales por desgracia algo anticuados en cuanto a técnicas de calidad, utiliza cualquiera de tantos, posterior investiga algo de “JavaScript no obstructivo” y finaliza con DOM y OOP en Javascript, al final puedes apoyarte de librerías como jQuery, prototype o mooltools para hacer un poco más eficiente tu trabajo.<br />
Suerte y en verdad no es pérdida de tiempo invertir en aprender JavaScript</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtics.com.mx/wp/339-google-el-patrocinador-de-javascript/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Respalda en Megaupload</title>
		<link>http://www.devtics.com.mx/wp/176-respalda-en-megaupload/</link>
		<comments>http://www.devtics.com.mx/wp/176-respalda-en-megaupload/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 17:22:28 +0000</pubDate>
		<dc:creator>pako</dc:creator>
				<category><![CDATA[Intercambio]]></category>
		<category><![CDATA[Megaupload]]></category>
		<category><![CDATA[Mi Opinion de...]]></category>
		<category><![CDATA[Servidores]]></category>

		<guid isPermaLink="false">http://www.devtics.com.mx/wp/?p=176</guid>
		<description><![CDATA[Uno de los objetivos de la red es el intercambio de archivo (algunos legales algunos no tanto), la forma de compartir nuestros archivos a través de Internet han ido cambiando, en estos últimos años para mi la mejor forma de compartir es por las DD (Descargas Directa) aunque los servidores ofrecen el servicio gratuito no [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" title="megaupload" src="http://techpp.com/wp-content/uploads/2009/11/megaupload-logo.png" alt="" width="227" height="170" /></p>
<p>Uno de los objetivos de la red es el intercambio de archivo (algunos legales algunos no tanto), la forma de compartir nuestros archivos a través de Internet han ido cambiando, en estos últimos años para mi la mejor forma de compartir es por las DD (Descargas Directa) aunque los servidores ofrecen el servicio gratuito no esta de mas pagar la verdad si eres filemanico como yo si que desquita el adquirir una membrecía premium. hasta hoy no soy participe de los wares mas que como usuario de desccarga, pero en estos días tengo un montón de archivos que deseo respaldar por que me he quedado casi sin espacio en el HD, la primera alternativa fue enviarme mis archivos a cuentas gmail, algo factible lo malo que muchos de los archivos que quiero respaldar sobrepasan los 25Mb que es el máximo que se pueden adjuntar ademas que son como 40GB&#8217;s.</p>
<p>Entonces voltee a ver a megaupload, como usuario registrado(no premium) te dan 200GB(ilimitado con premium) para almacenar lo que tu quieras, espacio suficiente para lo que necesito, con la condición que se tiene que descargar en 90 días el archivo para que este no sean eliminado y que no viole sus políticas que en resumen son no pornografía infantil ni piratería, si compras una membrecía que para mi no son caras una vitalicia esta en $2,000MX aprox., una anual esta como en $900MX no te tienes que preocupar por esto de la descarga en 90 día, si no solo hay que estar al pendiente que nuestros archivos no venzan, aparte hay un sistema de premios que si bien son tentativos son difíciles de alcanzar a menos que subas y compartas archivos de legalidad dudosa lo cual si bien lo puedes hacer pero tienes que buscar la forma de cuidar tu anonimato y  si te cachan pues el dueño puede exigir a megaupload que borre tu archivo y con ello se va el premio que podrías haber ganado.</p>
<p>lo que se me hizo muy interesante y por lo que escribo este post aparte de la reseña de uso del servicio es que me di cuenta que al respaldar un archivo que fue descargado del servidor, este no lo vuelve a subir, lo que hace es que primero verifica el archivo y si no me equivoco lo busca muy probablemente con la suma md5 del archivo si este ya se encuentra en los servidores solo se crea una liga de tu cuenta al usuario evitando volver a subir los archivos aunque por lo que vi si tienes que descargar el archivo antes, esto esta bien para todos los que descargamos archivos de otros usuario y queremos una copia de seguridad de dicho archivo, nos ahora mucho tiempo y a megaupload espacio en sus discos duros, yo me di cuenta al respaldar una iso de 600MB que se subió en 20 segundos, dije !no puede ser¡ verifique y la descargue mi archivo y todo bien, intente con algunos otros archivos y de igual forma se &#8220;subieron&#8221; pero mas bien se creo una liga de mi cuenta al archivo sin que yo tuviera que volver a subir todo el archivo.</p>
<p>por ahora soy usuario registrado espero juntar algo de dinero para comprar una cuenta vitalicia la verdad creo que es un servicio que vale la pena sobretodo de respaldo de nuestros archivos, y para compartir una que otra cosa con el Internet y hay un método para refrescar la caducidad de los archivos que les comentare en otro post, ademas que viendo la interfaces y haciendo un poco de re-ingeniería inversa :) creo que puedo crear una aplicación que nos simplifique el trabajo&#8230; =D</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtics.com.mx/wp/176-respalda-en-megaupload/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>keyValue jQuery y mi reseña sobre jQuery</title>
		<link>http://www.devtics.com.mx/wp/149-keyvalue-jquery/</link>
		<comments>http://www.devtics.com.mx/wp/149-keyvalue-jquery/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 21:44:51 +0000</pubDate>
		<dc:creator>pako</dc:creator>
				<category><![CDATA[Funciones JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jQuery Plugins]]></category>
		<category><![CDATA[Mi Opinion de...]]></category>

		<guid isPermaLink="false">http://www.devtics.com.mx/wp/?p=149</guid>
		<description><![CDATA[En estos días he estado trabajando y aprendiendo jQuery, si bien ya he postulado mi punto de vista sobre el uso de frameworks, y lo sigo manteniendo, la gran mayorías de las cosas que JQuery hace las se hacer desde JavaScript puro, y por motivos de trabajo indague en esta librería, que si bien se [...]]]></description>
			<content:encoded><![CDATA[<p>En estos días he estado trabajando y aprendiendo jQuery, si bien ya he postulado mi punto de vista sobre el uso de frameworks, y lo sigo manteniendo, la gran mayorías de las cosas que JQuery hace las se hacer desde JavaScript puro, y por motivos de trabajo indague en esta librería, que si bien se presta a mucho copy paste y de mas fanfaronada(hacer lo que no se hacer gracias al framework) que es lo que me desagrada de lo que hay alrededor de estas herramientas.</p>
<p>bueno lo que me agrado de jQuery a contra de los que a muchos le llama la atención(las animaciones), lo que creo que son sumamente buenos y una excelente idea son sus selectores que si no me equivoco de alli viene su nombre &#8220;Query&#8221;, en esta forma de trabajar la verdad jQuery se lleva un 100% ya que ayuda mucho y simplifica el manejo del DOM, solo que hay que tener cuidad de no llamar mucho a los selectores si no tratar de mantener enlaces de memoria a ellos ya que cada que se llama a $() se genera un nuevo objeto jQuery y para que rehacer algo que ya tenemos en memoria, y esto afecta el rendimiento de la aplicación (se hacen algoritmos de mas)  aunque esto pasa en todo los framework si no se saben controlar .</p>
<p>otra cosa que me agrado fue la extensión en plugin, y aquí es donde me gustaría enfocarme ahora, me gusta mucho crear librerías, en este post les traigo mi primer plugin para jQuery, es un plugin el cual nos permite colocar un filtro a campos de textos para filtrar los caracteres que se permitirán en el campo de texto, por ejemplo para evitar que el usuario ingrese letras en un campo solo numero, o caracteres no permitidos en un password etc.</p>
<p>sin mas les dejo el código fuente de mi primer plugin<br />
Download: <a href="http://www.megaupload.com/?d=JVHRIHMK" target="_blank">http://www.megaupload.com/?d=JVHRIHMK</a></p>
<pre>
/*
 * $.fn.keyValue(exp,maxlength)
 * By JFco Diaz.
 * wariodiaz@gmail.com
 * www.devtics.com.mx
 * 19/02/2010
 * plugin jQuery, para evaluar una entrada en un input x expresión regular
 * y poder discriminar el carácter si no se encuentra en la expresión regular
 * evitando su inserccion
 *
 * @param expOarr, es un arreglo de caracteres y/o enteros que representen
 * el charCode del carácter a permitir, o bien una expresión regular que indique
 * en el patrón los caracteres que se permitirán, ademas opcionalmente coloca un
 * máximo de caracteres permitidos
 * Nota: la evaluación es del carácter que se esta tecleado no sobre la cadena ingresada
 *
 * ejemplo:
 *
 * $(".soloNumeros").keyValue(/[0-9]/);
 *
 * $(".soloNumeros").keyValue([0,1,2,3,4,5,6,7,8,9]/);
 *
 * ambos solo permiten la entrada de números o solo caracteres en minúsculas
 *
 * $(".soloNumeros").keyValue(/[a-z]/);
 *
 * o solo numeros y "-" y solo 10 caracteres
 *
 * $(".soloNumeros").keyValue([0,1,2,3,4,5,6,7,8,9,'-'],10);
 *
 * o con expresión regular
 *
 * $(".soloNumeros").keyValue(/[0-9-]/,10);
 *
 * */
(function ($){
    $.fn.keyValue=function(expOarr,maxLength){
        try{
            var $this=$(this);
            if(maxLength)
                $this.attr("maxlength",maxLength);
            $this.keypress(function(event){
                try{
                    var key = event.which;
                    if(key==0||event.charCode==0)return true;
                    if(maxLength &#038;&#038; this.value.length==maxLength)return false;
                    if(typeof expOarr ==='object'&#038;&#038; expOarr.length!=undefined){
                        for(var i=0;(exp=expOarr[i++]);)
                            if(key==((typeof exp=="number")? exp : exp.charCodeAt(0)))
                                return true;
                        return false;
                    }
                    return expOarr.test(String.fromCharCode(key));
                }catch(e){
                    alert(e.message);
                }
            });
        }catch(e){
            alert(e.message);
        }
        return $this;
    }
})(jQuery);
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.devtics.com.mx/wp/149-keyvalue-jquery/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Otra Rueda Reinventada y la fusión de muchas otras, y ¿la Web 2.0 el monopolio de la Web?</title>
		<link>http://www.devtics.com.mx/wp/122-otra-rueda-reinventada-y-la-fusion-de-muchas-otras-y-la-web-2-0-el-monopolio-de-la-web/</link>
		<comments>http://www.devtics.com.mx/wp/122-otra-rueda-reinventada-y-la-fusion-de-muchas-otras-y-la-web-2-0-el-monopolio-de-la-web/#comments</comments>
		<pubDate>Sat, 17 Oct 2009 18:33:38 +0000</pubDate>
		<dc:creator>pako</dc:creator>
				<category><![CDATA[Mi Opinion de...]]></category>

		<guid isPermaLink="false">http://www.devtics.com.mx/wp/?p=122</guid>
		<description><![CDATA[Viendo las estadísticas del blog que cada día se hace más famoso :P&#8230; nada mal para solo llevar 1 mes en línea y pocos muy pocos post para lo que me gustaría tener, pues encontré que alguien me visito buscando por palabra clave “no reinventes la rueda” por lo cual proseguí a hacer una búsqueda [...]]]></description>
			<content:encoded><![CDATA[<p>Viendo las estadísticas del blog que cada día se hace más famoso :P&#8230; nada mal para solo llevar 1 mes  en línea y pocos muy pocos post para  lo que me gustaría tener, pues encontré que alguien me visito buscando por palabra clave “<a href="http://www.google.com.mx/search?q=no+reinventes+la+rueda&amp;ie=utf-8&amp;oe=utf-8&amp;aq=t&amp;rls=org.mozilla:es-MX:official&amp;client=firefox-a" target="_blank">no reinventes la rueda</a>” por lo cual proseguí a hacer una búsqueda de rutina para ver en qué lugar de google estaba devtics.. Nada mal un 4 lugar y apenas llevamos 1 mes en línea :D eso dice que el SEO si funciona :). Bueno siguiendo navegando encontré este articulo: “<a href="http://google.dirson.com/post/4086-navegador-google-chrome-reinventar-rueda/" target="_blank">Navegador Google Chrome: ¿Por qué Google ha reinventado la rueda?</a>” No hare un copy/paste del artículo por que no es mi estilo, pero si lo comentare aquí.</p>
<p>Terminando de leer el artículo que data de Septiembre del 2008, y la salida de la beta de google wave, me quede analizando, ciertamente google tiene una calidad enorme la verdad yo estoy enamorado de gmail y cada que quiero ubicar una dirección me voy a google maps y todas mis búsquedas las hago en google, pero… ¿qué pasa con google?, crea gloggle chrome, ahora ya va por un S.O y no dudo que en un momento cree la NetBook Chrome.</p>
<p>La calidad en los productos no la cuestiono pero si la ética y el objetivo con el que está intentando acaparar todo en cuanto a la WWW se refiere, no he tenido la oportunidad de probar Google Wave, pero como <a href="http://twitter.com/jafrancov">@jafrancov </a>me confirmo en twitter no es más que un de todo del concepto Web2.0,  funcionado en una sola aplicación es un Blog, un micro blogin, una wiki, agregándole todos los servicios que ya tiene google y etc mas add que se le pueda agregar, todo lo que necesito esta en google wave, entonces google esta reinventando la rueda, para un fin tal vez un poco perverso. Queriéndose convertir en el monopolio de la web, lo que hoy día es Microsoft para las PC’s, google pretende serlo para la WWW.</p>
<p style="text-align: center;"><img class="aligncenter" title="monopolio-google.jpg" src="http://www.devtics.com.mx/imgs/blogimgs/monopolio-google/monopolio-google.jpg" alt="" width="300" height="300" /></p>
<p>Como sabemos los monopolio son muy malos, <a href="http://www.devtics.com.mx/wp/index.php/86-no-reinventes-la-rueda/">por eso mi post anterior y el invitarlos a pecar de reinventar la rueda y crear algo mejor de lo que ya está hecho</a>, no tiene chiste reinventar si vas a terminar exactamente en lo mismo, el concepto web 2.0 que la verdad siempre me ha molestado al igual de concepto AJAX. En las bases el concepto de web 2.0 está bien, paginas alimentadas por los mismo usuarios “mortales normales” sin tener que saber más que abrir una página y llenar un form, pus bien eso hace que la libertad del mundo se haga más grande para mí algo muy bueno la libertad de expresión y compartir información con la web 2.0 se abre esa puerta a los “mortales normales”. Pero hay algo que no me gusta, como se empieza a monopolizar la web. Al hablar de web 2.0 siempre hay sitios que salen como sinónimo, blogger, youtube  myspace, facebook, hi5, flick, google, wikipedia, twitter, etc.  pues ellos no son la web 2.0 pero sin embargo están acaparando el universo algo realmente peligroso a mi ver, con un riesgo de monopolizar la web, se pierde también mucho, porque menos personas van a querer desarrollar algo nuevo porque simplemente vamos a tener que competir con mostruos que aparte luego mi idea va a terminar como un add de google wave. Y más aun así si google se esta convirtiendo en el gigante de internet acaparando cual buena idea ve y la fusiona en su plataforma,  empezó como un simple buscador y hoy día quiere tal vez hacer zulla la internet y recuerden la internet somos todos cada usuario forma parte de internet y no tenemos por qué dejar que una sola empresa controle todo lo que pase en ella, es lo que sinceramente no me está gustando de cómo se está comportando google y las estrategias que está tomando.</p>
<p>Pues esperemos que todo esto solo sea un divague y nunca se monopolice Internet como Microsoft lo hiso con las Pc’s</p>
<p style="text-align: center;"><img class="aligncenter" title="microsoft-vs-google.jpg" src="http://www.devtics.com.mx/imgs/blogimgs/monopolio-google/microsoft-vs-google.jpg" alt="" width="450" height="292" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtics.com.mx/wp/122-otra-rueda-reinventada-y-la-fusion-de-muchas-otras-y-la-web-2-0-el-monopolio-de-la-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>No Reinventes la Rueda! ¬¬!</title>
		<link>http://www.devtics.com.mx/wp/86-no-reinventes-la-rueda/</link>
		<comments>http://www.devtics.com.mx/wp/86-no-reinventes-la-rueda/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 07:19:35 +0000</pubDate>
		<dc:creator>pako</dc:creator>
				<category><![CDATA[Mi Opinion de...]]></category>

		<guid isPermaLink="false">http://www.devtics.com.mx/wp/?p=86</guid>
		<description><![CDATA[Una frase que tiene en un sierto punto de verdad dependiendo desde donde lo veas, la frase la he escuchado infinidad de veces y cada persona de la cual viene en el instante genera una enorme decepción. Pues hablemos de la rueda, La rueda es una pieza mecánica generalmente circular que gira alrededor de un [...]]]></description>
			<content:encoded><![CDATA[<p>Una frase que tiene en  un sierto punto de verdad dependiendo desde  donde lo veas, la frase la he escuchado infinidad de veces y cada persona de la  cual viene en el instante genera una enorme decepción.</p>
<p>Pues hablemos de la rueda, <em>La <strong>rueda</strong> es una pieza mecánica generalmente circular que gira  alrededor de un eje; puede ser considerada una <a title="Máquina simple" href="http://es.wikipedia.org/wiki/M%C3%A1quina_simple" target="_blank">máquina  simple</a>, y forma parte del conjunto denominado <a title="Elementos de máquinas" href="http://es.wikipedia.org/wiki/Elementos_de_m%C3%A1quinas" target="_blank">elementos de máquinas</a>. </em>Eso  dice la wikipedia, la verdad algo que ya ha  sido inventado no se puede volver a inventar es donde la frase cierta, pero si  se puede hacer una mejor se puede inventar una alternativa.  ¿Qué pasaría si literalmente no hubiéramos  Reinventado la rueda:</p>
<p>Tal  vez esta es la  primera rueda:</p>
<p style="text-align: center;"><img class="aligncenter" src="http://www.devtics.com.mx/imgs/blogimgs/no-reinventar-la-rueda/rueda.jpg" alt="Rueda" width="332" height="304" /></p>
<p>Si no se hubiera reinventado la rueda tal vez andaríamos en  esto:</p>
<p style="text-align: left;"><img class="alignleft" src="http://www.devtics.com.mx/imgs/blogimgs/no-reinventar-la-rueda/tronco.jpg" alt="troncomovil" width="204" height="151" /><img src="http://www.devtics.com.mx/imgs/blogimgs/no-reinventar-la-rueda/trocomoto.jpg" alt="tronco-moto" width="213" height="153" /></p>
<p>Pero afortunadamente ubo una revolucion, reinventaron cambiaron la rueda:</p>
<p style="text-align: center;"><img class="aligncenter" src="http://www.devtics.com.mx/imgs/blogimgs/no-reinventar-la-rueda/rueda3.jpg" alt="evolucion" width="200" height="197" /></p>
<p>y hoy andamos en esto:</p>
<p><img src="http://www.devtics.com.mx/imgs/blogimgs/no-reinventar-la-rueda/car.jpg" alt="car" width="230" height="162" /><img src="http://www.devtics.com.mx/imgs/blogimgs/no-reinventar-la-rueda/moto.jpg" alt="moto" width="217" height="162" /></p>
<p>Imagínate todas las ruedas y engranes(de hecho los engranes  no hubieran existido) serian hoy día tal vez de piedra o madera como la primera  rueda!, ¡porque es pecado reinventar la rueda!</p>
<p>Esta frasecita la he escuchado mucho,  en nuestros días se han puesto de moda los frameworks, en las universidades  pronto dejaran de enseñar leguajes de programación para enseñar frameworks  (note sarcasmo extremo!), se habla mucho de los frameworks pero qué diablos es  un framework?</p>
<p>Según wikipedia: Un <a href="http://es.wikipedia.org/wiki/Framework" target="_blank"><strong>framework</strong></a>, en el <a title="Desarrollo de software" href="http://es.wikipedia.org/wiki/Desarrollo_de_software" target="_blank">desarrollo de software</a>, es una estructura de  soporte definida, mediante la cual otro proyecto de <a title="Software" href="http://es.wikipedia.org/wiki/Software" target="_blank">software</a> puede  ser organizado y desarrollado. Típicamente, puede incluir soporte de <a title="Programa (computación)" href="http://es.wikipedia.org/wiki/Programa_%28computaci%C3%B3n%29" target="_blank">programas</a>, <a title="Biblioteca (programación)" href="http://es.wikipedia.org/wiki/Biblioteca_%28programaci%C3%B3n%29" target="_blank">bibliotecas</a> y un <a title="Lenguaje interpretado" href="http://es.wikipedia.org/wiki/Lenguaje_interpretado" target="_blank">lenguaje interpretado</a> entre otros software  para ayudar a desarrollar y unir los diferentes componentes de un proyecto.</p>
<p>Según yo entiendo un framework es un conjunto de librerías que  tienen como objetivo el evitar que desarrollemos desde 0 arrancando desde una  plataforma un poco más cercana al final y nos brinden una forma de trabajo más  eficiente para acelerar el desarrollo y mayor limpieza, suena interesante y se  ve bueno. Pero que pasa en la realidad y es donde entra mi gran decepción.</p>
<p>Usa un framework por qué no tienes que reinventar la rueda. Ya  puedes hacer las cosas facilitas con solo dar $.getEPR() y ya crear un  EPR en plataforma Web que utiliza AJAX y con Java manejando Struts y beans en  el server y Oracle.. Para que vuelves a programar!.. Solo programa:</p>
<p>[sourcecode language='jscript']<br />
$.getEPR();<br />
[/sourcecode]</p>
<p>Y  yaaaa!&#8230;</p>
<p>Amm.. Bueno creo que el ejemplo fue un poco extremo y bastante  sarcástico, pero bueno, no estoy en contra de los frameworks ya que si bien el  objetivo de cada programador siempre será realizar su programación pensado que  este servirá para proyecto posterior y por esto mismo hacerlo lo más limpio y  con la mayor calidad y visión que se pueda desde el inicio, por esta razón se empezaron  a implementar primero los leguajes estructurados con capacidad de generar  funciones reciclables, o la Programación Orientada Objeto con sus grandes  capacidades de reciclaje atreves de La Herencia .</p>
<p>Pero que se entiende por reciclar código, es una lástima que  muchos crean que es hacer un copy/paste del código que copien un código ya  hecho, lo pequen y lo modifiquen para que ya no sea igual o se “adapte”, por ejemplo  esto para muchos es reciclar:</p>
<p>[sourcecode language='html']</p>
<p><html><br />
<head></p>
<p><script type="text/javascript">
function saludo1(){
alert("Hola Mundo");
}
function saludo2(){
alert("Hola Fulano");
}
function saludo3(){
alert("Hola Sutana");
}
function saludo4(){
alert("Hola Enfermera...!");
}
</script><br />
</head><br />
<body></p>
<input onclick="saludo1()" type="button" value="Hola Mundo" />
<input onclick="saludo2()" type="button" value="Hola Fulano" />
<input onclick="saludo3()" type="button" value="Hola Sutana" />
<input onclick="saludo4()" type="button" value="Hola Enfermera....!xD" />
</body><br />
</html></p>
<p>[/sourcecode]</p>
<p>Vean como hice un copy/paste de la función saludo1 y le  modifique poquito para crear mi otras funciones y ya recilce código.. :)..!</p>
<p>Amm… eso no es reciclaje!. Esto es reciclaje:</p>
<p>[sourcecode language='html']</p>
<p><html><br />
<head><br />
<script type="text/javascript">
function saludo(btn){
alert(btn.value);
}
</script></head><br />
<body></p>
<input onclick="saludo(this)" type="button" value="Hola Mundo" />
<input onclick="saludo(this)" type="button" value="Hola Fulano" />
<input onclick="saludo(this)" type="button" value="Hola Sutana" />
<input onclick="saludo(this)" type="button" value="Hola Enfermera....!xD" />
</body><br />
</html></p>
<p>[/sourcecode]</p>
<p>Ven que no cree muchas funciones parecida para reutilizar y  eso que esto es programación estructurada porque manejo funciones y no una  clase o un método heredado que en eses casos el reciclaje es real.</p>
<p>Visualizar y Crear desde el inicio ya sea una función hasta  una clase preocupados por que el programador mismo o alguien más pueda heredar  y agregarle o modifícale elementos  a la  clase o cuantos y cuales parámetros  tengo que incluir para crear una función lo  bastante versátil que no se tenga que estar modificado en cada proyecto, esto  es reciclaje de código.</p>
<p>Regresando al punto del framework, ok un framework  trae mucho reciclaje de código por que están llenos  de funciones y objetos que nos ayudan. Pero donde esta mi inconformidad y por  que en verdad no utilizo frameworks.</p>
<p>Es sencillo innovar, aprender, crecer son motivos para mi más  importantes que el hacer las cosas fáciles, yo inicie en la web por la  curiosidad y la simple pregunta ¿Cómo se hace una página web?, ¿yo puedo hacer  una?, ¿puedo poner algo en internet? Esas preguntas me llevaron a HTML o en  aquel entonces popular FrontPage o en aquel entonces menos popular Dreamweaver  4(año 2000/2001), creo que tome la elección correcto, leí si lo quieres fácil y  como si estuvieras en Word hazlo  en  frontpage no necesitas saber html , no tienes que aprender a crear códigos COMPLICADISIMOS(Huy  Que difciles!) para hacer tu pagina ¿para qué te complicas? existe FrotPage…!</p>
<p>Afortunadamente dije.. pero…… yo no quiero aprender a utilizar  un programa que me haga la pagina. Yo quiero aprender a crear las paginas yo  mismo ¡quiero saber.!. y decidí ir por HTML por lo dificilisisismo! (sarcasmo  extremo!), y seguramente si lo hubiera hecho en FrontPage, nuca huera podido  dominar PHP como lo dominio, entender el DOM como lo entiendo y manipularlo  como lo manipulo en JavaScript, de hecho dudo que estuviera escribiendo esto,  dudo que hubiese sido ISC, tal vez hoy día estuviera en USA de forma ilegal  trabajando en no sé qué menos en las tics, estoy orgulloso de esa elección hoy  vivo de esa elección y le debo lo que soy, ir por lo difícil fue la mejor elección  y me alegro de aquel entonces no haber sido mediocre..</p>
<p>&#8220;Ser mediocre…&#8221; es lo que me dice la frase “no reinventes la  rueda”.. Yo digo hay que invitar, reinventar y reinventar. Afortunadamente el  software no es una rueda, el que se diga sabedor del desarrollo de software sabrá  que es imposible un software que no se pueda mejor, un software que no se puedo  haber programando mejor, es aquí donde me decepciona escuchar o leer esta frase  aplicada a mi área, creo que mucho talento de grandes programadores se perderán  por “no reinventar la rueda” ¿Cuántas pero cuantas innovaciones? Nos perderemos…  solo por no reaventar la rueda.. Analícelo, ya existía Wandex  o Altavista (Este si lo llegue a utilizar) para que invitar google?, ¿para que inventar  otro buscador?, ya existe Word..! ¿Para que inventar Open Office o Google Docs?. ¿ya existia Unix para que inventar Linux?</p>
<p>No hay q ser mediocres!&#8230; yo invito a todo programador  a crear su propio framework, a crear una estructura reciclable para sus  proyectos, pero que entre a crear, o si utilizan uno entren en las entrañas del  mismo vean como funciona internamente, no solo lo utilicen, créanme que aprenderán  mucho, la verdad he aprendido mucho tratando de siempre crear cosas que se  pueda reciclar, hoy día estoy creando un framework no me interesa si el mundo  lo utiliza o no, me interesa reciclar mi código el próximo proyecto sacarlo más  rápido y sobretodo aprender. He aprendido lo que no en 6 años que llevo conociendo   la OOP en estos días que realmente pude  implementar el paradigma OOP en java casi siempre simplemente utilizaba clases  pero pocas veces se crean clases útiles. Y si hubiese sido mediocre hubiera  aprendido a utilizar CakePHP, Symfony, Zend o cualquier otro, pero hoy no sabría lo que se.. y  la riqueza más grande para cualquier  persona  es el saber.</p>
<p>Cuanta confusión existe con el término AJAX, cuantos  realmente sabe lo que es, cuantos saben que es JavaScript, cuantos pueden hacer  realimente una animacioncita de las que hace jQuery, porque no aprender a  manipular el DOM porque no dominar JavaScript y ser INDEPENDIENTES, “pero mejor  aprendo jQuery y lo hago fácil!”, pues bien sigue utilizando frameworks y hasta  donde llegue tu framework llegaras por que posiblemente sin él no serás nada.</p>
<p>Creo que los framework debe de ser utilizado por  programadores expertos que saben que es lo que está haciendo realmente el  framework internamentey no un novato que apenas esta intentando empezar a “programar”  y conoce poco o nada del leguaje en cuestión, un framework es una calculadora  para un niño en 1er año, ¡para que aprende a sumar si existe la calculadora!</p>
<p style="text-align: center;"><img class="aligncenter" src="http://www.devtics.com.mx/imgs/blogimgs/no-reinventar-la-rueda/bb.jpg" alt="bebe" width="188" height="281" /></p>
<p>Si no Reinventamos&#8230;. adios invoacion!</p>
<p>Siempre pudo haberse hecho algo mejor, ¿por qué no lo haces?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtics.com.mx/wp/86-no-reinventes-la-rueda/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

