Administra tu Blog

¡Crea tu Blog Ya! Fácil y Gratis

Reseña web: Aseguring

aseguring.jpgUn buena idea, un diseño impecable y un funcionamiento perfecto pueden convertir una web de un día para otro en un bombazo internetero de calibre desmesurado. Y es eso precisamente lo que ocurrirá con Aseguring, un sitio web de esos que dices "¿por qué demonios no se me habrá ocurrido a mí?". Pues lo siento, ya se te han adelantado.

Aseguring es un comparador de seguros en principio preparado para turismos y motocicletas, pero que en breve ampliará su cobertura a seguros del hogar. Trabaja con un montón de aseguradoras y, como comparador que es, se dedica precisamente a eso, a comparar. En no más de 3 minutos se puede obtener una comparativa de precios de las compañías más representativas del sector.

Esta herramienta ahorra un tiempo (y dinero) increíble a todo aquel que, antes de contratar un seguro, desea obtener un presupuesto detallado de todas y cada una de las compañías, permitiendo compararlos entre sí. ¿Y cuánto me van a cobrar por el servicio? ¡Uf!, una pasta: nada. Sí, sí, nada. Es un servicio totalmente gratuito y completamente imparcial e independiente, porque no depende de ninguna aseguradora.

Además Aseguring incluye una evaluación de las principales coberturas de todas las pólizas y las clasifica mediante un completo sistema de valoración que muestra la calidad de las prestaciones, de forma que se dispone de una información más que valiosa a la hora de contratar un seguro. Otra ventaja añadida es la opción de seleccionar los productos que resultan más interesantes y comparar sus coberturas en una misma pantalla.

aseguring_2.jpg

Sin olvidarnos del simpático consejero, un personaje que aconseja qué producto contratar dependiendo del perfil del contratante y del vehículo que se desea asegurar.

El manejo es ultrasencillo. Basta con seguir los distintos pasos, de una manera muy intuitiva y por medio casi exclusivo de clics de ratón, introduciendo los datos del coche o moto, los datos del conductor y los de tu seguro actual (ninguno de estos datos es personal o sensible, sólo los necesarios para completar la contratación de un seguro). Automáticamente la herramienta te muestra las distintas modalidades de seguro que puedes contratar, ofreciéndote una de ellas como opción recomendada por Aseguring.

El paso siguiente es la conexión con las aseguradoras para recabar datos y calcular precios. El proceso ha terminado y ya sólo queda ver las tarifas, las valoraciones y, si se desea, las coberturas particulares de cada compañía para el seguro elegido o una comparativa de coberturas entre dos o más compañías. Aquí también se nos ofrece la posibilidad de contratar el seguro, vía web o por teléfono, contactando con la aseguradora en cuestión. Lo mejor de todo es que te proporcionan un número de referencia para que, si deseas contratar el seguro, no tengas que proporcionar de nuevo todos los datos introducidos. Simplemente genial.

aseguring_3.jpg

La recomendación de teknoPLOF! es que inviertas unos minutos en probar el comparador para analizar las ofertas del mercado y compararlas con tu seguro actual, tanto a nivel de precios como a nivel de coberturas. Basándote en eso podrás determinar tu potencial de ahorro anual (ahorrando 150 euros al año durante la vida media de un vehículo de 8 años supondría un ahorro total de ¡1.200 euros!) y ponerte en contacto fácilmente con la aseguradora que más te interese.

En fin, herramientas como Aseguring son las que dan poder e información útil al consumidor. Olvídate de las interminables horas al teléfono solicitando presupuestos, o del tiempo de navegación que pierdes de web en web de cada compañía rellenando formularios. ¡Lo puedes hacer en tres minutos desde www.aseguring.com!

Además mola rellenar todo como si fueras un kamikaze de la carretera (tengo un Audi, dieciocho años, cientos de partes a mi compañía, uso el coche a diario y hago miles de kilómetros, además lo van a conducir otros seis amigos míos, etcétera) y ver como te sale un cartelito que te dice que ninguna compañía tiene los suficientes arrestos para asegurar a un capullo como tú.

WiMAX: la que se nos iba a venir encima. Pues no, oiga.

wimax.jpgWiMAX son las siglas en inglés de Interoperabilidad Mundial para Acceso por Microondas (Worldwide Interoperability for Microwave Access). Es una tecnología de conexión parecida al WiFi que todos ya conocemos pero a lo bestia. WiMAX ofrece mayor ancho de banda y mayor alcance, lo que permite crear redes inalámbricas metropolitanas y, lo más importante, con una inversión ridícula con respecto a lo que representa como avance tecnológico. Además, está respaldada por las empresas más importantes del sector, que siempre ayuda.

WiMAX es el protocolo estandarizado como IEEE 802.16 para la conectividad que permite la recepción por microondas y retrasmisión por ondas de radio. El único organismo habilitado para certificar el cumplimiento del estándar y la interoperabilidad entre equipamiento de distintos fabricantes es el Wimax Forum; todo equipamiento que no cuente con esta certificación no puede garantizar su interoperabilidad con otros productos. La tecnología WiMAX podría ser la base de las redes metropolitanas de acceso a Internet, sirviendo de apoyo para facilitar las conexiones en zonas rurales y utilizándose en el mundo empresarial para implementar las comunicaciones internas. Asimismo, su popularización puede suponer el despegue definitivo de otras tecnologías, como VoIP (llamadas de voz sobre el protocolo IP), debido a su amplio ancho de banda.

Según las especificaciones es capaz de conseguir una velocidad de 70 Mb por segundo (hasta 300 Mbps full-duplex) y de cubrir un área de unos 50 Km a la redonda con una sola antena. Teniendo en cuenta que WiFi llega a 300 metros con un poco de suerte y el viento a favor, y que su ancho de banda oscila entre 11 Mbps y 54 Mbps, dependiendo de la modificación (a/b/g) del estándar, pues queda meridianamente claro que WiMAX se convertirá en el futuro de las comunicaciones inalámbricas. Si es que no se lo carga antes alguna mano negra, claro.

Un sistema WiMAX con seis puntos de acceso podría dar cobertura de 360º para 1.200 abonados, con un coste de unos 6.000 €. La diferencia de costes es evidente, ya que otros sistemas llegan a suponer la friolera de 96.000 € para una red de 500 abonados.

La infraestructura de WiMAX consta de varias partes claramente diferenciadas. Por un lado tenemos las antenas-torre o estaciones base, con capacidad para ofrecer cobertura hasta 8.000 Km2 a frecuencias del orden de 66 GHz. Al abarcar tanta distancia, se hace necesario, a veces, que existan antenas intermedias que operen en bajas frecuencias (entre 2 y 11 GHz) con el fin de evitar las interferencias ocasionadas por la presencia de elementos. Estas antenas tienen un área de cobertura de 65 Km2, lo que viene a ser, más o menos, el radio de acción de las antenas de telefonía móvil. Por último tendríamos el elemento de red de nuestros equipos, es decir, la tarjeta WiMAX que recibe la señal.

Los usuarios finales recibimos la señal de las antenas de baja frecuencia, con un ancho de banda considerable y una cobertura impresionante. Además, y como ocurre con los teléfonos celulares, podríamos desplazarnos en un estado conectado permanente sin perder la conexión, incluso aunque saliéramos de la zona de cobertura o hotspot, ya que automáticamente entraríamos en otra área cubierta y la transición de una a otra se realizaría de manera transparente al usuario debido al solapamiento entre zonas.

Actualmente se recogen dos variantes dentro del estándar 802.16, el modelo fijo y el de movilidad completa. El acceso fijo (802.16d) establece un enlace de radio entre la estación base y un equipo situado en el domicilio del usuario. Para este entorno fijo las velocidades teóricas máximas que se pueden obtener son de 70 Mbps con un ancho de banda de 20 MHz. Sin embargo, en entornos reales se han conseguido velocidades de 20 Mbps con radios de célula de hasta 6 Km, ancho de banda que es compartido por todos los usuarios de la célula.

El modelo de  movilidad completa (802.16e) permite el desplazamiento del usuario de un modo similar al que se puede dar en redes de móvil GSM/UMTS.

Como ya se ha mencionado, las expectativas de WiMAX se extienden también a sitios rurales con poco acceso, es decir, a todas aquellas personas a las que el ADSL y el cable les queda fuera de alcance y buscan soluciones para poder trabajar desde sus hogares o centros de trabajo. Pero también es muy importante en las ciudades y localidades más céntricas. Actualmente disponemos de una conexión por cable (par telefónico, fibra óptica, etcétera) que llega a nuestras casas hasta un router o un módem, y es este aparato el que se encarga de distribuir la señal inalámbrica (WiFi) por el resto de nuestro hogar para llegar a un portátil, un pocket PC o una videoconsola. Con WiMAX la señal inalámbrica llega directamente a nuestra casa (lo que se conoce como "la última milla") por el aire, y son los distintos aparatos y gadgets los que, por medio de una tarjeta de red adecuada, se conectan directamente. Los proveedores de acceso a Internet dispondrían, pues, de esta posibilidad para ofrecer el servicio sin necesidad de utilizar instalaciones de cables. Nos mandan Internet por las nubes, como si de una red WiFi gigantesca se tratase.

Con semejante ancho de banda, velocidad y cobertura, los diseñadores de aplicaciones y tecnologías que necesitan "mucha chicha" para funcionar se frotan la manos. El VoIP, la tele por Internet, el cine online, retrasmisiones en riguroso directo, todo ello es posible gracias a WiMAX. Las compañías de telefonía móvil tiemblan, y es que el despliegue de WiMAX podría utilizarse también como alternativa a las redes telefónicas, ya que un móvil o un ordenador conectado a WiMAX podría hacer llamadas de telefonía IP sin coste añadido y con disponibilidad de una completa movilidad. Además esta tecnología soporta las denominadas antenas inteligentes, que emiten un haz estrecho que puede ir moviéndose para enfocar siempre al receptor, evitando así interferencias. Factores asaz importantes para competir de plano con la telefonía 3G.

Como digo, las operadoras tradicionales de Internet y de telefonía móvil ven a WiMAX como un claro competidor amenazando con total impunidad a sus ADLS, sus GSM, sus GPRS y sus UTMS. WiMAX podría hacerse con el mercado de la última milla (WiMAX atraviesa el hormigón, UMTS se desvanece con la niebla) dejando con un palmo de narices a todas esas empresas que tanto se afanaron (y afanan) en tirar cable y cable hasta la saciedad. Y ahí es donde veo yo el peligro, ahí es donde podría aparecer una mano negra que consiga que esto no llegue a buen puerto y dé con sus especificaciones en el fondo del mar. Matarile, rile, rile.

En España ya suministran WiMAX operadores como Iberbanda, Broadnet o Neosky. En Euskadi existen implementaciones, experimentales y comerciales, en el 90% del territorio, y Euskaltel dispone de varios cientos de abonados WiMAX en zonas rurales (el Gobierno Vasco ofrece subvenciones de hasta el 100% de la instalación). En Andalucía, Madrid, Murcia, Comunidad Valenciana, Galicia y otros lugares ya disponen de WiMAX en mayor o menor medida.

Pero, ¿por qué no despega esto de una vez por todas? Nokia y Samsung anunciaron hace años la aparición inminente de teléfonos móviles preparados para WiMAX (no quieren perder tajada) y, efectivamente, estos terminales existen, pero como la red no es un algo muy extendido, no sé dónde los estarán vendiendo. Al menos en España no pita o no lo dejan que pite. En Corea, por ejemplo, llevan desde el año 2006 utilizándolo masivamente son dispositivos de Samsung, Intel y otros fabricantes.

