10/07/2008

Envío retrasado del correo

¿Cuántas veces ha ocurrido que tras enviar un email, en los siguientes 30 segundos nos damos cuenta de haber cometido algún error? Olvidar adjuntar un fichero, poner en copia a la persona errónea, simple arrepentimiento, etc.

La idea que propongo es especialmente sencilla para servidores de correo tipo Webmail, aunque bien podría ser implementada por servidores SMTP, si bien seguramente sería más complicado de implementar, pues sería necesario hacer cambios tanto en el servidor como en los clientes.

La idea es introducir un estado más dentro del ciclo de vida de los correos: pre-enviado. A simple vista, tras pulsar en "enviar", nuestro interfaz (Web para el ejemplo, en concreto supondremos GMail) aparentemente habría enviado el email. Durante un tiempo (configurable, y típicamente unos 15 minutos) el correo queda almacenado en el servidor, siendo posible recuperarlo. Transcurrido este periodo, y de forma transparente para el usuario, el email se enviaría al buzón destino, conservando incluso la fecha/hora del envío original. Si por el contrario, durante este "periodo de recuperación" el usuario se da cuenta de que necesita hacer algún cambio en el correo, tiene esta posibilidad. En GMail, por ejemplo, sería un nuevo apartado (o incluso etiqueta) llamado "Pre-enviados". Pinchando en este apartado se podría ver incluso un contador que indicase el tiempo que le queda a cada correo en ese estado antes de ser enviado definitivamente. Además se podría ofrecer un botón al lado de cada uno de estos correos que dijese "Enviar ahora".

Adicionalmente, a la hora de redactar un correo, podría indicarse explícitamente la necesidad de enviarlo inmediatamente, para correos urgentes.

Ésta es la idea. Si uno lo piensa bien, ¿Cuántos correos tienen de verdad una urgencia tal que no se pueda esperar unos 15 minutos antes de enviarlos? Sólo algunos. Y para ellos, tendríamos la opción de "envío inmediato".

A ver si me hacen caso los de google...

6/05/2008

DJ: Mezclando con tonos

Esta es una idea que se me ocurrió hace ya mucho tiempo, cuando hacía mis pinitos poniendo música en discotecas y demás. Para los profanos en el tema, haré una breve exposición de en qué consiste el tema de pinchar, que servirá de preámbulo para mi idea:
Cuando uno pincha música de discoteca, ya sea house, techno, dance, breakbeat, etc., el objetivo consiste en que en la transición entre un tema y el siguiente, ambos suenen simultáneamente y lo hagan de forma coordinada. Para ello, el primer paso es ponerlas a la misma velocidad, y el segundo es hacer que coincidan los "booms", es decir, los graves. Para los de ciencias, esto último sería como poner ambos temas "en fase".
Para cambiar la velocidad de una canción, los reproductores de CD para DJ incorporan un control capaz de hacer esto, habitualmente entre -12% y +12% de la velocidad original de la canción. Esto es una herencia de los clásicos Technics (reproductores de vinilo), que ya incorporaban este control pudiendo variar la velocidad de los discos. Este sistema, precisamente por esa herencia de los "platos", tiene una pequeña pega, y es que el tono de la canción cambia al cambiar su velocidad. Una velocidad muy alta puede hacer que un tema de Bob Sinclair suene como si estuviera cantado por "Alvin y las Ardillas", mientras que una velocidad muy lenta puede ocasionar que Madonna parezca que está cantando desde ultratumba.
Los Pioneer CDJ-100 son unos reproductores de CD que incorporaron por primera vez (al menos yo no lo había visto antes) una tecnología capaz de variar la velocidad de las canciones sin cambiar el tono de las mismas. Esta característica, que ellos llamaron Master Tempo (y que otras marcas llamarán de otra forma) podía activarse o desactivarse.
Pues bien, una vez hecha esta introducción, comento mi idea, que es tan simple que podría explicarse en una única frase, aunque lo matizaré adecuadamente:
  • Si se es capaz de cambiar la velocidad de las canciones cambiando el tono
  • Y se es capaz de cambiar la velocidad de las canciones sin cambiar el tono
  • Se podría/debería ser capaz de cambiar sólo el tono de las canciones
  • Y por lo tanto, aquí viene mi idea: Se podría disponer de dos controles independientes:
    • Un control para cambiar la velocidad de las canciones sin cambiar el tono de las mismas
    • Un control para cambiar el tono de las canciones sin cambiar la velocidad de las mismas
