<?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>Chuso! &#187; chusete</title>
	<atom:link href="http://chusete.es/author/chusete/feed/" rel="self" type="application/rss+xml" />
	<link>http://chusete.es</link>
	<description>A la tercera va la vencida</description>
	<lastBuildDate>Wed, 01 Sep 2010 17:35:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1-alpha</generator>
		<item>
		<title>Presupuestos y análisis web</title>
		<link>http://chusete.es/2008/07/25/presupuestos-y-analisis-web/</link>
		<comments>http://chusete.es/2008/07/25/presupuestos-y-analisis-web/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 02:00:11 +0000</pubDate>
		<dc:creator>chusete</dc:creator>
				<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[presupuestos]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://elchuso.wordpress.com/?p=16</guid>
		<description><![CDATA[Presupuestar un proyecto de desarrollo software es una tarea muy compleja, en la mayoría de los casos diría que se trata de magia1. Tal y como dicen en Extreme Programming for Web Projects, ¡La estimación es alquimia! No podemos calcular el número de documentos y funcionalidades y simplemente multiplicarlos por algún factor que nos dé [...]]]></description>
			<content:encoded><![CDATA[<p>Presupuestar un proyecto de desarrollo software es una tarea muy compleja, en la mayoría de los casos diría que se trata de magia<sup>1</sup>. Tal y como dicen en <em>Extreme Programming for Web Projects</em>,</p>
<blockquote><p>¡La estimación es alquimia! No podemos calcular el número de documentos y funcionalidades y simplemente multiplicarlos por algún factor que nos dé una respuesta mágica.</p></blockquote>
<p>Y no podría estar más de acuerdo. Hay demasiadas variables en juego como para poder hacer una estimación más o menos precisa. Interoperabilidad, accesibilidad, SEO, diseño gráfico, diseño de interfaces, programación en el servidor, programación de interfaces, optimización del código, calidad, seguridad, documentación, gestión del proyecto, etc. Además, distintas personas/equipos pueden trabajar puntualmente juntos en determinadas secciones, como el diseñador gráfico junto con expertos en márketing y usabilidad.</p>
<p>Si bien es cierto que en páginas corporativas sencillas todo el trabajo puede condensarse en pocas horas y es fácil calcular el plazo de entrega, cuando el desarrollo es complejo y requiere de un equipo de personas trabajando en paralelo, el número de horas puede dispararse de forma dramática, arruinando un proyecto, incumpliendo plazos y perdiendo clientes.</p>
<p>¿Entonces cómo se suelen estimar los proyectos? Existen <a href="http://en.wikipedia.org/wiki/Estimation_in_software_engineering">numerosos métodos</a>. Sin embargo, la mayoría de ellos se basan en fórmulas que utilizan como premisa prever el número de líneas de código que tendrá el proyecto, lo cual en mi opinión nos puede llevar a una situación incluso peor. No es lo mismo una línea de código en Perl que en un framework como Ruby on Rails, ni todos los programadores codifican igual. Además, hay muchos factores implicados en la creación de software aparte de la programación.</p>
<p>En mi opinión lo que mejor funciona es conocer de forma precisa todos los <strong>hitos semanales</strong> del proyecto, y basándonos en un histórico, podremos hacer una estimación bastante más precisa. Pero surge el gran problema: Necesitaríamos un análisis detallado de la aplicación, y cuando hacemos presupuestos tenemos que ser ágiles, no debemos hacer esperar al cliente.</p>
<p>Para explicar el problema utilizaré la clásica analogía de la construcción de edificios. Supongamos que un cliente desea una vivienda, acude al equipo de albañiles y les dice &#8220;Quiero algo muy sencillo. Una vivienda con 3 dormitorios, salón y cocina. ¿Por cuánto me saldría?&#8221;. Lógicamente le exigirán muchos más detalles. ¿Sobre qué tipo de suelo se trabaja? ¿Qué tipo de construcción quiere? ¿Cuál será la disposición final de las habitaciones? ¿Cuántos baños tendrá? ¿Dónde irán estarán los interruptores? ¿Hace falta conexión telefónica en los dormitorios? ¿Querrán garaje? En definitiva, es necesario que un arquitecto haya definido previamente y de forma precisa todos los detalles de la vivienda.</p>
<p>En el desarrollo web esto prácticamente nunca sucede. Bajo unas sencillas premisas se presupuesta algo tan versatil como una página. Pongamos un ejemplo sencillo: El cliente quiere añadir a su actual página un módulo para añadir noticias que se puedan comentar. Para ello desea que los usuarios se autentiquen. Existen muchas formas de realizar esto. Podríamos crear un usuario maestro que se autenticara mediante HTTP. Otra opción sería tener varios usuarios preestablecidos creados en una base de datos o en un fichero, que ingresaran mediante un formulario HTML y se usara una cookie para manejar sesiones. O bien podría tambien permitirse que cualquier persona se registrara para así poder firmar comentarios con su usuario, y que desde un panel de control el administrador pueda actualizar sus permisos para permitirles poder publicar noticias. Además, se podría añadir confirmación por correo electrónico, códigos de seguridad captcha tras un determinado número de intentos de acceso fallidos, recuperación de contraseña, o numerosos campos que poder rellenar, como localidad, usuario de mensajería instantánea, fecha de último acceso o firma en sus comentarios.</p>
<p>Partiendo de una premisa sencilla hemos llegado a soluciones muy distintas. Es posible definir <strong>brevemente</strong> estos detalles en el presupuesto, pero en proyectos medianos/grandes nunca llegará a ser suficientemente preciso como para asegurarnos un error en la estimación asumible. Necesitaríamos de un riguroso análisis y diseño previo, para posteriormente realizará la codificación, pruebas e implantación.</p>
<p>De este modo, la creación de proyectos software disfrutarían de una notable mejora en la gestión si se dividiera al menos en dos etapas:</p>
<ol>
<li>Análisis y diseño</li>
<li>Codificación, pruebas e implantación.</li>
</ol>
<p>No sólo sería sano para el sector de desarrollo, sino que nos obligaríamos a seguir un orden, unas pautas de trabajo, que repercutirían notablemente en la calidad del producto, con lo que el cliente estaría mucho más satisfecho.</p>
<p>Cuando una persona quiere construir una vivienda, proporciona a los constructores los planos y detalles de ésta. Cuando el Estado saca a concurso la construcción de un nuevo tramo de autovía, facilita toda la información necesaria de su recorrido y de la calzada de forma precisa. La ingeniería del software es una disciplina aun adolescente. Quizás deba aprender de sus mayores.</p>
<hr /><sup>1</sup> Aun tengo muy poca experiencia en gestión de desarrollos software. Habré realizado unos 20 presupuestos, y desarrollado unas 12 páginas, la mayoría de ellas poco complejas. Estáis invitados a ponerme a caldo si suelto barbaridades <img src='http://chusete.es/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
<div class="tweetmeme_button" style="float: left; margin-right: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fchusete.es%2F2008%2F07%2F25%2Fpresupuestos-y-analisis-web%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fchusete.es%2F2008%2F07%2F25%2Fpresupuestos-y-analisis-web%2F&amp;source=chuso&amp;style=normal&amp;service=bit.ly&amp;service_api=R_86054639b9f90148987197dfdc061697" height="61" width="50" /><br />
			</a>
		</div>
]]></content:encoded>
			<wfw:commentRss>http://chusete.es/2008/07/25/presupuestos-y-analisis-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Circulación chunga</title>
		<link>http://chusete.es/2008/06/15/circulacion-chunga/</link>
		<comments>http://chusete.es/2008/06/15/circulacion-chunga/#comments</comments>
		<pubDate>Sun, 15 Jun 2008 21:56:25 +0000</pubDate>
		<dc:creator>chusete</dc:creator>
				<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[circulación]]></category>
		<category><![CDATA[situaciones chungas]]></category>

		<guid isPermaLink="false">http://elchuso.wordpress.com/?p=11</guid>
		<description><![CDATA[Este post no es sobre nada de la web. Anoche a las tantas de la mañana en un bar cualquiera discutíamos sobre situaciones al volante de dificil solución. ¡Vamos a ello! Situación 1 Carretera convencional. El coche negro, en vista de que en sentido contrario no viene nadie, decide adelantar. Mientras, el coche amarillo decide [...]]]></description>
			<content:encoded><![CDATA[<p>Este post no es sobre nada de la web. Anoche a las tantas de la mañana en un bar cualquiera discutíamos sobre situaciones al volante de dificil solución. ¡Vamos a ello!</p>
<h4>Situación 1</h4>
<p>Carretera convencional. El coche negro, en vista de que en sentido contrario no viene nadie, decide adelantar. Mientras, el coche amarillo decide salir hacia su izquierda, pues le da tiempo a incorporarse, por su derecha no viene nadie y no ha visto al coche negro adelantando. Se chocan ¿Quién tiene la culpa? ¿Cómo se debería evitar?</p>
<p style="text-align:center;"><a href="http://chusete.es/wp-content/uploads/2008/06/situacion1.png"><img class="size-medium" src="http://chusete.es/wp-content/uploads/2008/06/situacion1.png?w=150" alt="" width="150" height="253" /></a></p>
<h4>Situación 2</h4>
<p>Carretera convencional. El coche negro decide adelantar. Justo cuando empieza, el coche amarillo comienza a torcer para incorporarse al camino a su izquierda. Todos los vehículos se ven obligados a reducir drásticamente la velocidad, incluido el negro. Al salir de la calzada el amarillo, el negro descubre al vehículo azul justo frente a él y chocan. ¿Quién tiene la culpa? ¿Cómo se debería evitar?</p>
<p style="text-align:center;"><a href="http://chusete.es/wp-content/uploads/2008/06/situacion2.png"><img class="alignnone size-medium wp-image-13" src="http://chusete.es/wp-content/uploads/2008/06/situacion2.png?w=150" alt="" width="150" height="253" /></a></p>
<h4>Situación 3</h4>
<p>Carretera convencional. Un ciclista circula por el arcén cuando cruza un carril deceleración. A su izquierda, un vehículo quiere salir de la calzada. ¿Quién debe ceder el paso a quién?</p>
<p style="text-align:center;"><a href="http://chusete.es/wp-content/uploads/2008/06/situacion3.png"><img class="alignnone size-medium wp-image-14" src="http://chusete.es/wp-content/uploads/2008/06/situacion3.png?w=150" alt="" width="150" height="253" /></a></p>
<h4>Situación 4</h4>
<p>Autovía de 3 carriles. El coche negro acaba de adelantar al rojo y, en vista de que no ve ningún vehículo más, decide incorporarse al carril central. A la vez, el coche amarillo decide adelantar al verde. El negro y el amarillo chocan. ¿Quién tiene la culpa? ¿Cómo se debería evitar?</p>
<p style="text-align:center;"><a href="http://chusete.es/wp-content/uploads/2008/06/situacion4.png"><img class="alignnone size-medium wp-image-15" src="http://chusete.es/wp-content/uploads/2008/06/situacion4.png?w=150" alt="" width="150" height="242" /></a></p>
<p>Si alguien está seguro de conocer la respuesta, mis amigos y yo os lo agradecermos <img src='http://chusete.es/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
<div class="tweetmeme_button" style="float: left; margin-right: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F15%2Fcirculacion-chunga%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F15%2Fcirculacion-chunga%2F&amp;source=chuso&amp;style=normal&amp;service=bit.ly&amp;service_api=R_86054639b9f90148987197dfdc061697" height="61" width="50" /><br />
			</a>
		</div>
]]></content:encoded>
			<wfw:commentRss>http://chusete.es/2008/06/15/circulacion-chunga/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SVG y la web</title>
		<link>http://chusete.es/2008/06/14/svg-y-la-web/</link>
		<comments>http://chusete.es/2008/06/14/svg-y-la-web/#comments</comments>
		<pubDate>Sat, 14 Jun 2008 15:49:40 +0000</pubDate>
		<dc:creator>chusete</dc:creator>
				<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[svg]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://elchuso.wordpress.com/?p=9</guid>
		<description><![CDATA[Los mapas de bits no escalan (Y nunca mejor dicho), por lo que en numerosas situaciones es preferible utilizar imágenes vectoriales. Por ejemplo, los escritorios de Linux ya están permitiendo emplear iconos vectoriales, de modo que se vean siempre bien definidos independientemente de su tamaño o de la resolución de la pantalla. Existen muchos formatos [...]]]></description>
			<content:encoded><![CDATA[<p>Los mapas de bits no escalan (Y nunca mejor dicho), por lo que en numerosas situaciones es preferible utilizar imágenes vectoriales. Por ejemplo, los escritorios de Linux ya están permitiendo emplear iconos vectoriales, de modo que se vean siempre bien definidos independientemente de su tamaño o de la resolución de la pantalla. Existen muchos formatos propietarios, pero, como siempre, para garantizar la interoperabilidad es preferible utilizar estándares, y ese es el <a href="http://www.w3.org/Graphics/SVG/">formato SVG</a>, que es un lenguaje para describir imágenes y aplicaciones gráficas en XML.</p>
<p style="text-align:left;">En el mundo web es igualmente interesante poder empotrar imágenes dinámicas generadas mediante SVG. Por ejemplo, hace un tiempo quise hacer unos mapas de densidades de población por municipios generados de forma automática para la Wikipedia. En realidad es muy sencillo. En ese caso podemos partir de una imagen con un objeto por cada término municipal, y mediante un editor de SVG (Por ejemplo, <a href="http://www.inkscape.org/">Inkscape</a>) editar las propiedades del objeto y establecer como ID el código postal del municipio. De ese modo, podremos acceder mediante <a href="http://en.wikipedia.org/wiki/Document_Object_Model">DOM</a> al objeto que representa cada término municipal para posteriormente establecer el color de fondo dependiendo de su densidad (Expresiones regulares al rescate).<a href="http://chusete.es/wp-content/uploads/2008/06/map_spain.png"><br />
<img class="alignnone size-medium wp-image-10 aligncenter" style="text-align:center;" src="http://chusete.es/wp-content/uploads/2008/06/map_spain.png?w=300" alt="Mapa de EspaÃ±a por provincias generado utilizando PHP y SVG" width="300" height="204" /></a></p>
<p style="text-align:left;">Y es que a veces nos complicamos mucho la vida, como por ejemplo dibujando <em>a pelo</em> polígonos sobre la API de Google Maps, cuando incluso podemos <a title="PolÃgonos definidos desde SVG" href="http://esa.ilmari.googlepages.com/dragpolygon.htm">empotrar directamente imágenes SVG en un mapa de Google</a>.</p>
<p style="text-align:left;">A día de hoy, la mayoría de los navegadores permiten visualizar directamente imágenes vectoriales SVG dentro de un documento XHTML, pero como a menudo sucede, <a href="http://wiki.svg.org/Internet_Explorer">Internet Explorer no renderiza de forma nativa SVG</a>. ¿Qué podemos hacer en esos casos? Muy sencillo. Convertir dinámicamente a un mapa de bits. En el caso de PHP no he encontrado ninguna biblioteca o clase que permita la conversión de forma eficaz, sin embargo existen utilidades en la línea de comandos a las que podemos llamar para que realicen conviertan al formato deseado (Como el propio Inkscape o la utilidad <a title="Convert de ImageMagick" href="http://www.imagemagick.org/script/convert.php">convert</a> de ImageMagick).</p>
<div class="tweetmeme_button" style="float: left; margin-right: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F14%2Fsvg-y-la-web%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F14%2Fsvg-y-la-web%2F&amp;source=chuso&amp;style=normal&amp;service=bit.ly&amp;service_api=R_86054639b9f90148987197dfdc061697" height="61" width="50" /><br />
			</a>
		</div>
]]></content:encoded>
			<wfw:commentRss>http://chusete.es/2008/06/14/svg-y-la-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Porqué me gusta tanto el desarrollo web</title>
		<link>http://chusete.es/2008/06/13/porque-me-gusta-tanto-el-desarrollo-web/</link>
		<comments>http://chusete.es/2008/06/13/porque-me-gusta-tanto-el-desarrollo-web/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 20:15:23 +0000</pubDate>
		<dc:creator>chusete</dc:creator>
				<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[desarrollo web]]></category>

		<guid isPermaLink="false">http://elchuso.wordpress.com/?p=7</guid>
		<description><![CDATA[Recuerdo que en mis primeros años de universidad una gracia bastante recurrente entre mis compañeros era decir que si no te querías complicar la vida con el PFC hicieras una página web. Éramos unos polluelos, y no podíamos estar más equivocados. El hecho de que existan formas de crear una página sin necesidad de programar [...]]]></description>
			<content:encoded><![CDATA[<p>Recuerdo que en mis primeros años de universidad una gracia bastante recurrente entre mis compañeros era decir que si no te querías complicar la vida con el <acronym title="Proyecto Fin de Carrera">PFC</acronym> hicieras una página web. Éramos unos polluelos, y no podíamos estar más equivocados. El hecho de que existan formas de crear una página sin necesidad de programar (Ya sea utilizando un CMS o bien HTML con un editor <acronym title="What">WYSIWYG</acronym>) no significa que todas las páginas deban ser sencillas. No es que me guste complicarme la vida, de hecho creo que un <em>vicio</em> bastante frecuente entre los desarrolladores es que somos muy perezosos (Gracias a ello encapsulamos funcionalidades en unidades más o menos reutilizables), lo que ocurre es que disfruto conjugando numerosas disciplinas de la informática. Y esa es precisamente la razón por la que adoro la web: Es un entorno totalmente heterogéneo donde [casi] toda la informática tiene cabida.</p>
<h4>Los comienzos</h4>
<p>Muchos hemos hecho nuestras primeras páginas web con aplicaciones para editar HTML. Es ahí cuando empiezas a descubrir lo útiles que son todos los controles de usuario como botones, cajas de texto, tablas, etiquetas o menús. Suele ser una lección precipitada de <strong>Interfáces Gráficas de Usuario</strong>. Sin embargo pronto necesitas tener más control sobre tu página, por lo que decides indagar en HTML y descubres las maravillas de los <strong>Lenguajes de Marcado</strong>, una forma muy sencilla de intercambiar información entre máquinas. A la vez, compruebas que no es una buena idea repetir tantas definiciones sobre cómo mostrar la web en cada uno de los ficheros, por lo que aprendes CSS, y lo que es más importante, comprendes la necesidad de <strong>separar en capas</strong> la información en sí, y el cómo se muestra. Pero no todo funciona como esperabas, ya que tu web no se comporta igual en todos los navegadores, y ahí es cuando descubres lo importante que es que exista un organismo regulador que establezca los <strong>estándares</strong>, el W3C.</p>
<p>Pero ahora no sólo quieres que tu página esté bien estructurada y que sea compatible con todos los navegadores, sino que además quieres que luzca bonita (<strong>Diseño Gráfico</strong>), que sea intuitiva (<strong>Usabilidad</strong>) y accesible a cualquier usuario (<strong>Accesibilidad</strong>).</p>
<h4>Pasos intermedios</h4>
<p>Pronto tu página empieza a crecer, y necesitas ahorrarte trabajo a ti y al usuario. Es cuando de verdad entra en juego la programación. Pero resulta que hay dos lugares en los que programar, en el servidor y en el cliente (Aprendes sobre la <strong>estructura cliente-servidor</strong>). En el lado del cliente utilizas JavaScript, que es un <strong>lenguaje de programación estructurado</strong>, y en el lado del servidor PHP, ASP, JSP, Ruby, Python o cualquier otro, la mayoría de ellos <strong>lenguajes orientados a objetos</strong>.</p>
<p>Y pronto surge la necesidad de almacenar información de una forma robusta, sencilla y escalable, y es cuando aprendes a <strong>Diseñar Bases de Datos</strong> y a generar consultas mediante <strong>SQL</strong>. ¡Ahora tus páginas sí empiezan a ser de verdad escalables! Independientemente de si eres el administrador o no del servidor de bases de datos, has aprendido numerosas nociones de qué es un <strong>Sistema Gestor de Bases de Datos Relacionales</strong>. Ahora estás utilizando una estructura de 3 capas: Cliente &#8211; Servidor de aplicaciones &#8211; Servidor BBDD.</p>
<p>Pronto necesitarás gestionar las sesiones de usuario, por lo que casi con total seguridad deberás aprender sobre las cookies, y querrás poder gestionar redirecciones, si tus páginas se deben almacenar en una memoria caché o mostrar errores de página no encontrada. En consecuencia, debes aprender sobre HTTP, que no es más que un <strong>Protocolo de Nivel de Aplicación</strong>. Además has aprendido cómo dotar de estado a un protocolo que no almacena estado.</p>
<p>Con el tiempo la lógica de las <strong>aplicaciones web</strong> que desarrollas empieza a ser más compleja, pero siempre hay patrones que se repiten, por lo que decides aprender más acerca de <strong>Patrones de Diseño</strong>, e incluso utilizas algún <strong>Framework de desarrollo</strong>. Puede que incluso decidas conocer alguna metodología de desarrollo como Programación eXtrema.</p>
<h4>La cosa se complica</h4>
<p>Un día tu página empieza a tener mucho tráfico, y tu alojamiento compartido se te queda pequeño. Entonces decides utilizar un servidor dedicado. Ahora no sólo tienes que gestionar tu página, sino que debes preocuparte por la <strong>seguridad de la red</strong> con un firewall y una buena política de permisos. Gestionarás el servidor de bases de datos, de correo electrónico, de páginas web, de ficheros, etc. Es decir, aprendes a gestionar servicios críticos, por lo que ya tienes nociones de <strong>administración de sistemas</strong>.</p>
<p>Además quieres poder interactuar con otras páginas, bien sea integrando su información, o facilitando la que tiene la tuya. En el segundo caso necesitas generar una <strong>API</strong> para que los demás puedan acceder a tu información, y a ser posible exportando en lenguaje como <strong>XML o JSON</strong>.</p>
<p>Luego deseas optimizar tu página para que sea más veloz, y entonces empiezas a utilizar <strong>servidores de caché</strong>.</p>
<p>Aquí ya hablo desde la inexperiencia total, pero imagino que llega un momento en que tu página debe estar alojada en un cluster (<strong>Computación Distribuída</strong>) para poder delegar todo el tráfico a distintos servidores y obtener <strong>tolerancia a fallos</strong>.</p>
<h4>Resumiendo</h4>
<p>En el desarrollo web tienes la posibilidad de aprender y conjugar:</p>
<ul>
<li><a href="http://en.wikipedia.org/wiki/GUI">Interfáces Gráficas de Usuario</a></li>
<li><a href="http://en.wikipedia.org/wiki/Markup_language">Lenguajes de Marcado</a></li>
<li>Separar en capas</li>
<li><a href="http://en.wikipedia.org/wiki/Template:W3C_standards">Estándares Web</a></li>
<li><a href="http://en.wikipedia.org/wiki/Graphic_design">Diseño Gráfico</a></li>
<li><a href="http://en.wikipedia.org/wiki/Usability">Usabilidad</a></li>
<li><a href="http://en.wikipedia.org/wiki/Accessibility">Accesibilidad</a></li>
<li><a href="http://en.wikipedia.org/wiki/Client-server">Estructura cliente-servidor</a></li>
<li><a href="http://en.wikipedia.org/wiki/Structured_programming">Lenguajes de Programación Estructurados</a></li>
<li><a href="http://en.wikipedia.org/wiki/Object-oriented_programming">Lenguajes orientados a objetos</a></li>
<li><a href="http://en.wikipedia.org/wiki/Database_design">Diseño de Bases de Datos</a></li>
<li><a href="http://en.wikipedia.org/wiki/SQL">SQL</a></li>
<li><a href="http://en.wikipedia.org/wiki/Relational_database_management_system">Sistema Gestor de Bases de Datos Relacionales</a></li>
<li><a href="http://en.wikipedia.org/wiki/Application_layer">Protocolos de Nivel de Aplicación</a></li>
<li><a href="http://en.wikipedia.org/wiki/Web_application">Aplicaciones web</a></li>
<li><a href="http://en.wikipedia.org/wiki/Design_pattern">Patrones de Diseño</a></li>
<li><a href="http://en.wikipedia.org/wiki/Software_framework">Frameworks de desarrollo</a></li>
<li><a href="http://en.wikipedia.org/wiki/Computer_security">Seguridad de la red</a></li>
<li><a href="http://en.wikipedia.org/wiki/System_administration">Administración de sistemas</a></li>
<li><a href="http://en.wikipedia.org/wiki/Application_programming_interface">APIs</a></li>
<li><a href="http://en.wikipedia.org/wiki/XML">XML</a> o <a href="http://en.wikipedia.org/wiki/JSON">JSON</a></li>
<li><a href="http://en.wikipedia.org/wiki/Cache">servidores de caché</a></li>
<li><a href="http://en.wikipedia.org/wiki/Distributed_computing">Computación Distribuída</a></li>
<li><a href="http://en.wikipedia.org/wiki/Fault_tolerant">Tolerancia a fallos</a></li>
<li>Y un largo etcétera</li>
</ul>
<p>¿Y quién dijo que hacer páginas web era una cosa sencilla? <img src='http://chusete.es/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />
<div class="tweetmeme_button" style="float: left; margin-right: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F13%2Fporque-me-gusta-tanto-el-desarrollo-web%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F13%2Fporque-me-gusta-tanto-el-desarrollo-web%2F&amp;source=chuso&amp;style=normal&amp;service=bit.ly&amp;service_api=R_86054639b9f90148987197dfdc061697" height="61" width="50" /><br />
			</a>
		</div>
]]></content:encoded>
			<wfw:commentRss>http://chusete.es/2008/06/13/porque-me-gusta-tanto-el-desarrollo-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ancho de banda de un camión</title>
		<link>http://chusete.es/2008/06/12/ancho-de-banda-de-un-camion/</link>
		<comments>http://chusete.es/2008/06/12/ancho-de-banda-de-un-camion/#comments</comments>
		<pubDate>Thu, 12 Jun 2008 23:45:30 +0000</pubDate>
		<dc:creator>chusete</dc:creator>
				<category><![CDATA[curiosidades]]></category>

		<guid isPermaLink="false">http://elchuso.wordpress.com/?p=5</guid>
		<description><![CDATA[Este ejemplo es un clásico. Si la memoria no me falla, hace un par de años mi profesor de redes de la universidad nos decía que nunca despreciáramos el ancho de banda de un camión. El pasado fin de semana bromeaba sobre esto con un amigo, y nos pusimos a echar cuentas. ¿Cuál es el [...]]]></description>
			<content:encoded><![CDATA[<p>Este ejemplo es un clásico. Si la memoria no me falla, hace un par de años mi profesor de redes de la universidad nos decía que nunca despreciáramos el ancho de banda de un camión. El pasado fin de semana bromeaba sobre esto con un amigo, y nos pusimos a echar cuentas. ¿Cuál es el ancho de banda de un camión? E igualmente interesante, ¿es más caro que una conexión ADSL convencional?</p>
<h4>ADSL convencional</h4>
<ul>
<li>Precio &#8211; 40,90€/mes</li>
<li>Ancho de banda de descarga &#8211; <strong>3Mbps</strong></li>
<li>Precio por Mbps &#8211; 40,90 / 3 = <strong>13,63€</strong></li>
</ul>
<h4>Trailer</h4>
<p>Un <a title="Disco duro Western Digital" href="http://www.wdc.com/en/products/products.asp?driveid=311">disco duro cualquiera</a>:</p>
<ul>
<li>Capacidad &#8211; 750GB</li>
<li>Peso &#8211; 0,63Kg</li>
</ul>
<p>Un <a href="http://www.coratransports.com/index1.php?id=4">trailer cualquiera</a>:</p>
<ul>
<li>MMA &#8211; 24.000Kg</li>
<li>Precio kilómetro &#8211; 3,35€</li>
</ul>
<p>Por tanto un trailer puede transportar 38095 discos duros, o lo que es lo mismo, alrededor de 27.000GB</p>
<p>Supongamos un viaje de 600Km. A una media de 80Km/h, al trailer le llevaría 7,5 horas. Luego el ancho de banda del camión es: 27.000 / 7,5*60*60 = 1GBps. ¡Pero espera! Estamos hablando de bytes, no de bits. Para compararlo con nuestra conexión ADSL tendremos que multiplicar por 8, con lo que el ancho de banda del camión queda en <strong>8Gbps</strong>. No está nada mal, ¿verdad?</p>
<p>Aun queda lo mejor. ¿A cuánto sale el Mbps si utilizamos un trailer?</p>
<ul>
<li>Precio del trayecto &#8211; 600 * 3,35 = 2010€.</li>
<li>Precio del Mbps &#8211; 2010 / 8000 = <strong>0,25€</strong></li>
</ul>
<p>Así pues, nunca subestimes el ancho de banda del camión.</p>
<p>Relacionado: <a href="http://www.physorg.com/news129793047.html">El precio de los mensajes de texto es muy superior a transmitir datos desde el Hubble</a>.
<div class="tweetmeme_button" style="float: left; margin-right: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F12%2Fancho-de-banda-de-un-camion%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F12%2Fancho-de-banda-de-un-camion%2F&amp;source=chuso&amp;style=normal&amp;service=bit.ly&amp;service_api=R_86054639b9f90148987197dfdc061697" height="61" width="50" /><br />
			</a>
		</div>
]]></content:encoded>
			<wfw:commentRss>http://chusete.es/2008/06/12/ancho-de-banda-de-un-camion/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Llego tarde</title>
		<link>http://chusete.es/2008/06/12/llego-tarde/</link>
		<comments>http://chusete.es/2008/06/12/llego-tarde/#comments</comments>
		<pubDate>Thu, 12 Jun 2008 22:37:05 +0000</pubDate>
		<dc:creator>chusete</dc:creator>
				<category><![CDATA[comunicados]]></category>

		<guid isPermaLink="false">http://elchuso.wordpress.com/?p=4</guid>
		<description><![CDATA[¡Hola! Vaya un modo de reempezar mis andaduras por la blogosfera (aka ombligosfera). ¿Quién soy y porqué pretendo empezar a escribir un blog? Soy un desarrollador, proyecto de emprendedor, aprendiz de muchas cosas, y quiero emplear un blog para compartir las [pocas] cosas que sé. No es la primera vez que lo intento. En realidad [...]]]></description>
			<content:encoded><![CDATA[<p>¡Hola! Vaya un modo de reempezar mis andaduras por la blogosfera (aka ombligosfera). ¿Quién soy y porqué pretendo empezar a escribir un blog? Soy un desarrollador, proyecto de emprendedor, aprendiz de muchas cosas, y quiero emplear un blog para compartir las [pocas] cosas que sé.</p>
<p>No es la primera vez que lo intento. En realidad es la tercera. La primera ocasión fue en mi servidor de casa, pero los 128kbs de subida que había por entonces no eran suficiente para permitir una buena conexión. ¿Acaso lo es la tercemundista conexión que disfrutamos hoy en este país los abonados a ADSL? El segundo intento fue en un servidor compartido al que apenas dí uso, por lo que finalmente, decidí no renovar el dominio (Era chuso.net, por si alguien quiere regalarme algo y no sabe el qué). He pasado de lo más personal (servidor casero), a una solución semi personal (servidor compartido) a finalmente dejarlo totalmente en manos de terceros.</p>
<p>¿Y por qué hoy? Llevo un tiempo con ganas de experimentar en primera persona el fenómeno blog, y el microblogging no me acaba de llamar la atención. En realidad creo que me gusta ir un paso por detrás. Nunca me llamó la atención tener equipos de última generación, al igual que ahora no siento ningún tipo de pasión por twitter o las tan de moda redes sociales. Quizás esa es una razón por la que siendo 2008 decido empezar de nuevo un blog. Pero desde luego hay más.</p>
<p>Ayer asistí al <a href="http://www.iniciador.com/2008/06/12/resumen-iniciador-junio-modelos-de-negocio-en-internet/">iniciador de junio</a>, donde pude disfrutar de la experiencia de <a href="http://www.lacoctelera.com/infoman">Rodolfo Carpintier</a> sobre modelos de negocio en Internet. Antes de continuar es importante que resalte lo esclarecedora que fue su presentación. Muchas de las ideas difusas que yo tenía hechas me las confirmó. Por contra también recibí algunos jarros de agua fría (De eso hablaré otro día). Soy una persona introvertida, pero tras la presentación tuve la oportunidad de conocer a gente muy interesante, la mayoría de ellos bloggers. Ese fue el empujón que me faltaba para lanzarme de nuevo a este mundo. ¡Espero volver!</p>
<p>Y aquí estoy, llego tarde, pero ojalá tenga constancia y las ganas vayan en aumento. Nos vemos <img src='http://chusete.es/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Actualizacion 19 de octubre de 2009</strong>: Desde hoy, también están alojados los artículos de otros blogs que tuve.
<div class="tweetmeme_button" style="float: left; margin-right: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F12%2Fllego-tarde%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fchusete.es%2F2008%2F06%2F12%2Fllego-tarde%2F&amp;source=chuso&amp;style=normal&amp;service=bit.ly&amp;service_api=R_86054639b9f90148987197dfdc061697" height="61" width="50" /><br />
			</a>
		</div>
]]></content:encoded>
			<wfw:commentRss>http://chusete.es/2008/06/12/llego-tarde/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
