How I solved a big problem with a few lines of code

Problem statement

In the last weeks my girlfriend got some calls from a guy in Iran in her fixed number from Madrid. It seems the guy got the wrong number and he hanged immediately after hearing her voice. He is quite persisting and keeps trying, maybe hoping that the little goblins on the Internet will route him to the right person eventually. On top of that there is quite a time zone difference between the Netherlands and Iran so he was not calling at convenient times for our daily dose of sleep.

Solution

Fortunately we use a software PBX called Asterisk, which is quite flexible and powerful and moreover it is free software.

After a little bit of Googling I could solve the Iranian problem with just 4 lines of code in the dialplan:

exten => XXXXXXXXX/YYYYYYYYY,1,NoOp(Phone call from Iran)
exten => XXXXXXXXX/YYYYYYYYY,n,Set(LANGUAGE()=en)
exten => XXXXXXXXX/YYYYYYYYY,n,Playback(privacy-stop-calling-not-welcome2)
exten => XXXXXXXXX/YYYYYYYYY,n,Hangup()

Being XXXXXXXXX my girlfriend’s phone number and YYYYYYYYY the number from the Iranian guy. The four lines do the following: the first one is just used for logging, the second one switches the language to English from our default Spanish, the third one plays the announcement “You are not welcome here, please stop calling this number!” and the fourth line just hungs up. Since the guy also blocks his caller ID from time to time I also added similar code to invite anonymous calls to show their number.

The guy has just called once since the introduction of the new dialplan, I guess he got the message.

It is amazing how fast the telecom world evolves. Some years ago I could not imagine you could solve this with your own free PBX.

Jugando con el router

Hace unas semanas me decidí a cambiar el router de casa, entre otras cosas porque la tele recomienda utilizar WiFi tipo N para el streaming de video en alta definición.

En lugar de comprar el último modelo con todas las prestaciones de alguna marca conocida (Linksys, Netgear, etc.) me decidí por el económico TP-Link TL-WR1043ND por menos de la mitad de lo que cuesta un router de los caros.

Aunque el hardware es relativamente decente, el software tiene algunas lagunas, por ejemplo la calidad de servicio (QoS) no es nada intuitiva de configurar.

El siguiente paso en mi plan fue instalar OpenWRT.  OpenWRT es un firmware alternativo para routers y dispositivos similares basado en Linux. Con OpenWRT es posible instalar nuevos programas que añaden funcionalidad extra al router con la única limitación de la memoria disponible. En mi caso, a pesar de solo contar con 8 Mb he podido instalar y configurar:

  • La funcionalidad estándar de cualquier router: DHCP, cortafuegos, etc.
  • IPv6 via un túnel con SixXS.
  • Calidad de servicio (QoS) para poder navegar por Internet y utilizar VoIP con rapidez incluso cuando el BitTorrent está funcionando.
  • DNS dinámico para poder conectarme al router desde Internet sin necesidad de saber la dirección IP (que en mi caso es dinámica).
  • OpenVPN para poder acceder a la red de mi casa incluso desde el móvil y para establecer una comunicación segura con este servidor.

Estoy muy satisfecho con la compra y la posterior instalación y configuración de OpenWRT, ya que me permite tener funcionalidades avanzadas a un precio económico. La documentación sobre OpenWRT es extensa aunque no siempre actualizada por lo que solo la recomiendo para valientes (y gente que tenga un router de backup por si las moscas).

Las ruedas de invierno

Sin duda alguna las ruedas de invierno han sido mi compra del año. El invierno está siendo bastante duro y hubo un par de días en los que pasé auténtico miedo al notar que el coche deslizaba demasiado en la carretera. Un compañero de trabajo me comentó la historia de las ruedas de invierno y decidí comprarlas. Desde entonces el coche va sobre raíles (disclaimer: una placa de hielo es una placa de hielo y eso no hay rueda que la salve). Ayer mismo pude circular a unos 50 kilómetros por hora con un par de centímetros de nieve reciente sin problema ninguno de estabilidad ni derrape, eso sí el ESP se activó un par de veces al cambiar de carril (densidad de nieve distinta en cada lado).

Las ruedas de invierno son iguales que las ruedas de invierno en cuanto a tamaño y dibujo (no llevan clavos). La principal diferencia es la composición del neumático: el material de la rueda de verano no funciona muy bien por debajo de 7 grados centígrados y el agarre disminuye considerablemente. Sin embargo la rueda de invierno mantiene la adherencia por debajo de esa temperatura, aumentando la seguridad en inviernos difíciles como éste (insisto en que no hay rueda que soporte una señora placa de hielo).

