<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CkEHR3c7cSp7ImA9WxNQF0o.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343</id><updated>2009-09-24T02:37:16.909-03:00</updated><title>Juan Sotuyo</title><subtitle type="html">"Teenagers don’t have rock bands anymore, they have startups"</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://juansotuyo.blogspot.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/JuanSotuyo" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gd:etag="W/&quot;AkUDSX4zcSp7ImA9WxZVEUg.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-6140108880150560959</id><published>2008-03-21T22:51:00.010-03:00</published><updated>2008-03-22T00:57:58.089-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-03-22T00:57:58.089-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript" /><category scheme="http://www.blogger.com/atom/ns#" term="desarrollo web" /><category scheme="http://www.blogger.com/atom/ns#" term="programación" /><title>Elección de una librería JavaScript</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;En la actualidad existen muchísimas librearias / frameworks JavaScript que son alternativas válidas a la hora de elegir una que utilizar en nuestros sitios. Esto hace que la elección de una sea difícil para quien nunca las ha utilizado, y en otros casos, la inercia de siempre usar la misma lleva a no siempre elegir la mejor para un proyecto.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;El primer punto para poder decidir por una u otra librería es conocer cuales son sus fuertes y sus debilidades, y es eso lo que intentaré hacer en este breve resúmen de cada una. En este caso voy a hablar de Prototype, jQuery, YUI y MooTools.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;&lt;strong&gt;Prototype&lt;/strong&gt; - &lt;a href="http://prototypejs.org/"&gt;prototypejs.org&lt;/a&gt;&lt;/h4&gt;&lt;br /&gt;Esta es sin lugar a dudas una de las librerías más populares que hay, y sobre ella se han escrito muchos sitios e incluso otras librerías. Tiene una muy buena documentación y es sumamente sencilla de usarse. Es una librería genial para sistemas con mucha lógica en el lado del cliente, en especial por las facilidades que ofrece para crear clases (en particular a partir de la versión 1.6). El problema radica en que Prototype contamina todos los tipos de datos JavaScript con sus propios agregados, lo que hace que si uno está incluyendo plugins en el sitio o está desarrollando un plug-in, pueda romper el JavaScript del otro. Por ejemplo:&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="code"&gt;var frutas = new Array( "manzana", "pera", "uva" );&lt;br /&gt;for ( var i in frutas )&lt;br /&gt;    alert( frutas[i] );&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Sin Prototype mostrará 3 carteles, con las 3 frutas, pero si un plug-in cargase Prototype, este código mostraría muchísimas funciones y si se hiciese algo maś interesante que mostrarlas, el resultado sería totalmente inesperado.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;&lt;strong&gt;jQuery&lt;/strong&gt; - &lt;a href="http://jquery.com/"&gt;jquery.com&lt;/a&gt;&lt;/h4&gt;&lt;br /&gt;jQuery es sin lugar a dudas una de mis favoritas. La implementación de XQuery en JavaScript es de las mejores cosas que me han sucedido, pues facilita increiblemente la manipulación del árbol DOM. Aún más, el que permita una programación fluida (cada función retorna un objeto que puede ser utilizado para llamar a la siguiente) permite reducir lo que antes eran complejas piezas de código a una sóla línea muy facilmente legible.&lt;br /&gt;&lt;br /&gt;jQuery está muy bien documentada, y no sólo no contamina el espacio publico, sino que está diseñada para poder ser altamente compatible con otras librerías si se lo requiere. Aún más, posee una increible variedad de plug-ins que uno puede incorporar según lo requiera, obteniendose una gran granularidad sobre que cosas se desea incorporar.&lt;br /&gt;&lt;br /&gt;Son realmente pocas las limitaciones de jQuery, las maś importantes son la performance (que está en constante mejora, de hecho la versión 1.2.2 logró un gran avance en este sentido) y lo único que sí me ha limitado, es la imposiblidad de establecer ciertos headers a los pedidos AJAX (por ejemplo el encoding).&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;&lt;strong&gt;YUI&lt;/strong&gt; - &lt;a href="http://developer.yahoo.com/yui/"&gt;developer.yahoo.com/yui/&lt;/a&gt;&lt;/h4&gt;&lt;br /&gt;La YUI es una librería asombrosa. Tiene funcionalidades para hacer muchísimas cosas, y no sólo esto nos resuelve muchísimos problemas, sino que además viene todo skineado de forma muy agradable a la vista (aunque sigue siendo personalizable si se desea). Esta librería permite en forma realmente sencilla hacer aplicaciones web ricas y atractivas.&lt;br /&gt;&lt;br /&gt;Sin embargo, YUI tiene algunos problemas que hacen que no sea usada en muchos casos. En primer lugar, su peso. YUI completa pesa más de 3 MB, y si bien es cierto uno nunca carga todo, sino que carga lo mínimo y si precisa más puede siempre utilizar el YUILoader para bajar CSS y JavaScript dinámicamente, lo cierto es que en general, sigue siendo demasiado, y se refleja rápidamente en los tiempos de carga. Por otro lado, YUI tiene un serio problema de documentación. Posee demasiados ejemplos, que no usan ni el 10% de lo que ofrece la librería, y la API Reference dista mucho de ser útil (suele hacer cosas como decir que una función devuelve un Object pero no dar ninguna pista respecto de lo que el mismo contiene) y nunca es claro en que versión se introduce una función / evento, por lo que mantener sistemas viejos es realmetne complicado.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;&lt;strong&gt;mootools&lt;/strong&gt; - &lt;a href="http://mootools.net/"&gt;mootools.net&lt;/a&gt;&lt;/h4&gt;&lt;br /&gt;Para quienes conozcan Prototype, notarán que esta librería tiene muchas cosas que les serán familiares. Muchas de las fuciones que ofrece una están en la otra: $A, each, bind, etc. Igual que Prototype, ofrece herramientas interesantes para generar objetos en JavaScript, y del mismo modo contamina los tipos de JavaScript por lo que hay que tener los mismos cuidados.&lt;br /&gt;&lt;br /&gt;Lo original de esta librería es que al contrario de las otras, al momento de la descarga uno elije que cosas desea incluir y nos da un único archivo final que posee sólamente lo que nosotros precisamos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;En general, todo lo que uno hace con una librería se puede hacer con las otras, la diferencia está en cuanto tiempo y esfuerzo esto nos requiere. Idealmente uno debería de tener un buen manejo de un par de estas librerías y ser capáz de diferenciar cuadno conviene una u otra.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-6140108880150560959?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/KixRSIrh1OU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/6140108880150560959/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=6140108880150560959" title="1 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/6140108880150560959?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/6140108880150560959?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/KixRSIrh1OU/eleccin-de-una-librera-javascript.html" title="Elección de una librería JavaScript" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/03/eleccin-de-una-librera-javascript.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkQAQn0yfip7ImA9WxZWEE0.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-7093355549249257012</id><published>2008-03-08T14:55:00.006-02:00</published><updated>2008-03-08T17:25:43.396-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-03-08T17:25:43.396-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="emprendimientos" /><category scheme="http://www.blogger.com/atom/ns#" term="general" /><title>Creando una cultura emprendedora</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Ayer a la noche tuve con Matías Sulzberger, un compañero de la facultad, una de esas charlas que disparan ideas y movilizan a uno. Charlabamos sobre lo poco que se promovía en nuestra facultad el espíritu emprendedor.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;El ITBA es reconocido como una de las mejores facutlades de ingeniería del país, destacada por el excelente nivel de sus egresados. Como alumnos se nos exige al máximo, y en el caso particular de Ing. Informática, debemos en todas las materias hacer un Trabajo Práctico Especial largo y complejo, condición de aprobación de la materia. El mismo tiene por objetivo asegurarse que somos capaces de llevar a la práctica aquello de lo que trata la materia y, como dijo alguna vez una profesora, "darnos una idea de como es el mundo profesional donde las cosas tienen que estar para ayer". Para aquellos que no están al tanto, cito algunos de los trabajos que he tenido que realizar en estos 3 años que llevo en la facultad a modo ilustrativo.&lt;br /&gt;&lt;br /&gt;- Un sistema de compartición de archivos simil torrent en ANSI C (armar el protocolo con su RFC, programar el seeder, leecher y tracker, y tener todo documentado cumpliendo los requisitos preestablecidos). 3 alumnos por equipo, poco más de un mes para hacerlo.&lt;br /&gt;- Un framework para juegos de mesa en ANSI C (implementar algoritmos genérios para MiniMax con y sin poda Alfa / Beta, abstraer todos los problemas recurrentes de los juegos y dar soluciones genéricas y personalizables) e implementar 2 juegos con el mismo. Todo documentado y con un manual para quien desee usar el FW. 3 alumnos, poco más de un mes.&lt;br /&gt;- Expandir Minix 2 dandole soporte nativo para FAT12. 3 personas, 3 semana de trabajo.&lt;br /&gt;&lt;br /&gt;Recordemos que todos estos trabajos se hacen en paralelo con las cursadas y trabajos que uno pueda tener, y no es raro tener 2-3 prácticos en paralelo. El tiempo es un factor limitante importante y uno suele pasar noches enteras sin dormir programando para cumplir la fecha de entrega.&lt;br /&gt;&lt;br /&gt;Estos trabajos cumplen con el nivel de exigencia que pretende la facultad, y nos da esa sensación de tener que tener todo hecho para ayer, pero lo cierto, es que tienen muchas falencias en el darnos una experiencia de como es el mundo profesional.&lt;br /&gt;&lt;br /&gt;En primer lugar, salvo por el trabajo práctico de Minix, siempre se ha trabajado desde cero o usando un Framework ampliamente aceptado. Por tanto, salvo con Minix, jamás tuvimos que lidiar con código de terceros, que pueda no estar en óptimas condiciones o que nos imponga limitaciones extras. Esto es un factor que en la vida profesional se vive a diario.&lt;br /&gt;&lt;br /&gt;En segundo lugar, son trabajos que para nosotros como alumnos carecen por completo de utilidad. Una vez aprobada la materia esos MBs de código fuente se archivan en nuestro disco rígido y nunca tendrán uso. Si vamos a poner tanto tiempo y esfuerzo en algo, ¿cuanto mejor sería si fuese algo útil?&lt;br /&gt;&lt;br /&gt;Hablando con Matías anoche, charlabamos sobre como en EE.UU. muchas materias tienen por trabajos prácticos hacer cosas como "aplicaciones de Facebook". Esto es genial, ya que uno no sólo está poniendo en práctica su conocimiento de tecnologías web, sino que está armando algo que le resulta interesante, que vive a diario, que tiene una utilidad más allá de la materia en sí misma y dode uno tiene que lidiar con restricciones y requisitos impuestos por fuera (Facebook por ejemplo establece limitaciones en lo que se puede hacer por JavaScript) y que se asemejan mucho más a la vida profesional.&lt;br /&gt;&lt;br /&gt;Sería genial en el ITBA, así como en otras universidades, se pusiese en práctica algo así. Poder trabajar no sólo para aprobar la materia sino en algo que nos interese y tenga una utilidad en sí misma, algo que es en sí mismo un emprendimiento. Si los alumnos se acostumbrasen de temprano a hacer proyectos y ponerlos en marcha con un fin más allá de aprobar la materia, verían que emprender cosas no es realmente una ciencia, sólo requiere ganas, pasión por lo que se hace y sentarse frente a la PC.&lt;br /&gt;&lt;br /&gt;Matías me comentó él ya charló esto con los directores de la carrera, y aunque todos están de acuerdo, no se aprecian cambios. Es así que surgió la idea de organizar un "club de emprendedores" dentro de la facultad organizado por los mismo alumnos, así como surgió el &lt;a href="http://www.sabf.org.ar"&gt;South American Buisness Forum&lt;/a&gt;. Ser nosotros mismos los que invitemos a los alumnos a un espacio común donde puedan informarse, conocerse, armar equipos de trabajo y empezar a convertir sus sueños en realidades.&lt;br /&gt;&lt;br /&gt;Analizando nuestros compañeros, sólo 3-4 hemos empezado proyectos propios, sin embargo, muchos otros se han incorporado y colaborado con las ideas de otros. Ya sea por desconocimiento, por la falta de un equipo o porque tienen las ganas pero no una idea, son muchos los que no emprenden, y si se formase un espacio dentro de la facultad donde puedan conocerse, charlar y trabajar las posibilidades de que surja algo interesante se ven muy incrementadas, después de todo, la facultad se supone es un lugar donde las ideas deben fluir y surgir en forma natural.&lt;br /&gt;&lt;br /&gt;Por ahora es sólo la idea. Esto está muy verde, pero la verdad es que no me deja de dar vueltas en la cabeza. Hay que armar documentos y charlar con los directivos, pero lo veo altamente realizable. Si alguien quiere colaborar con ideas, tiempo o lo que fuere es más que bienvenido.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-7093355549249257012?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/RqPsxhK3suc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/7093355549249257012/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=7093355549249257012" title="6 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/7093355549249257012?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/7093355549249257012?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/RqPsxhK3suc/creando-una-cultura-emprendedora.html" title="Creando una cultura emprendedora" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/03/creando-una-cultura-emprendedora.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0cBRHkzcCp7ImA9WxZQF08.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-8833607518410061031</id><published>2008-02-22T16:07:00.011-02:00</published><updated>2008-02-22T23:10:55.788-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-22T23:10:55.788-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="palermo valley" /><category scheme="http://www.blogger.com/atom/ns#" term="emprendimientos" /><title>Palermo Valley, cuna de emprendimientos argentinos</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;No se trata de una nueva subdivisión de nuestro querido barrio de Palermo ni mucho menos. Palermo Valley es, como lo define su principal propulsor, un estado mental. Un meme bajo el que identificarnos y mostrarnos al mundo.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Desde hace un par de semanas, &lt;a href="http://gamesareart.com/"&gt;Santiago Siri&lt;/a&gt; viene empujando la idea de &lt;a href="http://palermovalley.com"&gt;Palermo Valley&lt;/a&gt;, un meme bajo el que poder agrupar a todos los emprendimientos web de Buenos Aires y catapultarlos al mundo, y por medio de sus subliminales mensajes en Twitter y otros medios afines, ha logrado muchos otros nos interesemos. Es así como logró vencer a &lt;a href="http://www.linkedin.com/in/vanesak"&gt;Vanesa Kolodziej&lt;/a&gt;, quien originalmente no quería saber nada con el tema, y terminó comprando el dominio &lt;a href="http://palermovalley.com"&gt;palermovalley.com&lt;/a&gt; y creando el blog que allí reside.&lt;br /&gt;&lt;br /&gt;En medio de esta vorágine que se creó de manera tan súbita, alguien comentó en Twitter que se debería de hacer un bar geek en Palermo, y de allí devino la idea de hacer un encuentro casual de emprendedores, al mejor estilo after office, donde todos podamos encontrarnos a charlar, compartir unas cervezas y nuestras ideas. Socializar, conocer mejor las otras ideas que están surgiendo en el Valley.&lt;br /&gt;&lt;br /&gt;La convocatoria se hizo con muy poco anticipación, y sin embargo, hubo una asistencia que ningún organizador esperaba. Más de 70 personas se hicieron presentes desbordando ampliamente la capacidad del bar elegido y obligando a muchos a quedarse charlando y tomando cerveza en la calle.  Un auténtico efecto Digg que dejó al bar en cuestión sin cerveza fría en menos de 2 horas. Un verdadero orgullo ver a tanta gente con tantas ganas e ideas, tanta gente que ama la web y quiere ofrecer su trabajo al mundo.&lt;br /&gt;&lt;br /&gt;En sí, el encuentro se limitó a charlas individuales para conocer a los demás e intercambiar ideas, opiniones, conseguir invites a betas / alphas cerradas y poder ver que es lo que se verá online de acá a unos meses. La única excepción a esto fué el obligado discurso bienvenida / agradecimiento de los organizadores (Vanesa y Santiago) en el que Santiago se limitó a dejar muy en claro, y con un poco de humor como es habitual en él, cuales son &lt;a href="http://palermovalley.com/blog/las-3-reglas-de-palermo-valley/"&gt;las reglas de Palermo Valley.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;En virtud de verdad, el término no es obra de Santiago, sino de su padre, quien hizo tal comentario al enterearse de la cantidad de startups que se habían asentado en la zona donde también están desarrollando Popego, a él le debemos este nuevo estandarte bajo el que nos paramos frente al mundo; a él mis agradecimientos.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-8833607518410061031?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/Q3HPQZzWkjw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/8833607518410061031/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=8833607518410061031" title="1 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/8833607518410061031?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/8833607518410061031?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/Q3HPQZzWkjw/palermo-valley-cuna-de-emprendimientos.html" title="Palermo Valley, cuna de emprendimientos argentinos" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/02/palermo-valley-cuna-de-emprendimientos.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEEBQXc7eip7ImA9WxZRE04.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-8935561777944450464</id><published>2008-02-06T18:17:00.000-02:00</published><updated>2008-02-06T19:17:30.902-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-06T19:17:30.902-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="emprendimientos" /><title>Ser emprendedor</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Ante la pregunta de si nos gustaría ser millonario, la gran mayoría responde que sí, pero cuantos realmente trabajan para lograrlo?&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;El principal problema creo yo, radica en que pocos piensan que realmente sea posible hacerse millonario si no es ganando la loteria o algo así. Pero si uno se pone a mirar a su alrededor encontrará que son muchas más personas las que se hicieron millonaria por sus propios medios que las que no. Como ya lo cité en otra ocasión, &lt;a href="http://www.retireat21.com/top-young-entrepreneurs/"&gt;miren&lt;/a&gt; la cantidad de gente jóven que es millonario por labor propia.&lt;br /&gt;&lt;br /&gt;Uno no se hace millonario trabajando, sino que debe trabajar para hacerse millonario. Y esta es una diferencia importantísima. Trabajando todos los días por un sueldo vamos a poder vivir, pagar alquileres, comida, darnos algunos gustos, etc. Pero el margen de ahorro no es excesivametne elevado, e incluso cuando lo sea, conforme pasan los años y uno se casa, tiene hijos, etc. los gastos tienden a crecer mucho más rápidamente que el sueldo. Viviremos, pero no seremos millonarios. Por otro lado, el día que dejamos de trabajar, automáticamente nuestra capacidad de subsistencia depende de cuanto duren nuestros ahorros. No somos capaces de mantener el mismo nivel de vida de forma indefinida.&lt;br /&gt;&lt;br /&gt;Si por el contrario, el trabajo que uno realiza es para construir activos, es decir, cosas que generen dinero por si mismas, el dejar de trabajar no tiene que implicar recortar gastos. Empresas, sitios web, inventos que patentar, inmuebles, todo lo que pueda generar dinero sin que nosotros estemos necesariamente ahí sirve para este fin, el qué depende de los intereses particulares de cada uno.&lt;br /&gt;&lt;br /&gt;Si uno es capáz de acumular activos, rápidamente se encuentra con que posee un ingreso extra de dinero que no depende de su trabajo, es un extra. Cuando se logra que el mismo iguale o supere a sus gastos totales, usted deja de NECESITAR trabajar para vivir, es oficialmente rico.&lt;br /&gt;&lt;br /&gt;Ahora bien, en la teoría es simple, pero en la práctica no se ve todos los días. Como dije antes creo el principal motivo es la mera falta de convicción, el no dedicar algunas horas semanales a construir activos.&lt;br /&gt;&lt;br /&gt;Hace un año, en mi antiguo trabajo, me ofrecieron trabajar full-time durante el verano y así poder ganar más dinero. En ese momento yo lo ví como una buena oportunidad y accedí. Hace poco se me planteó nuevamente la misma posibilidad, pero esta vez me he negado repetidas veces. Mi tiempo vale mucho más que el 33% extra de sueldo, es mi tiempo lo único que necesito invertir para poder hacer proyectos que me den dinero el día de mañana, es mi tiempo la única inversión que necesito en mi plan para ser millonario.&lt;br /&gt;&lt;br /&gt;Es momento en mi vida de ponerme a trabajar para ser millonario. Todas las semanas me estoy renuniendo con mis socios a generar ideas, desarrollarlas y analizarlas. Queremos dejar de esperar a que vengan las oportunidades yestamos saliendo a su encuentro. Cualquiera puede hacerlo, es cuestión de estar decidido. ¿Lo estás tú?&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-8935561777944450464?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/dUiIWucCDCU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/8935561777944450464/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=8935561777944450464" title="4 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/8935561777944450464?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/8935561777944450464?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/dUiIWucCDCU/ser-emprendedor.html" title="Ser emprendedor" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/02/ser-emprendedor.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0UEQHY9fyp7ImA9WxZSF04.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-5880586069765139470</id><published>2008-01-30T16:32:00.000-02:00</published><updated>2008-01-30T20:13:21.867-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-30T20:13:21.867-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="emprendimientos" /><category scheme="http://www.blogger.com/atom/ns#" term="dosual" /><category scheme="http://www.blogger.com/atom/ns#" term="general" /><category scheme="http://www.blogger.com/atom/ns#" term="altapendeja" /><title>Volviendo a la rutina</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Tras larga inactividad en el blog, estas son las novedades.&lt;br /&gt;&lt;br /&gt;¡Vacaciones, Dosual, Popego y mucho más!&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Como habrán notado llevo 12 días sin postear. El motivo fundamental fué que estuve de vacaciones una semana en Córdoba, algo que realmente ya me hacía falta. Por otro lado, está la difícil tarea de volver a la rutina, que me ha dado varios dolores de cabeza.&lt;br /&gt;&lt;br /&gt;Al llegar a casa tuve ese horrible momento que todos los internautas sufrimos de abrir Google Reader y ver millones de cosas sin leer, abrir el mail y encontrar docenas de mensajes nuevos, encontrar nuevas historietas por leer. Es muy difícil realmente ponerse al día. Para peor, no sólo me esperaban muchas novedades, sino también muchos problemas.&lt;br /&gt;&lt;br /&gt;Ni bien llego a Buenos Aires me entero el servidor de Alkon AO estuvo 48 horas con muchos problemas, y tuve que ver que pasaba y reiniciar todo remotamente. También hubo problemas en Dosual, donde un técnico al actualizar el servidor omitió todas y cada una de las configuraciones particulares que habíamos solicitado (extensiones PECL, include_path, etc. etc. etc.), por lo que el sitio estuvo caido un par de horas.&lt;br /&gt;&lt;br /&gt;Como verán estas cosas me han mantenido sumamente ocupado, y han dificultado que yo haga nada, pero finalmente puedo decir estoy al día con todo y retomo la rutina, ¡con varias novedades!&lt;br /&gt;&lt;br /&gt;En primer lugar, finalmente es posible suscribirse a la alpha cerrada de &lt;a href="http://www.popego.com"&gt;Popego&lt;/a&gt;, cosa que acabo e hacer. Tengo altas expectativas de este producto de la gente de Zauber.&lt;br /&gt;&lt;br /&gt;Por otro lado, estoy desde el momento en que llegué mechando cosas para Dosual, que espero poder subirlas online muy pronto para su disfrute.&lt;br /&gt;&lt;br /&gt;Como si esto fuese poco, anuncio que con Alejandro Sena ya hemos terminado la etapa de conceptualización deun pequeño proyecto que armamos y estaremos poniendo online proximamente.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-5880586069765139470?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/hCntYCM5VUg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/5880586069765139470/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=5880586069765139470" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/5880586069765139470?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/5880586069765139470?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/hCntYCM5VUg/volviendo-la-rutina.html" title="Volviendo a la rutina" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/volviendo-la-rutina.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0AESX04cCp7ImA9WxZTFkQ.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-1852721968206722511</id><published>2008-01-18T20:19:00.000-02:00</published><updated>2008-01-18T20:35:08.338-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-18T20:35:08.338-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="dosual" /><category scheme="http://www.blogger.com/atom/ns#" term="altapendeja" /><title>Dosual 2.0</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Tras unas 3 semanas de trabajo, y un par de días de retraso, finalmente salió la nueva versión de Dosual (ex AltaPendeja), y todos pueden disfrutar de las novedades.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Hacía ya tiempo que habiamos hablado con Alejandro sobre la necesidad de hacer algunos cambios en Dosual. Desde nuevas funcionalidades hasta mejoras en la navegación general del sitio. Sin embargo, coincidimos en que cualquiera de estas cosas era imposible si no se limpiaba primero la base sobre la que estabamos trabajando.&lt;br /&gt;&lt;br /&gt;AltaPendeja fué originalmente hecho por Alejandro Sena en un par de noches de verano, Alejandro, aunque excelente en desarrollo funcional, no es programador, y su trabajo se limitaba a "funcionar". Sin embargo, dado que nadie sospechaba el sitio iba a tener el éxito que tuvo, eso era más que suficiente.&lt;br /&gt;&lt;br /&gt;Sin embargo el éxito vino, el sitio tuvo nuevas cosas (votos y rankings, entrevistas, etc.) y pasó por muchas manos. El sitio seguía funcionando, pero de una forma que distaba de ser óptima, y se hacía sentir en la carga sobre el servidor. Demasiados parches sobre parches, en un esquema que parecía carecer de coeherencia.&lt;br /&gt;&lt;br /&gt;Es así, que ante la necesidad de seguir trabajando, decidimos que era necesario reescribir el sitio de cero. Se respetaría perfectamente el look and feel del sitio, pero internamente sería totalmente diferente.&lt;br /&gt;&lt;br /&gt;Tomó un par de semanas, pero estuvo listo, pero al momentode subirlo al servidor notamos algunos problemas en la configuración del mismo, que no era exactamente como la habíamos pedido un mes atrás. Tras notificar de esto vinieron correcciones, y se hizo un segundo intento, donde se encontraron otras falencias de configuración que volvieron a ser debidamente reportadas, y hoy, al tercer intento, finalmente el sitio estuvo funcional y listo para eldisfrute de todos.&lt;br /&gt;&lt;br /&gt;En esta nueva versión todavía no hemos incluido fucionalidades nuevas, las mismas vendrán en los próximos meses, pero sí hemos hecho varias mejoras que ya son perceptibles:&lt;br /&gt;&lt;br /&gt;- El sitio carga más rápido, en particular las fotos individuales.&lt;br /&gt;- Al ver una foto individual, uno puede pasar a la anterior / posterior mucho más rápido que antes.&lt;br /&gt;- Al ver una foto individual, se puede ver la foto grande desde el primer momento, no como antes donde si no se esperaba varios segundos el link nos redirigía a la galería.&lt;br /&gt;- Se cambiaron los links por otros más amigables. Ya no hace falta poner parámetros de query con "?", ahora son cosas tan simples como http://www.dosual.com/gallery/large/photo/1839 siendo sumamente claro que deseamos ver la foto 1839 de la galería en grande.&lt;br /&gt;- El código HTML de todas las páginas valida los estándaresd e la W3C.&lt;br /&gt;- Todo el JS y CSS son completamente no intrusivos.&lt;br /&gt;&lt;br /&gt;Ahora que contamos con una base sólida para el sitio podemos empezar a incluir las cosas nuevas que están por venir.&lt;br /&gt;&lt;br /&gt;Disfruten del sitio y esperen novedades.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-1852721968206722511?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/XmYq0nyFX_g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/1852721968206722511/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=1852721968206722511" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/1852721968206722511?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/1852721968206722511?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/XmYq0nyFX_g/dosual-20.html" title="Dosual 2.0" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/dosual-20.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUACRXkzeyp7ImA9WxZTEEQ.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-4559635481448954352</id><published>2008-01-11T16:13:00.000-02:00</published><updated>2008-01-11T21:22:44.783-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-11T21:22:44.783-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="emprendimientos" /><title>Negocios en internet</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;A lo largo de la semana varios amigos me recriminaron que mi blog de "tecnología, programación y negocios" se estaba focalizando demasiado en las primeras dos, y poco en negocios. Su interés principal era respecto a como hacer dinero en Internet, y creo que vale la pena hablar un poco sobre el tema.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;El primer paso para hacer un sitio exitoso en Internet es tener una buena idea, un buen concepto de sitio para los usuarios. Este sea posiblemente el punto más difícil de todo el proceso de un startup.&lt;br /&gt;&lt;br /&gt;No hay fórmulas mágicas para tener buenas ideas, es cuestión de pensar e imaginación, sin embargo si hay algunas cosas que considero son indispensables en la generación de las mismas:&lt;br /&gt;&lt;br /&gt;En primer lugar, considero de mucha importancia el ser "usuario" de internet. No hablo de leer mails o usar Messenger, sino ir a todas esas aplicaciones que hacen furor, y mirarlas, incluso si no se registran, explorarlas en detalle. Digg, Twitter, Facebook, Flickr, etc. etc. etc. Busquen blogs de temas que les interesen, suscribanse a foros. Empiecen a conocer la riqueza que hay en internet. Es imposible tener buenas ideas para hacer negocios en la web si no se conoce el status quo. Hay que saber que es lo que la gente consume, lo que la gente busca, lo que hay en el mercado. Muchas veces esto da lugar a que nuestras ideas no sean completas revoluciones, sino sitios que hacen uso de otros sistemas y los complementan. El otro día por ejemplo descubrí un programador que hizo tres sitios muy interesantes usando los servicios de Flickr y Twitter con Google Maps y Google Earth:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twittermap.com/maps"&gt;TwitterMap&lt;/a&gt;&lt;br /&gt;&lt;a href="http://twittervision.com/"&gt;TwitterVision&lt;/a&gt;&lt;br /&gt;&lt;a href="http://flickrvision.com/"&gt;FlickrVision&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;En segundo lugar, si buscan ideas en internet, no sigan una rutina. No lean únicamente los sitios de siempre y no busquen siempre lo mismo. Dediquen un rato cada día a navegar sin rumbo por la web. Sin miedo a seguir links. Esto les dará la posibilidad de o bien encontrar sitios increibles perdidos en la vastedad de internet, o al menos conocer que otras cosas consume la gente y en que volúmen. No limiten sus ideas a las áeras que a ustedes les atraen, no están queriendo armar un sitio para ustedes, sino para otra gente, ¡ustedes lo que quieren es hacer negocios!&lt;br /&gt;&lt;br /&gt;Por otro lado, mantengan una mente abierta. Leer ayuda mucho, en especial si leen sobre temas que les son ajenos.&lt;br /&gt;&lt;br /&gt;Anoten todas sus ideas, por más ridículas que puedan sonar en el momento. Siempre existe la posibilidad que al revisarlas más adelante disparen una nueva idea o surja una vuelta de tuerca para hacerla mejor.&lt;br /&gt;&lt;br /&gt;Por cada idea que tengan anotada, busquen en internet que cosas parecidas existen. Hagan una busqueda amplia, provando muchas combinaciones y keywords, usen sinónimos, y busquen en otros idiomas. Intenten descubrir lo más posible sobre que es lo que hay en internet sobre el tema. El objetivo de esto va mucho más allá de saber si alguien más ya tuvo tu idea. El ver que cosas aparecen en el buscador al buscar sobre el tema ayudan a tener una primera impresión de cuanta gente está realmente interesado en eso, que tan masivo sería su proyecto. Del mismo modo, utilicen Google Trends y Alexa para evaluar estas cosas.&lt;br /&gt;&lt;br /&gt;Además, en caso de que ya existiese algo parecido, uno tiene una oportunidad única para investigarlo. Si no conocías el sitio salvo por Google, ¿por qué? ¿Acaso no es masivo? ¿Es muy nuevo y no llegó a difundirse? ¿O acaso está muy localizado en otro país / región? ¿Por qué está localizado? Si el sitio es un fracaso ¿lo es por falta de usuarios? ¿o porque el sitio no es bueno para lo que pretende? ¿puedo empezar ahora y competir con esto? ¿qué iedas de esto puedo aplicar a mi propio sitio? Recuerden: el que algo ya exista no implica deban abandonar su idea.&lt;br /&gt;&lt;br /&gt;Una vez han superado esto, ya pueden comenzar a trabajar en el plan de negocios. ¿Cómo van a convertir esas visitas en dinero? No es lo mismo cobrar por contenido que cobrar por publicidad, así como no todos los sistemas de publicidad son iguales. Incluso, hay ideas excelentes que no parecen tener un modelo de negocio atrás (lease Twitter). Con un plan de negocios claro, sabiendo cuanta plata requiere su proyecto, y cuanto tiempo ya pueden comenzar a trabajar y buscar inversores en caso de ser necesario.&lt;br /&gt;&lt;br /&gt;Hay millones de oportunidades en Internet, sólo hay que salir a buscarlas, lo más difícil es verlas, no realizarlas.&lt;br /&gt;&lt;br /&gt;EDIT: Si les sirve de inspiración, les dejo acá un listado de los jóvenes de menos de 30 con más dinero hecho en internet. El nombre del sitio lo dice todo: &lt;a href="http://www.retireat21.com/top-young-entrepreneurs/"&gt;Retire@21&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-4559635481448954352?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/0ojlTfB-dEE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/4559635481448954352/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=4559635481448954352" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/4559635481448954352?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/4559635481448954352?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/0ojlTfB-dEE/negocios-en-internet.html" title="Negocios en internet" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/negocios-en-internet.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QMSXs9fCp7ImA9WB9aGU0.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-1956028426575685072</id><published>2008-01-08T19:08:00.001-02:00</published><updated>2008-01-09T15:56:28.564-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-09T15:56:28.564-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript" /><category scheme="http://www.blogger.com/atom/ns#" term="desarrollo web" /><category scheme="http://www.blogger.com/atom/ns#" term="XHTML" /><category scheme="http://www.blogger.com/atom/ns#" term="programación" /><title>Mejora tu sitio utilizando sólo HTML (parte 2)</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Continuando el post de ayer, enterate que otros pequeños cambios puedes realizar en el HTML para mejorar tu sitio, esta vez, en lo que refiere a la velocidad de carga.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Continuando &lt;a href="/2008/01/mejora-tu-sitio-utilizando-slo-html.html"&gt;lo posteado ayer&lt;/a&gt;, quisiera hoy hablar sobre los pequeños y sutiles cambios que uno puede hacer al HTML para lograr grandes mejoras, en esta ocasión, en lo que refiere a la velocidad de carga del sitio.&lt;br /&gt;&lt;br /&gt;Hace ya varios años, cuando internet en Argentina era cosa de pocos, con conexiones dial-up a través de la UBA, y un poco más tarde aún, cuando altavista era el mejor navegador que conociamos, leí un artículo que decía que el tiempo de tolerancia de carga de un sitio era de 10 segundos aproximadamente. En su momento, 10 segundos de hecho, podía parecer incluso poco a quienes navegabamos, pero estabamos acostumbrados a esperar. Internet recién estaba ganando popularidad por lo que la cantidad de contenidos no eran tantos, y cada sitio era único y valía esperarlo.&lt;br /&gt;&lt;br /&gt;Hoy en día no sólo las conexiones se han hecho cientos de veces más rápidas, sino que la cantidad de material en internet ha crecido extraordinariamente, y los buscadores han mejorado a la par. Ante cualquier busqueda recibimos miles de sitios con la respuesta. Ahora, incluso si mi sitio rankea primero, ¿por qué va a tener uno que esperar 2 segundos más en abrirlo si el sitio de abajo tiene la misma información?&lt;br /&gt;&lt;br /&gt;Con el aumento de la velocidad de conexión y la proliferación de sitios web, la tolerancia de carga se ha visto muy disminuida, y los sitios por su parte se han vuelto más pesados que nunca (Flash, Java, CSS, JS, imágenes). Es por tanto muy importante mantener nuestro sitio ágil en la navegación. un sitio rápido que no me saca tiempo lo puedo mirar en cualquier momento, si sé que cada página tarda 10 segundos en cargar, voy a dejar de entrar desde la oficina por si cae mi jefe, voy a dejar de leerla en casa porque me aburre, voy a dejar de entrar.&lt;br /&gt;&lt;br /&gt;Muchas veces, al analizar como acelerar nuestros sitios la única solución que se nos ocurre es eliminar imágenes, dividir el texto en varias páginas, bajar la calidad de imágenes, etc. Y aunque son técnicas efectivas, deberían de ser nuestro últimor ecurso, y no el primero, pues impactan directamente sobre el como el usuario percibe al sitio. Hacer al sitio menos atractivo puede implicar eliminar aquello que hizo venir al usuario en primer lugar. Nuevamente, sitios como Dosual no se pueden dar el lujo de no mostrar imágenes.&lt;br /&gt;&lt;br /&gt;Es por tanto necesario hacer otras cosas, y el primer paso para poder mejorar es entender como se carga nuestro sitio, o lo que es lo mismo, como trabaja un navegador. A saber, no pretendo un conocimiento exhaustivo sobre lo que hace internamente, de hecho, sólo hace falta un conocimiento bastante superficial para lo que pretendo.&lt;br /&gt;&lt;br /&gt;Asumo todos abrán visto alguna vez un sitio con muchas imágenes grandes, donde 2 o 3 imágenes se van dibujando al mismo tiempo, de arriba hacia abajo con el texto ya visible. Esto ya nos da una primera pista de como funciona un navegador: paraleliza las descargas. Cuando un elemento que se puede paralelizar se encuentra, el browser continua procesando el HTML, e intenta dibujarlo dejando la carga del mismo en segundo plano. Esto permite empezar a dibujr cosas antes y dar una impresión de mayor velocidad. Uno puede navegar el sitio desde antes. Sin embargo, existe una creencia de que todo elemento externo es paralelizado, y temo esto es falso.&lt;br /&gt;&lt;br /&gt;Si bien los CSS se pueden cargar en paralelo, así como imágenes o componentes Flash, los archivos JS no tienen la misma suerte. Para muchos esto podrá sonar extraño, pero tiene una excelente explicación. Es posible desde JS, haciendo uso de document.write agregar texto al HTML mientras carga. Como el donde se ubica dicho texto es importante, el explorador no puede asumir nada y al encontrar un tag &amp;lt;script&amp;gt; no puede más que dejar de procesar el HTML e ir a buscar el JS, para cargarlo y ejecutarlo.&lt;br /&gt;&lt;br /&gt;Ahora bien, hay algo importante aquí. Posiblemente hayan notado que es práctica común de la gran mayoría de los programadores web incluir los &amp;lt;script&amp;gt;, en especial aquellos que incluyen archivos externos, dentro del &amp;lt;head&amp;gt;. ¡El hacer esto está obligando al explorador a no mostrar nada (salvo quizás el título si estaba antes del &amp;lt;script&amp;gt;) y por tanto, dando una impresión de cargar sumamente lento!&lt;br /&gt;&lt;br /&gt;Ahora bien, el tag &amp;lt;script&amp;gt; tiene un atributo defer, que le indica al explorador que comience a bajar dicho archivo, pero continue procesando, pues el mismo no escribe nada en el documento, pero a saber, que no todos los exploradores lo soportan, por lo que su uso es desaconsejado.&lt;br /&gt;&lt;br /&gt;Por otro lado, y dado que uno puede incluir tags &amp;lt;script&amp;gt; en cualquier sitio, no hay motivo por el cual uno no pueda poner los mismos tan abajo como quiera. De hecho, esto da lugar a un control mucho más fino de como carga nuestro sitio.&lt;br /&gt;&lt;br /&gt;No sólo podemos permitir que se renderice el texto y se comiencen a bajar las imágenes al momento de cargar el js, sino que además obtenemos un control mucho más fino sobre el momento enque el mismo se ejecuta.&lt;br /&gt;&lt;br /&gt;Supongan el siguiente caso. Tienen un sitio de comercio electrónico. No desean que Google cachee los precios de los elementos, pues estos pueden variar, entonces deciden que los precios se cargarán con un pedido AJAX al servidor. Este pedido no puede realizarse si el DOM no está listo para realizarse. Supongamos además, que en la aprte inferior de su sitio tienen varias publicidades, en particular de esas con imágenes que tardan en cargar.&lt;br /&gt;&lt;br /&gt;En un approach tradicional, cargaríamos el JS en el head, y el pedido AJAX lo haríamos en un evento onload. Esto implica, que no sólo el sitio no mostrará nada hasta que el JS haya cargado, sino que el precio no se pedirá (ni hablemos de mostrarlo) sino hasta que terminen de cargar las publicidades. Es decir, ¡estamos subordinando la velocidad de carga de NUESTRO sitio a la velocidad de un servidor que no conocemos, y con imágenes de las que n otenemos ningún control respecto del peso!&lt;br /&gt;&lt;br /&gt;Sin embargo, existen alternativas. Como ya hablamos podemos mover el JS hacia abajo y evitar el primer problema, pero esta misma solución también nos permite evitar el segundo problema. Alcanza con no colocar el JS al final de todo, sino justo por encima de las publicidades y debajo de los elementos que queremos manipular, y en vez de utilizar un evento onload, ejecutar el código allí mismo.&lt;br /&gt;&lt;br /&gt;Como los elementos de DOM que queremos modificar ya están cargados, podemos hacer el pedido sin miedo, y dado que el script se ejecuta y carga antes que la publicidad, no dependemos de la misma.&lt;br /&gt;&lt;br /&gt;A esta altura, nuestro sitio es completamente funcional mucho antes, ya que el sitio es navegable desde un primer momento e incluso si quedan cargar las publicidades, elcontenido (lo que le importa al usuario) ya está allí.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-1956028426575685072?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/uswM0ah8C3k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/1956028426575685072/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=1956028426575685072" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/1956028426575685072?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/1956028426575685072?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/uswM0ah8C3k/mejora-tu-sitio-utilizando-slo-html_08.html" title="Mejora tu sitio utilizando sólo HTML (parte 2)" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/mejora-tu-sitio-utilizando-slo-html_08.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4FSX05fip7ImA9WB9aGE8.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-8189594373036698573</id><published>2008-01-08T16:47:00.000-02:00</published><updated>2008-01-08T19:15:18.326-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-08T19:15:18.326-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="desarrollo web" /><category scheme="http://www.blogger.com/atom/ns#" term="XHTML" /><category scheme="http://www.blogger.com/atom/ns#" term="SEO" /><category scheme="http://www.blogger.com/atom/ns#" term="programación" /><title>Mejora tu sitio utilizando sólo HTML (parte 1)</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;El HTML, aunque muchas veces no le tenemos demasiado afecto, es una herramienta poderosa, que cuando bien entendida nos permite obtener grandes mejoras en nuestro sitio con cambios sutiles. Desde mejorar nuestro posicionamiento hasta velocidad de carga del sitio, un pequeño cambio puede hacer una gran diferencia.&lt;br /&gt;&lt;br /&gt;En esta primer entrega hablaré sobre posicionamiento, dejando la velocidad de carga para mañana.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Como ya he mencionado en &lt;a href="/2008/01/las-malas-prcticas-del-programador-web_07.html"&gt;otra oportunidad&lt;/a&gt;, HTML tiene varios problemas, que a todo aquel que haya hecho algún sitio web, alguna vez le habrá tocado sufrir, pero una vez que lo peor ha pasado, que nuestro sitio está visualmente bien y se renderiza correctamente en varios navegadores, es donde uno tiene la posibilidad de apreciar las sutilezas del mismo, de utilizar muy pequeños y simples cambios que pueden crear diferencias notorias.&lt;br /&gt;&lt;br /&gt;Voy a hablar aquí sobre varias cosas que, aunque sencillas, muchísimos sitios no hacen, ya sea por ignorancia, o porque utilizan editores visuales que le restan importancia a los mismos.&lt;br /&gt;&lt;br /&gt;En primer lugar quiero hablar sobre posicionamiento. En un sitio web, existen muchas cosas que un robot de un buscador no puede apreciar. Recordemos que estos robots no ven nuestros videos, ni nuestras fotos, ni nuestras aplicaciones Java, ni los juegos Flash. Ven sólo texto. Esto implica que no pueden ver ninguno de los elementos vistosos en los que solemos hacer hincapié para atraer a nuestros usuarios. Es así que podemos tener sitios muy interesantes para los usuarios, pero poco significativos para un robot, lo que conlleva que estemos mal posicionados y no podamos llegar a nuestros potenciales clientes.&lt;br /&gt;&lt;br /&gt;El desarrollo de un sitio web no es, por tanto, sólo hacerlo atractivo y significativo para el usuario, sino también para el robot, y esto es algo que muchos parecen no recordar, en especial aquellos que utilizando herramientas gráficas han olvidado que el HTML no es otra cosa que texto.&lt;br /&gt;&lt;br /&gt;Invito a todos los poseedores de un sitio web a abrir links o lynx (navegadores de consola para Linux, existen ports para Windows si los buscan) y visualizar su sitio en el mismo. Estos navegadores no saben nada de CSS, ni de JS, ni de imágenes, ni de Flash, ni de colores. Es simplemente texto. Esto es lo más parecido que he encontrado a como un robot ve su sitio. quisiera que lo mirasen críticamente y me digan si realmente ven en el mismo información relevante sobre aquello en lo que buscan posicionarse.&lt;br /&gt;&lt;br /&gt;Ahora que pueden ver eso, entenderán que es necesario, de alguna forma, "contarle" al robot de que tratan esas cosas que él no puede ver, igual que a un no vidente, y HTML demuestra su versatilidad para esto.&lt;br /&gt;&lt;br /&gt;El atributo ALT de las imágenes, muchas veces excluido, tiene la mera finalidad de ser un texto a msotrarse si la imágen por algún motivo no se puede visualizar. ¿Acaso lynx puede visualizar imágenes? ¿un robot? ¿un lector para personas no videntes? Todos estos utilizan este texto y les resulta de suma utilidad.&lt;br /&gt;&lt;br /&gt;La inclusión de un ALT no sólo permite mejorar la usabilidad, sino que en forma totalmente gratuita, nos permite mejorar la densidad de keywords que poseemos en nuestro sitio, y así rankear mejor. Además, la imágen en cuestión, será tenida más en cuenta para las busquedas de imágenes, posicionandonos en ese tipo de busquedas.&lt;br /&gt;&lt;br /&gt;Del mismo que se usa alt en imágenes, existe el atributo title, que permite definir un texto para mostrar al pasar el mouse por encima de un elemento HTML, pero con una salvedad, alt es sólo para imágenes, title puede ser utilziado en CUALQUIER elemento HTML. Una forma sencillísima y sumamente eficaz de mejorar la densidad de keywords.&lt;br /&gt;&lt;br /&gt;A saber, no es bueno abusarse. Poner a cada tag el atributo title es tan malo como tener un párrafo con display: hidden repitiendo 5000 veces una palabra. Los robots no son idiotas. Como todo, es una herramienta muy buena que debe ser usada, pero en su justa medida. Recomiendo sólo utilizarlo en lugares donde aporte algo al usuario, imágenes, objects, etc. Aquellas cosas que no son texto, o en casos excepcionales, que realmente lo merecen (una tabla muy importante con datos).&lt;br /&gt;&lt;br /&gt;Mañana continuaré hablando sobre como se puede modificar el HTML para, sin modificar la apariencia del sitio, hacerlo cargar más rápido y ser más dinámico para el usuario.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-8189594373036698573?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/owA74F_gEzs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/8189594373036698573/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=8189594373036698573" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/8189594373036698573?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/8189594373036698573?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/owA74F_gEzs/mejora-tu-sitio-utilizando-slo-html.html" title="Mejora tu sitio utilizando sólo HTML (parte 1)" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/mejora-tu-sitio-utilizando-slo-html.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE8GQ3o9cSp7ImA9WB9aF04.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-5759671670382075170</id><published>2008-01-07T16:10:00.000-02:00</published><updated>2008-01-07T17:07:02.469-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-07T17:07:02.469-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="desarrollo web" /><category scheme="http://www.blogger.com/atom/ns#" term="XHTML" /><category scheme="http://www.blogger.com/atom/ns#" term="programación" /><title>Las malas prácticas del programador web (parte 2)</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Ya he discutido los malos hábitos de cientos de programadores web y sus orígenes respecto de PHP en &lt;a href="/2008/01/las-malas-prcticas-del-programador-web.html"&gt;otro post&lt;/a&gt;. En esta ocasión hablaré sobre HTML/XHTML.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Así como quien recién comienza a hacer sitios web descubre rápidamente sitios que le enseñen a utilizar PHP, también encuentra sitios análogos para HTML, y rápidamente enfrenta algo que todos sabemos: ¡ES HORRIBLE!&lt;br /&gt;&lt;br /&gt;Tras hacer los primeros intentos cualquiera se da cuenta que hacer sitios visualmente atractivos o que queden como uno desea en HTML es sumamente difícil. Es entonces cuando surgen dos posibilidades, ambas igualmente malas.&lt;br /&gt;&lt;br /&gt;La primer opción es que decida realizar todo su diseño por tablas. Las tablas son mucho más fáciles de controlar para hacer todo tipo de diseños, y viendo sus bordes es sumamente fácil predecir como se visualizará cada elemento. El problema radica, en que estamos armando tablas con contenido que no tiene sentido dentro de la misma. Si bien para un usuario promedio el sitio se ve bien, no necesariamente es así para todos. ¿Alguna vez se preguntaron como interpretaría esa maraña de tablas un lector para personas no videntes? ¿o como interpreta eso Google al indexarlo? Las tablas, aunque en apariencia simple, terminan complicando en usabilidad y posicionamiento cuando son usadas donde no corresponden.&lt;br /&gt;&lt;br /&gt;La otra alternativa, es que renuncien por completo a escribir HTML a mano, y opten por usar herramientas como Front Page o Dreamweaver, pero ahí los problemas son otros. Si bien son sumamente simples y permiten obtener resultados agradables a la vista, tienen la muy mala práctica de, cada tanto, escribir código inválido.&lt;br /&gt;&lt;br /&gt;Alguna vez alguien me preguntó porque los navegadores web son tan complicados si en apariencia su tarea es tan sencilla, y de hecho, ignorando JavaScript y CSS de los que mi interlocutor no sabía nada, debería de ser relativamente simple dibujar sitios con HTML plano.... si el código estuviese bien. No es extraño encontrar sitios donde hay &lt;a href="http://es.wikipedia.org/wiki/Tag_%28xml%29"&gt;tags&lt;/a&gt; que se abren y nunca se cierran, donde se insertan opciones que no existen, o donde se insertan opciones que existen pero con valores inválidos o formato incorrecto (usando mayúsculas donde deben ir minúsculas por ejemplo). Estos errores son tan frecuentes, que aquellos que crean navegadores web se han visto obligados a estar preparados para los mismos. A ser tolerantes, a leer más allá de lo que dice el documento y adivinar "lo que quiso decir". Esto es una tarea compleja y difícil.&lt;br /&gt;&lt;br /&gt;Aún más importante, quien utiliza estas herramientas ve correctamente el sitio en el editor, ve correctamente el sitio en su navegador predilecto, y es feliz, dando por concluido su diseño, sin sospechar que su sitio podría no siempre verse así de lindo. Así como los sitios que enseñan PHP básico no dan un puente al mundo profesional y los sitios profesionales no dan ayuda al principainte, en los sitios de HTML para principiantes no suele haber referencia a las muy grandes diferencias que hay entre navegadores.&lt;br /&gt;&lt;br /&gt;HTML es un lenguaje que se ha ido modificando con el paso de los años. Muchos navegadores incluyeron cosas nuevas, y como los sitios las empezaron a usar, todos los navegadores debieron adoptarlas (por ejemplo, los campos para contraseñas, con asteriscos en vez del texto tipeado, son un invento de Netscape). Así, con el fin de "ser superior" a los otros navegadores, se creó un inmenso abanico de tags y atributos, muchos de ellos superpuestos, que han conducido al caos. Un sitio que se visualiza bien en InterNet Explorer falla por completo en Opera y viceversa. Es del caos que surge el orden. La &lt;a href="http://www.w3.org/"&gt;W3C (WWW Consortium)&lt;/a&gt; se ha encargado de estandarizar las diversas versiones del lenguaje HTML, sin embargo, el que exista un estandar no implica todos lo respeten, ni del lado de los navegadores web, ni mucho menos del lado de los editores visuales.&lt;br /&gt;&lt;br /&gt;Si bien de a poco se está tendiendo a ello (FireFox 3, Internet Explorer 8, etc.) al día de hoy los exploradores tienen muy serias discrepancias, y no es raro escuchar cosas como "con FireFox eso no me pasa" o "con Internet Explorer lo veo bien", en el que la gente tiende a echar toda la culpa al navegador y no a quien hizo el sitio, dejandose libre así a quien en su ignorancia ha hecho mal el sitio y así previniendosele el aprendizaje.&lt;br /&gt;&lt;br /&gt;El respeto del estandar da cierto nivel de garantía sobre la visualización del sitio indepedientemente del explorador o dispositivo desde el que se acceda, y por tanto, valoriza mucho más el mismo (en Europa y Estados Unidos existen empresas que EXIGEN a quienes desarrollan sus sitios los mismos validen los estándares), y no es raro que si vendes tu sitio, te paguen más si el código HTML es válido.&lt;br /&gt;&lt;br /&gt;ASi que ya sabes, si quieres que tu sitio pueda ser accedido y disfrutado por todos, no uses diseño por tablas, no olvides testear tu sitio con MINIMAMENTE Internet Explorer 6 y FireFox (los dos más utilizados al día de hoy) y siempre intenta validar tu sitio para tener mayor seguridad de que será visualizado desde otros exploradores que no probaste u otros dispositivos (BlackBerry y similares por ejemplo).&lt;br /&gt;&lt;br /&gt;La W3C ofrece su &lt;a href="http://validator.w3.org/"&gt;validador de HTML&lt;/a&gt; para quien lo quiera usar, pero como pronto descubrirás, verificar tras cada cambio es sumamente molesto. sin embargo, para esto te puede ser útil el HTML Validator (plug-in para FireFox del que &lt;a href="/2008/01/mis-herramientas-de-programacin-web.html"&gt;ya hablé en otra ocasión&lt;/a&gt;). Recomiendo ir directo al sitio del mismo &lt;a href="http://users.skynet.be/mgueury/mozilla/"&gt;AQUI&lt;/a&gt; ya que la página de complementos de Mozilla dice que sólo está disponible para Windows, lo cual es falso.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-5759671670382075170?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/h_JDt1ejQrc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/5759671670382075170/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=5759671670382075170" title="2 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/5759671670382075170?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/5759671670382075170?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/h_JDt1ejQrc/las-malas-prcticas-del-programador-web_07.html" title="Las malas prácticas del programador web (parte 2)" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/las-malas-prcticas-del-programador-web_07.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMFSHo9fSp7ImA9WB9aF04.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-6343713074163348881</id><published>2008-01-06T11:25:00.000-02:00</published><updated>2008-01-07T17:00:19.465-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-07T17:00:19.465-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="desarrollo web" /><category scheme="http://www.blogger.com/atom/ns#" term="PHP" /><category scheme="http://www.blogger.com/atom/ns#" term="programación" /><title>Las malas prácticas del programador web (parte 1)</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Cuando una persona quiere aprender a programar web, pregunta en algún lado, le dicen que tiene que aprender PHP y acto seguido va a Google donde preguntará por "php tutorial" o algún término similar, pero muchas veces esto que parece tan sencillo los termina llevando a cometer muchos errores.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;Cuando una persona quiere aprender a programar web, pregunta en algún lado, le dicen que tiene que aprender PHP y acto seguido va a Google donde preguntará por "php tutorial" o algún término similar.&lt;br /&gt;&lt;br /&gt;Dicha busqueda lo conducirá a millones de resultados, que cubrirán todos los conceptos fundamentales, pensados para aquel que nunca en su vida programó, de una manera sumamente sencilla y resumida.&lt;br /&gt;&lt;br /&gt;Esto es genial, el novato se encuentra con muy buen material muy rápidamente que le permite aprender y hacer sus primeros scripts en poco tiempo. Es así que es sumamente común en estos sitios encontrar código como el siguiente:&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="code"&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;$link = mysql_connect("localhost", "admin");&lt;br /&gt;mysql_select_db("mydb", $link);&lt;br /&gt;$result = mysql_query("SELECT * FROM contactos", $link);&lt;br /&gt;echo "Nombre: ".mysql_result($result, 0, "nombre")."&amp;lt;br&amp;gt;";&lt;br /&gt;echo "Dirección: ".mysql_result($result, 0, "direccion")."&amp;lt;br&amp;gt;";&lt;br /&gt;echo "Teléfono :".mysql_result($result, 0, "telefono")."&amp;lt;br&amp;gt;";&lt;br /&gt;&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Sin embargo, tanta simplicidad tiene un problema fundamental. En el afán de ser simples, todos estos sitios mezclan código HTML con código PHP, y aunque muy bueno para el novato (¿que necesidad hay de confundir más a quien recién comienza?), en la vida real, esto es algo que se intenta evitar.&lt;br /&gt;&lt;br /&gt;A saber, no es posible separar por completo el código PHP del HTML. Los valores php se deberán imprimir con echo o una función similar, pero de ahí a poner consultas a la base de datos en medio del HTML hay un mundo de diferencia. Una cosa es imprimir resultados y datos y otra es aplicar la lógica de la página en medio del HTML.&lt;br /&gt;&lt;br /&gt;El motivo es simple: que el código sea mantenible. Si uno tiene 300 páginas como la anterior, cada una con 300-400 líneas de código HTML / PHP, el día que se quiera modificar algo abrá que revisar todos los archivos línea por línea. Si por el contrario se los mantuviese separados, podríamos reducir nuestra busqueda a la mitad, dependiendo de si queremos modificar los datos que mostramos (una consulta a la base de datos por ejemplo), o la lógica del sitio (a dondese copian los archivos subidos, por decir algo) o el COMO lo mostramos (agregar un div o una clase a un elemento del DOM).&lt;br /&gt;&lt;br /&gt;Incluso si tu sitio no es tan grande, conforme pasa el tiempo, y se realizan modificaciones, el código se va degradando. Cada vez es más complicado de seguir. Comienzan a aparecer condicionales que encierran bloques de código HTML, que te dificultan saber si ya cerraste un tag que se abría arriba.&lt;br /&gt;&lt;br /&gt;Para peor, no es que estos sean temas de los que no hay material en internet. De hecho, hay tan buen material sobre como hacer sitios profesionales, como buen material para comenzar. El problema creo yo radica en que no hay nada en el medio. No he conocido un sólo sitio para aprender PHP que luego de enseñarte a hacer sitios sencillos diga "ahora que sabés PHP, vamos a hacer las cosas bien" y hable de estos temas o ponga links a sitios que los traten.&lt;br /&gt;&lt;br /&gt;Conozco a muchas personas que trabajaron muchos años en varios proyectos propios sin siquiera imaginar que lo que ellos hacían no era profesional, y se han sorprendido al ser rechazados para algún trabajo.&lt;br /&gt;&lt;br /&gt;Si tu eres uno de estos programadores y realmente quieres hacer las cosas mejor, como primer paso te recomiendo investigues a &lt;a href="http://smarty.php.net"&gt;Smarty&lt;/a&gt;, un motor de templates html que te permitirá separar el códgo HTML del PHP sin cambiar mucho la forma en que venías haciendo las cosas.&lt;br /&gt;&lt;br /&gt;Una vez te sientas cómodo con ello, deberías comenzar a leer un poco sobre patrones de diseño, en particular &lt;a href="http://es.wikipedia.org/wiki/Modelo_Vista_Controlador"&gt;MVC&lt;/a&gt; y otros patrones relacionados al mismo como ser Front-Controller, y para cuando creas entender de que se trata te recomiendo mirar algunos frameworks PHP y usarlos. Vas a ver lo muy diferente que es y las ventajas que trae. Para concluir, dejo links a un par de frameworks recomendados:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://framework.zend.com/"&gt;Zend Framework&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.symfony-project.org/"&gt;Symfony&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-6343713074163348881?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/orjgo2ebSJM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/6343713074163348881/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=6343713074163348881" title="2 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/6343713074163348881?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/6343713074163348881?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/orjgo2ebSJM/las-malas-prcticas-del-programador-web.html" title="Las malas prácticas del programador web (parte 1)" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/las-malas-prcticas-del-programador-web.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMMSHY4eSp7ImA9WB9aFks.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-7442649715489148528</id><published>2008-01-05T17:16:00.000-02:00</published><updated>2008-01-06T22:41:29.831-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-06T22:41:29.831-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="desarrollo web" /><title>Mis herramientas de programación web</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Muchas veces me han preguntado que herramientas uso o recomiendo a la hora de desarrollar sitios web. En este post procedo a comentarlos brevemente.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;En más de una ocasión me han preguntado que herramientas uso para desarrollo web. Creo este post para listarlas brevemente.&lt;br /&gt;&lt;br /&gt;Eclipse: Una linda IDE multiplataforma, muy buena para web si se tienen los plug-ins adecuados.&lt;br /&gt;&lt;span&gt;&lt;ul&gt;&lt;li&gt;PDT: El PHP Development Tools trae documentación de php.net y la integra en el IDE, y facilita la navegación del código entre llamadas a funciones y clases. No tiene nada que envidiarle a Zend Studio.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Aptana: El editor por excelencia para XHTML / CSS / JS. Su documentación y autocompletar indican para cada elemento / atributo / función de CSS o JS en que navegadores está soportado y desde que versión.&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;br /&gt;FireFox: El mejor navegador para todo desarrollador web al equiparselo con los plug-ins adecuados:&lt;br /&gt;&lt;span&gt;&lt;ul&gt;&lt;li&gt;FireBug: La navaja suiza del programador web. Trae una consola para ejecutar JS sobre la marcha, un debugger de JS, un inspector DOM, permite agregar y modificar el código HTML / CSS a gusto y ver en el momento como quedan los cambios, permite analizar la performance del código JS y analizar en detalle los pedidos realizados con XMLHttpRequest, entre muchas otras cosas. Un verdadero indispensable.&lt;/li&gt;&lt;li&gt;Tamper Data: Permite modificar la información que se envía por POST a un sitio. Esto permite inyectar valores inválidos dentro de formularios, como ser inyección de código SQL o HTML. Muy bueno para verificar la seguridad de nuestras aplicaciones web más allá de las validaciones hechas por JS.&lt;/li&gt;&lt;li&gt;HTML Validator: Un simple plug-in que analiza el código HTML de un sitio y le aplica Tidy o SGML para verificar si cumple con los estandares web de la W3C según el DOCTYPE declarado. Muy útil y más rápido que ir al validador de la W3C.&lt;/li&gt;&lt;li&gt;YSlow: Un plug-in de la gente de Yahoo para FireBug (sí, un plug-in para el plug-in). Permite recrear todos los pedidos hechos desde que se cargó la página (incluidos los pedidos por XMLHttpRequest) y evaluar la velocidad de carga del mismo, tanto con como sin caché, haciendonos varias sugerencias para mejorarlo.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;CSS Viewer: Permite ver las propiedades CSS del elemento que se encuentra bajo el mouse en un momento dado. Algo similar se puede lograr con el Inspect de FireBug, pero a veces es más cómodo este plug-in.&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;br /&gt;Ahora bien, si bien esto cubre el grueso del desarrollo, hay otras cosas. En primer lugar, no me gusta desarrollar sobre un servidor público, en particular cuando se está trabajando en una nueva versión de un sitio ya en producción, por lo que tener Apache, Lighttpd u otro servidor web instalado sirve, siendo lo ideal tener el mismo que el server donde se va a instalar la página. Del mismo modo es aconsejable tener una copia local de la base de datos (si llegamos a corromperla o perder datos en producción sería trágico). Por último, y no menos importante, incluso si como yo son usuarios de Linux, nunca olviden tener un buen Internet Explorer 6 (si además tienen el 7 mejor) para poder testear sus sitios. En los personal tengo una máquina virtual con ambos instalados desde un Windows XP (máquina del usuario promedio) y desde allí verifico todo mi sitio antes de subirlo al servidor. Uno nunca se deja de llevar sorpresas al ver las cosas que funcionan o fallan en uno u otro navegador....&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-7442649715489148528?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/A89awkfinNI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/7442649715489148528/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=7442649715489148528" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/7442649715489148528?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/7442649715489148528?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/A89awkfinNI/mis-herramientas-de-programacin-web.html" title="Mis herramientas de programación web" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/mis-herramientas-de-programacin-web.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMFRnozfSp7ImA9WB9aFks.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-8454092991356306148</id><published>2008-01-04T18:18:00.000-02:00</published><updated>2008-01-06T22:40:17.485-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-06T22:40:17.485-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="dosual" /><category scheme="http://www.blogger.com/atom/ns#" term="general" /><category scheme="http://www.blogger.com/atom/ns#" term="altapendeja" /><title>Sobre mis trabajos actuales</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Pequeña introducción a mis trabajos. Mis socios y mi trabajo actual en la nueva versión de AltaPendeja / Dosual.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;Como podrán o no saber, soy un emprendedor en Internet. Estoy asociado a dos de las personas más destacables en sus campos que he tenido el placer de conocer: Juan Pablo Sueiro y Alejandro Sena, y juntos estamos advocados a la creación de contenido web de calidad pensado para los usuarios.&lt;br /&gt;&lt;br /&gt;En nuestra sociedad, Alejandro es el gran creativo. Él da luz a las ideas y se encarga del desarrollo funcional. Además, con sus conocimientos básicos de programación y diseño es capáz de prototipar sus ideas para que podamos evaluarlas mejor, incluso a veces dando acceso a usuarios a dichos prototipos.&lt;br /&gt;&lt;br /&gt;En una segunda etapa entro yo, que como estudiente de cuarto año de Ing. Informática soy el encargado de IT. Toda la programación pasa por mí, así como la coordinación de los diseñadores y programadores que contratamos freelance para proyectos particulares.&lt;br /&gt;&lt;br /&gt;En la recta final del proceso de creación de un sitio entra en juego Juan Pablo. Como Licenciado en Administración es el encargado de vender y posicionar nuestros productos en el mercado, tarea en la cual se destaca, poseyendo una agenda de contactos para nada despreciable.&lt;br /&gt;&lt;br /&gt;Así, los 3 de perfiles totalmente diferentes logramos complementarnos perfectamente, desafiando al típico equipo de startups compuesto exclusivamente de personas con perfiles técnicos.&lt;br /&gt;&lt;br /&gt;En este momento estamos trabajando para sacar adelante una idea en la que confiamos ciegamente será un éxito. Por el momento no puedo adelantar mucho, pero sepan que ante cualquier novedad postearé por acá.&lt;br /&gt;&lt;br /&gt;Mientras tanto, estoy en este momento trabajando en www.dosual.com, antes conocido como www.altapendeja.com. Este sitio, creado por Alejandro Sena, y del que soy co-propietario, está en este momento siendo reescrito por completo. La idea es limpiarlo, mejorarlo y hacerlo más rápido e navegar. Esperamos poder lanzar la nueva versión del sitio dentro de un par de semanas, sin contenido nuevo todavía y partir de ahí tenemos pensadas un par de features nuevas para el mismo.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-8454092991356306148?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/qojW3Ncc-b0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/8454092991356306148/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=8454092991356306148" title="1 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/8454092991356306148?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/8454092991356306148?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/qojW3Ncc-b0/sobre-mis-trabajos-actuales.html" title="Sobre mis trabajos actuales" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/sobre-mis-trabajos-actuales.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQGRnY4fyp7ImA9WB9aFks.&quot;"><id>tag:blogger.com,1999:blog-4227946213599471343.post-2164165172528814212</id><published>2008-01-04T18:06:00.000-02:00</published><updated>2008-01-06T22:38:47.837-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-06T22:38:47.837-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="general" /><title>To blog or not to blog?</title><content type="html">&lt;span class="intro"&gt;&lt;br /&gt;Desde hace tiempo venía meditando si debía o no abrir este blog y con que fin. Tras muchas cavilaciones llegué a una conclusión.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;Desde hace ya mucho tiempo que andaba analizando la idea de tener un blog. Llevo ya un buen tiempo criticando el material que suele encontrarse en internet como guias / tutoriales para programadores, que emplean prácticas horrendas e inexistentes en el ámbito profesional, y la idea de poder dar una opinión clara y contraria a dicho status quo me parecía interesante, aunque más no sea una simple denuncia, permitir a esos jóvenes que se quieren acercar al mundo de la programación saber que esas cosas son bárbaras para empezar, pero a la larga es preciso avanzar, evolucionar, ir más lejos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Por otro lado, no son pocas las veces en que me han pedido recomiende herramientas o sitios, y tener un blog me da la posibilidad de irlos comentando conforme los voy recordando o descubriendo, con un mayor grado de detalle del que me permitirían sitios como del.icio.us.&lt;br /&gt;&lt;br /&gt;Por último, pero no menos importante, creo esta es una excelente forma de dar a concoer mi trabajo y entrar en contacto con otros emprendedores, o jóvenes con aspiraciones de tales, contacto que considero invaluable.&lt;br /&gt;&lt;br /&gt;Pero también están las cotras, principalmente el conocimiento de mi mismo, y la escases de tiempo que temo me pueda llevar a abandonar este blog. Sin embargo, creo los pros superan a este hecho y vale la pena intentarlo.&lt;br /&gt;&lt;br /&gt;Por tanto, doy por inaugurado este, un blog sobre programación, tecnología y emprendimientos.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4227946213599471343-2164165172528814212?l=juansotuyo.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JuanSotuyo/~4/anpcO9Q8tOE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://juansotuyo.blogspot.com/feeds/2164165172528814212/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=4227946213599471343&amp;postID=2164165172528814212" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/2164165172528814212?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4227946213599471343/posts/default/2164165172528814212?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JuanSotuyo/~3/anpcO9Q8tOE/to-blog-or-not-to-blog.html" title="To blog or not to blog?" /><author><name>Juan Martín Sotuyo Dodero</name><uri>http://www.blogger.com/profile/15574757110672394134</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="07267589867248014625" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://juansotuyo.blogspot.com/2008/01/to-blog-or-not-to-blog.html</feedburner:origLink></entry></feed>
