Contenido

Manifiesto por una Red Neutral

30 nov

+ 8

Los ciudadanos y las empresas usuarias de Internet adheridas a este texto manifestamos:

  1. Que Internet es una Red Neutral por diseño, desde su creación hasta su actual implementación, en la que la información fluye de manera libre, sin discriminación alguna en función de origen, destino, protocolo o contenido.
  2. Que las empresas, emprendedores y usuarios de Internet han podido crear servicios y productos en esa Red Neutral sin necesidad de autorizaciones ni acuerdos previos, dando lugar a una barrera de entrada prácticamente inexistente que ha permitido la explosión creativa, de innovación y de servicios que define el estado de la red actual.
  3. Que todos los usuarios, emprendedores y empresas de Internet han podido definir y ofrecer sus servicios en condiciones de igualdad llevando el concepto de la libre competencia hasta extremos nunca antes conocidos.
  4. Que Internet es el vehículo de libre expresión, libre información y desarrollo social más importante con el que cuentan ciudadanos y empresas. Su naturaleza no debe ser puesta en riesgo bajo ningún concepto.
  5. Que para posibilitar esa Red Neutral las operadoras deben transportar paquetes de datos de manera neutral sin erigirse en “aduaneros” del tráfico y sin favorecer o perjudicar a unos contenidos por encima de otros.
  6. Que la gestión del tráfico en situaciones puntuales y excepcionales de saturación de las redes debe acometerse de forma transparente, de acuerdo a criterios homogéneos de interés público y no discriminatorios ni comerciales.
  7. Que dicha restricción excepcional del tráfico por parte de las operadoras no puede convertirse en una alternativa sostenida a la inversión en redes.
  8. Que dicha Red Neutral se ve amenazada por operadoras interesadas en llegar a acuerdos comerciales por los que se privilegie o degrade el contenido según su relación comercial con la operadora.
  9. Que algunos operadores del mercado quieren “redefinir” la Red Neutral para manejarla de acuerdo con sus intereses, y esa pretensión debe ser evitada; la definición de las reglas fundamentales del funcionamiento de Internet debe basarse en el interés de quienes la usan, no de quienes la proveen.
  10. Que la respuesta ante esta amenaza para la red no puede ser la inacción: no hacer nada equivale a permitir que intereses privados puedan de facto llevar a cabo prácticas que afectan a las libertades fundamentales de los ciudadanos y la capacidad de las empresas para competir en igualdad de condiciones.
  11. Que es preciso y urgente instar al Gobierno a proteger de manera clara e inequívoca la Red Neutral, con el fin de proteger el valor de Internet de cara al desarrollo de una economía más productiva, moderna, eficiente y libre de injerencias e intromisiones indebidas. Para ello es preciso que cualquier moción que se apruebe vincule de manera indisoluble la definición de Red Neutral en el contenido de la futura ley que se promueve, y no condicione su aplicación a cuestiones que poco tienen que ver con ésta.

La Red Neutral es un concepto claro y definido en el ámbito académico, donde no suscita debate: los ciudadanos y las empresas tienen derecho a que el tráfico de datos recibido o generado no sea manipulado, tergiversado, impedido, desviado, priorizado o retrasado en función del tipo de contenido, del protocolo o aplicación utilizado, del origen o destino de la comunicación ni de cualquier otra consideración ajena a la de su propia voluntad. Ese tráfico se tratará como una comunicación privada y exclusivamente bajo mandato judicial podrá ser espiado, trazado, archivado o analizado en su contenido, como correspondencia privada que es en realidad.

Europa, y España en particular, se encuentran en medio de una crisis económica tan importante que obligará al cambio radical de su modelo productivo, y a un mejor aprovechamiento de la creatividad de sus ciudadanos. La Red Neutral es crucial a la hora de preservar un ecosistema que favorezca la competencia e innovación para la creación de los innumerables productos y servicios que quedan por inventar y descubrir. La capacidad de trabajar en red, de manera colaborativa, y en mercados conectados, afectará a todos los sectores y todas las empresas de nuestro país, lo que convierte a Internet en un factor clave actual y futuro en nuestro desarrollo económico y social, determinando en gran medida el nivel de competitividad del país. De ahí nuestra profunda preocupación por la preservación de la Red Neutral. Por eso instamos con urgencia al Gobierno español a ser proactivo en el contexto europeo y a legislar de manera clara e inequívoca en ese sentido.

