<?xml version="1.0" encoding="ISO-8859-1" ?>

<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns="http://purl.org/rss/1.0/"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
>

	<channel rdf:about="http://webcraft.blogalia.com/rdf.xml">
		<title>Webeando (con perdón)</title>
		<link>http://webcraft.blogalia.com/</link>
		<description>Detrás de cada web hay alguien que la ha construido. A veces, son humanos.</description>
		<dc:language>es-ES</dc:language>
		<dc:rights>Copyright Netito</dc:rights>
		<dc:publisher>Netito</dc:publisher>
  		<dc:creator>Netito</dc:creator>
		<items>
			<rdf:Seq>
								<rdf:li resource="http://webcraft.blogalia.com//historias/49398" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/48109" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/48096" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/47129" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/46503" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/46392" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/45957" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/45584" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/45498" />
				<rdf:li resource="http://webcraft.blogalia.com//historias/45474" />

			</rdf:Seq>
		</items>
	</channel>

	
	<item rdf:about="http://webcraft.blogalia.com//historias/49398">
		<title>Porno accesible</title>
		<link>http://webcraft.blogalia.com//historias/49398</link>
		<description>(mmm.... con ese título, me dá que va a ser una de las historias con más vistas de este blog)&lt;br /&gt;
&lt;br /&gt;
Siempre he pensado que la industria del porno es una de las que más hay que aprender en la Web. Fueron los primeros, y hoy siguen en cabeza, en desarrollar webs multimedia de alta disponibilidad, en cobros on-line, en autentificación de usuarios, y en sindicación de contenidos, por poner sólo unos ejemplos.&lt;br /&gt;
&lt;br /&gt;
Y leo vía Emmanuelle Gutiérrez, en la imprescindible &lt;a href=&quot;http://groups.yahoo.com/group/accesoweb/&quot;&gt;Accesoweb&lt;/a&gt;, que parece que también se han metido de cabeza en la accesibilidad de sus contenidos, al menos unos tal SoundsDirty.com, cuya &lt;a href=&quot;http://www.soundsdirty.com/statement.php&quot;&gt;declaración de accesibilidad&lt;/a&gt; (ojo, &lt;em&gt;not safe for work&lt;/em&gt;, niños, no pulseís ese enlace) no tiene nada que envidiar a las páginas más avanzadas en el tema:&lt;br /&gt;
&lt;br /&gt;
- XHTML estricto y maquetación con CSS, validados&lt;br /&gt;
- marcado semántico&lt;br /&gt;
- atajos de teclado, con detalle de cuáles son y cómo se usan en distintos navegadores&lt;br /&gt;
- etiquetas &lt;code&gt;rel&lt;/code&gt;, opción de salto de la navegación, ¡e incluso una tecla de pánico que deja la pantalla en blanco y para los lectores de pantalla!&lt;br /&gt;
- alt en todas las imágenes, y descripción ampliada en aquellas que lo, ejem, requieren (&quot;Due to the nature of the SoundsDirty.com site certain images are deem to be of great significance and may contain slightly longer descriptions&quot;)&lt;br /&gt;
- descripción de la estructura de la web&lt;br /&gt;
- todos los vídeos incluyen subtítulos o audiodescripciones&lt;br /&gt;
- validada automáticamente por Bobby, y probada con JAWS&lt;br /&gt;
- dirección email específica para comentarios sobre accesibilidad&lt;br /&gt;
&lt;br /&gt;
En resumen, afirma tener un nivel AAA, y cumplir las directrices de la sección 508  estadounidense.&lt;br /&gt;
&lt;br /&gt;
A ver si hay suerte y algún responsable de más de una web cae por ahí (casualmente, por supuesto), y empieza a interesarse por eso de la accesibilidad...&lt;br /&gt;
&lt;br /&gt;
(también lo comenta &lt;a href=&quot;http://www.torresburriel.com/weblog/2007/05/13/porno-accesible/&quot;&gt;Torres Burriel&lt;/a&gt;)</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/48109">
		<title>Las &quot;ventajas&quot; de una web 100% Flash</title>
		<link>http://webcraft.blogalia.com//historias/48109</link>
		<description>Lo cuenta &lt;a href=&quot;http://www.enriquedans.com/2007/03/ac-hotels-%c2%bfeliminados-de-google.html&quot;&gt;Enrique Dans en su blog&lt;/a&gt; citando a &lt;a href=&quot;http://www.blogontravel.com/ac-hotels-has-been-banned-from-google/&quot;&gt;Blog On Travel&lt;/a&gt;: AC Hoteles ha sido baneado de Google.&lt;br /&gt;
&lt;br /&gt;
La causa: una web completamente en Flash (nada de contenido para indexar), + palabras clave=texto de la descripción, que no se encuentran en el contenido (que para Google no existe) + 92 dominios todos con la misma IP, interconectados entre sí, y todos (menos uno) con el mismo contenido: nada.&lt;br /&gt;
&lt;br /&gt;
Sería interesante ver que cara pone el diseñador de la web cuando le pregunten por qué ha pasado esto....&lt;br /&gt;
&lt;br /&gt;
Y también sería interesante (mirando un poco de manera más local), que tomasen nota, por ejemplo, los responsables de comunicación del &lt;a href=&quot;http://www.teatroperezgaldos.es/&quot;&gt;Teatro Pérez Galdós&lt;/a&gt;, y pensasen en rehacer su nueva, flamante e &lt;a href=&quot;http://www.sidar.org/recur/direc/legis/espa.php&quot;&gt;ilegal&lt;/a&gt; web 100% Flash.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(actualización 22/03/07: AC Hoteles ya vuelve a estar en Google. &lt;a href=&quot;http://www.hotelblog.es/posicionamiento-online/la-verdad-sobre-la-exclusion-de-ac-hoteles-de-google&quot;&gt;Hotel Blog&lt;/a&gt; tiene un interesante análisis del caso).&lt;br /&gt;
&lt;br /&gt;
(otra actualización 19/09/07: la web del Tatro Pérez Galdós ya ha cambiado, por una versión que apenitas usa Flash, lo cual es de agradecer)</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/48096">
		<title>[CF] Seleccionado varios valores de una lista a través de 'checkboxes'</title>
		<link>http://webcraft.blogalia.com//historias/48096</link>
		<description>Respondiendo a un comentario en otro post, aprovecho para comentar aquí una solución sencilla (al menos, la más sencilla que yo he encontrado) a un problema con el que nos encontramos a menudo: dada una lista de resultados, seleccionar mediante &lt;code&gt;checkbox&lt;/code&gt; algunos de ellos para pasárselos vía formulario a otro script. Yo lo uso mucho para seleccionar elementos que deben ser eliminados en paneles de control, para selección de los temas de suscripción en listas de correo, y cosas por el estilo...&lt;br /&gt;
&lt;br /&gt;
Partimos de tres detalles a tener en cuenta:&lt;br /&gt;
&lt;br /&gt;
- ColdFusion permite recuperar en una variable, &lt;code&gt;form.fieldnames&lt;/code&gt;, una lista de todas las variables enviadas por el formulario (usando el método post, que, por otro lado, es el más recomendable).&lt;br /&gt;
- los checkbox no marcados no se envían al programa que trata el formulario. Un input tipo texto en el que no se escriba nada envía el nombre de la variable, con el contenido vacío. Un checkbox no. Sólo se envía, con el valor 'on', si está marcado. Si no lo está, no envía nada, nisquiera el nombre de la variable.&lt;br /&gt;
- ColdFusion permite hacer bucles sobre listas, dándole el valor de cada uno de sus elementos a una variable en cada iteración.&lt;br /&gt;
&lt;br /&gt;
El primer paso es construir el formulario. Suponemos que tenemos una consulta que nos devuelve una lista de empleados, llamada &lt;code&gt;empleados&lt;/code&gt;, cada uno con un identificador único (&lt;code&gt;id&lt;/code&gt;) y su nombre (&lt;code&gt;nombre&lt;/code&gt;):&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;&lt;pre&gt;
&amp;lt;form action=&quot;recibe.cfm&quot; method=&quot;post&quot;&amp;gt;

(... otros campos ...)

&amp;lt;ul&amp;gt;
&amp;lt;cfoutput query=&quot;empleados&quot;&amp;gt;
	&amp;lt;li&amp;gt;&amp;lt;input type=&quot;checkbox&quot; name=&quot;codigo#empleados.Id#&quot;&amp;gt;#empleados.nombre#&amp;lt;/li&amp;gt;
&amp;lt;/cfoutput&amp;gt;
&amp;lt;/ul&amp;gt;

(... otros campos ...)

&amp;lt;/form&amp;gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
(dado que se trata de una lista de empleados, parece que meterlo en una lista es lo más adecuado. Es irrelevante para lo que nos interesa)&lt;br /&gt;
&lt;br /&gt;
Esto generará una lista tal que, por ejemplo:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;&lt;pre&gt;
&amp;lt;form action=&quot;recibe.cfm&quot; method=&quot;post&quot;&amp;gt;

(... otros campos ...)

&amp;lt;ul&amp;gt;
	&amp;lt;li&amp;gt;&amp;lt;input type=&quot;checkbox&quot; name=&quot;codigo15&quot;&amp;gt;Pedro&amp;lt;/li&amp;gt;
	&amp;lt;li&amp;gt;&amp;lt;input type=&quot;checkbox&quot; name=&quot;codigo26&quot;&amp;gt;Juan&amp;lt;/li&amp;gt;
	&amp;lt;li&amp;gt;&amp;lt;input type=&quot;checkbox&quot; name=&quot;codigo32&quot;&amp;gt;Felipe&amp;lt;/li&amp;gt;
&amp;lt;/ul&amp;gt;

(... otros campos ...)

&amp;lt;/form&amp;gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
El meollo de la cuestión está en el nombre que tienen los checkbox, compuesto por una cadena de caracteres, más el identificador que devuelve la consulta. Esta cadena puede ser cualquier cosa al gusto del chef, siempre que no coincida con el nombre de ningún otro campo en el formulario, y siempre que no comience por un número (CF no se lleva bien con las variables que empiezan por un número) (tampoco se recomienda usar caracteres no ingleses, ni, en general, nada que no deba ir en un nombre de variable). Y en concreto, es importante fijarse en la longitud que tiene esta cadena. En este ejemplo, la longitud de &quot;codigo&quot; es 6.&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;recibe.cfm&lt;/code&gt;, el script que trata los datos del formulario, recibirá los checkbox que hayamos marcado, el resto de campos del formulario, y un par más de variables, de las cuales la que más nos interesa es &lt;code&gt;form.fieldnames&lt;/code&gt; (si se dispone de la versión 6 o superior de CF, es interesante hacer un &lt;code&gt;&amp;lt;cfdump var=&quot;#form#&quot;&amp;gt;&lt;/code&gt;, para ver qué es exactamente lo que envía el formulario).&lt;br /&gt;
&lt;br /&gt;
Suponiendo que hayamos marcado las casillas de Pedro y Felipe, y que hayan dos campos más en el formulario llamados &lt;code&gt;autorizado&lt;/code&gt; y &lt;code&gt;horario&lt;/code&gt; (por poner algo), &lt;code&gt;form.fieldnames&lt;/code&gt; tendrá el valor &quot;autorizado,codigo15,codigo32,horario&quot;&lt;br /&gt;
&lt;br /&gt;
La idea es ir recorriendo esa cadena e ir viendo que nombres de campo corresponden en su parte izquierda con la cadena que asignamos en el formulario, y tomar los valores que quedan en la parte derecha:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;&lt;pre&gt;
&amp;lt;cfloop list=&quot;#form.FieldNames#&quot; index=&quot;indice&quot;&amp;gt;
&amp;lt;cfif (Left(indice,6) eq &quot;codigo&quot;)&amp;gt;

	&amp;lt;cfset Id=Right(indice,Len(indice)-6)&amp;gt;
		
	(... hacer cosas con el código recuperado, por ejemplo, ListAdd() para crear una lista sólo con los identificadores seleccionados ...)

&amp;lt;/cfif&amp;gt;
&amp;lt;/cfloop&amp;gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
La traza es muy sencilla: en la primera iteración, la variable &lt;code&gt;indice&lt;/code&gt; toma el valor &lt;code&gt;autorizado&lt;/code&gt;. No se cumple la condición, y pasa al segundo valor de la lista, &lt;code&gt;codigo15&lt;/code&gt;. Cumple la condición, por lo que la variable &lt;code&gt;Id&lt;/code&gt; toma el valor &lt;code&gt;15&lt;/code&gt;. Hace lo que tenga que hacer con ella, y pasa al tercer elemento de la lista, &lt;code&gt;codigo32&lt;/code&gt;, que también cumple la condición, etc, etc...&lt;br /&gt;
&lt;br /&gt;
El &quot;número mágico&quot; que aparece, el 6, es la longitud de la cadena usada.&lt;br /&gt;
&lt;br /&gt;
Al final del bucle, habremos tratado todos los campos del formulario que se corresponden con los elementos checkbox marcados, y habremos extraído los valores que nos interesaban.&lt;br /&gt;
&lt;br /&gt;
Nótese que no nos hemos interesado para nada en el valor de las variables del formulario (que por otro lado, es siempre el mismo para los checkbox: &lt;code&gt;on&lt;/code&gt;). No nos hace falta, toda la información que necesitamos de estos campos se transmite en el nombre del mismo.&lt;br /&gt;
&lt;br /&gt;
Espero que les sea útil. Puede parecer algo rebuscado, pero no he encontrado manera más sencilla. Si alguien la conoce, se agradecen comentarios y sugerencias   ;)</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/47129">
		<title>IMified:instant messenging 2.0 (y ColdFusion powered!)</title>
		<link>http://webcraft.blogalia.com//historias/47129</link>
		<description>Hace ya bastante tiempo (como un año) comentaba las por entonces nuevas características de ColdFusion MX 7, entre las cuales una de las más interesantes era la respuesta a eventos no HTTP en el servidor. Es decir, se podía preparar el servidor, de manera bien sencilla (a través de lo que Macromedia llamó Gateways) para que respondiese a eventos como subir un fichero por FTP, recibir un SMS, o recibir un mensaje de mensajería instantánea. Macromedia tenía un interesante ejemplo en el que, vía cualquier programa compatible con Jabber, se podía interactuar con el administrador de ColdFusion, consultando su estado.&lt;br /&gt;
&lt;br /&gt;
La verdad es que mirando hacia atrás resulta cuando menos sorprendente que nadie sacase provecho al tremendo potencial de esta herramienta.... hasta ahora:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.imified.com/&quot;&gt;IMified&lt;/a&gt; es una &quot;herramienta de productividad&quot; basada en mensajería instantánea, compatible con AIM, Yahoo Messenger, MSN y Google Talk, que permite interactuar, vía mensajería instantánea, con servicios como Basecamp, salesforce, Blogger o Movable Type, aparte de otros propios, como notas 'post-it' o recordatorios. Todo ello usando los Gateways de ColdFusion MX 7 para recibir los mensajes (que se envían a determinado 'contacto' según el programa de mensajería), y las APIs de los servicios correspondientes para interactuar con ellos. Todo sin salir de nuestro programa de IM.&lt;br /&gt;
&lt;br /&gt;
En sólo cinco días, y con un sólo mensaje en un foro, la herramienta pasó de dos a varios miles de usuarios. Yo me acabo de inscribir, aunque ya la revisaré con más calma otro día. En su &lt;a href=&quot;http://blog.imified.com/&quot;&gt;blog&lt;/a&gt;, los creadores dan algunos datos del desarrollo: cuatro meses, algunos dólares, y unas cuantas latas de Red Bull.&lt;br /&gt;
&lt;br /&gt;
Mola.&lt;br /&gt;
&lt;br /&gt;
(vía &lt;a href=&quot;http://www.forta.com/blog/index.cfm?mode=entry&amp;entry=B68DFA44-3048-80A9-EF7B85EBC06BAE58&quot;&gt;Ben Forta&lt;/a&gt;)</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/46503">
		<title>Scorpio: ColdFusion 8 un poco más cerca</title>
		<link>http://webcraft.blogalia.com//historias/46503</link>
		<description>Ya se ha abierto la inscripción para beta-testear la próxima versión de ColdFusion. Si a alguien le interesa, puede preinscribirse &lt;a href=&quot;https://prerelease.adobe.com/callout/apply.html?callid={E9F64ADB-DADA-485E-BFFE-60E0D783EBEF}&quot;&gt;en esta página&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Slup...  :)</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/46392">
		<title>&amp;lt;cf&amp;gt;Answers.org</title>
		<link>http://webcraft.blogalia.com//historias/46392</link>
		<description>Acaba de ver la luz &lt;a href=&quot;http://www.cfanswers.org/&quot;&gt;http://www.cfanswers.org/&lt;/a&gt;, una web basada en el concepto de &lt;a href=&quot;http://es.answers.yahoo.com/&quot;&gt;Yahoo Answers&lt;/a&gt;, pero centrada en ColdFusion.&lt;br /&gt;
&lt;br /&gt;
La web está fresquita fresquita, y a la hora de escribir esto sólo tiene 6 preguntas, pero promete ser un recurso interesante...&lt;br /&gt;
&lt;br /&gt;
(vía &lt;a href=&quot;http://ray.camdenfamily.com/index.cfm/2007/1/19/New-ColdFusion-Site-ltcfgtAnswersorg&quot;&gt;Ray Candem&lt;/a&gt;)</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/45957">
		<title>Que cachondos, estos de Google...</title>
		<link>http://webcraft.blogalia.com//historias/45957</link>
		<description>Estaba hoy cotilleando por las páginas de Google, que nunca acaba uno de ver del todo, y he descubierto un interesante conjunto de &lt;a href=&quot;http://www.google.es/webmasters/&quot;&gt;Herramientas para webmasters&lt;/a&gt;, de las que ya conocía Sitemaps, aunque la que me llamó la atención fue una para consultar el rendimiento del sitio en Google. Pero eso es otra historia, y deberá ser contada en otra ocasión.&lt;br /&gt;
&lt;br /&gt;
En realidad, lo que quería cotillear hoy es la imagen que pone Google de ejemplo para estas herramientas, y que pongo aquí abajo, por si la cambian:&lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;http://www.nemesys.es/blognesto/i/query_stats.gif&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
¿Notan algo curioso en los términos de búsqueda que se detallan en el ejemplo?   ;)</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/45584">
		<title>Las webs mal diseñadas no sólo ofenden a la vista...</title>
		<link>http://webcraft.blogalia.com//historias/45584</link>
		<description>...también pueden causar enfermedades físicas, según un estudio del Social Issues Research Centre del Reino Unido, según comentó hace unos días el &lt;a href=&quot;http://www.eetimes.com/rss/showArticle.jhtml?articleID=196603530&amp;cid=RSSfeed_eetimes_newsRSS&quot;&gt;EE Times&lt;/a&gt; y del que hoy se hace eco &lt;a href=&quot;http://www.elpais.com/articulo/internet/Disenar/mal/pagina/web/puede/matar/elpeputec/20061220elpepunet_4/Tes&quot;&gt;El País&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Cambios en la tensión muscular, alta sudoración, afecciones cardiovasculares e inmunológicas, son algunos de los signos del 'Síndrome de Rabia de Ratón' (en traducción bastante libre), según se deduce de un estudio que el SIRC ha realizado con 2.500 usuarios de Internet. El estudio concluye que los síntomas son mucho más evidantes ante páginas mal diseñadas, de carga lenta o navegación complicada. Las páginas correctamente diseñadas no causan estos problemas de salud.&lt;br /&gt;
&lt;br /&gt;
Así que si usted diseña webs, ya sabe: si no diseña correctamente, puede usted ser culpable de parte del aumento global de stress y de los gastos sanitarios en el mundo.</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/45498">
		<title>¡Time me ha nombrado persona del año!</title>
		<link>http://webcraft.blogalia.com//historias/45498</link>
		<description>Bueno, vale, no ha sido a mí solo. &lt;a href=&quot;http://www.time.com/time/magazine/article/0,9171,1569514,00.html&quot;&gt;A tí también&lt;/a&gt;.</description>
	</item>

	<item rdf:about="http://webcraft.blogalia.com//historias/45474">
		<title>Mi XP me vacila.....</title>
		<link>http://webcraft.blogalia.com//historias/45474</link>
		<description>Pues hoy me aprovecho de este blog y de su audiencia para ver si algún alma caritativa ha sufrido la experiencia paranormal que vengo sufriendo desde hace unas semanas en mi ordenador de casa, y que hoy me ha empezado a pasar también en el del curro...&lt;br /&gt;
&lt;br /&gt;
En breve: cuando a) pulso la tecla Supr para eliminar un fichero, b) en el Explorador de Windows pulso con el botón derecho del ratón sobre cualquier fichero (no carpeta, sólo ficheros), o c) abro un documento de Office (Word o Excel) (Microsfot Office, con los de Open Office no pasa), mi ordenador va y se pone a instalar el Contribute 3...&lt;br /&gt;
&lt;br /&gt;
Por lo que he visto, lo que pasa al hacer cualquiera de esas tres acciones es que se dispara el msiexec.exe, con nosequé extraña opción que coincide con el instalador del Contribute.&lt;br /&gt;
&lt;br /&gt;
Dado que hace meses que no toco el Contribute, y que no he hecho instalación ninguna en los últimos días, la cosa me mosquea bastante, aunque ni el ActiveScan de Panda ni el Spybot S&amp;D detectan nada raro (al menos, nada raro relacionado con este extraño asunto).&lt;br /&gt;
&lt;br /&gt;
Si alguien pudiera iluminarme al respecto, le quedaría muy agradecido.</description>
	</item>


</rdf:RDF>