Según previsiones antiguas se esperaba que WiMAX creciera un 70% en cinco años. ¿Lo veremos realmente? Llevo escuchando hablar de WiMAX desde mediados del año 2005, más o menos, y no veo que los responsables se interesen mucho por su implantación, a excepción de en entornos rurales alejados. ¿Por qué se oferta cada vez más ADSL y cable módem si, en teoría, son tecnologías sentenciadas a la desaparición? Somos los últimos en Europa, y de los del vagón de cola en el mundo, en la implantación de WiMAX y esto no me huele nada bien. No, no. Todo esto me suena mucho, pero mucho, a la trayectoria del formato de vídeo Betamax que Sony presentó en los años setenta, o la del LaserDisc, o la del MiniDisc, o a la...

Neutralidad de Internet para torpes

neutralidad.jpgÚltimamente estamos oyendo parlotear mucho acerca de la tan manida neutralidad de Internet. Hizo alusión a ello el presidente de EEUU, Barack Obama, en su campaña electoral, y el pasado mes de junio, Julius Genachowski, presidente de la FFC (Comisión Federal de las Comunicaciones) estadounidense, volvió a sacar el tema a la palestra con sus declaraciones. El amigo Julius prometió presentar unas bases para regular esto de la neutralidad en la Red de Redes.

Pero, ¿qué demonios es eso de la neutralidad de Internet? ¿No es Internet neutral? Pos no, mirusté. Matizo, Internet sí es neutral, los que no lo son, son aquellos que proporcionan el servicio, es decir, los ISP o Proveedores de Servicios Internet.

El problema de la neutralidad de la Red es muy sencillo: algunos ISP bloquean o retardan conexiones de sus usuarios por causas como un elevado ancho de banda o conexiones con servicios de la competencia. Lo explicó ahora pa' la señá María, que no se ha enterado todavía. Usted, señora, tiene el Intenné este de Telefónica en casa, ¿verdad? Bueno, pues imagínese que la empresa le bloqueara la conexión cuando usted se conecte a la web de Vodafone. ¿Por qué? Por joder; es la competencia.

Esta práctica está empezando a ser demasiado común entre los proveedores de acceso, si bien en España parece que no ocurre con demasiada frecuencia. Si detectan que un usuario consume un elevado ancho de banda por estar conectado, por ejemplo, a una red peer to peer descargando una película de Gracita Morales, pues le cortan el servicio o se lo ralentizan. (Y no precisamente porque la película sea de Gracita Morales).

Hace un año, el operador argentino Fibertel y la multinacional Google llegaron a un acuerdo por el cual los usuarios de este ISP podrían acceder más rápido a GoogleEarth, GMail y Youtube, implementando un enlace privado entre Fibertel y Google e instalando servidores locales de Google en el datacenter de la empresa argentina. Oséase, lo que viene siendo de todo punto una patada en los mismísimos huevos al principio de neutralidad de la Red que, por cierto, el gigante buscador de Internet defiende con vehemencia a través de la figura de Vinton Cerf. Cuando un proveedor de contenidos goza de una red "particular" y diferente a la de sus competidores se destroza literalmente el campo de igualdad que permitió que todas las startups que hoy conocemos nacieran y crecieran en su día.

Cierto es también que, días después, Google emitió un comunicado en el que desmentía estas afirmaciones y culpaba a una nota de prensa mal redactada en la que ellos no tomaron parte y con la que no estaban de acuerdo, y que si la abuela fuma, que si deja de fumar, que patatín o patatán. Bueno, le concedemos el beneficio de la duda por ser vos quien sois.

Hace año y pico, también, la FCC sentenció al proveedor de Internet Comcast por violar una norma federal al bloquear las transferencias de algunos usuarios procedentes de redes BitTorrent. El fallo obligó a los proveedores de servicios a modificar la forma en la que gestionaban su red, así como a garantizar a sus usuarios un acceso abierto a Internet.

En la web www.neutralidadsi.org han realizado diversas pruebas con resultados positivos que acusan a VTR, uno de los principales actores de la banda ancha en Chile, de colocar restricciones de cuello de botella a las conexiones realizadas a través del puerto 6881, puerto por defecto para la red BitTorrent.

El Gobierno estadounidense de Obama quiere formar parte activa de esta controversia. La neutralidad de Internet es el principio que dice que todo el tráfico que circule por la Red debe ser tratado igual, independientemente de qué tipo sea y de su origen y destino. Por ello plantearon en el pasado mes de octubre algunas normas para prohibir a los proveedores de acceso discriminar los servicios, contenidos y aplicaciones que consuman más ancho de banda, como por ejemplo el vídeo, e impedirles bloquearlo o lentificarlo. La FCC defendió las normas como indispensables para crear un Internet abierto y democrático. Las medidas propuestas prohíben a los proveedores de ancho de banda "impedir que los usuarios envíen o reciban material legal de su elección" y "dificultar a los usuarios el poder de elegir entre la competencia de proveedores de redes, aplicaciones, servicios y contenido" y, sobre todo, se les obliga a "tratar contenidos, aplicaciones y servicios legales de forma no discriminatoria".

Existen también voces en contra de la neutralidad, como no, pero pueden todas ellas resumirse en las palabras que en Libertad Digital escribió el ingeniero Fernando Herrera. Dijo textualmente que "hay bits más importantes que otros bits, por la clase de información que llevan o por la urgencia de la misma, o porque si no llegan de una determinada forma son inútiles. Los operadores siempre han tenido mecanismos para gestionar la Red, lo que en definitiva significa priorizar unas comunicaciones frente a otras, para que funcionen de forma adecuada los servicios que se prestan". Además decoró su disertación con este bonito paralelismo: "la igualdad de bits sería como la igualdad de vehículos en nuestras carreteras. Impediría a las ambulancias y bomberos cumplir su función en muchos casos. Las sirenas son el mecanismo de priorización en las vías de tráfico, y a nadie se le ocurriría eliminarlas, mucho menos en aras de un supuesto derecho de los ciudadanos".

Vamos, el colmo de la demagogia. Está claro, señá María, que el correo diario que le manda usted a su hija la que estudia en Niuyor es menos importante que los correos que mandan otras personas más importantes que su persona. Y es que, le guste o no, usted no deja de ser una mujer de pueblo tonta y boba a la que hay que educar. ¡Déjese manejar, señora, y evite pensar por usted misma! Y, por supuesto, no se le ocurra descargar canciones de Manolo Escobar con el burrito ese tan bonito de al lado del reloj, que se le bloqueará hasta la factura del gas; ¿no comprende usted que son más importantes las conexiones a páginas guarras de nuestros políticos en el hemiciclo?

Uno de los padres de Internet, Vinton Cerf, actualmente Vicepresidente Mundial y Chief Internet Evangelist de Google, cree que la neutralidad de la Red es fundamental para preservar nuestras libertades, que "Internet fue diseñada sin ningún guardián sobre nuevos contenidos o servicios."

Además, Enrique Dans publicó no hace mucho en su blog el "quién es quién" de la neutralidad en la Red y dejó caer, como quién no quiere la cosa, quiénes son los hinchas y a qué equipo animan. Por poner algún ejemplo, los amigos de la neutralidad son empresas como Google, eBay, Mozilla, Amazon, Twitter, Sony o Vuze; los enemigos, compañías como Cisco, Alcatel-Lucent, Cornig, Ericsson, Motorola y Nokia, entre otros.

A veces uno no sabe si te están diciendo la verdad o todo es una puñetera estrategia de empresa. El miedo que tengo es que si los políticos se ponen cabezones al final siempre hacen lo que les da la gana, y encima nos hacen creer que es por nuestra culpa y por nuestro bien. Corderitos cibernéticos manejados por la soga del ancho de banda. ¡Beeee!

Captcha: Escribe el código de la imagen, si puedes...

captcha.jpg¿Quién no se ha tropezado, a la hora de registrarse en un sitio web, con el estúpido cuadro de texto en el que debemos escribir el código de letras y números que aparece en una imagen anexa? ¿Quién no se ha ciscado tres veces en la madre que engendró al que inventó esta chorrada porque es incapaz de vislumbrar siquiera alguno de los caracteres de la mencionada imagen?

Este sistema para autenticar que usuarios humanos y no programas o robots o spambots están tecleando delante del ordenador sus datos a la hora de realizar un registro es, sin quedarme corto, la mayor de las gilipolleces que los lumbreras de este mundo digital han asacado tras exprimir al máximo sus binarios cerebros.

El captcha es un acrónimo de Completely Automated Public Turing test to tell Computers and Humans Apart, uséase Prueba de Turing pública y automática para diferenciar computadoras y humanos. Es un sistema inventado para determinar que el que está rellenando determinado formulario es una persona física humana terrestre del mundo mundial y no un programita informático que se dedica a, por ejemplo, darse de alta automáticamente en foros de noticias y llenarlos de spam y mensajes para comprar Viagra hasta que revienten.

La idea es buena, el resultado un asco. Proviene, como su nombre indica, del archiconocido Test de Turing, pero con una pequeña gigantesca diferencia, que es que en la prueba de Turing el que debe determinar si le contesta una máquina o un ser humano es otro ser humano, y no un programa informático.

El Test de Turing pretende demostrar la supuesta inteligencia de una máquina. Se supone un juez situado en una habitación y una máquina y un ser humano en otra. El juez debe descubrir cuál es el ser humano y cuál es la máquina, estándoles a los dos permitido mentir al contestar por escrito las preguntas que el juez les hace. La tesis de Turing es que si ambos jugadores son suficientemente hábiles, el juez no podrá distinguir quién es el ser humano y quién la máquina. Hasta hoy, gracias al Cielo, ninguna máquina ha conseguido superar esta prueba.

Supongamos por un momento que queremos registrar nuestra página güeb en un buscador o motor de búsqueda internetero. Sabemos que existe software especializado para realizar esta función en millones de buscadores a lo largo y ancho de la Red de redes de un solo plumazo. Tocotó. Clic, clic y clic y ya tengo mi paginita en todos los buscadores del mundo. Pos no.

Parece ser que estos programitas les repatean las gónadas sexuales a los dueños de los buscadores, porque ellos lo que quieren es que tú entres en su web, te recorras seiscientas páginas hasta encontrar la del alta de sitios nuevos y teclees los datos con esmero y pulcritud en sus bonitos formularios hachetemele. Es por ello que anulan de un brochazo la posibilidad de utilizar software especializado cascándote un cuadro de texto con una imagen a su lado en la que se reflejan una serie de caracteres que, de manera aleatoria, cambian cada vez que accedes a esa página. Evidentemente los programas que ejecutan registros no pueden leer estos caracteres porque forman parte de una imagen prediseñada.

Esta técnica comenzó de este modo y ahora se ha extendido a cualquier página de todo pichichi que cuelga un formulario en el Intenné. Que quieres formar parte de mi peña de futbolín, pues te registras pero me rellenas la casillita de marras con los caracteres de la imagen; que lo que quieres es darte de alta en mi página de coleccionistas de bigotes de foca, pues ídem majete, a ver si van a inventar un programa que registra automáticamente usuarios en páginas de coleccionistas de bigotes de foca y se me va a terminar el chollo de que navegues a gusto por mi web recién horneada.

Si partimos de la premisa de que el sistema es válido para la función que realiza, aunque vulnerable sin no mucha inteligencia programática, yo me pregunto por qué demonios las letras y números de las imágenes de las pelotas no están más claros y mejor escritos. Qué más dará, digo yo, que una "I" parezca un "I", como tiene que ser, o que parezca un "i" o una "L" o una "l" o un "1".

Pues nada, exactamente, da igual hacerlo bien que mal. Entonces, ¿por qué cojones no ponemos las cosas más fáciles al usuario y empezamos a hacerlo bien? Supongo que pensarán que se pueden aplicar complicadísimas técnicas OCR para que un software descifre las letras y tal. Hombre, por favor. Hay imágenes prácticamente indescifrables a golpe de ojo humano (como la del afoto adjunto) y algunas que dan tanto por el culo que entran ganas de mandar al mismo lugar corporal al que inventó la gilipollez ésta, al güebmaster, al dueño de la página y la madre que los parió a todos.