(Si te sientes cómodo y representado por este texto, dale toda la difusión que puedas y quieras: reprodúcelo, enlázalo, tradúcelo, compártelo, vótalo… todas esas cosas que puedes hacer con total tranquilidad y libertad gracias, precisamente, al hecho de que tenemos todavía una red neutral. Hagamos posible el seguir teniéndola)

Copio y pego de Microsiervos, haz lo mismo!.

Mejorando las búsquedas en WordPress con SearchEverything

22 nov

+ 7

Seamos francos, el motor de búsqueda no es el punto fuerte de WordPress, por defecto está limitado a búsquedas en el contenido de los artículos cuando nos puede interesar buscar en comentarios, tags o categorías, por ello plugins como Search Everything nos hacen la vida más fácil.

search_everything_wordpress
(Ver Imagen)

SearchEveryThing, es un plugin que sobrecarga el motor de búsqueda de WordPress permitiendo realizar búsqueda más avanzadas en diferentes contextos que podremos configurar:

  • Buscar en cada página.
  • Buscar es cada etiqueta (tag).
  • Buscar en cada categoría.
  • Restringir la búsqueda a sólo páginas que no estén protegidas por contraseñas.
  • Buscar en cada comentario.
  • Buscar en sólo los comentarios aprobados.
  • Buscar en cada borrador.
  • Buscar en lo resúmenes (excerpt).
  • Buscar en cada adjunto.
  • Buscar en los campos personalizados (metadata).
  • Excluir post de las búsqueda.
  • Excluir categorías de las búsquedas.
  • Resaltar el resultado de búsqueda en nuestros artículos (mediante color o CSS personalizado)

Disponible en múltiples idiomas y compatible con versiones superiores a WordPress 2.1. Descargar

TwitterWeek – 2010-11-21

21 nov

+ 1

En mi twitter he publicado estos enlaces que creo os pueden interesar.

Saludos

Validación de formularios con HTML5

18 nov

+ 14

HTML5 no solo ofrecerá una serie de elementos para hacer la web más visual, también ayudará a los desarrolladores web a realizar tareas cotidianas de forma más rápida y segura. Una de ellas es la validación de formularios.

Atributos

Gracias a una serie de atributos que podremos usar en elementos de nuestros formularios podremos condicionar desde el diseño las validaciones de cualquier formulario de nuestra página.

required

Como su nombre indica, el formulario no se enviará mientras el elemento que contenga este atributo no esté informado. Algo que hasta ahora estábamos haciendo en nuestra capa de funcionalidad con javascript, recorriendo elementos o comprobando los elementos con una class específica.

<input name="nombre" required >;

pattern

También podremos difinir el patrón que el texto deba tener dentro de nuestros elementos <input />. Este atributo realiza dos funciones, una especificar el formato del dato que recibiremos y otra la de ayudar a comprender al usuario el formato que deba usar (por ejemplo, campo para insertar un teléfono (+34) 971 123456).

<input type="telefono" pattern="(+[0-9]{2}) [0-9]{3} [0-9]{6}" >

maxlength

Podremos especificar la longitud máxima de nuestros datos directamente desde un atributo sin necesidad de controlarla desde javascript.

<textarea name="tweet" maxlength="150"></textarea>

min, max, step

Los actuales sliders pasarán a mejor vida cuando nuestros elementos se puedan definir desde nuestros elementos indicando los valores mínimos, máximos y los pasos entre ellos directamente.

<input name="slider" min="1" max="10" step="2" >

Javascript

Esto no significa que desde Javacript no vayamos a hacer nada ya con nuestros formularios, todo lo contrario, se añaden métodos nuevos a los elementos que nos permitirán trabajar con estas validaciones de una forma más cómoda.

Aún es una propuesta, pero apunta a ser una herramienta muy útil.