Las ruedas de invierno tienen el código “M+S”. En algunos países del centro-norte de Europa no son obligatorias pero sí recomendadas. Ese es el caso de Alemania, en donde el código de circulación indica que en cada momento el coche debe llevar los neumáticos adecuados a las condiciones meteorológicas. La consecuencia de ello es que en caso de accidente el seguro se puede lavar las manos si el tiempo no era bueno y el coche llevaba las ruedas de verano.

Tanto en Bélgica como en los Países Bajos y me imagino que en los demás países de la zona es la costumbre tener dos conjuntos de ruedas: las de invierno y las de verano, y se suelen cambiar en Octubre/Noviembre y Abril/Mayo. En la misma tienda / taller es posible guardar las ruedas que no están en uso. A mí me costó 30 euros que me las guardaran por 6 meses. El cambio de ruedas lleva una hora aproximadamente, una media hora más si hay que hacerle el paralelo.

¿Utiliza alguien esas ruedas en España? No me parece una idea tan descabellada, el invierno en Madrid puede ser muy duro.

Manifiesto: En defensa de los derechos fundamentales en Internet

Ante la inclusión en el Anteproyecto de Ley de Economía sostenible de modificaciones legislativas que afectan al libre ejercicio de las libertades de expresión, información y el derecho de acceso a la cultura a través de Internet, los periodistas, bloggers, usuarios, profesionales y creadores de internet manifestamos nuestra firme oposición al proyecto, y declaramos que…

  1. Los derechos de autor no pueden situarse por encima de los derechos fundamentales de los ciudadanos, como el derecho a la privacidad, a la seguridad, a la presunción de inocencia, a la tutela judicial efectiva y a la libertad de expresión.
  2. La suspensión de derechos fundamentales es y debe seguir siendo competencia exclusiva del poder judicial. Ni un cierre sin sentencia. Este anteproyecto, en contra de lo establecido en el artículo 20.5 de la Constitución, pone en manos de un órgano no judicial -un organismo dependiente del ministerio de Cultura-, la potestad de impedir a los ciudadanos españoles el acceso a cualquier página web.
  3. La nueva legislación creará inseguridad jurídica en todo el sector tecnológico español, perjudicando uno de los pocos campos de desarrollo y futuro de nuestra economía, entorpeciendo la creación de empresas, introduciendo trabas a la libre competencia y ralentizando su proyección internacional.
  4. La nueva legislación propuesta amenaza a los nuevos creadores y entorpece la creación cultural. Con Internet y los sucesivos avances tecnológicos se ha democratizado extraordinariamente la creación y emisión de contenidos de todo tipo, que ya no provienen prevalentemente de las industrias culturales tradicionales, sino de multitud de fuentes diferentes.
  5. Los autores, como todos los trabajadores, tienen derecho a vivir de su trabajo con nuevas ideas creativas, modelos de negocio y actividades asociadas a sus creaciones. Intentar sostener con cambios legislativos a una industria obsoleta que no sabe adaptarse a este nuevo entorno no es ni justo ni realista. Si su modelo de negocio se basaba en el control de las copias de las obras y en Internet no es posible sin vulnerar derechos fundamentales, deberían buscar otro modelo.
  6. Consideramos que las industrias culturales necesitan para sobrevivir alternativas modernas, eficaces, creíbles y asequibles y que se adecuen a los nuevos usos sociales, en lugar de limitaciones tan desproporcionadas como ineficaces para el fin que dicen perseguir.
  7. Internet debe funcionar de forma libre y sin interferencias políticas auspiciadas por sectores que pretenden perpetuar obsoletos modelos de negocio e imposibilitar que el saber humano siga siendo libre.
  8. Exigimos que el Gobierno garantice por ley la neutralidad de la Red en España, ante cualquier presión que pueda producirse, como marco para el desarrollo de una economía sostenible y realista de cara al futuro.
  9. Proponemos una verdadera reforma del derecho de propiedad intelectual orientada a su fin: devolver a la sociedad el conocimiento, promover el dominio público y limitar los abusos de las entidades gestoras.
  10. En democracia las leyes y sus modificaciones deben aprobarse tras el oportuno debate público y habiendo consultado previamente a todas las partes implicadas. No es de recibo que se realicen cambios legislativos que afectan a derechos fundamentales en una ley no orgánica y que versa sobre otra materia.

Este manifiesto, elaborado de forma conjunta por varios autores, es de todos y de ninguno. Si quieres sumarte a él, difúndelo por Internet.

Probando Google Wave