El problema es que los diseñadores web se creen que esto es seguro, pero nada más lejos de la realidad. Actualmente hacer un captcha seguro requiere métodos complicados de implementar que únicamente poseen las grandes empresas. Cualquier algoritmo que se le aplique a una imagen puede ser desalgoritmado en cero coma. Que si tachan las letras, que si las deforman, que si utilizan la misma gama de colores para el frente y el fondo... Na de na. La ingeniería inversa deshace todo aquello antes hecho, y más teniendo en cuenta que los algoritmos de los captcha son públicos,... ¿qué más quieres?

Aunque los captcha fueron originalmente diseñados para impedir que un software OCR reconozca los caracteres de las imágenes generadas, existen proyectos de investigación que han probado que es posible saltarse muchos de estos engendros con programas que han sido específicamente diseñados para un tipo determinado de captcha. Para los que tienen letras distorsionadas, por poner un ejemplo, la aproximación típica es seguir los siguientes pasos:

1.- Eliminación del ruido de fondo, por ejemplo con filtros de color y detección de líneas finas.

2.- Segmentación, por ejemplo partiendo la imagen en segmentos que contienen una sola letra.

3.- Identificar la letra de cada segmento, y así utilizar la información extraída de la imagen.

El paso 1 es típicamente muy fácil de automatizar. Además, en 2005, se mostró que un algoritmo de una red neuronal tiene un menor margen de error que los humanos resolviendo el paso 3.

La única parte dónde los humanos superan a las máquinas es en el paso 2. Si el ruido de fondo consiste en formas similares a letras, y las letras están unidas a este ruido, la segmentación se hace casi imposible con el software actual. Por lo tanto, un captcha efectivo debería enfocarse en el paso 2, la segmentación.

Otros captcha son vulnerables por múltiples factores, ya que algunos sisitemas pueden sortearse simplemente reutilizando el ID se sesión de una imagen conocida y cascándolo en la URL a la hora de acceder a la page en cuestión; otros se alojan en servidores compartidos; otras veces, si parte del software de generación del captcha se realiza en el lado del cliente (la validación se hace en el servidor, pero el texto que el usuario tiene que identificar es renderizado en el lado del cliente), los usuarios pueden modificar el cliente para que muestre el texto sin renderizar. En fin.

Además de todo ello, siempre queda el recurso de la mano de obra barata, usando humanos explotados para decodificar los captcha. Un documento de la organización W3C afirma que un operador "puede fácilmente verificar cientos de ellos cada hora".

En fin, que hoy en día estoy viendo por ahí métodos de autenticación mucho más fiables e ingeniosos (como las operaciones matemáticas o las definiciones de términos y palabras) que los captcha estos de los cojones. Así que déjennos en paz con cartelitos ilegibles y paren de poner trabas a la hora de navegar. Esto viene a ser las barreras arquitectónicas del Internet de futuro.

Mini manual para entender las calidades de las películas descargadas y no morir en el intento

pelis.jpgCuando tenemos la intención de descargar una película de Internet por medio de cualquier software de intercambio entre pares o P2P (eMule, eDonkey, Azureus, Ares, uTorrent, Pando…), al realizar una búsqueda es posible que obtengamos numerosos archivos de la película que deseamos descargar. El tamaño de estos archivos puede variar, así como su calidad de audio y vídeo, desde 600 Mb hasta más de 4 Gb, aproximadamente. Ello es debido a la forma en que ha sido copiada la película, y es
que no es lo mismo una copia exacta de un DVD que una grabación clandestina con una cámara de vídeo en una sala de cine.

Por norma general existe una regla no escrita entre las personas que se dedican a ripear películas a la hora de nombrar los archivos que comparten. Seguro que, tras una búsqueda en eMule, más de una vez nos hemos tropezado con nombres de archivos de película como el siguiente:

Juegos de Guerra 2 (Spanish) 2007 DVDRIP Xvid-Mp3 (Centraldivx.com).avi

Es posible que nunca nos hayamos parado a observar todo lo que va más allá del título, pero lo cierto es que nos ofrece toda la información necesaria para saber la calidad que obtendremos tras la descarga.

Después del título aparece el idioma de la película entre paréntesis y el año de la producción. Con respecto a estos términos no comentaré nada más, porque son lo suficientemente claros como para arrojar más luz sobre el tema. Simplemente apuntar que el idioma puede aparecer escrito en inglés (lo más común) como en este ejemplo (Spanish), puede aparecer en español (Español), o incluso abreviado (ES, SP, ESP, SPA, etcétera). A la hora de realizar una búsqueda es conveniente introducir alguno de
estos términos para cribar los resultados al máximo.

Lo que sigue al año de producción (DVDRIP Xvid-Mp3) es precisamente lo que nos informa sobre la calidad en la que está ripeada la película. En este caso vemos que es una copia directa de DVD (DVDRIP), que el códec de vídeo es Xvid y el de audio es MP3.

Vamos a ver a continuación las distintas calidades que puede tener un archivo de película y cómo se especifica, generalmente, en su nombre. Comenzaremos por la calidad peor y terminaremos por la mejor.

1. Cam

  • En el nombre de archivo aparece como: CAM
  • Origen del vídeo: Cámara (sin trípode, generalmente)
  • Origen del audio: Cámara
  • Calidad de vídeo: Muy baja
  • Calidad de audio: Muy baja

Este tipo apenas se usa en España por su baja calidad. Se corresponde con la grabación directa del vídeo y el audio en una sala de cine por un espectador, sin trípode ni ningún tipo de interés porque la calidad sea mínima.

Suelen ser estrenos muy recientes.

2. TeleSync

  • En el nombre de archivo aparece como: TS, TS-Screener, Telesync o Screener
  • Origen del vídeo: Cámara (con trípode)
  • Origen del audio: Origen externo limpio
  • Calidad de vídeo: Baja-Media
  • Calidad de audio: Media

Esta calidad es la más usual para los screeners en España. El video es una grabación en la sala de cine con una cámara montada sobre trípode, y la calidad puede ser muy buena o nefasta, dependiendo de quién realice la grabación, con qué tipo de cámara y en qué condiciones (cine cerrado o con gente, iluminación, etcétera). El audio se obtiene de un medio externo limpio de ruido y, posteriormente, se sincroniza con la imagen mediante software. Este medio externo suelen ser los conectores de audífonos especiales para sordos de algunos cines o el sistema principal de sonido de la sala.

A este tipo se le suele llamar screener a secas. Suelen ser estrenos recientes.

3. VHS-Screener / VHS-Rip

  • En el nombre de archivo aparece como: VHS-Screener, VHS-Rip
  • Origen del vídeo: Cinta VHS
  • Origen del audio: Cinta VHS
  • Calidad de vídeo: Media
  • Calidad de audio: Media

Son películas ripeadas directamente desde una cinta VHS. La calidad es la de la cinta en cuestión.

Suelen ser antiguas películas descatalogadas o que no han aparecido en DVD.

4. TeleCine

  • En el nombre de archivo aparece como: TC, TC-Screener o Telecine
  • Origen del vídeo: Proyector de cine
  • Origen del audio: Proyector de cine
  • Calidad de vídeo: Media-Alta
  • Calidad de audio: Media-Alta

Este tipo de películas se traspasa directamente desde las salidas de los proyectores de cine a DVD o VHS. No era muy común verlas en España, pero ahora empiezan a irrumpir con fuerza.

Los países de Europa del Este y Rusia son los mayores productores de este tipo de calidades y, lo que se suele hacer, es extraer el vídeo de un TeleCine extranjero y sincronizar el audio captado en español en una sala de cine (algo parecido al DVD-Screener que se ve posteriormente).

Suelen ser estrenos recientes.

5. DVD-Screener

  • En el nombre de archivo aparece como: DVD-Screener o DVD-SCR
  • Origen del vídeo: DVD
  • Origen del audio: Origen externo limpio
  • Calidad de vídeo: Alta
  • Calidad de audio: Media

En este tipo de calidad el vídeo se extrae de un DVD promocional o de un DVD que ya ha salido en otros países antes que en España. El audio se obtiene de un origen limpio como los mencionados en la sección de TeleSync. Posteriormente se sincronizan.

Suelen ser películas no muy recientes, al menos en España.

6. DVD-Rip

  • En el nombre de archivo aparece como: DVD-Rip
  • Origen del vídeo: DVD
  • Origen del audio: DVD
  • Calidad de vídeo: Alta
  • Calidad de audio: Alta

Este tipo se corresponde con el ripeo tal cual de un DVD. Tanto el vídeo como el audio se extraen del DVD original, por lo que la calidad es muy buena, siempre y cuando se realice por una persona experta en tales lides. Muchas veces aparece antes de que se publique la película original, vía copias previas enviadas a los críticos de cine. Esto hace que los rips de mala calidad desaparezcan o no lleguen ni a aparecer.

Son películas que ya han salido en DVD.

7. DVD-R

  • En el nombre de archivo aparece com: DVD-R
  • Origen del vídeo: DVD
  • Origen del audio: DVD
  • Calidad de vídeo: Muy alta
  • Calidad de audio: Muy alta

Este formato de calidad se corresponde con la copia exacta de todos o algunos de los contenidos de un DVD sin ripear, es decir, sin compresión alguna, por lo que no existe pérdida de calidad. Suelen contener la película en dos o tres idiomas e, incluso, los subtítulos.

El problema es que el tamaño de un DVD original es demasiado grande para copiarlo en un DVD grabable normal de 4,7 Gb (DVD-5). Podría caber en un DVD de doble capa (DVD-9) que permite hasta 8,5 Gb o en uno mayor (existe hasta DVD-18), pero estos soportes no suelen ser admitidos por la mayoría de los reproductores de DVD de salón ni por muchos reproductores informáticos de DVD. Por todo ello, a excepción de algunas películas antiguas de dibujos animados que no tienen mucha duración, los extras del DVD original no suelen ser incluidos en este
formato.

Son películas que ya han salido en DVD. Tienen grandes tamaños, cercanos a los 4 Gb o más. Se suelen distribuir en la red BitTorrent. Lo que descargamos son archivos .VOB, .IFO y .BUP que han de ser quemados como DVD de vídeo.

8. Imagen de DVD

  • En el nombre de archivo aparece como: ISO, NRG, BIN, CUE, MDF, MDS
  • Origen del vídeo: DVD
  • Origen del audio: DVD
  • Calidad de vídeo: Muy alta
  • Calidad de audio: Muy alta

Las imágenes de DVD son copias exactas de DVD completos. En este caso se copia completamente un disco con la película, los idiomas, los subtítulos y todos los extras.

Son películas que ya han salido en DVD y que o bien no tienen muchos contenidos o bien duran menos que una película normal. Sobre todo películas de dibujos animados, actuaciones, vídeos musicales, documentales, series, etcétera.

9. BR-Rip

  • En el nombre de archivo aparece como: BR-Rip o BD-Rip
  • Origen del vídeo: BluRay Disc
  • Origen del audio: BluRay Disc
  • Calidad de vídeo: Excelente
  • Calidad de audio: Excelente

Son rips de discos BluRay con calidades 720p y 1080p. Al igual que con el resto de formatos, depende de la habilidad de la persona que lo genere para que la calidad sea mejor o peor. Aún así, a igual tamaño e igual proceso que un DVD-Rip, un BR-Rip tendrá mejor calidad simplemente porque la fuente es mejor.

Son películas ya aparecidas en BluRay Disc. 

10. Otras denominaciones