element.validity

Objeto que nos muestra información referente a la validación del elemento.

  • boolean valueMissing; — Devuelve true si el elemento está vacío y requerido.
  • boolean typeMismatch; — Devuelve true si el elemento no contiene la sintaxis correcta.
  • boolean patternMismatch; — Devuelve true si el elemento no cumple el patrón definido.
  • boolean tooLong; — Devuelve true si el elemento es más grande que el tamaño definido.
  • boolean rangeUnderflow; — Devuelve true si el elemento es menor al mínimo definido.
  • boolean rangeOverflow; — Devuelve true si el elemento es mayor al máximo definido.
  • boolean stepMismatch; — Devuelve true si el elemento no concuerda con uno de los pasos definidos.
  • boolean customError; — Devuelve true si el elemento tiene un error personalizado.
  • boolean valid; — Devuelve true si el elemento es válido.

element.setCustomValidity()

Método definido para especificar un mensaje de error personalizado a un elemento:

<label>Feeling: <input name=f type="text" oninput="check(this)"></label>
<script>
 function check(input) {
   if (input.value == "good" ||
       input.value == "fine" ||
       input.value == "tired") {
     input.setCustomValidity('"' + input.value + '" is not a feeling.');
   } else {
     // input is fine -- reset the error message
     input.setCustomValidity('');
   }
 }
</script>

CSS

La capa de diseño además nos permitirá informar al usuario que un elemento no ha sido validado a la hora de enviar nuestro formulario, para ello nos acercan el pseudoselector :invalid para que podamos definir el aspecto de nuestros elementos no válidos.

:invalid{
border: 1px red solid;
}

Hay muchas más y más interesantes nuevas funcionalidades que nos harán la vida más fácil, las iremos viendo más adelante.

TwitterWeek – 2010-11-14

14 nov

+ 0

En mi twitter he publicado estos enlaces que creo os pueden interesar.

Saludos

Popcorn, dándole semántica a los videos con HTML5

8 nov

+ 3

Mozilla quiere romper la idea actual del video en Internet. El actual modelo, basado en un elemento pasivo que muestra información al usuario mediante el navegador simula perfectamente la televisión actual, pero gracias a Drumbeat ha surgido Popcorn.

Popcorn

Popcorn, es una iniciativa que añade una funcionalidad extra a los elementos <video /> y <audio /> del HTML5 permitiendo que muestren al usuario información extra sobre el video, subtítulos, geolocalización, información sobre personas que aparezcan,…

La idea es añadir una semántica extra a lo que hasta ahora solo era un canal de visualización.

XML

Mediante un fichero XML externo que definiríamos en nuestro elemento multimedia especificaremos toda la información que consideremos relevante de nuestro video.

<video width="530px" height="299px" controls="" data-timeline-sources="xml/webMadeMovies.xml">
 <source type="video/ogg; codecs="theora, vorbis" src="wmmjuly6.ogv"></source>
 <source type="video/mp4; codecs="avc1.42E01E, mp4a.40.2" src="wmmjuly6.mp4"></source>
</video>

Aquí vemos un ejemplo (recortado) del fichero XML que podríamos encontrar.