Desde hace unos días estoy probando Google Wave, cortesía de un compañero de trabajo que me pasó una invitación. Me está causando buena impresión, pero no creo que cambie la vida de nadie. A Google Wave todavía le queda bastante desarrollo por delante y personalmente me cuesta encontrar situaciones diarias en las que Google Wave pueda ser tan revolucionario.

Creo sin embargo, que en el mundo laboral va a ser un tremendo éxito como reemplazo parcial del correo electrónico. La colaboración de varias personas en un mismo documento es algo que cuesta mucho via correo electrónico.

Un gran punto a favor de Google Wave es que tanto el protocolo como la implementación de referencia de Google son abiertos, lo que va a hacer que muchos se animen a instalarlo en sus propios servidores.

Google Wave está diseñado para facilitar su integración con otros servicios ¿Tienes ya cuenta de Google Wave? Entonces deberías ver algo aquí debajo ;-)

[wave id="googlewave.com!w+yPq5yDsqA"]

No a Madrid 2016

Aunque sea a costa de perder unos cuantos amigos no puedo por menos que manifestar públicamente mi oposición a la candidatura de Madrid para albergar los Juegos Olímpicos de 2016. Esta es una selección de mis razones:

  • No hay dinero. Los Juegos Olímpicos cuestan un pastizal, Grecia todavía no ha terminado de pagar los suyos y el Ayuntamiento de Madrid tiene una deuda tremenda por lo de la M-30. Como haga Madrid los Juegos van a poner parquímetros hasta en los pasillos de las casas.
  • Es un capricho de Alberto Ruiz-Faraón.
  • En Madrid se descuida cualquier otro deporte que no sea el fútbol. Veasen los problemas del Estudiantes con su cancha.
  • En el Rockodromo se juega al baloncesto (hasta que echen al Estu) y en el Palacio de los Deportes se organizan conciertos. Eso no es serio.
  • Los problemas de seguridad.
  • Los problemas de tráfico.
  • Los precios de las entradas a los eventos suelen ser prohibitivos, muy poca gente puede permitirse ir. La mayoría de los madrileños lo verá por la tele y como compre los derechos Roures habrá que pagarlo…
  • La organización del Eurobasket fue un cachondeo, con la grada inferior llena de VIPs que estaban más pendientes de salir en la tele de lo que pasaba. Los aficionados de verdad estaban arriba del todo.
  • Con todo lo que hay que construir los políticos se lo van a llevar crudo a manos llenas.
  • Chicago tiene a Obama, Río tiene a… Río y Madrid a Raul González Blanco.
  • Si se hacen los Juegos Olímpicos en otra ciudad es casi imposible que actuen Bisbal, Camela, el sueño de Morfeo o el Canto del Loco…
  • Por llevar la contraria y tocar los coj…

He dicho.

Getting Things Done

Getting Things Done es un conocido libro de David Allen. Allen lleva 20 años trabajando como consultor ayudando a ejecutivos a mejorar su productividad. Getting Things Done (GTD) es una metodología que el autor propone para conseguir una concentración en el desempeño del trabajo similar a la de los deportistas de élite.

La premisa de la que se parte GTD es bien sencilla: la mente humana no es capaz de recordar todas las tareas pendientes y eso causa estrés, sensación de desconfianza y falta de concentración en lo que se está haciendo. GTD por tanto propone un sistema de listas para recoger todos esos “cabos sueltos” de tal manera que la mente se vea liberada de toda incertidumbre. Se proponen varias listas, siendo las más importante la de acciones siguientes a realizar (next actions), otra con las tareas que se han delegado (waiting for) y otra con tareas que quizás hagamos algún día (someday/maybe).

La manera de popular estas listas está también descrita en la metodología. Así pues, el proceso tiene varias fases: la recolección de ideas y cabos sueltos (stuff), el procesado, acción inmediata para tareas de menos de dos minutos, posponer acciones o delegarlas, etc. Además hay una revisión semanal para evitar perder el control del sistema.

Idealmente, una persona que siga la metodología completamente es capaz de saber (o mejor dicho poder saber) en todo momento todas las tareas que tiene que realizar o que tiene delegadas. De esta manera a la hora de ponerse a trabajar tiene una visión completa de las cosas que hay que hacer. Con esta visión es más sencillo poder elegir la tarea más apropiada a cada momento. Acabar las tareas tiene el premio de poder eliminarlas de la lista, lo cual sirve como premio.

He empezado a aplicar la metodología, tanto en el trabajo como en mi vida privada. Creo que todavía me falta bastante para poder dominar GTD completamente, pero los primeros pasos van en una buena dirección y empiezo a notar la mejoría.