Al calor de las anteriores denominaciones “oficiales” de calidades han ido apareciendo otras menos conocidas (la mayoría referidas a televisión para ripeos de series y películas) pero que cada vez van tomando más importancia. A continuación vamos a detallar algunas de ellas.

TV-Rip: Es un rip directo de un programa o película de televisión.
DVB-Rip: Rip a partir de una señal de TDT (Televisión Digital Terrestre).
HDTV-Rip: Rip de televisión digital de alta definición.
PDTV-Rip: Es un rip de televisión digital pura. Se obtiene con tarjetas sintonizadoras de televisión capaces de recibir TDT.
DSR-Rip: Rip de satélite de señal digital.
LD-Rip: Rip de LaserDisc.
R5-Rip: DVD para la región 5 de Europa del Este, India, África, etc. Son copias hechas con un TeleCine analógico. Muy raras en España.
Workprint (WP): Es un montaje no finalizado de una película que se envía a críticos y productores bastante antes de la versión final. Suelen ser películas con escenas que luego no aparecen en la versión definitiva, con marcas de agua, rótulos o contadores de segundos.

Además de la calidad de grabación de una película, es importante tener en cuenta el formato de vídeo y el formato de audio con los que está ripeada. El formato y el códec (del que hablaba al principio de este mini manual) están íntimamente relacionados, porque deberemos tener los codecs adecuados para reproducir tanto la imagen como el sonido de los distintos formatos. Además, los reproductores de salón sólo aceptan algunos de los formatos más conocidos y utilizados.

A continuación enumeraremos los más usuales con los que nos vamos a encontrar ripeada una película.

Formatos de vídeo

● DivX y Xvid (AVI): Son formatos de codificación con los que obtendremos calidades similares a los de un DVD. Permite comprimir casi 2 horas de película en, aproximadamente, 700 Mb. Es el más común de los formatos de vídeo.

● VídeoCD (VCD): Es el formato más veterano. Utiliza la compresión MPEG-1 a un bitrate fijo. Ofrece calidad de VHS y una película de 2 horas necesitará de 2 CD de 700 Mb para entrar correctamente. Es el formato más compatible.

● Súper VídeoCD (SVCD): Formato basado en compresión MPEG-2. Distribuye los bits de una forma más eficiente que el anterior. Es menos
compatible que el VCD. Una película necesitará de 2 ó 3 CD
de 700 Mb, pudiendo llegar a alcanzar calidad de LaserDisc.

CVCD: Formato igual al VCD pero con mayor compresión.

KVCD: Al igual que el anterior deriva del VCD pero con una tasa de
compresión todavía mayor.

RAT-DVD: Este formato permite comprimir una película respetando
todo su contenido (menús, extras, subtítulos…) para ser visualizada exclusivamente en un ordenador con Windows XP, DirectX 9 y Windows Media Player 10 o WinDVD casi exclusivamente.

Formatos de audio

MP3: Este códec (MPEG Layer 3) es el más extendido y compatible. Tiene como peculiaridad un ratio de compresión 11:1 sin pérdida de calidad de sonido audible.

WAV: Formato propietario de Microsoft sin compresión.

WMA (Windows Media Audio): De compresión parecida al MP3 y de
calidad también similar.

AAC: Codificación estándar para audio reconocida por ISO en el patrón MPEG-2. En teoría almacena más que un MP3 y en menos espacio. Formato utilizado por Apple.

AC3: Códec para reproducir audio en el sistema Dolby Digital AC3.

RA (Real Audio): Soporte multimedia creado por la empresa Real Network, con una alta tasa de comprensión y algoritmos especiales que reducen considerablemente el tamaño de los archivos de sonido.

OGG: Lo que diferencia a Ogg Vorbis del resto es que es gratuito, abierto y no está patentado. Su principal atractivo es la importante reducción que hace de un archivo de audio sin restarle calidad. Así mismo, se distingue por su versatilidad para reproducirse en prácticamente cualquier dispositivo.

Para terminar decir que además del formato de audio y vídeo y la calidad de ripeo, en el nombre de un archivo de película descargado podemos encontrar multitud de detalles más. Vimos al principio que suele aparecer el año de producción, el idioma (imprescindible) o el ripeador o sitio web que alberga el enlace. Pero también alguno de los siguientes
textos que voy a detallar.

SUBBED XXX: La película tiene subtítulos incrustados en lenguaje XXX.

DUBBED XXX: La película no está en versión original, está doblada al lenguaje XXX.

WS: WideScreen. Dimensiones originales, con bandas negras.

FS: FullScreen. A pantalla completa, sin bandas negras.

REPACK: Cuando alguna película ha salido ripeada con algún fallo, puede aparecer otra con esta leyenda indicando que está solventado.

NUKED: No aprobada. Versión que no cumple las reglas de ripeo acordadas. Puede haber varias razones (BAD A/R, BAD ASPECT RATIO, BAD IVTC…).

PROPER: Según las normas no escritas, el primero que saca una película
(normalmente TS-Screener o TC-Screener) gana la "carrera" y nadie más puede publicar esa misma película. Pero si la calidad de la primera publicación es muy mala, otro grupo tendrá "el permiso" de publicarla como una versión "apropiada".

LIMITED: Significa que se ha visto en menos de 250 cines (en EEUU).

INTERNAL: De distribución interna. Algunas películas se distribuyen de esta forma por varios motivos. Normalmente es para recuperar viejos ripeos en DVD (es decir, duplicar una película ya publicada hace tiempo) o cuando la fuente es una grabación de mala calidad.

Como resumen podríamos decir que es muy importante leer el nombre del archivo de película que nos vamos a descargar, ya que no es lo mismo, como hemos podido comprobar, que sea TS-Screener o DVD-Rip, que el códec de vídeo sea Xvid o VCD o que sea WS o FS.

Teniendo estos pocos detalles en cuenta, seguro que lo que bajemos de Internet será más adaptado a lo que deseamos obtener en una primera vez y únicamente descargando un único archivo por película.

Eso sí, los fakes que resultan en películas porno en lugar de esa última
superproducción que queríamos haber bajado, van a seguir colándosenos por siempre jamás. Aunque una buena actitud es desconfiar de los DVD-Rip de películas todavía en las salas de cine. Por lógica.

Frases con historia (II)

"No hay ninguna razón para que un individuo tenga un ordenador en su casa."
Ken Olson, Presidente de Digital Equipment Corporation. 1977.

14 errores lingüísticos demasiado comunes

error.jpgCon este post estreno la categoría 'Off topic', es decir, esta es una entrada que no tiene nada que ver con el tema (o tópico) principal del blog, que se supone que es la tecnología o la informática o Internet o yo que sé.

¿Y por qué ahora? Pues porque me sale de los audiobaudios, qué pasa. [NOTA MENTAL: explicar alguna vez lo que son eran los audiobaudios, que seguro que nadie lo sabe, porque no aparece ni en el Google.]

El caso es que siempre he querido escribir un post como el que están ustedes a punto de leer, y como mi intención no es dedicarme a hablar de la lengua española muy a menudo, pues lo encajo con calzador en la categoría de 'Off topic' y listo.

¡Pero calla de una vez y cuenta lo que tengas que contar, pesado! Ya voy, ya voy.

Hablaremos, pues, de errores lingüísticos demasiado comunes. No piensen que van a encontrar aquí errores del tipo "me se ha caído", "la agüela" o "el sartén", no. Lo que voy a pasar a comentar es una serie de incorrecciones que, de tan comunes y aceptadas, las cometen prácticamente la totalidad de los hablantes en esta lengua. ¿Ah sí? Pues sí, usted también seguramente. Al menos algunas de ellas.

Y es que a lo largo de los años he ido recopilando una serie de patadas al diccionario que, incluso, yo mismo he propinado en tiempos pretéritos y que, cuando descubrí la luz, a veces hasta me asusté de lo borregos que llegamos a ser los seres humanos. Todos por la misma senda.

Son palabras, expresiones y demás que, no sé por qué oscura razón (de razones hablaré someramente), se han tomado como buenas cuando, en realidad, son erróneas. Pero no piense que usted y yo, de pueblo de toda la vida, somos los únicos que las decimos mal, no. Son errores cometidos por redactores de medios de comunicación, políticos (mal ejemplo, pero bueno) e incluso escritores de renombre. Sí, sí. ¿A que le pica la curiosidad, eh? Pues vamos allá.

Para una identificación más clara, escribiré lo erróneo en color rojo y lo correcto en azul.

ERROR DEMASIADO COMÚN Nº 1: Se dice radiactividad, no radioactividad.

No es un buen modo de comenzar, porque la Real Academia Española de la Lengua acaba de admitir hace cuatro días la palabra errónea, dándola por válida. Y precisamente ha sido así porque su profusa utilización (mala utilización) ha conllevado a aprobar algo que está mal dicho.

No es la primera vez que ocurre, y es que cuando la conciencia de inexactitud sobre algo desaparece, los poderes lingüísticos responden autorizando lo incorrecto, siempre y cuando sea una cosa lógica, claro está. No vayamos a pensar que admitan en un futuro la palabra "fistro" porque mucha gente la utilice (o sí, ¿quién sabe?).

Sospecho que la "o" esa que se coló en la palabra radiactividad fue por similitud con el elemento químico radiactivo denominado radio, aún así, la RAE sigue aconsejando que de forma mayoritaria y preferible se siga escribiendo (y diciendo) radiactividad.

Algo parecido pasa con la voz "paralímpico", a la que mucha gente (no mucha, mucha, y cada vez menos) le mete una "o" por ahí en medio.

ERROR DEMASIADO COMÚN Nº 2: Se dice eructo, no erupto.

Afortunadamente es un error demasiado común que va desapareciendo con el tiempo. Es curioso que muchos hablantes sean prácticamente incapaces de pronunciar una "p" al final de una sílaba; la verdad es que es algo raro en castellano. Pero existe un gran número de personas que pronuncian "captus" o "cóptel" en lugar de "cactus" y "cóctel". Esa misma impericia ha hecho que la palabra "eructo" se haya ido deformando con el pasar del tiempo y convirtiéndose en un error demasiado común, sobre todo entre los niños y los más jóvenes.

Por supuesto, las variantes palurdas como "eruto" o "iruto" son totalmente reprobables.

ERROR DEMASIADO COMÚN Nº 3: Se dice Ku Klux Klan, no Ku Kux Klan.

Al clan de organizaciones racistas, antisemitas, xenófobas y anticomunistas de EEUU parece que se le ha perdido la letra "l" de su segunda palabra. Poca gente he oído que pronuncie y escriba bien este nombre, informativos de Tele 5 incluidos.

Después de la Guerra de Secesión americana se formó el KKK. El nombre del clan se compuso a partir del vocablo griego kuklos (círculo). El capitán Kennedy añadió Klan en recuerdo de los grupos familiares ancestrales, ya que todos tenían ascendencia escocesa. Los fundadores decidieron escribir clan con "k", para darle más notoriedad a la organización. Les gustó el sonido rítmico de las palabras y decidieron separar "Kuklos" en dos palabras, cambiando la "o" por la "u" y la "s" final por una más impactante "x".

ERROR DEMASIADO COMÚN Nº 4: Se dice estalagmita, no estalacmita.

Es curioso que la que cuelga de arriba se llame estalactita (con esa "c" en medio) pero la que se forma por debajo se llame estalagmita (con una "g" en medio). Es muy curioso, pero es así.

El término estalactita proviene del griego culto stalaktos (que gotea), y la palabra estalagmita viene también del griego culto stalagma (filtración). Muy parecidas pero con una sutil diferencia, ¿verdad?.

El hecho de que estalactita se escriba con "c" ha propiciado que a la pobre estalagmita se la crucifique con una "c" también, en lugar de su correcta "g".

ERROR DEMASIADO COMÚN Nº 5: Se dice grosso modo, no a grosso modo.