De esta forma, podría disponerse de unos "cacharros" con los que se pudiera pinchar de forma avanzada, en la que no sólo se acompasaran las canciones adyacentes durante su mezcla, sino que además ¡¡¡se buscara algún tipo de armonía entre los tonos de ambas!!!

Evidentemente estos controles serían más exigentes con los DJ, ya que para usarlos adecuadamente sería condición necesaria tener oído, pero también es cierto que el uso de muchos controles en este tipo de equipamiento es sencillamente opcional, y que esta característica aportaría muchas posibilidades.

Señores de Pioneer, Numark, Denon... ¿A qué esperan?

5/12/2008

MyLowCost

En la línea de reaprovechar ideas que funcionan en un ámbito para exportarlas a ámbitos distintos, el otro día pensaba sobre las compañías aéreas Low Cost. La verdad es que no conozco exactamente cómo funcionan, pero puedo imaginarme que hay un algoritmo que decide en tiempo real el precio de los billetes, atendiendo a un conjunto de reglas lógicas que se van aplicando en un determinado orden. Por ejemplo:
  • El precio máximo de cada plaza es de MAX € y el mínimo de MIN €.
  • Si se han vendido más del 50% de las plazas, entonces el precio debe encarecerser un 10% sobre el "precio habitual".
  • Si se han vendido menos del 15% de las plazas, entonces puede ofrecerse un descuento del 40%.
  • Si la fecha del vuelo es para dentro de más de 2 meses, puede ofrecerse un descuento del 15%.
  • ...etc.
Entonces pensé que este modelo podría ser exportable a otros ámbitos:
  • Alquileres de inmuebles de ocio (pisos de playa, casas rurales)
  • Alquiler de material de ocio (material deportivo, embarcaciones, instalaciones deportivas...)
  • Profesores particularesç
  • En general cualquier servicio o préstamo que cumpla ciertas características:
    • Su planificación temporal por anticipado suponga un claro beneficio al prestador del servicio, sobre todo de cada a optimizar la explotación de la "materia prima" del servicio (el piso en el caso de alquileres, su tiempo en el caso de profesores, etc.)
    • El servicio pueda prestarse para un número limitado de plazas (plazas de un vuelo, de una clase de inglés, quincenas para los alquileres en verano, etc.)