<popcorn>
 <manifest>
 <people>
 <person id="celine" name="Celine" salutation="Miss." >
 <resource id="celinehomepage" src="http://www.celinecelines.com/" description="Celine's Homepage" />
 </person>
 <person id="brian" name="brian" >
 </person>
 <person id="SteveSong" name="Steve Song" >
 </person>
 [...]
 </people>
 <places>
 <place id="saopaulo" type="city" name="Sao Paulo">
 <resource id="saopaulowiki" src="http://en.wikipedia.org/wiki/S%C3%A3o_Paulo" description="Sao Paulo city, Brazil"/>
 </place>
 <place id="CapeTown" type="city" name="Cape Town">
 <resource id="capetownwiki" src="http://en.wikipedia.org/wiki/Cape_Town" description="Cape Town, South Africa"/>
 </place>
 [...]
 </places>
 <attributions>
 <attribution id="yacht1attrib" nameofwork="Don't Fight The Darkness" copyrightholder="Yacht" copyrightholderurl="http://www.teamyacht.com/" nameofworkurl="http://freemusicarchive.org/curator/WFMU/blog/Join_YACHT_See_Mystery_Lights_instrumentals" license="CC-BY-NC" licenseurl="http://creativecommons.org/licenses/by-nc/2.0/"/>
 <attribution id="yacht2attrib" nameofwork="Psychic City Voodoo City" copyrightholder="Yacht" copyrightholderurl="http://www.teamyacht.com/" nameofworkurl="http://freemusicarchive.org/curator/WFMU/blog/Join_YACHT_See_Mystery_Lights_instrumentals" license="CC-BY-NC" licenseurl="http://creativecommons.org/licenses/by-nc/2.0/"/>
 <attribution id="attrib" nameofwork="A Shared Culture" copyrightholder="Jesse Dylan" license="CC-BY-NC" licenseurl="http://creativecommons.org/licenses/by-nc/2.0/"/>
 [...]
 </attributions>
 <articles>
 <resource id="theinternet" src="http://en.wikipedia.org/wiki/internet" description="The Internet"/>
 <resource id="villagetelco" src="http://en.wikipedia.org/wiki/Village_telco" description="The Village Telco"/>
 <resource id="oilspill" src="http://en.wikipedia.org/wiki/Deepwater_Horizon_oil_spill" description="Deepwater Horizon Oil Spill"/>
 [...]
 </articles>
 </manifest>

 <timeline>
 <footnotes>
 <footnote in="00:00:00" out="00:14:00" target="footnotediv">Look around the page as info is updated!</footnote>
 </footnotes>
 <resources>
 <attribution in="00:00:05:02" out="00:00:34:00" target="container5" resourceid="yacht1attrib"></attribution>
 <attribution in="00:00:34:01" target="container5" resourceid="yacht1attrib"></attribution>
 <footnote in="00:00:00" out="00:15:00" target="footnotediv">Look around the page!</footnote>
 <videotag in="00:00:05:02" out="00:00:10:07">Steve Song</videotag>
 <attribution in="00:00:05:02" out="00:00:10:07" target="container5" resourceid="villagetelcoattrib"></attribution>
 <twitter in="00:00:05:02" out="00:00:10:07" title="Steve Song" source="from:stevesong" target="personaltwitter" width="238" height="120" overlay="images/overlay/twitter.png" />
 <wiki in="00:00:05:02" out="00:00:10:07" resourceid="villagetelco" numberOfWords="200" target="wikidiv" overlay="images/overlay/wiki.png"/>
 <flickr in="00:00:05:02" out="00:00:10:07" target="personalflickr" userid="78868639@N00" numberofimages="8" padding="4px" overlay="images/overlay/flickr.png"/>
 <googlenews in="00:00:05:02" out="00:00:10:07" target="googlenewsdiv" topic="Village Telco"/>
 [...]
 </resources>

 <map>
 <location resourceid="capetownwiki" in="00:00:03:00" out="00:00:11:07" lat="-33.9238" long="18.4233" target="container2" zoom="8"/>
 <location resourceid="grandislewiki" in="00:00:11:07" out="00:00:19:07" lat="29.2720" long="-90.0233 " target="container2" zoom="8"/>
 <location resourceid="mitmedialabhome" in="00:00:19:08" out="00:00:27:00" lat="42.3613" long="-71.0863" target="container2" zoom="12"/>
 [...]
 </map>
 <subtitles>

 <subtitles language="en" align="center">
 <subtitle in="00:00:00:03" out="00:00:01:06">All right let's take a look and show me some</subtitle>
 <subtitle in="00:00:01:06" out="00:00:03:00">of the neat things you can do on the internet</subtitle>
 [...]
 </subtitles>

 <subtitles language="fa" align="center">

 <subtitle in="00:04:00:08" out="00:04:01:09">My name is Mona Kasra</subtitle>

 <subtitle in="00:04:01:10" out="00:04:03:11">and I'm building a better Internet</subtitle>
 [...]
 </subtitles>

 </subtitles>
 <credits></credits>
 </timeline>