Entre los errores demasiado comunes, éste es uno de los más demasiados y de los más comunes de todos los errores. Cometido con total impunidad por maestros, profesores, periodistas, presentadores y locutores.

La preposición "a" que se cuela delante de este latinismo parece ser influencia de otras expresiones castellanas con parecido significado que sí es correcto que la lleven, como 'a vuelapluma', 'a ojo de buen cubero' o 'a bulto'. Sin embargo, "grosso modo" es una locución latina que prescinde totalmente de dicha preposición para completar su significado.

Así pues, una oración correcta sería, por ejemplo, 'les voy a explicar a ustedes, grosso modo, cómo funciona la economía sumergida'.

ERROR DEMASIADO COMÚN Nº 6: Se dice motu proprio, no motu propio.

Entiendo que es una puñetada pronunciar "proprio" sin atragantarse; demasiadas erres para dos sílabas de nada. Pero, lo siento, este es otro giro de la lengua latina que prácticamente el 100% de los hablantes dice de manera errónea.

Utilizado como expresión para indicar que se hace algo espontáneamente, sin responder a petición previa, se utiliza mucho en la lengua española, por lo que ha ido derivando en el sentido del adjetivo "propio" castellano, que nada tiene que ver con el "proprio" latino. "Propio" es el caso ablativo de proprius (con movimiento propio) y, como tal ablativo que es, ya lleva implícita la preposición que, y este es otro error, muchas veces se le coloca por delante.

Por lo tanto, y aparte de la "r" de marras, como hemos comentado ya con "grosso modo", tampoco deben utilizarse las preposiciones "de" o "por" ('de motu proprio', 'por motu proprio') antes de este latinismo. Una frase correcta sería, por ejemplo, 'el acusado admitió su falta motu proprio en la segunda jornada del juicio'.

ERROR DEMASIADO COMÚN Nº 7: Se dice areola, no aureola.

Aunque esta afirmación no es del todo correcta, porque ambas palabras existen, me estoy refiriendo, por supuesto, a ese círculo rojizo algo moreno que rodea el pezón de los pechos. Eso que todos tenemos, y que a las mujeres se les nota algo más, se denomina areola, o aréola también. Aureola (con "u") es el resplandor, disco o círculo luminoso que suele figurarse detrás de la cabeza de las imágenes sagradas.

Este es otro ejemplo de error demasiado común aceptado por la RAE, ya que hoy día es correcto utilizar "aureola" por "areola", aunque, de nuevo, la Academia recomiendo el uso del segundo término.

ERROR DEMASIADO COMÚN Nº 8: Se dice impreso, pero también imprimido.

Es curioso que en los últimos tiempos cada vez oigo más la palabra "impreso" y menos la palabra "imprimido". Parece que a los nuevos repipis de la lengua les suena a cateto eso de"imprimido" y te sueltan en cualquier momento '¿has impreso lo que te mandé?'.

Pues bien, en castellano existen alguno verbos que tienen dos participios, uno regular ("imprimido") y otro irregular ("impreso"). Estos verbos utilizan su participio regular sólo como adjetivo y nunca como verbo, a excepción de "freír", "imprimir" y "proveer". (Sí, freír tiene forma regular de particio, es correcto decir 'he freído', aunque se considera arcaico).

Los dos participios pueden utilizarse indistintamente en la formación de los tiempos compuestos y de la pasiva perifrástica, aunque la preferencia por una u otra forma varíe en cada caso. Según la RAE lo lógico es utilizar el participio regular "imprimido" en oraciones activas con el verbo conjugado como participio, por ejemplo: 'he imprimido el documento', '¿has imprimido lo que te envié?' o 'hemos imprimido el libro completo', y el participio irregular "impreso" cuando actúe como adjetivo: 'coja usted un folleto impreso del mostrador' y en oraciones pasivas 'el manual de usuario ha sido impreso en Alemania'.

Por lo tanto, tan bien dicho está 'he imprimido' como 'he impreso', pero la primera forma es (o debería ser) la más aceptada. Lo que nunca utilizaremos es la forma regular en los casos en los que sea un participio como sustantivo, es decir, cuando se utiliza la forma verbal como un nombre. Nunca diremos 'tiene usted que rellenar el imprimido', sino 'tiene usted que rellenar el impreso'.

ERROR DEMASIADO COMÚN Nº 9: Se dice incluido, no inclusive.

Tampoco es una afirmación correcta del todo, ya que ambos términos existen. Me refiero aquí a la proliferación de carteles y cartelitos que veo, y cada vez más, en comercios de todo tipo. Esos cartelitos que rezan 'Este establecimiento permanecerá cerrado desde el día 1 hasta el día 14, ambos inclusive'.

Vamos a ver, "inclusive" es un término que proviene del latín escolástico y que significa incluyendo el último objeto nombrado. Lo correcto sería escribir 'Este establecimiento permanecerá cerrado desde el día 1 hasta el día 14, ambos incluidos' o 'Este establecimiento permanecerá cerrado desde el día 1 hasta el día 14 inclusive'. Pero nunca lo anterior.

