<?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>Sentido Web &#187; Desarrollo web</title>
	<atom:link href="http://sentidoweb.com/tag/desarrollo-web/feed" rel="self" type="application/rss+xml" />
	<link>http://sentidoweb.com</link>
	<description>Desarrollo web, HTML, CSS, Javascript, PHP, MySQL</description>
	<lastBuildDate>Mon, 16 Jan 2012 10:16:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Impresiones sobre el desarrollo web en España</title>
		<link>http://sentidoweb.com/2009/04/30/impresiones-sobre-el-desarrollo-web-en-espana.php</link>
		<comments>http://sentidoweb.com/2009/04/30/impresiones-sobre-el-desarrollo-web-en-espana.php#comments</comments>
		<pubDate>Thu, 30 Apr 2009 19:00:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>
		<category><![CDATA[españa]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2009/04/30/impresiones-sobre-el-desarrollo-web-en-espana.php</guid>
		<description><![CDATA[Mientras que algunos de los que nos dedicamos al desarrollo web estamos cansados de oír hablar de la web2.0, otros que pertenecen al mismo mundo laboral ni saben qué es, ni les importa. El desarrollo web en España es como un iceberg, lo que se ve es nada comparado con lo que está debajo del [...]]]></description>
			<content:encoded><![CDATA[<p>Mientras que algunos de los que nos dedicamos al desarrollo web estamos cansados de oír hablar de la web2.0, otros que pertenecen al mismo mundo laboral ni saben qué es, ni les importa. <strong>El desarrollo web en España es como un iceberg, lo que se ve es nada comparado con lo que está debajo del agua</strong>. </p>
<p>Leyendo blogs sobre desarrollo web, parece que todo el mundo sabe, usa u opina sobre jQuery, frameworks, Ajax, JSON, RIA, estándares, usabilidad o el reciente cloud computing. Pero realmente somos una minoría los que estamos interesados en estos temas. Cada día aparecen proyectos web2.0 de los que se habla durante meses, evangelizadores de lo-que-sea 2.0 nos cansan los oídos sobre qué es lo que se hace o lo que se debe hacer y cuál es el futuro inminente. Pero realmente estos proyectos son un pequeño porcentaje y el adoctrinamiento 2.0 no cala hondo en la realidad laboral española.</p>
<p>Entonces, ¿qué es lo que pasa? Pues sinceramente, no tengo ni idea, ni creo estar capacitado para exponer la realidad de lo que ocurre. Tan solo tengo algunas ideas, pensamientos o suposiciones sobre cuales pueden ser algunos de los motivos que pueden causar la apatía 2.0.</p>
<h3>Es un trabajo</h3>
<p>Lo que para algunos es un entretenimiento, una pasión o un vicio, para la gran mayoría es sólo un trabajo. <strong>Muchos de lo que se dedican a este trabajo lo hacen porque &#8220;no había de lo suyo&#8221;: muchos químicos, matemáticos, biólogos&#8230; trabajan en una profesión que no les gusta</strong>, pero que desgraciadamente es de lo único que había trabajo cuando salieron de la universidad. Además hay que sumar el hecho de que los españoles tenemos una actitud negativa ante el trabajo: el que sea una obligación, se pague mal o se explote a la gente, son motivos suficientes para que muchos hagan lo justo en su jornada laboral, y eso implica no esforzarse un poco más en aprender.</p>
<h3>Más de lo mismo</h3>
<p>Me acuerdo que hace años, cuando cambié de proyecto, los antiguos compañeros me preguntaron qué tal el proyecto nuevo, y mi respuesta fue: &#8220;más de lo mismo, navegador &rarr; JSP &rarr; bean &rarr; BD &rarr; HTML&#8221;.</p>
<p>Si nos ponemos a pensar, <strong>casi todos los proyectos web que se realizan son muy parecidos</strong>: hacer consulta a la BD y mostrar datos. <strong>Esto provoca que la creación de páginas web sea algo muy monótono y mecanizado, donde la novedad suele escasear, por lo que la necesidad de aprender algo nuevo no abunda</strong>, ya que con los conocimientos básicos que se tienen, se puede hacer cualquier aplicación.</p>
<h3>El copy/paste mató a la 2.0 star</h3>
<p>Si al hecho de que la gente no está motivada o a lo de que es más de lo mismo, le añadimos el uso discriminado de copy/paste, nos encontramos con la situación de que <strong>la gente lo único que hace la mayor parte de su tiempo es copiar un html/script/css anterior, modificarlo para que te funcione y pasar al siguiente tema</strong>, y en muchos casos sin saber exactamente qué es lo que está cambiando.</p>
<p>En Java es muy típico encontrarte a personas que llevan años usándolo y que no se saben de memoria el <em>public static void main(String args[])</em>. ¿Para que sabérselo de memoria si siempre usan un script anterior para crear uno nuevo?. Yo personalmente no me sé de memoria el <em>&lt;!DOCTYPE html PUBLIC &#8230; &gt;</em> y no creo que me lo vaya a aprender en la vida (ni ganas que tengo).</p>
<h3>Jefes de proyecto o analistas &#8220;mayores&#8221;</h3>
<p>Seamos sinceros, normalmente la gente con más interés por aprender es la gente más joven, pero lógicamente, estas personas suelen ser las que más abajo del escalafón están y sólo se dedican a hacer lo que les mandan. <strong>Si quien decide qué se debe hacer, no tiene el conocimiento sobre las novedades que hay en el desarrollo web, ¿cómo se va a propagar el uso de la web2.0?</strong>.</p>
<p>Cuando empecé a aprender Ajax, me fue imposible ponerlo en práctica en el proyecto en estaba, los que estaban por encima mía ni sabían qué era, ni se les podía dejar por tontos. Después de mucha lucha conseguí que al menos se hiciera usando iframes ocultos, para ellos era un adelanto, para mí un atraso.</p>
<h3>Clientes y otros politiqueos</h3>
<p><strong>El cliente tiene la razón</strong>, aunque te den ganas de abrirle la cabeza con un libro de O&#8217;Reilly. <strong>Esto suele llevar a la situación de peticiones imposibles y desarrollos chapuceros</strong>.<p>
<p>Una aplicación web no es una aplicación de escritorio, por mucho que le pese al cliente, el cual suele pedir cosas como:</p>
<ul><li>que toda la aplicación se vea en la pantalla, que no haya scroll vertical o que haya varias capas (normalmente frames argggg) y cada capa con su propio scroll vertical (e incluso horizontal)</li>
<li>que se pretenda que se hagan uploads automáticos de ficheros, sin que el usuario haga nada en el navegador (da igual las veces que les expliques que los navegadores no lo permiten)</li>
<li>usar flash o applets porque el navegador no permite hacer algo y el cliente se empeña</li>
<li>que sea compatible con los navegadores más antiguos del mundo (alguien lo debe tener instalado y no le apetece actualizarse). Y no me refiero al IE6, sino a versiones como IE5 o Netscape 4.7 (sufrido en mis propias carnes hace no mucho)</li></ul>
<p>Sobre el politiqueo, poco que decir que no conozcamos todos. <strong>Decisiones en altas esferas nos obligan a usar productos o programas que poco favor hacen al desarrollo web, y menos aún a los desarrolladores</strong>. Estas ordenes suelen estar dadas normalmente por comerciales, que de humo y motos saben mucho, pero que de desarrollo no saben nada. Resumiendo, <strong>aquellos que no saben de desarrollo web, obligan a que se haga de tal forma, imposibilitando el camino hacia la web.20</strong>.</p>
<h3>Negocio, negocio, negocio</h3>
<p>Al final todo es negocio y lo que realmente importa es ganar dinero, y cuanto más dinero mejor. Esto suele conllevar varias situaciones:</p>
<ul><li>recurrir a menos gente de la necesaria</li>
<li>reducir tiempos de entrega</li>
<li>contratar gente menos cualificada y más barata, la cual suele necesitar mucha ayuda o revisión</li>
<li>reutilizar desarrollos anteriores, aunque tengan poco que ver</li></ul>
<p>Debido a esto, <strong>los desarrolladores se encuentran con que tienen poco tiempo para mucho trabajo, y las prisas no son amigas de las florituras, algo de lo que la web2.0 está llena</strong>.</p>
<h3>Conclusiones</h3>
<p>Está claro que todo lo dicho anteriomente no es algo generalizado, existen empresas que realizan desarrollos impresionantes, jefes amantes de la web2.0 y programadores interesados en aprender más cada día. De todas formas, al final lo que importa es que seguimos haciendo las cosas mal, bueno, mal no, pero si <em>deprecated</em>. Y ahora con el tema de la crisis, cuando nuestra mayor ventaja puede ser la calidad de lo que ofrecemos, nos encontramos que hacemos lo mismo que el resto de los países y en algunos casos más caro, por ejemplo la India es mucho más barata y mil veces más eficiente que nosotros.</p>
<p>Que nadie se sienta ofendido, porque no va dirigido a nadie este post. Y si se siente ofendido, que se ponga las pilas.</p>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2009/04/30/impresiones-sobre-el-desarrollo-web-en-espana.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Consejos para trabajar con el código de otros</title>
		<link>http://sentidoweb.com/2008/03/31/consejos-para-trabajar-con-el-codigo-de-otros.php</link>
		<comments>http://sentidoweb.com/2008/03/31/consejos-para-trabajar-con-el-codigo-de-otros.php#comments</comments>
		<pubDate>Mon, 31 Mar 2008 17:30:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2008/03/31/consejos-para-trabajar-con-el-codigo-de-otros.php</guid>
		<description><![CDATA[Cuando se trabaja en una empresa de desarrollo de software es muy común que entres en un proyecto que ya está empezado, por lo que deberás tratar con un código que no es el tuyo, y que da igual que sea bueno o malo, deberás adaptarte a él, algo que siempre puede dar algún problema. [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando se trabaja en una empresa de desarrollo de software es muy común que entres en un proyecto que ya está empezado, por lo que deberás tratar con un código que no es el tuyo, y que da igual que sea bueno o malo, deberás adaptarte a él, algo que siempre puede dar algún problema. Más problemático es cuando sustituyes al único encargado del código y el traspaso de conocimientos se realiza en un par de horas (algo muy frecuente en las grandes empresas de consultoría).</p>
<p>Para aquellos que se encuentren en esas circunstancias, espero que los consejos que os voy a comentar, sacados de mi propia experiencia en el desarrollo web, os sean de utilidad.</p>
<h3>Echa un vistazo preliminar</h3>
<p>Aún no sabes cómo es el código, si es bueno o es malo, pero un vistazo preliminar a la estructura de directorios y a los nombres de los ficheros suele darte una idea aproximada de la funcionalidad que pueden tener.</p>
<p>Por muy malo que sea un programador, éste tiene su propia lógica para la nomenclatura, échale un rato a intentar adivinarla y así podrás localizar ficheros de forma más sencilla en futuras modificaciones.</p>
<p>No esperes un diseño <acronym title="Model View Controller">MVC</acronym> claro, quizás ni exista y esté todo mezclado. Tú tienes tu forma de programar, pero aunque para ti sea perfecta, ni quizás lo sea, ni todo el mundo la comparte.</p>
<h3>No intentes entenderlo todo de golpe</h3>
<p>Lo más seguro es que no debas cambiar toda la aplicación de golpe, por lo que de poco te va a servir empezar a estudiarla completamente y entender todo su significado. Ve por partes, si tienes que hacer un cambio en una parte céntrate en esa parte del código y olvídate del resto.</p>
<p>Cuando te hayas pegado con una parte del código no se te olvidará fácilmente, por lo que si en otra ocasión tienes que volver a tocar esa parte te será más sencillo.</p>
<h3>Empieza por el final para llegar al origen</h3>
<p>Afortunadamente el resultado del desarrollo web es visible para todos, tan solo debes ver el código HTML para ver qué se ha generado con la aplicación.</p>
<p>Normalmente, las modificaciones que se suelen realizar son del tipo &#8220;en tal página falla tal cosa&#8221;. Mira el HTML de esa página y encuentra algo que pueda ser exclusivo de ella.</p>
<p>Busca nombres de clases de etiquetas, las cabeceras de las páginas (&lt;h1&gt;..&lt;h6&gt;), textos explicativos. Una vez creas que tienes un texto más o menos exclusivo de esa página busca entre todo el código, por ejemplo en Windows puedes usar <a href="http://www.kgpsoftware.com/gfind.htm">GlobalFind</a>.</p>
<p>Debes tener cuidado porque a veces el código no aparece exactamente como lo buscas. Por ejemplo un texto largo puede estar dividido en varias líneas:</p>
<pre><code><pre class="php"><span style="color: #3E6D8F;">$texto</span> = <span style="color: #ff0000;">'Texto largo que el desarrollador '</span>;
<span style="color: #3E6D8F;">$texto</span> .= <span style="color: #ff0000;">'a cortado en l&Atilde;&shy;neas para verlo m&Atilde;&iexcl;s claro, '</span>;
<span style="color: #3E6D8F;">$texto</span> .= <span style="color: #ff0000;">'aunque sea menos eficiente por tener que '</span>;
<span style="color: #3E6D8F;">$texto</span> .= <span style="color: #ff0000;">'concatenar strings.'</span>;</pre></code></pre>
<p>O también puede darse la circunstancia de que el texto se forme por la unión de un texto y una variable:</p>
<pre><code><pre class="php"><span style="color: #3E6D8F;">$clase</span> = <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'empleados'</span>, <span style="color: #ff0000;">'facturas'</span>, <span style="color: #ff0000;">'resumen'</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #808080; font-style: italic;">// Algo de c&Atilde;&sup3;digo por aqu&Atilde;&shy;</span>
<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'&amp;lt;div class=&quot;'</span>.<span style="color: #3E6D8F;">$clase</span><span style="color: #66cc66;">&#91;</span><span style="color: #3E6D8F;">$tipo</span><span style="color: #66cc66;">&#93;</span>.<span style="color: #ff0000;">'&quot;&amp;gt;...&amp;lt;/div&amp;gt;'</span>;
<span style="color: #808080; font-style: italic;">// M&Atilde;&iexcl;s c&Atilde;&sup3;digo </span>
&nbsp;</pre></code></pre>
<p>Quizás te encuentres con ficheros de idiomas, y verás que el texto que buscas está asociado a un código, céntrate en ese código y búscalo.</p>
<h3>Usa trazas</h3>
<p>La lógica del código es de todo menos lógica. Te vas a encontrar con partes de código que no vas a entender por mucho que lo estudies. No es bueno perder el tiempo intentando entender el código al 100%, ya tendrás tiempo para ello.</p>
<p>Cuando te encuentres con un trozo de código que no entiendas, métele trazas a todos los bloques para saber por dónde pasa:</p>
<pre><code><pre class="php"><a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'Empezamos'</span>;
<span style="color: #723b00;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #3E6D8F;">$condicion1</span> &amp;&amp; <span style="color: #3E6D8F;">$condicion7</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'Paso por aqu&Atilde;&shy; 1'</span>;
<span style="color: #808080; font-style: italic;">// c&Atilde;&sup3;digo</span>
<span style="color: #723b00;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #3E6D8F;">$condicion3</span> || !<span style="color: #3E6D8F;">$condicion4</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'Paso por aqu&Atilde;&shy; 2'</span>;
<span style="color: #808080; font-style: italic;">// c&Atilde;&sup3;digo</span>
<span style="color: #66cc66;">&#125;</span> <span style="color: #723b00;">else</span> <span style="color: #66cc66;">&#123;</span>
<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'Paso por aqu&Atilde;&shy; 3'</span>;
<span style="color: #808080; font-style: italic;">// codigo</span>
<span style="color: #723b00;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #3E6D8F;">$condicion5</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'Paso por aqu&Atilde;&shy; 4'</span>;
<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span> <span style="color: #723b00;">else</span> <span style="color: #66cc66;">&#123;</span>
<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'Paso por aqu&Atilde;&shy; 5'</span>;
<span style="color: #808080; font-style: italic;">// c&Atilde;&sup3;digo</span>
<span style="color: #66cc66;">&#125;</span>
<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <span style="color: #ff0000;">'FIN'</span>;</pre></code></pre>
<p>Fijándote en las trazas que devuelva verás que código se ejecuta y así podrás encontrar mejor el error.</p>
<h3>Ten en cuenta la base de datos</h3>
<p>La BD es muy importante a la hora de localizar información. Mucha gente usa la BD para almacenar los mensajes de error o de información, que serán fundamentales para comprender el funcionamiento de la aplicación.</p>
<p>Localiza dónde se ejecutan las consultas, si hay suerte estarán separadas del resto de código (normalmente a las clases que tratan con la BD se le llama modelos). Si tienes que modificar los datos que devuelve una consulta, aunque no sepas cómo se obtienen esos datos (la sentencia SQL exacta), si que puedes hacerte una idea de las tablas a las que accede. Busca entre los modelos el nombre de esas tablas y filtra por los campos que muestra en la página. Claro que el <em>select * from</em> puede ser nuestro mayor enemigo.</p>
<p>Examina los datos de la tabla para ver si coincide con los datos que se muestran. Un ejemplo sencillo es insertar un registro mediante la aplicación y ver qué se ha guardado en la BD, así entenderás más facilmente qué se guarda en cada campo.</p>
<h3>No olvides los ficheros de configuración</h3>
<p>En ellos está mucha de la lógica de la aplicación, estudiarlos durante un rato puede aclararnos muchas cosas, como por ejemplo rutas de ficheros, conexiones a la BD, sistema de trazas, clases auto-ejecutables&#8230;</p>
<h3>Cuidado con las aplicaciones externas</h3>
<p>Si programas en Java es posible que no encuentres el por qué de un problema porque quizás la ejecución dependa de un JAR externo. Localízalos y tenlos siempre presentes. Si trabajas con Linux o Unix puede que haya llamadas a la shell. Pasará algo parecido a los JAR, deberás saber dónde están y qué hacen.</p>
<h3>Empieza por los cambios sencillos</h3>
<p>No intentes poner la aplicación del revés o cambiarla radicalmente nada más empezar con ella. Ve poco a poco, con cambios sencillos, que te hagan enfrentarte con el código y empezar a conocerlo.</p>
<p>Los cambios que puedas realizar en una parte no sabes donde van a poder afectar, por eso debes ir con cuidado y empezando con cosas sencillas, que tendrán menos posibilidades de estropear otras cosas.</p>
<h3>Un cambio en varios lugares</h3>
<p>Reutilizar código no siempre es una norma para los desarrolladores. Aunque creas que has localizado el lugar dónde debes cambiar el código, no pienses que es el único lugar. Sigue buscando a ver si hay más lugares donde se deba cambiar.</p>
<h3>Testea constantemente</h3>
<p>No conoces la aplicación y no sabes que puedes estropear cuando tocas algo. Un cambio sin importancia puede hacer que todo falle, ten cuidado si arreglas algo de no estropear otra cosa.</p>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2008/03/31/consejos-para-trabajar-con-el-codigo-de-otros.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 errores en el diseño de aplicaciones</title>
		<link>http://sentidoweb.com/2008/02/20/10-errores-en-el-diseno-de-aplicaciones.php</link>
		<comments>http://sentidoweb.com/2008/02/20/10-errores-en-el-diseno-de-aplicaciones.php#comments</comments>
		<pubDate>Thu, 21 Feb 2008 02:00:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2008/02/20/10-errores-en-el-diseno-de-aplicaciones.php</guid>
		<description><![CDATA[Un gran post en el que se nos explica diez errores que se cometen cuando se diseña una aplicación, un resumen sería el siguiente: Controles no estándares: los enlaces, botones, radio buttons y demás controles tienen una utilidad específica y estándar. Cambiar el comportamiento no es lo correcto y no hace más que confundir al [...]]]></description>
			<content:encoded><![CDATA[<p>Un gran post en el que se nos explica diez errores que se cometen cuando se diseña una aplicación, un resumen sería el siguiente:</p>
<ul><li><strong>Controles no estándares</strong>: los enlaces, botones, radio buttons y demás controles tienen una utilidad específica y estándar. Cambiar el comportamiento no es lo correcto y no hace más que confundir al usuario.</li>
<li><strong>Inconsistencia</strong>: diferentes cosas para una misma utilidad, usa lo mismo en el mismo lugar para la misma acción.</li>
<li><strong>Acciones no perceptibles</strong>: se debe saber qué acción realiza un control a simple vista. Si hay que investigar para qué sirve algo no cumple su cometido.</li>
<li><strong>Controles sin reacción</strong>: cada control debe indicar 3 cosas: mostrar a los usuarios el estado actual, cómo se interpretan los comandos y qué está pasando.</li>
<li><strong>Malos mensajes de error</strong>: no basta con decir que hay un error, sino que es lo que ha pasado y que se puede hacer para solucionarlo.</li>
<li><strong>Preguntar por lo mismo dos veces</strong></li>
<li><strong>No hay valores por defecto</strong>: os valores por defecto sirven para que haya más rapidez en las respuestas, para enseñar mediante el ejemplo y para dirigir a usuarios novatos.</li>
<li><strong>No explicar cómo funciona la aplicación</strong>: en aplicaciones estándar eso no es muy problemático, pero en otras aplicaciones hay que explicar qué se puede conseguir y cómo y no únicamente acceder a la aplicación.</li>
<li><strong>No indicar qué se hace con la información</strong></li>
<li><strong>Mostrar características internas</strong>: al usuario no le importa y no llegará a entender cosas internas de la aplicación, por lo que no es necesario que el usuario lea.</li></ul>
<p><a href="http://www.useit.com/alertbox/application-mistakes.html">Top-10 Application-Design Mistakes</a></p>
<p>Vía / <a href="http://www.dzone.com/links/rss/top10_applicationdesign_mistakes.html">dzone</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2008/02/20/10-errores-en-el-diseno-de-aplicaciones.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Guía para que el usuario pueda personalizar una web</title>
		<link>http://sentidoweb.com/2008/02/15/guia-para-que-el-usuario-pueda-personalizar-una-web.php</link>
		<comments>http://sentidoweb.com/2008/02/15/guia-para-que-el-usuario-pueda-personalizar-una-web.php#comments</comments>
		<pubDate>Fri, 15 Feb 2008 23:45:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2008/02/15/guia-para-que-el-usuario-pueda-personalizar-una-web.php</guid>
		<description><![CDATA[Para las aplicaciones web es importante darle al usuario la posibilidad de personalizarla a su gusto. El post que os pasamos a continuación explican muy bien los pasos que hay que dar para poder permitir que el usuario personalice la web a su gusto: Existen varios tipos de personalización: Recolocar contenido en la página Añadir [...]]]></description>
			<content:encoded><![CDATA[<p>Para las aplicaciones web es importante darle al usuario la posibilidad de personalizarla a su gusto.</p>
<p>El post que os pasamos a continuación explican muy bien los pasos que hay que dar para poder permitir que el usuario personalice la web a su gusto:</p>
<p>Existen varios tipos de personalización:</p>
<ul><li>Recolocar contenido en la página</li>
<li>Añadir elementos (widgets)</li>
<li>Modificar preferencias</li>
<li>Personalizar los estilos (skins)</li>
</ul>
<p>Eso sí, hay que tener en cuenta algunos aspectos a la hora de permitir personalizar la web:</p>
<ul><li>Es necesario un botón de reset para volver a la configuración inicial.</li>
<li>Permitir bloquear la configuración para que el usuario borre o elimine algo accidentalmente.</li>
<li>Facilidad para desplazar los módulos.</li>
</ul>
<p>Pero lógicamente existen pros y contras:</p>
<h3>Pros</h3>
<ul><li>Personalizar hace que el usuario sienta que un pedazo de web le pertenece.</li>
<li>Hace la web más interesante, ya que el usuario la dispone a su gusto y quita cosas que le sobren.</li>
<li>Le da frescura ya que las modificaciones permiten hacer sentir que los contenidos se actualizan con mayor frecuencia.</li></ul>
<h3>Contras</h3>
<ul><li>No a todo el mundo le gusta la personalización, a parte requiere tiempo para realizarlo y eso puede hacer que no se haga.</li>
<li>Lo simple a veces es mejor, aunque claro, el diseño por defecto debe ser suficientemente bueno para que la personalización sea una opción, no una necesidad.</li>
<li>Requiere complejidad, que no suele ir muy bien con la usabilidad.</li>
<li>Un usuario puede querer añadir mucha información, perjudicando el rendimiento general.</li></ul>
<p><a href="http://www.webcredible.co.uk/user-friendly-resources/web-usability/customisation.shtml">Customisable websites &#8211; the definitive guide</a></p>
<p>Vía / <a href="http://digg.com/design/A_Guide_to_Customisable_Websites">Digg</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2008/02/15/guia-para-que-el-usuario-pueda-personalizar-una-web.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Appcelerator: otra forma de realizar aplicaciones web</title>
		<link>http://sentidoweb.com/2008/01/15/appcelerator-otra-forma-de-realizar-aplicaciones-web.php</link>
		<comments>http://sentidoweb.com/2008/01/15/appcelerator-otra-forma-de-realizar-aplicaciones-web.php#comments</comments>
		<pubDate>Tue, 15 Jan 2008 17:00:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2008/01/15/appcelerator-otra-forma-de-realizar-aplicaciones-web.php</guid>
		<description><![CDATA[Appcelerator es una plataforma open source que cambia la forma de realizar aplicaciones web. Está basado en una arquitectura basada en mensajes, lo que quiere decir que toda la plataforma está manejada por mensajes, los cuales son tamaña pequeño. Los elementos HTML pueden enviar o recibir mensajes para cambiar su aspecto o para solicitar datos [...]]]></description>
			<content:encoded><![CDATA[<strong>Appcelerator</strong> es una plataforma open source que cambia la forma de realizar aplicaciones web. Está basado en una arquitectura basada en mensajes, lo que quiere decir que toda la plataforma está manejada por mensajes, los cuales son tamaña pequeño. Los elementos HTML pueden enviar o recibir mensajes para cambiar su aspecto o para solicitar datos al Appcelerator Service, el cual es el responsable de gestionar todos los mensajes de la aplicación a/hasta los clientes.
<img alt="appcelerator.png" src="http://sentidoweb.com/img/2008/01/appcelerator.png" width="400" height="310" class="center" />
Las aplicaciones usan Ajax y DHTML estándar para realizar las <acronym title="Rich Internet Application">RIA</acronym>, aunque dicen que sin Javascript, algo que no llego a comprenderles muy bien, porque lógicamente si usa Javascript, quizás se refiera a que el desarrollador no necesita usar Javascript porque se implementa directamente.
Appcelerator ofrece una separación clara entre la parte lógica y la de presentación, usando servicios SOA para ello, por lo que es posible crear clientes para Java, PHP, .NET, Ruby y Python.
<a href="http://www.appcelerator.org/">Appcelerator</a>
Gracias <a href="http://diarioTHC.com">diarioTHC</a> por el aviso
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2008/01/15/appcelerator-otra-forma-de-realizar-aplicaciones-web.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Utilidad online para medir la carga de una página</title>
		<link>http://sentidoweb.com/2008/01/02/utilidad-online-para-medir-la-carga-de-una-pagina.php</link>
		<comments>http://sentidoweb.com/2008/01/02/utilidad-online-para-medir-la-carga-de-una-pagina.php#comments</comments>
		<pubDate>Wed, 02 Jan 2008 19:30:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[utilidades]]></category>
		<category><![CDATA[Desarrollo web]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2008/01/02/utilidad-online-para-medir-la-carga-de-una-pagina.php</guid>
		<description><![CDATA[A la hora de realizar una página es importante tener en cuenta el tiempo de carga de una página. Existen aplicaciones muy buenas como jmeter con las que podemos hacer tests de estrés para saber los tiempos de carga de las páginas, pero en algunas ocasiones algo sencillo es lo mejor y lo más cómodo. [...]]]></description>
			<content:encoded><![CDATA[A la hora de realizar una página es importante tener en cuenta el tiempo  de carga de una página. Existen aplicaciones muy buenas como <a href="http://jakarta.apache.org/jmeter/">jmeter</a> con las que podemos hacer tests de estrés para saber los tiempos de carga de las páginas, pero en algunas ocasiones algo sencillo es lo mejor y lo más cómodo.
El <strong>Full Page Test</strong> de Pingdom nos ofrece el tiempo de carga del HTML, imágenes, CSS, JavaScripts, RSS, Flash y frames/iframes. A parte nos muestra el momento de inicio de petición, el tiempo hasta el primer bit (<acronym title="Time To First Bit">TTFB</acronym>) y el tiempo hasta el último bit (<acronym title="Time To Last Bit">TTLB</acronym>. Todo esto en una gráfica muy sencilla y aclaratoria.
<img alt="fulltest.png" src="http://sentidoweb.com/img/2008/01/fulltest.png" width="400" height="198" class="center" />
<a href="http://tools.pingdom.com/fpt/">Full page test</a>
Vía / <a href="http://opensourcecommunity.org/2008/01/01/pingdom%2526%2523039%3Bs-full-page-load-test">OpenSourceCommunity.org</a>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2008/01/02/utilidad-online-para-medir-la-carga-de-una-pagina.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Consejos para evitar crear malas aplicaciones web</title>
		<link>http://sentidoweb.com/2007/03/22/consejos-para-evitar-crear-malas-aplicaciones-web.php</link>
		<comments>http://sentidoweb.com/2007/03/22/consejos-para-evitar-crear-malas-aplicaciones-web.php#comments</comments>
		<pubDate>Thu, 22 Mar 2007 22:30:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>
		<category><![CDATA[desarrollo web consejos]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2007/03/22/consejos-para-evitar-crear-malas-aplicaciones-web.php</guid>
		<description><![CDATA[Una lista con consejos para evitar realizar aplicaciones web que no tengan una buena calidad. Lo malo de las listas es que normalmente se basan en la experiencia del autor, por lo que a veces no se está de acuerdo totalmente con ellas. En este caso yo estoy bastante de acuerdo con la mayoría. Pon [...]]]></description>
			<content:encoded><![CDATA[<p>Una lista con consejos para evitar realizar aplicaciones web que no tengan una buena calidad. Lo malo de las listas es que normalmente se basan en la experiencia del autor, por lo que a veces no se está de acuerdo totalmente con ellas. En este caso yo estoy bastante de acuerdo con la mayoría.</p>
<ul><li><strong>Pon los estilos y los javascript en ficheros independientes</strong>: complica la lectura, el debug y dificulta que varios desarrolladores modifiquen el mismo archivo.</li>
<li><strong>Comprime</strong>: comprime la salida para ahorrar ancho de banda. Con esto no estoy del todo de acuerdo, ya lo hemos comentado antes en Sentido Web, hay que pensar que el comprimir la salida en el servidor requiere tiempo de ejecución en la máquina, no me imagino a Technorati, que a veces tarda un poco en darte la respuesta, despilfarrando tiempo de ejecución.</li>
<li><strong>Valida</strong>: valida según el DOCTYPE que hayas especificado.</li>
<li><strong>Cuidado con los mensajes de error</strong>: los mensajes de error deben estar enfocados en el usuario, no en el desarrollador para luego saber qué ha fallado. Además, mostrar mensajes de error de la aplicación específicos para los desarrolladores puede proporcionar información sensible a terceras personas.</li>
<li><strong>No uses tablas</strong>: a parte de ser más fácil de mantener, y más claro de leer, ahorras ancho de banda al escribir menos código debido a la ausencia de TDs y TRs. Luego está, lógicamente, todas las otras razones que todos conocemos para no usar tablas.</li>
<li><strong>Desarrolla para todos los navegadores modernos</strong>: no te centres solo en IE, existen otros, y aunque se usen menos, cada vez se usan más. Imagínate que una tienda por internet solo funciona para IE,  ya que solo el 15% de los usuarios usa Firefox (por ejemplo), es bastante posible que la mayoría de ese 15% no entre en esa tienda online y busque una alternativa. Ese 15% de usuarios de Firefox quizás pueda representar un 15% de ventas.</li>
<li><strong>Comprueba los requerimientos</strong>: si tu página necesita Javascript, cookies, flash o un plugin, comprueba que el navegador del usuario lo admite, si no es así hazlo saber.</li>
<li><strong>Prueba la usabilidad con usuarios reales</strong>: a veces algunos sitios son difíciles de usar debido a que quienes lo usan no son quienes lo diseñan.</li>
<li><strong>Usa una base de datos real</strong>: no uses Access u otro tipo de base de datos de ese estilo, si no puedes pagar Oracle usa MySQL.</li>
<li><strong>Que sea multiplataforma</strong>: no uses ActiveX o cosas que sean específicas de una plataforma.</li>
<li><strong>Piensa en el ancho de banda</strong>: no todo el mundo debe tener una línea con un ancho de banda grande, si la página tarda en cargarse es posible que el usuario huya de ella.</li>
<li><strong>Ten en cuenta la internacionalización</strong>: si desarrollas algo para todo el mundo y solo lo realizas en inglés, es posible que no logres lo que buscas.</li>
<li><strong>Testea</strong>: esto es lo de siempre, los test es lo más aburrido pero lo más necesario. Que los desarrolladores hagan sus pruebas primarias, pero que los verdaderos tests los hagan personas ajenas al desarrollo.</li></ul>
<p><a href="http://codist.biit.com/fiche/thecodist/article/13-ways-to-avoid-building-web-applications-that-suck">Ways to Avoid Building Web Applications That Suck</a></p>
<p>Vía / <a href="http://www.dzone.com/rsslinks/13_ways_to_avoid_building_web_applications_that_s.html">dzone</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2007/03/22/consejos-para-evitar-crear-malas-aplicaciones-web.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Consejos para desarrollar Rich Internet Applications</title>
		<link>http://sentidoweb.com/2007/02/09/consejos-para-desarrollar-rich-internet-applications.php</link>
		<comments>http://sentidoweb.com/2007/02/09/consejos-para-desarrollar-rich-internet-applications.php#comments</comments>
		<pubDate>Fri, 09 Feb 2007 17:30:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>
		<category><![CDATA[desarrollo web consejos aplicaciones]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2007/02/09/consejos-para-desarrollar-rich-internet-applications.php</guid>
		<description><![CDATA[Buenos consejos a tener en cuenta cuando quieras desarrollar un aplicación de internet (Rich Internet Applications): Hazlo interactivo: en vez de ir página a página, hazlo que sea interactivo, edita contenidos, usa drag &#038; drop. Invita a usarlo: pequeños efectos con hover puede conseguir que el usuario se atreva a interactuar. Usa popups ligeros: no [...]]]></description>
			<content:encoded><![CDATA[<p>Buenos consejos a tener en cuenta cuando quieras desarrollar un aplicación de internet (Rich Internet Applications):</p>
<ul><li><strong>Hazlo interactivo</strong>: en vez de ir página a página, hazlo que sea interactivo, edita contenidos, usa drag &#038; drop.</li>
<li><strong>Invita a usarlo</strong>: pequeños efectos con <em>hover</em> puede conseguir que el usuario se atreva a interactuar.</li>
<li><strong>Usa popups ligeros</strong>: no se trata de ventanas popups, sino capas que de despliegan. Intenta usarlos cuando puedas para no tener que ir de página en página.</li>
<li><strong>Piensa en la interacción como si fuera un storyboard</strong>: situa los frames como un storyboard para hacerte una mejor idea de cómo se deben producir las acciones.</li>
<li><strong>Indica que acciones se realizan</strong>: avisa cuando se haya producido una acción, sin necesidad de dejar la página.</li>
<li><strong>Piensa en objetos</strong>: en vez de pensar en contenidos y páginas.</li></ul>
<p>Puedes leer más en:</p>
<p><a href="http://looksgoodworkswell.blogspot.com/2006/01/nine-tips-for-designing-rich-internet.html">Nine Tips for Designing Rich Internet Applications</a></p>
<p>Vía / <a href="http://www.backd.com/2007/02/07/nine-tips-for-designing-rich-internet-applications/">backdraft</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2007/02/09/consejos-para-desarrollar-rich-internet-applications.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DHTMLSite: aprendiendo mediante ejemplos</title>
		<link>http://sentidoweb.com/2006/12/13/dhtmlsite-aprendiendo-mediante-ejemplos.php</link>
		<comments>http://sentidoweb.com/2006/12/13/dhtmlsite-aprendiendo-mediante-ejemplos.php#comments</comments>
		<pubDate>Wed, 13 Dec 2006 21:40:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Software social]]></category>
		<category><![CDATA[Desarrollo web]]></category>
		<category><![CDATA[dhtmlsite]]></category>
		<category><![CDATA[dhtmlsite desarrollo web digg]]></category>
		<category><![CDATA[digg]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2006/12/13/dhtmlsite-aprendiendo-mediante-ejemplos.php</guid>
		<description><![CDATA[Ya son varios los sitios que te muestran artículos sobre desarrollo web, con formato Digg, los cuales son una buena fuente de información para aprender. Si en Sentido Web suelen aparecer entradas que hacen referencia a dzone o a Pixel Groovy, ahora tendremos que estar atentos a DHTMLSite para encontrar el tipo de artículos que [...]]]></description>
			<content:encoded><![CDATA[<img alt="dhtmlsite.png" src="http://sentidoweb.com/img/2006/12/dhtmlsite.png" width="100" height="64" class="right"/>Ya son varios los sitios que te muestran artículos sobre desarrollo web, con formato Digg, los cuales son una buena fuente de información para aprender.
Si en <strong>Sentido Web</strong> suelen aparecer entradas que hacen referencia a <a href="http://dzone.com">dzone</a> o a <a href="http://pixelgroovy.com">Pixel Groovy</a>, ahora tendremos que estar atentos a <strong>DHTMLSite</strong> para encontrar el tipo de artículos que nos gusta tanto en <strong>Sentido Web</strong>.
El único fallo que tiene es que aún no ofrecen RSS, pero parece que si lo van a lanzar.
<a href="http://www.dhtmlsite.com/">DHTMLSite</a>
Vía / <a href="http://www.webnova.com.ar/blog/?p=156">Webnova</a>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2006/12/13/dhtmlsite-aprendiendo-mediante-ejemplos.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>24 ways: buenos trucos para tu web</title>
		<link>http://sentidoweb.com/2006/12/07/24-ways-buenos-trucos-para-tu-web.php</link>
		<comments>http://sentidoweb.com/2006/12/07/24-ways-buenos-trucos-para-tu-web.php#comments</comments>
		<pubDate>Thu, 07 Dec 2006 16:15:00 +0000</pubDate>
		<dc:creator>displaynone</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>
		<category><![CDATA[24 ways]]></category>
		<category><![CDATA[24 ways desarrollo web trucos]]></category>
		<category><![CDATA[Trucos]]></category>

		<guid isPermaLink="false">http://sentidoweb.com/2006/12/07/24-ways-buenos-trucos-para-tu-web.php</guid>
		<description><![CDATA[24 ways es un sitio a tener en cuenta a la hora de encontrar trucos y efectos para tu web desarrollados por gurus del desarrollo web. En especial me han gustado cinco de ellos: Tasty Text Trimmer: una forma de acortar bloques de texto para que sea posible un vistazo a los contenidos generales de [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="24ways.png" src="http://sentidoweb.com/img/2006/12/24ways.png" width="150" height="46" class="right"/><strong>24 ways</strong> es un sitio a tener en cuenta a la hora de encontrar trucos y efectos para tu web desarrollados por <em>gurus</em> del desarrollo web.</p>
<p>En especial me han gustado cinco de ellos:</p>
<ul><li><a href="http://24ways.org/2006/tasty-text-trimmer">Tasty Text Trimmer</a>: una forma de acortar bloques de texto para que sea posible un vistazo a los contenidos generales de la página.</li>
<li><a href="http://24ways.org/2006/faster-development-with-css-constants">Faster Development with CSS Constants</a>: uso de constantes en CSS mediante PHP, muy útil para el uso de colores.</li>
<li><a href="http://24ways.org/2005/transitional-vs-strict-markup">Transitional vs. Strict Markup</a>: diferencias entre XHTML strict y transitional.</li>
<li><a href="http://24ways.org/2005/zs-not-dead-baby-zs-not-dead">Z&#8217;s not dead baby, Z&#8217;s not dead</a>: uso de la propiedad Z en el uso de estilos.</li>
<li><a href="http://24ways.org/2005/swooshy-curly-quotes-without-images">Swooshy Curly Quotes Without Images</a>: como adornar las citas en nuestra página sin el uso de imágenes.</li></ul>
<p>Vía / <a href="http://www.quirksmode.org/blog/archives/2006/12/24ways_hide_and.html">QuirksBlog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sentidoweb.com/2006/12/07/24-ways-buenos-trucos-para-tu-web.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