</popcorn>

Uno de los ejemplos de uso de este tipo de información es la de enviar en tiempo real los subtítulos en Inglés a una herramienta de traducción para mostrarlos en un idioma diferente al definido en el XML.

Sin duda se trata de un interesante proyecto que Mozilla está apoyando con el que los videos/audios de Internet dejarán de ser lo que son hoy en día.

Shortcode para crear contenido que expira

3 nov

+ 11

Expiring Content Shortcode es un plugin que nos permite disponer de un shortcode para hacer que parte del contenido de nuestros artículos desaparezca al llegar a una fecha indicada previamente. Esto es ideal para campañas o concursos que realizamos en nuestros blogs.

Screen-shot-2010-11-02-at-2.04.26-PM
(Ver Imagen)

Modo de uso

Al igual que todos los shortcodes, simplemente tendremos que llamarlo desde el contenido de nuestros artículos, para ello usaremos la siguiente construcción:

[expires on="FECHA"]Contenido a expirar[/expires]

¿Sencillo verdad? Pues además, como ya vimos como usar shortcodes en nuestro theme, nos permite realizar cosas interesantes no solo a nivel de contenido. Las limitaciones las pones tu :D

Via

IE9 el más estándar con HTML5

2 nov

+ 13

Lo he visto en Alt1040 y no me lo creía, así que he indagado un poco y no he podido encontrar pruebas de que esta noticia sea falsa, es más, al parecer la W3C se ha encargado de avalar la preview 6 de Internet Explorer 9 como la más estándar con respecto a HTML5 de todos los navegadores actuales.

HTML5browsers
(Ver Imagen)

Ya lo dije en su momento, esta nueva versión me está dando muy buenas vibraciones, eso no significa que deje de mirar de estar espectante para ver por donde va la cosa.

MIME Type Javascript soportados

2 nov

+ 1

¿Alguna vez te has preguntado que tipos de Javascript podemos definir al cargar nuestros scripts? Y quizás, lo más importante. ¿En que navegadores funcionarán?

<script type="text/javascript" src=""></script>

Krijn Hoetmer lo hizo y nos dejó estos resultados:

javascript-mime-types
(Ver Imagen)

Un dato que aunque no es realmente importante, nunca deja de ser curioso :D

Listado de propiedades CSS compatibles con todos los navegadores

2 nov

+ 5

Las propiedades CSS son los frágiles pilares sobre los que se sustentan todos los diseños web. Estos pilares son delgados y generalmente andamos poniendo parches para que el diseño soporte la llegada del inquilino de turno, ya sea el Sr. Firefox o la Srta. Google Chrome, o incluso el veterano Internet Explorer.

Debido a la exigencia de cada uno de los inquilinos, nos vemos obligados a aprender todos los trucos disponibles para hacer que su estancia en nuestra construcción sea lo más cómoda y agradable posible.

A estas alturas, sabemos que estas 10 propiedades CSS son completamente compatibles con todos ellos:

  1. color
  2. direction
  3. font-family
  4. font-size
  5. font-style
  6. font-weight
  7. list-style-position
  8. table-layout
  9. text-indent
  10. word-wrap

Por contra, todas estas hacen sacar lo mejor de nosotros para conseguir que soporten el peso de cada visita:

  1. background
  2. background-attachment
  3. background-color
  4. background-image
  5. background-repeat
  6. background-position
  7. border
  8. border-collapse
  9. border-color
  10. border-style
  11. border-width
  12. clear
  13. cursor
  14. display
  15. float
  16. font
  17. font-variant
  18. height
  19. left
  20. right
  21. bottom
  22. top
  23. letter-spacing
  24. line-height
  25. list-style
  26. list-style-image
  27. list-style-type
  28. margin
  29. overflow
  30. padding
  31. page-break-after
  32. page-break-before
  33. position
  34. text-align
  35. text-decoration
  36. text-transform
  37. vertical-align
  38. visibility
  39. white-space
  40. width
  41. word-spacing
  42. z-index

Esperemos que poco a poco vayamos viendo menguar esta lista para hacernos la vida más fácil.