ERROR DEMASIADO COMÚN Nº 10: El problema con súper y super-. En castellano existen tres palabras muy parecidas, a saber, el adjetivo "súper" ('mi coche utiliza gasolina súper', 'tenemos un plan súper para esta noche'), el sustantivo "súper", que es un acortamiento coloquial de la voz "supermercado" ('vamos al súper a comprar leche) y, por último, el elemento compositivo prefijo "super-", que denota lugar situado por encima, superioridad o excelencia ('superpotencia', 'superpoblación' o 'superproducción'). El problema recae en este último, y es que la RAE sólo acepta el prefijo "super-" cuando precede a sustantivos y nunca a adjetivos o adverbios.

Así pues, palabras como 'superhombre', 'supercasa' o 'supercamión' serían correctas, pero nunca lo serían otras como 'superbien', 'superútil' o 'superreservado', que tan de moda están.

En su caso, la Real Academia acepta que en el español coloquial actual se usa "super-" con mucha frecuencia para añadir valor superlativo a los adjetivos o adverbios a los que se une, pero nunca admite abiertamente su utilización como correcta. De todas maneras, advierte también que si se utiliza de esta forma, debe escribirse junto a la palabra, sin guiones y sin tilde, y no confundirlo con el otro "súper".

Es el típico ejemplo de algo que, no tardando mucho, será aceptado por la RAE, y Paris Hilton, cuando venga a España, podrá decir sin complejos y sin miedo a equivocarse que esto o aquello es superguay.

ERROR DEMASIADO COMÚN Nº 11: Se dice no, no para nada.

Vaya lío que me ha quedado; lo explico.

Les ha dado también últimamente a los recursis por contestar con un "para nada" a la hora de negar algo categóricamente. Pues bien, en castellano sólo se acepta un adverbio de negación, y ese es nuestro querido "no". Ahora bien, nadie dice que este "no" no pueda ir acompañado, pero nunca sustituido. Así, si alguien nos pregunta a ver si nos hemos hecho del Opus, nunca contestaremos '¡Para nada!', es erróneo, si no '¡No, para nada!'; o con un simple y sencillo '¡No!'.

ERROR DEMASIADO COMÚN Nº 12: Yo no doy más de mí.

Una expresión que a veces plantea dudas de concordancia es aquella de "dar de sí" ('María no da más de sí' o 'Esta camiseta se ha dado de sí'). El problema es que siempre se tiene que mantener la concordancia entre el sujeto y el pronombre que sigue a la preposición "de". O sea, diremos: 'yo no doy más de mí' y 'tú no das más de ti'. Todos los demás con "sí". Se considera incorrecto decir 'yo no doy más de sí', aunque está bastante arraigado en el habla popular como para eliminarlo de un plumazo.

ERROR DEMASIADO COMÚN Nº 13: Se dice encima de mí, no encima mío.

Este error es otro de esos que lo comete prácticamente el 100% de los hablantes. El origen de este error está en equiparar el complemento preposicional introducido por la preposición "de" ('detrás de María') con los complementos de posesión, de estructura formalmente idéntica ('la casa de María'). Sin embargo, se trata de construcciones diferentes: en la primera ('detrás de María'), el núcleo del que depende el complemento preposicional es un adverbio ("detrás"), mientras que en la segunda ('la casa de María') es un sustantivo ("casa"). Puesto que los adjetivos posesivos son modificadores del sustantivo, sólo si el complemento encabezado por "de" depende de un sustantivo puede sustituirse sin problemas por un posesivo: 'la casa de María' = 'su casa' o 'la casa suya'.

Sin embargo, los adverbios no son susceptibles de ser modificados por un posesivo, de forma que no admiten la transformación descrita: 'detrás de María' no equivale a 'su detrás', por lo que no es admisible decir 'detrás suyo'. En consecuencia, no se dice 'delante mío', 'detrás tuyo' ni 'encima mío', sino 'delante de mí', 'detrás de tí' y 'encima de mí'.

Evidentemente, los derivados utilizados en en sur de España, del tipo "encima mía", tampoco son correctos. Particularmente soy un defensor a ultranza del idioma andaluz (porque yo lo considero un idioma, no un dialecto o un deje) y me encanta escuchar algo como '¡quillo, no te sienteh ensima mía, que mira que canijaso tengo!', pero lamentablemente la Real Academia no recoge esta posibilidad. Igual en un futuro, y cuando se le dé la importancia que tiene a este idioma, cosas como la anterior aparacen reflejadas en un diccionario. Así sea.

ERROR DEMASIADO COMÚN Nº 14 (y último): El burro delante para que no se espante.

Este error es uno de mis favoritos, porque nace de la creencia errónea de que existe un error donde realmente no lo hay.

¿Cuántas veces hemos oído de pequeños eso de el burro delante para que no se espante cuando decíamos, por ejemplo 'Yo y Pablo vamos a jugar a fútbol'? Te lo decía tu madre, te lo decía el profesor y hasta te lo decía la vecina de abajo; qué maja ella. Y claro, a partir de entonces, a prestar atención al hablar, no se te fuera a colar otro burro de esos.

Pues lo cierto es que no existe ni ha existido nunca una norma en castellano que trate sobre el orden de los sujetos (cuando hay varios) en una oración. Es algo así como el mito aquel famoso de que las mayúsculas se pueden no acentuar, falso hasta decir basta. Lo que si dice la RAE al respecto es que, por educación, se recomienda nombrar antes al otro que a ti mismo ('Pablo y yo'), pero sólo por educación. Decir o escribir 'Yo y Pablo' no es de ningún modo un error gramatical. Que lo sepas.

Bueno, pues aquí termina este post. Espero haber aclarado algún que otro concepto a más de uno y, de ahora en adelante, espero que todo aquel que haya leído estas líneas se preocupe por hablar y por escribir un poquito mejor.

Inyecciones SQL (¡a que te pincho!)

jeringa.jpgEl hacking ya no es lo que era en los noventa. Antes, la seguridad era mínima y los administradores de sistemas eran los mismos chupatintas que lo mismo te configuraban un proxy que te atendían en la ventanilla. Los sistemas operativos tenían más agujeros que un queso de esos con agujeros y, para más inri, las actualizaciones brillaban por su ausencia

Casi nadie tenía Internet, y los cuatro frikis que compramos un módem por aquello de chatear, nos las vimos y nos las deseamos para configurarlo y conectarlo a la Red, cortando la línea de teléfono a tus padres durante tardes interminables y escurriendo el bulto cuando llegaba la factura de Telefónica. Eso sí, la sensación de satisfacción que se te quedaba en el cuerpo cuando conseguías desenmarañar aquel entramado de siglas era indescriptible.

Nos cobraban 5.000 pesetas mensuales por la conexión, teléfono a parte, y existía algo que se llamaba Infovía y que muchos de los que lean esto ni sabrán lo que fue. Pululaban todavía las BBS, el chat se hacía desde un cliente de IRC y las páginas web daban verdadera pena.

Aparecieron los e-zines (fanzines digitales) y corrían de mail en mail como antaño sus hermanos mayores de papel de mano en mano. Descubrí SET antes de que fuera SET, cuando se llamaba Saqueadores a secas. Descubrí también 7a69, Raza Mexicana, Raregazz y otros de los que no recuerdo el nombre. Había uno muy divertido que no tenía como tema principal el hacking ni la informática (y que tampoco me acuerdo cómo se llamaba) que enseñaba desde cómo fabricar una bomba a las mejores maneras para asesinar a un gato. Aquella época era así; el destape digital.

Y entones fue cuando me empecé a aficionar al hacking, al cracking, al phreaking y al virii, que eran los cuatro pilares básicos que todo buen conocedor del underground informático debía manejar, o al menos alguno de ellos pero en plan gurú, si no eras directamente un lammer o un puto newbie.

La filosofía de los hackers de aquella época se ha perdido. El objetivo claro que se perseguía entonces era la superación personal y el ansia por adquirir los conocimientos que permitieran dominar aquella nueva tecnología que tanto futuro parecía tener. Hoy los buenos hackers son putas al servicio de gobiernos o de empresas de seguridad. Alguno de los de antes quedará por ahí, seguro, pero el espíritu ya no es el mismo, se ha desinflado.

El hacking, además, se ha vuelto complicado y peligroso. Hoy los administradores de sistemas han pasado de la ESO (algunos), los sistemas operativos son muchísimo más seguros y los usuarios están mucho más concienciados del concepto de seguridad (más o menos). Los bugs o agujeros de seguridad se resuelven y parchean en horas, y cualquier software se actualiza de manera automática prácticamente a diario.

Sin embargo, de vez en cuando, siguen apareciendo técnicas novedosas que producen un revolvimiento de tripas en el underground informático y una sudoración fría en los lobbys económicos y políticos del sistema. Algo así como un resurgir del lodo, descuellando por unos instantes. Por supuesto, al descubridor de tal o cual vulnerabilidad se le eleva a los altares del movimiento subterráneo y se le santifica a lo Kevin Mitnick.

En los últimos años a mí se me han puesto los pelos de punta en tres de ocasiones: una con la aparición del ataque NetBIOS, otra con la aparición del XSS y otra con la aparición de las inyecciones SQL. Y a estas últimas nos vamos a referir en continuación. ¿Por qué? Por nada en especial.

Para los neófitos: SQL es un lenguaje estructurado que se utiliza para realizar consultas contra bases de datos, ya sean consultas de actualización, de selección o de eliminación.

Las bases de datos cada vez son más importantes en nuestra vida. Todo está ordenado y clasificado en determinado campo de determinado registro de determinada tabla de determinada base de datos. Y, claro, en Internet, que es un espejo casi en tiempo real del mundo no digital, las bases de datos crecen como champiñones a diestro y siniestro. Cualquier página web que visitemos dispondrá de un foro, de una agenda de eventos, de un registro de usuarios, de un catálogo de productos, etcétera. Pues bien, todo eso, y mucho más, necesita de una base de datos para poder funcionar.

Una inyección SQL no es otra cosa que un ataque, debido a una vulnerabilidad corregible, a la base de datos de una aplicación en el nivel de validación. Para que me entienda todo el mundo, el nivel de validación se refiere a esos cuadraditos de texto donde yo escribo mi nombre de usuario y mi contraseña cuando accedo a una web en la que estoy registrado. En esos mismos cuadraditos dispongo yo de la posibilidad de escribir código SQL que la base de datos que haya detrás se trague e interprete y provocar un auténtico desastre.

Vamos a ver un ejemplo práctico. Imaginemos la típica página de validación, donde me piden mi nombre y mi contraseña, para entrar a comprar a una tienda virtual en la que estoy registrado. Cuando yo escribo el nombre, la contraseña y pulso el botón de aceptar, el software comprueba que los datos sean correctos. Para ello realiza un consulta a la base de datos en SQL que puede ser algo como lo siguiente:

"SELECT * FROM TablaUsuarios WHERE Nombre = '" + NombreUsuario + "' AND Contrasena = '" + ContrasenaUsuario + "';"

Esto selecciona (SELECT) todos (*) los registros de (FROM) la tabla TablaUsuarios donde (WHERE) el campo Nombre sea igual (=) a la variable NombreUsuario (su valor se asigna de lo que nosotros hallamos escrito) y (AND) el campo Contrasena sea igual a la variable ContrasenaUsuario. Si yo escribo "Jonathan" y "Tambor1900" respectivamente en el campo de texto para nombre y contraseña, el resultado de la cadena anterior sería el siguiente:

"SELECT * FROM TablaUsuarios WHERE Nombre = 'Jonathan' AND Contrasena = 'Tambor1900';"

Ahora viene la magia. En el campo de texto para el nombre, en lugar de un nombre, voy a escribir esto:

' OR '1'='1

Y en el campo para la contraseña lo mismo, mismito. La cadena SQL que se envía a la base de datos quedaría así:

"SELECT * FROM TablaUsuarios WHERE Nombre = '' OR '1'='1' AND Contrasena = '' OR '1'='1';"

Es decir, selecciona todos los registros de la tabla TablaUsuarios donde el campo Nombre sea igual a nada o 1 sea igual a 1 y el campo Contrasena sea igual a nada o 1 igual a 1. ¡Abracadabra! Es posible que no exista un nombre o una contraseña vacía, pero siempre 1 va a ser igual a 1, por lo tanto, hasta la cocina del sitio web como si fuéramos un usuario correctamente registrado.

Vamos a hacer más pupita. Vamos a escribir en el campo del nombre lo mismo que antes y en el de la contraseña lo que sigue:

'; DROP TABLE TablaUsuarios

Con lo que la cadena final queda así:

"SELECT * FROM TablaUsuarios WHERE Nombre = '' OR '1'='1' AND Contrasena = ''; DROP TABLE TablaUsuarios;"

Las sentencias SQL siempre terminan en punto y coma (;) y pueden separarse entre sí por el mismo signo de puntuación. En el anterior ejemplo, comprobaría correctamente que 1 es igual a 1, como hemos comentado antes, para, después, cargarse sin miramientos la tabla TablaUsuarios (DROP TABLE TablaUsuarios).

Evidentemente el daño puede ser mayor que borrar una tabla (suponemos que el administrador tiene copias de seguridad), ya que podemos hacernos con todos los datos sensibles y privados de los usuarios del sitio, hacer compras en su nombre, acceder a sus cuentas bancarias y mil miles de cosas más.

Muchos habrán pensado ya a estas alturas que para inyectar este tipo de códigos SQL es necesario conocer el nombre de las variables (NombreUsuario y ContrasenaUsuario) y el nombre de la tabla (TablaUsuario) que el programador ha utilizado. Y efectivamente así es. Pero para conseguir estos datos podemos recurrir a la técnica de hacer "cascar" la consulta y que produzca un error. Por ejemplo, si en el nombre de usuario escribimos dos comillas simples ('') y en la contraseña cualquier cosa, la cadena SQL resultante sería la siguiente:

"SELECT * FROM TablaUsuarios WHERE Nombre = ''' AND Contrasena = 'Tambor1900';"

Aquí hay más comillas de las que el intérprete SQL de la base de datos puede reconocer, y esto devolvería un error de acceso a la base de datos. Dependiendo de qué servidor web aloje esta página y cómo esté configurado, es más que posible que dicho error aparezca en pantalla (en formato HTML) especificando concretamente dónde y por qué se ha producido, y describiéndonos a las mil maravillas la cadena de conexión y todas sus variables, nombres de campos y tablas. Un placer. Gracias mil.

Una vez expuesta la vulnerabilidad y cómo explotarla, es de caballeros explicar también cómo corregir este defecto. He de decir que muchísimas páginas web en Internet no tienen este tema solucionado; allá ellos. Sólo es necesario visitar sitios web y probar (a base de comillas aquí, comillas allí) hasta que encontremos uno vulnerable. Ya digo que los hay por doquier.

Existen varios métodos para solucionar este problema, pero el más sencillo y eficaz es el que consiste en evitar la introducción de comillas simples en las cajas de texto sustituyéndolas por espacios, por ejemplo. He aquí una forma de hacerlo en VBScript en una página ASP:

CadenaSQL = "SELECT * FROM TablaUsuarios WHERE Nombre = '" & Replace(NombreUsuario, "'", " ") & "' AND Contrasena='" & Replace(ContrasenaUsuario, "'", " ") & "'"

O en JavaScript en una página PHP:

CadenaSQL = SELECT * FROM TablaUsuarios WHERE Nombre = '" & NombreUsuario.replace( "'", " "); & "' AND Contrasena='" & ContrasenaUsuario.replace("'", " "); & "'"

Otro factor importante en cuanto a la seguridad es limitar al máximo los permisos del usuario que ejecuta estas sentencias para evitar posibles problemas. Por ejemplo utilizando un usuario distinto para las sentencias SELECT, DELETE o UPDATE y asegurándonos de que cada ejecución de una sentencia ejecute una sentencia del tipo permitido.

Una solución definitiva sería trabajar con procedimientos almacenados. El modo en el que se pasan los parámetros a los procedimientos almacenados evita que la inyección SQL pueda ser usada. También deberíamos validar los datos que introduce el usuario teniendo en cuenta, por ejemplo, la longitud de los campos y el tipo de datos aceptados. Si programamos en ASP.NET, además, utilizaremos siempre que sea posible las clases de System.Web.Security.FormsAuthentication para que los usuarios entren en nuestras aplicaciones web.

Es tan jugoso explotar una vulnerabilidad como conseguir eliminarla. Los hackers del pasado son los expertos en seguridad del presente. Pero, por favor, no se me vendan a las multinacionales, que no queda muy underground que digamos.

Programación del puerto paralelo

foto0.jpgSi existe una tecnología que inexorablemente camina hacia su extinción, esa es la del archiconocido y bien querido por todos nosotros puerto paralelo. Este conector que ya no viene en los portátiles (ni en muchos ordenatas de sobremesa) apareció de la mano de IBM en 1981 con su primer PC y ha llegado incorrupto hasta nuestros días.

Su estructura de 25 pines hace de él un conector nada discreto, mas muy fácil de manejar. No es el más rápido, pero mediante su manejo podemos interconectarnos con el mundo real de la manera más sencilla, sabiendo un poquito de aquí y un poquito de allá. Cierto es que su uso ha sido casi exclusivamente dedicado al control de impresoras, pero vía puerto paralelo podemos manejar desde un juego de luces a una lavadora, un robot o una excavadora. ¿Cómo se te queda el cuerpo? Y fácil, muy fácil.

foto1.jpg

Básicamente, lo que podemos hacer con cada uno de los 25 pines de un puerto paralelo es ponerlos a 0 ó a 5 voltios. Esta situación binaria combinada es capaz de activar un relé, por ejemplo, que a su vez active un electrodoméstico, una bombilla o cualquier otro elemento electrónico.

Comencemos viendo en la siguiente imagen la estructura de pines del puerto en cuestión. Realmente, el puerto paralelo consta de tres puertos diferentes integrados en el propio conector (los que aparecen de color azul, rojo y naranja en la imagen).

foto2.gif

El puerto de datos (DATA), permite transmitir un byte (8 bits) de datos. Cada uno de los bits se corresponde con uno de los pines D0 a D7. Por tanto, en conjunto, se pueden transmitir valores entre 0 y 255 en formato binario. Por ejemplo, para transmitir el 139, 10001011 en binario, se pondrán a 5 voltios los pines D7, D3, D1 y D0. Este puerto puede configurarse para servir tanto de entrada como de salida de datos.

El puerto de control (CONTROL) es sólo de salida y se corresponde con los pines C0 a C3, con lo que en principio nos permite trasmitir valores entre 0 y 16. En un principio este puerto se utilizaba para transferir comandos inmediatos a la impresora como un salto de línea o un reset, y los pines conservan los nombres que se les dieron en esa época (C0=Strobe, C1=Auto feed, C2=Initialize y C3=Select). Y por razones históricas tambien, C0, C1 y C3 están invertidos, lo que quiere decir que invierten la salida y, al contrario que los pines normales, representan el 0 con 5 voltios y el 1 con 0 voltios. Por ejemplo, el número 6, que es 0110 en binario, al estar los bits invertidos, deberíamos poner C3, C2 y C0 a 5 voltios y C1 a 0.

Por último tenemos el puerto de estado (STATUS). Se usaba originalmente para recibir el estado de la impresora, también ha heredado los nombres de los pines de aquella época (S3=Error, S4=Select in, S5=Paper end, S6=Acknowledge y S7=Busy) y también presenta algún pin invertido (el S3 y el S6). Es un puerto sólo de entrada.

El resto de pines (los que están en verde en el gráfico anterior) están conectados a tierra y nos ofrecen el voltaje de referencia de 0 voltios.

Para empezar a cacharrear con el puerto paralelo, lo ideal es montar un adaptador hembra en una placa de pruebas (protoboard en inglés), que no es otra cosa que una plancha de plástico reutilizable, con agujerillos y contactos metálicos, usada para construir prototipos electrónicos (o realizar pruebas experimentales) normalmente sin soldadura.

Además, necesitaremos un cable paralelo para conectar el prototipo al ordenador y, también, que este ordenador disponga a su vez de puerto paralelo, si no vamos aviados.

foto3.jpg

Lo que vamos a hacer es soldar un cable a cada pin y, en la placa de pruebas, ordenar los extremos en línea, usando un color en cada tipo de puerto para distinguirlos fácilmente (imágenes siguientes).

Los cables rojos pertenecen al puerto de control, los amarillos al de datos y los verdes al de estado. Utilizaremos también dos cables negros para los conectores a tierra.

foto4.jpg

foto5.jpg

foto6.jpg

Como ejemplo de utilización vamos a conectar 8 leds a cada uno de los pines de datos, de esta manera obtendremos feedback visual en tiempo real de lo que ocurre en cada momento, es decir, si ponemos un pin a 0 el led deberá de permanecer apagado si lo ponemos a 1 se encenderá. Utilizaremos el siguiente esquema para la realización del montaje.

foto7.gif

Por supuesto necesitaremos 8 leds y 8 pequeñas resistencias de 470 ohmnios, que son las representadas en la imagen por esos pequeños rectángulos intercalados entre pin y led. Las resistencias sirven para limitar la corriente que pasará por cada cable, aunque en este caso concreto son prescindibles, porque cada pin del puerto paralelo sólo puede suministrar 40mA como máximo, una corriente suficientemente baja para que aguanten la mayoría de los leds y no se quemen. Pero por si las moscas...

foto8.jpg

Una vez tengamos el engendro preparado, ya sólo nos queda conectarlo al ordenador a través del puerto paralelo y ponernos a programar. El siguiente ejemplo está escrito en C para Linux, pero es fácilmente portable a cualquier otro lenguaje de programación para cualquier plataforma. El propio código está comentado, pero después se apuntan un par de cosillas interesantes como refuerzo.

[código]

#include
#include
// En asm/io.h están definidas las funciones ioperm() y outb()
#include
 
// Esta es la dirección más frecuente para un puerto paralelo
#define DATAPORT 0x378
 
int main()
{
  // Obtenemos permiso de acceso para la dirección de DATAPORT y
  // las 2 siguientes
  if (ioperm(DATAPORT, 3, 1)) {perror("ioperm"); return 1;}
 
  // Entramos en un bucle infinito
  while(1)
  {
    int input;
 
    // Le pedimos al usuario que introduzca un número
    printf("Introduce un número entre 0 y 255 (-1 para salir)\n");
    // Leemos el valor introducido y lo guardamos en "input"
    scanf("%d", &input);

    // Si "input" vale "-1" salimos del bucle
    if(input==-1) break;

    // Si "input" no está entre "0" y "255" (y no era "-1") no nos
    // interesa, así que volvemos directamente al comienzo del bucle
    if(input < 0 || input > 255) continue;
 
    // Si hemos llegado hasta aquí es que "input" vale entre "0" y
    // "255" y podemos sacarlo por el puerto paralelo
    outb(input, DATAPORT);
  }
 
  // Antes de terminar el programa, dejamos los permisos de acceso
  // a los puertos como estaban
  if (ioperm(DATAPORT, 3, 0)) {perror("ioperm"); return 1;}
 
  //El programa termina sin errores
  return 0;
}

[/código]

La función ioperm() modifica los permisos de acceso a los puertos. Recibe tres enteros: el primero le indica la dirección del primer puerto cuyos permisos queremos modificar, el segundo es el número de puertos y el tercero debe ser 1 para conceder el permiso y 0 para denegarlo. De esta manera, la sentencia ioperm(DATAPORT, 3, 1) asigna permiso a 3 puertos, esto es, al de datos, al de estado y al de control. Al final del programa restablecemos el estado dejando todo como estaba con ioperm(DATAPORT, 3, 0).

La función outb() se encarga de enviar un byte de datos a un determinado puerto. Recibe dos enteros: el primero es el byte que se quiere enviar (debe estar entre 0 y 255) y el segundo es la dirección del puerto. La dirección del puerto de datos paralelo, en la gran mayoría de los ordenadores es, en hexadecimal, 0×378. Esta declaración se encuentra al principio del listado en la variable DATAPORT con #define DATAPORT 0x378. Para una segundo puerto paralelo sería 0x278 y para un tercero 0x3BC. De todas maneras, se puede consultar la dirección de nuestro puerto paralelo en la BIOS de la placa base.

Ejecutando el programa podremos obtener resultados como los de las dos imágenes siguientes. Por un lado (a la izquierda) tenemos la salida del puerto de datos con el número 13 (00001101 en binario) y, por otro (a la derecha), tenemos la salida del número 167 (10100111 en binario). Como es el puerto de datos y los bits no están invertidos, cada 1 se corresponderá con un led encendido y cada 0 un led apagado.

foto9.jpg

Muy bien. Todo claro. Ya sabemos cómo inducir voltaje mediante software en una serie de pins para que enciendan y apaguen unos leds. Pero, ¿cómo demonios se hace para leer información del conector? ¿Cómo puedo saber, por ejemplo, que un interruptor ha sido pulsado?

Bien, en este punto debemos comentar que para ello nos hace falta algún elemento más para nuestra placa de pruebas. Evidentemente un interruptor y, también, una resistencia pull-down. Y ¿para qué la resistencia? Pues muy sencillo. Nosotros no podemos saber con rigor absoluto cuando un pin está a 0 voltios, porque los componentes electrónicos son muy puñeteros y ¿quién me asegura a mí que después de retirar una corriente de 5 voltios de un pin, el circuito detrás de ese pin no esté induciendo un cierto voltaje? ¿O si quizás la propia configuración del circuito podría hacer que éste estuviera actuando como un diminuto condensador guardando alguna pequeña carga, quizá entre 0 y 5 voltios? Nosotros no podemos asegurar nunca que un pin de entrada no conectado a nada está a 0 voltios. Eso sería una falacia. Estará a un voltaje arbitrario (puede que cero, puede que no) y desconocido para nosotros.

Para evitar este pequeño escollo utilizamos una resistencia pull-down, que no es otra cosa que una resistencia puesta entre una línea y masa cuyo objetivo es dar a esa línea un valor lógico de nivel bajo de masa (0 voltios) cuando no hay ninguna señal conectada. Se emplea una resistencia de valor intermedio. Lo más habitual es que sea de 1 ó 10 KΩ. Cuando el interruptor está cerrado, la resistencia que ofrece la rama del circuito que va a los 5V es mucho menor que la que va hasta los 0V, así que el voltaje en el nodo donde confluyen las tres ramas del circuito es prácticamente 5V. Lo bueno es que aquí, cuando el interruptor se abre, el pin de entrada no queda aislado, sino que sigue conectado a tierra a través de la resistencia. Cualquier carga que hubiera quedado atrapada en el circuito se descarga rápidamente a través de la resistencia y la entrada se pone a 0V. ¡Ingenioso!

En la siguiente imagen vemos como queda el circuito.

foto10.jpg

Existen también las resistencias pull-up, que funcionan de igual manera pero conectadas a los 5 voltios. En el código de ejemplo siguiente utilizaremos una de ellas.

¿Y el software? Pues igual de sencillo que el código para escribir datos en el puerto; para leer disponemos de la función inb(), que devuelve un byte de datos leído a través del puerto. Por ejemplo, para leer desde el puerto de estado (Status) y guardarlo en la variable entrada pondríamos hacer short int entrada = inb(0x379).

El siguiente ejemplo lee el valor de dos interruptores conectados a los pines 3 y 4 del puerto de estado. Los interruptores usan resistencias pull-up, por lo que la lectura de un 0 lógico en uno de esos pines representa una pulsación en su interruptor asociado. Un mensaje en pantalla dice qué interruptor se está pulsando.

[código]

// Este programa monitoriza el estado de 2 pulsadores conectados
// a las líneas de STATUS y muestra por pantalla si se ha pulsado
// alguno de ellos
 
#include
#include
 
// En asm/io.h están definidas las funciones ioperm() y outb()
#include
 
// Esta es la dirección más frecuente para el puerto paralelo
#define DATAPORT 0x378
// Y esta es la dirección de las líneas de estado
#define STATUSPORT DATAPORT+1
 
#define TIEMPOCONPULSACION 300000
#define TIEMPOSINPULSACION 10000
 
// Máscaras para los pines 3 y 4 del puerto de estado
#define BOTON1 8
#define BOTON2 16
 
int main()
{
  // Obtenemos permiso de acceso para la dirección de DATAPORT y
  // las 2 siguientes
  if (ioperm(DATAPORT, 3, 1)) {perror("ioperm"); return 1;}
 
  //Entramos en el bucle principal del programa
  while(1)
  {
    // "input" va a guardar el valor leído desde el puerto
    short int input=0;
    // "pulsacion" nos va a decir qué botón se ha pulsado
    short int pulsacion = 0;
 
  // Leemos el byte de las líneas de estado y lo guardamos en "input"
  input=inb(STATUSPORT);
 
  // Si "input" tiene el bit BOTON1 a cero es que se ha pulsado el
  // boton correspondiente
  if((input & BOTON1) ==0)
    // Ponemos "pulsacion" a "1" para indicarlo y sacamos un
    // mensaje por pantalla
    pulsacion=1;
    // Si tiene a cero el bit BOTON2 es que se ha pulsado el otro
    // botón
  else if((input & BOTON2) ==0)
    pulsacion=2;
 
 // Si pulsacion !=0 es que se ha pulsado algun botón
 // Esperamos TIEMPOCONPULSACION microsegundos para no inundar la 
 // pantalla de texto
 if(pulsacion)
 {
  printf("Pulsando botón %d\n",pulsacion);
   fflush(stdout);
  usleep(TIEMPOCONPULSACION);
 }
 // En caso contrario sólo esperamos TIEMPOSINPULSACION microsegundos
 else usleep(TIEMPOSINPULSACION);
  }
  // Antes de terminar el programa dejamos los permisos de acceso
  // a los puertos como estaban
  if (ioperm(DATAPORT, 3, 0)) {perror("ioperm"); return 1;}
 
  // El programa termina sin errores
  return 0;
}

[/código]

Pues bien, después de esto ya deberíamos estar preparados para comenzar a adentrarnos en este intrigante mundo. Hombre, de aquí a manejar una lavadora queda, la verdad. Pero hay que tener en cuenta que todo es cuestión de leer y escribir datos desde y en el puerto paralelo, lo demás ya es cuestión eléctrica y electrónica. Además, se puede encontrar mucha y muy jugosa información en Internet acerca de este tema. Ya se sabe, preguntando al tío Google se llega Roma (.com).

FUENTE: Las imágenes, parte del texto y la inspiración provienen del magnífico blog Obsoletos.

26 curiosidades sobre Google

google.jpgA buen seguro ustedes conocen el motor de búsqueda más famoso y eficiente de todos los tiempos, Google. Pero lo que probablemente no conozcan es que dicho sitio web está repleto de curiosidades varias que hacen de él un buscador no sólo excelente, sino cuasi friki. A saber:

Curiosidad 1. Google ameniza al visitante cada cierto tiempo con un logotipo distinto al original en sus páginas. Los cambios coinciden con eventos o celebraciones mundiales tales como el Día de la Tierra, el Año Nuevo o el aniversario de Monet. Todos los logotipos de la página en su versión española pueden consultarse, ordenados por años, desde la dirección http://www.google.es/intl/es/logos.html.

Curiosidad 2. El Día de los Inocentes yanqui (April Fool's Day), que por allí se celebra el 1 de abril, ha sido especialmente prolífico a la hora de lanzar globos sonda humorísticos por parte de la empresa. En el año 2002, Google daba a conocer que su sistema de clasificación de páginas, denominado PageRank, se había convertido de PigeonRank (ranking de palomas) y consistía en que miles de palomas trabajaban ordenando los sitios web recabados a lo largo y ancho de Internet. La "tecnología palomil", perfectamente explicada y detallada, puede consultarse desde la página http://www.google.com/technology/pigeonrank.html.

Curiosidad 3. El mísmo Día de los Inocentes, pero del año 2000, Google lanzó el sistema de búsqueda MentalPlex, el cual es capaz de leer la mente del usuario y encontrar los resultados de la búsqueda que está pensando. MentalPlex sigue online en la dirección http://www.google.com/intl/en/mentalplex/.

Curiosidad 4. En la Pascua de 2001 apareció en Google un divertido juego en Java de un conejito que recogía huevos (de Pascua, claro) para formar el nombre del buscador. Se puede jugar aún desde http://www.google.com/Easter/feature_easter.html.

Curiosidad 5. Un espejo internauta es una página web en la que se puede consultar el mismo contenido que el de la página original a la que se hace espejo. Esto se suele hacer para descargar a los servidores de trabajo y encauzar a los usuarios a otras localizaciones. En el caso de Google, en la dirección http://www.alltooflat.com/geeky/elgoog se puede acceder a un espejo del buscador pero, en este caso, es un "espejo", "espejo". Pasen y vean a lo que me refiero.

Curiosidad 6. En la página http://www.google.es/press/zeitgeist.html se puede consultar una lista de las búsquedas más populares en Google por meses.

Curiosidad 7. Google dispone de una sección de ofertas de empleo para todo aquel que desee y se vea capaz de trabajar para esta empresa. Consúltese en http://www.google.es/intl/es/jobs/.

Curiosidad 8. ¿Quiere usted, además, conocer las ventajas de trabajar en Google? No tiene más que acceder a http://www.google.com/jobs/food.html. ¿Quiere ver las juergas que se corren los empleados de la empresa? En http://www.google.com/googledance2002/1.html.

Curiosidad 9. Los chicos de Google ponen a nuestra disposición la página http://www.google.com/jobs/britney.html en la que se puede consultar la lista de decenas de errores que los usuarios han cometido al intentar encontrar uno de los nombres más buscados: Britney Spears.

Curiosidad 10. Google tiene registrados diversos dominios con nombres parecidos al suyo. Esto es debido a que muchos usuarios escriben mal "google" y, de esta manera, cualquiera de las entradas nos redirigirán a la página buena. Así pues, http://www.gogle.com, http://www.googel.com, http://www.ggoogle.com o http://www.gogole.com nos llevarán directamente al web de Google.

Curiosidad 11. La empresa también tiene registrado el dominio http://www.466453.com. Estos números se corresponden con las teclas de un teléfono móvil en las que se encuentran las letras de Google en el orden correcto. De esta manera, cualquiera que desee acceder a la página del buscador desde su teléfono celular sólo habrá de pulsar dichas teclas una vez para ello, sin necesidad de andar dándole al botoncito varias veces hasta escribir la palabra. Ingenioso sobremanera, no me digan.

Curiosidad 12. Además de lo anterior, podemos acceder a diversos servicios móviles desde http://www.google.com/mobile.

Curiosidad 13. Google organizó en el año 2002 un concurso de programación que ofrecía diez mil dólares del ala y una visita a la sede central de la compañía. Se puede consultar la información referente, así como el ganador, desde la página http://www.google.com/programming-contest/index.html.

Curiosidad 14. El 4 de enero del presente año, apareció en la página de Google un logotipo dedicado a Braille (unos puntitos que representaban la palabra "google" escrita en el idioma de los ciegos). Esto hizo que millones de usuarios hicieran clic sobre él. Cuando Google saca un logotipo de celebración, al pulsarlo nos redirige a una búsqueda en el propio buscador. En este caso la cadena de búsqueda a la que se nos mandaba era http://www.google.com/search?q=louis+braille+birthday. Si realizamos esta búsqueda, el primero de los resultados se refiere a la entrada http://en.wikipedia.org/wiki/Louis_Braille del sitio web Wikipedia, la enciclopedia cibernética libre en línea que los internautas pueden modificar y aumentar con nuevos datos a su antojo. Esta página de Louis Braille fue editada 600 veces en 12 horas, cuando en los últimos 12 meses había sido modificada por los usuarios en sólo 50 ocasiones. Esto da una idea del aumento de tráfico generado por esta iniciativa del buscador (llamada OneBox) y lo que puede redundar en el beneficio de determinados sitios web. Algo parecido ocurrió en marzo de 2005 con el logotipo de Google dedicado a Van Gogh, que hizo que el tráfico hacia la página del genial artista se multiplicara por 8.

Curiosidad 15. En el cuadro de búsqueda de Google escriba la palabra "ladrones" (sin las comillas, please) para, posteriormente, hacer clic en el botón "Voy a tener suerte". ¡Sorpresa! Esto se conoce como "Google Bomb" y consiste en colocar ciertos resultados de búsqueda, asociados a determinados términos, en los primeros puestos. Para ello explota la característica del algoritmo PageRank de Google que coloca los primeros aquellos sitios web más enlazados. Con ello sólo habrán de enlazar unos cuantos miles de usuarios una web, con determinada palabra como enlace, para que la magia cobre vida. Hoy día Google ha modificado un poco el algoritmo en cuestión para que esto no suceda tan a menudo.

Curiosidad 16. Google Earth es un increible software gratuito desde el que podemos literalmente volar desde la Estatua de la Libertad hasta el tejado de nuestra casa en cuestión de seguntos. El mundo entero cartografiado y las ciudades y zonas más importantes hasta una resolución realmente sorprendente. Como digo, se puede ver el tejado de la casa de uno e, incluso, el coche aparcado en la calle (si estaba cuando se sacó la foto, claro). Decárguelo desde http://pack.google.com/intl/en/integrated_eula.html?hl=en&ciint=ci_earth&ci_earth=on&utm_source=en-cdr-earth4&utm_medium=cdr&utm_campaign=en. En la actualidad también disponemos de Google Sky, Google Moon y Google Mars.

Curiosidad 17. Google Dance es como llaman los chicos de la empresa al periodo que transcurre entre el comienzo y el fin del PageRank (ordenación de páginas web). Suele durar una media de 4 días y se realiza una vez al mes, aproximadamente. Durante estos días se obtienen diferentes resultados de búsqueda en los distintos servidores de Google. El mejor momento para colocar o actualizar páginas en un sitio web es durante el Google Dance. Si transcurre mucho tiempo entre el fin de esta actualización y la publicación de nuevos contenidos, se reduce la cantidad de páginas que serán incluidas en las próxima actualización. Puede consultarse este baile desde la dirección http://google.dirson.com/dance.php.

Curiosidad 18. El Googlewhacking es un "deporte" que consiste en encontrar una pareja de palabras (que estén incluidas dentro del diccionario inglés) que aparezcan una sola vez juntas en alguna página indexada por Google. Es decir, que buscándolas, obtengamos "Resultados 1 - 1". No sé si alguien lo ha conseguido ya, pero desde luego es un reto interesante.

Curiosidad 19. El comportamiento de Google durante los atentados en EEUU el 11 de septiembre de 2001 fue elogiado por muchos. Realizó cachés de varios medios de comunicación (que en aquel momento estaban colapsados) y condujo muchas de sus búsquedas hacia noticias de actualidad.

Curiosidad 20. Tras la adquisición del archivo de noticias de Usenet que tenía la empresa Deja News, Google publicó una lista con los posts referentes a los hechos más relevantes de la historia de Internet durante estos últimos años. Hay referencias a acontecimientos como las primeras menciones a Google o Yahoo, el primer post anunciando los ataques a las torres gemelas el 11 de setiembre de 2001, las primeras menciones a Linux o Microsoft, la primera discusión sobre el SIDA... Se puede consultar en http://www.google.com/googlegroups/archive_announce_20.html.

Curiosidad 21. Si miramos el "Acerca de..." de la Google Toolbar (la barrita de marras de Google, si es que la tiene instalada), vemos que, además de la versión, aparece la frase en latín De parvis, grandis acervus erit, que podría traducirse como "De las cosas pequeñas se hacen las cosas más grandes". Esta frase fue utilizada en el siglo XVI en un libro de poemas (http://emblem.libraries.psu.edu/whitn088.htm).

Curiosidad 22. Algunas preguntas (hay cientos) directas que tienen respuesta directa en Google:
- Calculadora: (5 * 8) + 5 = 45
- Radio de la tierra: radius of earth in km
- 90 grados fahrenheit en centígrados: 90 fahrenheit in centigrade
- Un día en segundos: one day in seconds
- 1 hora * 128 kbps en megabytes: 1 hour * 128 kbps in megabytes

Curiosidad 23. ¿Qué significa Google? Google es un juego de palabras con el término "googol", acuñado por Milton Sirotta, sobrino del matemático norteamericano Edward Kasner, para referirse al número representado por un 1 seguido de 100 ceros. El uso del término por parte de Google refleja la misión de la compañía de organizar la inmensa cantidad de información disponible en la web y en el mundo, y parece que fue un error a la hora de registrar el nombre de dominio. ¿Cómo se pronuncia? Según el propio Google: como desee, pero pronunciado en inglés sería [guguœl] (la segunda vocal algo así como entre oe).

Curiosidad 24. La página de inicio de Google es tan sencilla porque los diseñadores originales no sabían mucho más de HTML. Después se percataron del éxito obtenido, ya que la sencillez era sinónimo de rapidez. Además el hecho de que al pulsar la tecla Enter comenzara la búsqueda era totalmente novedoso y gustó mucho.

Curiosidad 25. La página de inicio de Google, además, tiene siempre 28 palabras (www.google.com). Surgió por simplicidad y lo tomaron como mandamiento. Los requisitos para contar 28 palabras son: si uno ha cerrado la cesión, si no hay un texto promocional debajo del cuadro de búsqueda, si Google ha sido establecido como la página principal y por lo tanto no aparece el enlace "¡Haga de Google su página principal!" y si se cuenta "©2008 Google” como dos palabras.

Curiosidad 26. El absurdo botón "Voy a tener suerte" nadie lo usa, aunque lo mantienen porque da calidez a los usuarios y ayuda a mejorar lo que ellos llaman "la experiencia Google". Es un botón confortable.