¿Qué se busca? A ver, desde mi punto de vista, la globalización e Internet han conseguido básicamente optimizar recursos. Como el mercado es más abierto, la competencia es mayor, y se premian los precios más competitivos, optimizando los recursos. Las compañías de bajo coste siguen esta filosofía. Ofrecen precios competitivos al realizar compras con antelación, y de esta forma se garantizan la ocupación de un número determinado de plazas, puediendo optimizar el vuelo, que generalmente no va vacío. Luego los billetes se encarecen, en el período típico de compra de pasajes, y finalmente vuelven a abaratarse a última hora, para exprimir los últimos euros.
Pues la idea sería construir un portal (http://www.mylowcost.com) tipo "Comunidad de usuarios", quizá del estilo de ebay, pero donde los usuarios podrían ofrecer sus servicios de este tipo (habría que realizar un análisis profundo del tema para determinar la lista de servicios procedentes) y ajustar para cada uno de ellos los parámetros de las reglas automáticas de cálculo de precio. Dependiendo del tipo de servicio (y quizá del modelo de negocio), el sistema podría
incorporar alguna pasarela de pago tipo Google Checkout. El uso de estas pasarelas podría facilitar el cobro por parte del sistema de una comisión (tipo 1%). De no usarse pasarela, la viabilidad del sistema estaría condicionada por los ingresos de publicidad (Google AdSense).

5/05/2008

Portal de gestión de configuraciones

Cuántas veces hemos "formateado" el PC, perdiendo toda customización o tuneo personal de cada uno de nuestros programas: Los botones del firefox, del Word, la configuración de las cuentas de correo en el programa de correo (Lotus Notes, Thunderbird), los propios "settings" del Windows, etc.

Bueno, pues se me ha ocurrido algo que podría eliminar esta necesidad de reconfigurar continuamente las mismas aplicaciones:

La idea es un portal que gestione las configuraciones de todas las aplicaciones que manejamos. Mediante el desarrollo de plugins para cada uno de estos programas, se podría exportar esta información a un formato intercambiable (ya sea un XML, o un fichero campo-valor, como los ficheros de properties que se utilizan en programación) y subirla al servidor, de forma transparente al usuario. Igualmente, este plugin podría importarla de Internet y configurar la aplicación de acuerdo con los parámetros almacenados.

Utilidades:
  • Backup centralizado de las configuraciones de todas las aplicaciones.
  • Posibilidad de compartir configuraciones con otros usuarios (esto cobra mucha importancia en aplicaciones donde el rendimiento es crítico, como podrían ser herramientas de desarrollo, programas de descarga P2P, o incluso servidores de base de datos, de aplicaciones, etc.)
  • Posibilidad de disponer de configuraciones tipo utilizables por varios equipos, muy útil en aulas de formación, equipos de desarrollo, entornos profesionales de trabajo, etc.
Bueno, la idea habría que desarrollarla mucho más, pero creo que el core está explicado.

4/21/2008

Videovigilancia Web

Hablaba en este blog hace ya casi 2 años sobre el negocio de la seguridad. Pues bien, hoy se me ha ocurrido lo que seguro será un servicio prestado de forma masiva en breve a todo el primer mundo: La videovigilancia a través de Internet. Esto seguramente no es nuevo (aunque tampoco creo que esté implantado de forma masiva, por lo que la oportunidad está ahí), pero sí he pensado en algún matiz importante.

La idea es bien simple: Uno instala cámaras (tipo Webcam es más que suficiente) en la ubicación que desea vigilar (casa, oficina, etc.). Estás cámaras están conectadas al PC (¿Existen Webcams por bluetooth o Wifi para evitar el tema cableado...? Bueno, existirán en el futuro...). Estas imágenes, además de estar accesibles al usuario en tiempo real a través de Internet, podrían ser almacenadas en un servidor, de forma que el usuario no sólo pueda vigilar la ubicación deseada en tiempo real, sino que además pueda acceder a un archivo (todo, evidentemente, via Web) en el que visualizar cualquier momento de la grabación. El servicio se cobraría por cada cámara, y su coste sería variable en función de distintos parámetros: Calidad de la imagen, tiempo de almacenamiento en servidor (lógicamente tras un tiempo prudencial, la imágen podría ser eliminada opcionalmente del servidor. La no eliminación implicaría un servicio más caro), alarmas ante detecciones de movimiento (podría incluso enviarse un email o MMS al usuario con el video en el que se detecta el movimiento, así éste podría comprobar si es una presencia extraña no deseada, o simplemente una mascota), etc.

El coste del almacenamiento es cada vez menor (sólo hay que ver la evolución de sitios como Youtube, Flickr, GMail, que gestionan miles (¿millones?) de Terabytes), el ancho de banda de las conexiones ADSL/Cable es cada vez mayor y más baratos, y como comentaba en el post de 2006 que cito al principio, la seguridad es una necesidad básica de las personas, sobre todo de las que precisamente disponen de mayor poder adquisitivo, por lo que creo que la idea, además de ser viable, será llevada a cabo tarde o temprano por alguna empresa.

1/28/2008

Google Personal Assistant

La idea que me vino el otro dia a la cabeza es un poco "rara", y a dia de hoy quizá demasiado indeterminada. Aún así, la intentaré explicar:
Básicamente lo que se me ocurrió es que, al igual que Google nos "estudia" para ofrecernos la publicidad que más se adapta a nuestras necesidades (y que por lo tanto es más rentable para sus clientes, y en definitiva para Google), bien podría ofrecer un servicio "genérico" de asistencia personal. Y con asistencia personal me refiero al típico secretario que lleva todas los asuntos, personales y profesionales de su jefe. Los "motores" de esta idea son los siguientes:
  • Google dispone de varios canales para comunicarse con nosotros. El correo electrónico, el móvil (para SMS, tal y como son las notificaciones de Google Calendar).
  • Google conoce muchas de nuestras actividades planificadas (al menos para usuarios de GMail, Google Calendar, Google Docs, Blogger, etc.). Conoce qué Blogs y Webs visitamos, nuestros enlaces favoritos (Google Bookmarks).
  • En poco tiempo, gracias a Android, imagino que podrá conocer nuestra situación geográfica (Entiendo que en apenas 2 años la mayoría de los móviles incorporarán GPS casi de serie).
  • Tiene acceso a multitud de "servicios útiles" online (tráfico, espectáculos, reservas de viajes, restaurantes, etc.)
¿Cómo sería este servicio? La verdad es que ya digo que aún lo veo difuso (me gusta jugar a ser visionario...) pero yo imagino un Google Personal Assistant (GPA en adelante) capaz de:
  • Analizar mi calendario con correos electrónicos, conversaciones de chat y demás, para detectar incongruencias, en plan "Tiene una cita en la oficina a las 18:00 y otra en el centro a las 18:15, por lo que es imposible que pueda asistir a las 2, ya que se separan en más de 30 minutos de coche"
  • Realizar sugerencias interesantes de forma proactiva. "He encontrado una oferta de vuelo a uno de sus destinos favoritos con un precio inferior a la media de los precios que usted pagó el año pasado, y en las fechas en que suele viajar usted"
  • Comprar entradas al precio más barato que encuentre para un evento deportivo o de ocio en general. Envio un SMS con mi perfil a google, le digo qué quiero, y él se encarga de comprar (o al menos reservar), con mis credenciales de Google, no sé...
  • ¿Podría llegar a detectar estados de ánimo a partir de la información que gestiona? Yo diría que sí, aunque eso mismo me asusta bastante. Si GPA conoce nuestro estado de ánimo podría centrarse en intentar animarme, buscando y recomendándome actividades que, por otra parte, también sabría que me relajan.
Bueno, la idea es un poco peliculera, pero se trata de un asistente basado en pocas claves:
  • La cantidad de información que en muchos casos Google tiene de nosotros, y las posibilidades que se abren a partir del análisis de dicha información (Bueno, siempre que no sea ilegal, que está por ver)
  • Actuación de forma proactiva, para que de verdad sea un asistente

1/22/2008

Meta-evolución

El otro día hice la siguiente reflexión, que considero interesante:

La teoría de la evolución se basa esencialmente en 2 principios:
  1. La variedad de las características de los individuos de sucesivas generaciones, que se obtiene a través de dos procesos muy diferentes:
    • El mestizaje, es decir, la mezcla de genes del macho y la hembra, derivados de una reproducción sexual. La elección de genes incorpora un factor aleatorio que proporciona una gran diversidad en los individuos descencientes. Gracias a este mecanismo se consigue que el individuo de la generación n que sobreviva sea aquél que conjugue mejor las características ventajosas de sus progenitores (genreación n-1).
    • Las mutaciones. Sabemos que con una muy pequeña frecuencia se producen mutaciones genéticas, que son responsables de los cambios más drásticos (¿Cómo es el estado transitorio de un anfibio a un mamífero? ¿Existe?). Entiendo que en la mayor parte de los casos una mutación genética provoca una gran desventaja, trivializando: Nacer sin una pierna, con las piernas juntas, etc. Sin embargo, en casos muy raros, la mutación podría ser beneficiosa: El mismo ejemplo de las piernas juntas pudo ser el origen de los delfines, por imaginar...
  2. La selección natural, que elije a aquellos individuos cuyas características se han adaptado mejor al entorno, perpetuando de esta forma las características concretas y con ellas la mejor adaptación.
Bueno, pues mi reflexión iba en la siguiente línea: ¿Por qué se producen las mutaciones? Sabemos que ciertas condiciones del entorno, como por ejemplo la radiación, pueden producir mutaciones, pero ¿Es siempre externa la causa de dichas mutaciones? O dicho de otra forma ¿Es posible que la probabilidad de que existan mutaciones en los genes sea provocada por una causa endógena? ¿"Está escrita en los genes" esa posibilidad de mutar?

La respuesta afirmativa a esta última pregunta implicaría que la evolución nos ha seleccionado no como especie, sino como conjunto de especies, gracias a la posibilidad de mutar nuestros genes (me refiero a una posibilidad adicional a las posibilidades provocadas por el entorno) , es decir, que el hecho de que esta posibilidad adicional de mutar sea intrínseca a nuestro código genético nos confiere la cualidad de ser seres meta-evolutivos.

"Hemos evolucionado gracias a nuestra capacidad para evolucionar"

Échale divagación...