Wikipedia tiene un buen artículo sobre el Protocolo de Kioto:

El Protocolo de Kioto sobre el cambio climático2 es un protocolo de la CMNUCC Convención Marco de las Naciones Unidas sobre el Cambio Climático , y un acuerdo internacional que tiene por objetivo reducir las emisiones de seis gases de efecto invernadero que causan el calentamiento global: dióxido de carbono (CO2), gas metano (CH4) y óxido nitroso (N2O), además de tres gases industriales fluorados: Hidrofluorocarbonos (HFC), Perfluorocarbonos (PFC) y Hexafluoruro de azufre (SF6), en un porcentaje aproximado de al menos un 5%, dentro del periodo que va desde el año 2008 al 2012, en comparación a las emisiones al año 1990.

La realidad

Bueno, esa era la intención. Lo que ha sucedido en realidad ha sido:

  1. Muy pocos países han conseguido reducir las emisiones de CO2
  2. Se creó un mercado de “aire limpio”, en el cual los países que excedían en sus emisiones de CO2 compraban “no emisiones” a los países que sí cumplían. Un anglosajón diría que literalmente hemos creado un mercado “out of thin air“. Yo lo completaría con un “out of thin clean air”

En cuanto al primer punto, hay que destacar que España es uno de los países más idiotas del Protocolo de Kioto: asumimos unos compromisos irrealizables, a los que en realidad nadie nos obligaba, y en lugar de abandonar el Protocolo, como hicieron el resto de países que no iban a cumplir (Estados Unidos, Canadá, etc), seguimos y hemos pagado y vamos a pagar un dineral.

En cuanto al segundo punto, en realidad los países “contaminadores” no están comprando a países “limpios”, sino (mayoritariamente) a países subdesarrollados, que simplemente no contaminan más porque no tienen industria, no porque su industria sea eficiente.


¿Y España?

España ha fracasado absolutamente en todo: no hemos cumplido con las emisiones, y en lugar de abandonar, seguimos porque somos “buenrrollistas”, y como consecuencia vamos a pagar unos 800 millones de euros por el periodo 2008-2012.

Ya es demasiado tarde para ahorrarnos esos 800 millones de euros (la fecha límite era el 31 de diciembre de 2011), pero lo que sí podemos hacer “darnos de baja” del “club post-Kioto“.


¡Contaminador! ¡Antiecológico! ¡Asesino de la Naturaleza!

Para el carro.

Me gustaría que cumpliéramos con Kioto, con Durban y con Bali, pero ya que no vamos a poder hacerlo, y ya que tenemos la economía hecha trizas, lo mejor es que nos borremos y que lo hagamos lo mejor que podamos.

Y sin pagar estúpidas sanciones autoimpuestas.

Prefiero destinar esos 800 millones de euros a mil cosas más importantes.


D-BUS (Desktop Bus) is a simple inter-process communication (IPC) open-source system for software applications to communicate with one another. It replaced DCOP in KDE4 and has also been adopted by Gnome, XFCE and other desktops. It’s, in fact, the main interoperability mechanism in the “Linux desktop” world thanks to the standards.

The architecture of D-Bus is pretty simple: there is a dbus-daemon server process which runs locally and acts as a “messaging broker” and applications exchange messages through the dbus-daemon.

But of course you already new that because you are supersmart developers and/or users.

D-Bus on Windows

What you may not know is how much damage is D-Bus making to open source software on Windows.

A few years ago I tried to introduce kdelibs for a large cross-platform project but I got it rejected, despite some obvious advantages, mainly due to D-Bus.

Performance and reliability back then was horrible. It works much better these days but it still scares Windows users. In fact, you may also replace “it scares Windows users” with “it scares IT departments in the enterprise world*”.

The reason?

A dozen processes randomly started, IPC with no security at all, makes difficult to upgrade/kill/know when to update applications, and many more. I’m not making this out, this has already happened to me.

* yes, I know our friends from Kolab are doing well, but how many KDE applications on desktop have you seen out of that “isolation bubble”

D-Bus on mobile

One other problem is D-Bus is not available on all platforms (Android, Symbian, iOS, etc), which makes porting KDE applications to those platforms difficult.

Sure, Android uses D-Bus internally, but that’s an implementation detail and we don’t have access to it). That means we still need a solution for platforms where you cannot run or access dbus-daemon.

Do we need a daemon?

A few months ago I was wondering: do we really need this dbus-daemon process at all?

What we have now looks like this:

As you can see, D-Bus is a local IPC mechanism, i. e. it does not allow applications to communicate over the network (although technically, it would not be difficult to implement). And every operating system these days has its own IPC mechanism. Why create a new one with a new daemon? Can’t we use an existing one?

I quickly got my first answer: D-Bus was created to expose a common API (and message and data format, i. e. a common “wire protocol”) to applications, so that it’s easy to exchange information.

As for the second answer, reusing an existing one, it’s obvious we cannot: KDE applications run on a variety of operating systems, every one of them has a different “native” IPC mechanism. Unices (Linux, BSD, etc) may be quite similar, but Windows, Symbian, etc are definitely very different.

No, we don’t!

So I though let’s use some technospeak buzzword and make HR people happy! The façade pattern!

Let’s implement a libdbusfat which offers the libdbus API on one side but talks to a native IPC service on the other side. That way we could get rid of the dbus-daemon process and use the platform IPC facilities. For each platform, a different “native IPC side” would be implemented: on Windows it could be COM, on Android something else, etc


The advantage of libdbusfat would be applications would not need any change and they would still be able to use DBus, which at the moment is important for cross-desktop interoperability.

On Unix platforms, applications would link to libdbus and talk to dbus-daemon.

On Windows, Android, etc, applications would link to libdbusfat and talk to the native IPC system.

By the magic of this façade pattern, we could compile, for instance, QtDBUS so that it works exactly like it does currently but it does not require dbus-daemon on Windows. Or Symbian. Or Android.


QtMobility implements a Publish/Subscribe API with a D-Bus backend but it serves a completely different purpose: it’s not available glib/gtk/EFL/etc and it’s implemented in terms of QtDBUS (which in turn uses dbus-daemon for D-Bus services on every platform).

It’s, in fact, a perfect candidate to become a user of libdbusfat.


A lot of work.

You need to cut dbus-daemon in half, establish a clear API which can be implemented in terms of each platform’s IPC, data conversion, performance, etc. Very interesting work if you’ve got the time to do it, I must say. Perfect for a Google Summer of Code, if you already know D-Bus and IPC on a couple of different-enough two platforms (Linux and Windows, or Linux and Android, or Linux and iOS, etc).


TL;DR: The idea is to be able to compile applications that require DBus without needing to change the application. This may or may not be true on Android depending on the API, but it is true for Windows.

Are you brave enough to develop libdbusfat it in a Qt or KDE GSoC?

This is a short one and probably doable as a Summer of Code project.

The idea: add support for the Microsoft compiler and linker and Visual Studio projects and solutions (.sln, .vcproj, et)c in KDevelop, at least in the Windows version.

QtCreator has suport for the first part (compiler and linker).

For the the second part (solutions and projects), code can probably be derived (directly or indirectly) from MonoDevelop‘s and CMake‘s. The starting point would be MSBuild support, as it’s what VS2010 is based on.

Bonus points if you add C#/.NET support (Qyoto/Kimono).

In a perfectly orchestrated marketing campaign for a 100% free-libre tablet called Spark that will run KDE Plasma Active, Aaron Seigo writes today about the problems they are facing with GPL-violations.

Apparently, every Chinese manufacturer is breaking the GPLv2 by not releasing the sources for their modified Linux kernel. Conversations and conversations with Zenithink (designers of the Spark), Synrgic (designers of the Dreambook W7), etc have arrived nowhere. To the point that CordiaTab, another similar effort using Gnome instead of KDE, has been cancelled.

I have to say I am very surprised at the lack of the kernel sources. What is the Free Software Foundation doing? Why don’t we seek ban of all imports of tablets whose manufacturers don’t release the full GPL source?

Apple got the Samsung GalaxyTab imports blocked in Germany and Australia for something as ethereal as patents covering the external frame design. We are talking about license infringement, which is easier to demonstrate in court.

China may ignore intellectual property but they cannot ignore business, and no imports means no business. Let’s get all GPL-infringing tablet imports banned and we will get more source in two weeks than we can digest in two years. Heck, I’m surprised Apple is not trying this in court to block Android!

Apparently HTML5 applications are the best thing after sliced bread.

HTML5 is the first platform any mobile vendor supports: iPhone, Android, Windows Phone, BlackBerry, Symbian. All of them.

Windows 8 is said to promote HTML5 as the preferred application development solution.

I used to look kindly at that. But about a month ago I started to get worried: is HTML5 good for everything?

Long-lived applications

In military, industrial, warehouse management, medical, etc is not rare that bespoke applications are developed and stay in use for many years (and I really mean many: 10, 20 or even more!) with barely an update. It’s not rare that those applications only receive very small updates once very 5 years. Those applications, not Angry Birds, are what keeps the world running: troops know what supplies they can count on, iPhones are manufactured, FedEx is able to deliver your package and your doctor is able to check your health.

But now that everybody seems to be moving to HTML5 webapps, what happens when my warehouse management application is a webapp and the additions in the newest browsers make the webapp no longer work?

Are vain upgrades the future?

Say my webapp is released in 2014 and it works fine with Firefox 14.0 and Chrome 26.0, the newest browsers when I release the application in 2014. Fast-forward to 2020 and Firefox 14.0 and Chrome 26.0 do not even install on Windows 10 computer! What’s the solution?

Should the customer pay for a huge update and redesign to make it work with Firefox 27.1 and Chrome 41.0 in 2020?

A virtual machine with Windows 8 and Firefox 14.0? A portable Mozilla Firefox 14.0 on Windows 10 in 2020 to be able to use that line-of-business application that only requires a small update once or twice every 5 years? How are the virtual machine and/or Portable Firefox 14.0 different from or better than a fat client? What’s the advantage? I’d say none!

Native applications usually do not have that kind of problems because APIs are much more stable. You can still run Win16 applications on Windows 7!

You don’t believe me? We may soon be developing for 76 browsers!

While HTML5 may be fine for applications which are updated very often, it makes me feel very uneasy to see it used in environments where applications will be rarely updated, such as SCADAs, warehouse management, control system, medical records, etc.

A solution is needed

It looks like that choice of technology is going to make those applications much more expensive in the medium and long term, paying for “adaptations to new browsers” (sorry, I resist to call “update” or “upgrade” to something that adds zero value other than being able to run on a newer browser).

Or maybe it’s about time to define actual “HTML5 profiles”. ACID3 seems to be too weak of a profile: two very different browsers may pass ACID3 yet a webapp would work with one browser and fail with the other due to bugs, missing features/added features, etc.

Something needs to be done.

Hace un par de meses Martín Varavsky se preguntaba porqué apenas hay premios Nobel españoles. No es la primera vez que lo hace, ni el único.

Llevamos años escuchando que la productividad de las empresas españolas es muy baja. Que tenemos demasiadas vacaciones, demasiados puentes, que trabajamos poco. Y sin embargo la realidad es que estamos más horas que ningún otro país en el trabajo, y que cuando uno echa cuentas, no hay tantos festivos ni vacaciones con respecto a otro país. ¿Qué falla?

Igual frío un alfiler que coso un huevo

Pues creo que tiene algo que ver con que el 99% de las empresas españolas son PYMEs, muchas de ellas incluso microempresas (menos de 10 trabajadores y 2 millones de euros de facturación).

En España tenemos fundamentalmente empresas pequeñas y muy pequeñas que intentan dar servicio de todo y a todos.

Cuando uno se pone a mirar los epígrafes del IAE en los que está dada de alta una empresa, se queda a cuadros: es habitual que una empresa de pinturas esté dada de alta (y “ejerza”) también en actividades informáticas, electricidad, albañilería y pequeños trabajos de construcción, construcción de bicicletas y hasta en astrólogos y similares si se tercia.

Como dice la sabiduría popular, el que mucho abarca poco aprieta: el resultado de querer hacer de todo es trabajadores no especializados que igual pintan un pared, que instalan un router o le hacen una estantería de madera a medida, se la pintan y se la instalan.

¿Qué hay de malo en esto? Que se pierde mucho tiempo formándose en lo básico de cada cosa, y por tanto la productividad es bajísima. Y ojo, que no es que le eche la culpa a las PYMEs por querer hacer de todo, es que muchas veces uno se ve obligado: o lo hago, o no me encargan la “faena”.

“Lo siento, no está en mi área de responsabilidad”

Comparemos con lo que ocurre en otros países. Por ejemplo, Alemania, que parece ser el summum de Europa ahora mismo.

En Alemania hay fundamentalmente empresas medianas y grandes. Tener mucho personal se traduce en tener personal especializado, que no pierdee tiempo formándose en lo básico, sino perfeccionando y avanzando en los aspectos más remotos. ¿Qué es esto? Alta productividad. Soluciones únicas y extraordinarias. Patentes, royalties y Premios Nobel, entre otros.

Claro, que las empresas grandes tampoco son la panacea:

  • Suelen ser muy inmovilistas. Nadie se arriesga a proponer o intentar algo que tenga la más mínima posibilidad de resultar fallido, porque le condena al ostracismo. Experiencia personal: trabajar para empresas grandes desde fuera me ha permitido llevar a cabo esos “golpes de Estado” sin temor a que me corten la cabeza.
  • Esa alta especialización a veces lleva a situaciones absurdas en las que nadie quiere mojarse. Típico problema con los alemanes: en una situación en la que se requiere un 40% de conocimientos de X, un 40% de conocimientos de Y y un 20% de conocimientos de Z, va uno a pedirle ayuda al experto en X, al experto en Y y al experto en Z y todos y cada uno de ellos responden “ah… pero es que aquí hay una parte que se sale de mi área de conocimiento, no puedo ayudarte”. Preguntas quién puede ayudarte, y o se pasan la pelota de unos a otros, o directamente te dicen “otra persona, yo no”. Y se quedan tan frescos. Palabrita del niño Jesús que esto me ha pasado ya bastantes veces.

El equilibrio

Las empresas grandes tienen los recursos para cubrir todo el dominio del problema con personal especializado y poner a gestores para coordinar a esos expertos.

Las empresas pequeñas tienen menos burocracia, arriesgan más (muchas veces inconscientemente) y pueden innovar más rápido.

Creo que en España las PYMEs “genéricas” deberían asociarse y formar empresas más grandes, no necesariamente una única empresa, sino un consorcio u otro tipo de asociación empresarial estrecha, de forma que actúen como una única empresa de cara al cliente. En lugar de hacer cada indio la guerra por su cuenta, hay que echar mano de la formación en tortuga.

Con esto dejaríamos “vía abierta” a otro tipo de PYMEs, las hiperespecializadas, aquellas que serían expertas en una única cosa. De esta forma conseguiríamos gran productividad y retorno en forma de patentes, que es justo lo que sucede en EEUU e Israel.

El problema: no puede haber empresas pequeñas especializadas si no tienen clientes. ¿Quiénes son sus clientes? Normalmente empresas grandes que se dan cuenta de que tienen una necesidad concreta y pueden permitirse pagar por una solución externa. ¿Tenemos empresas grandes en España? Pocas, muy pocas, casi se cuentan con los dedos de una mano.

Hace falta un “balance saneado” de empresas pequeñas ultraespecializadas y empresas grandes que puedan contratar a esas empresas pequeñas ultraespecializadas para que haya un beneficio mutuo.

Este es, en mi humilde opinión, el verdadero problema de la baja productividad española, la falta de premios Nobel españoles y la escasa importancia de España en tecnología, y en casi cualquier cosas más allá del ladrillo y el turismo de sol y playa.

Yup, one more year I’m attending FOSDEM

I'm going to FOSDEM, the Free and Open Source Software Developers' European Meeting

If you are coming, feel free to add yourself to the KDE wiki page.

If you are coming to the beer event on Friday but you don’t know anybody, make sure you bring something that identifies you as a Qt/KDE hacker! In any case, a lot of us will be around the KDE booth in the K building.

I will also spend quite some time at the CrossDesktop DevRoom, which is being run by Christophe Fergeau and myself this year.

FOSDEM is one of the largest gatherings of Free Software contributors in the world and happens each February in Brussels (Belgium). One of the developer rooms will be the CrossDesktop DevRoom, which will host Desktop-related talks.

Are you interested in giving a talk about open source and Qt, KDE, Enlightenment, Gnome, XFCE, Windows, Mac OS X, general desktop matters, mobile development, applications that enhance desktops and/or web?

We have extended the deadline for a few more days, until January 8th. If you want to submit a talk proposal, hurry up!

I have to say I am very surprised to see very few Qt/KDE talk proposals. Is there nothing interesting the Qt and KDE world have to say to 5,000+ people?

There is more information in the Call for Talks we published a couple of months.

If you are interested in Qt/KDE, come visit us at the KDE booth. If you add yourself to the KDE FOSDEM 2012 wiki page, we will be able to better organize the usual dinner on Sunday and/or smaller meetings for “special interest groups”.


En mi opinión, en España desde hace ya unas cuantas décadas hay subvenciones para absolutamente todo. Se ha perdido totalmente la cultura del esfuerzo y todo el mundo quiere un “premio de consolación” que sea casi tan bueno como el primer premio, lo cual resulta nefasto. ¿Para qué intentar ser el mejor si el segundo va a tener casi lo mismo con el 10% de trabajo?

Un ejemplo de esto es la investigación, desarrollo e innovación: en lugar de fomentar la I+D+i de verdad y exigirle resultados (dentro de lo que se puede; obviamente la investigación básica por definición no puede garantizar resultados), subvencionamos acciones supuestamente de I+D+i que no son otra cosa que reventa de resultados de I+D+i de otros países. De la falta de medios para la I+D+i real ya hablaremos otro día.

Un caso concreto

Pongamos que la Agencia Espacial Española quiere que sus agentes Mortadelo y Filemón sean capaces de reparar los satélites y naves espaciales españolas en órbita.

Tal como andan las cosas hoy en día, el Gobierno de turno pondría un porrón (porroncito, que ya se sabe que para Ciencia hay bien poco dinero) de millones para subvencionar que algunas empresas (las de siempre, vamos, pero de la corrupción ya hablaremos otro día) investigaran el tema. Investigaran. Si además llegan a algo, albricias y loanzas.

El modelo estadounidense sería “ligeramente diferente”: iríamos a esas empresas y les diríamos “te compro un soldador robotizado para juntar fistros con trócolas en el espacio exterior. ¿Que no lo tienes? Pues búscate la vida porque cuando lo tengas de lo compro. Es más, aquí tienes un adelanto (no subvención: esto ya es parte del pago). Y ojo, que quiero que la tecnología sea tuya, no me vale que me revendas algo que han hecho los alemanes, rusos o japoneses”.

La diferencia

Modelo americano “compro cuando lo tengas“: si el precio por el que se va a vender el soldador espacial de fistros es 100, yo te doy ahora 30 de adelanto, cuando me enseñes una soldador de fistros en tierra otros 20 y cuando me des el soldador espacial de fistros te doy otros 50. Coste total = 100. Además, la tecnología es estadounidense y se va a vender a otros países y se va a cobrar royalties, implantación, etc. A medio-largo plazo, negocio redondo.

Modelo español “compro lo que tengas“: si tienes un producto que haga X, te lo compro. El coste total es 100 + las subvenciones que se dan. Puede ser 120, 150, 200 ó 200.000. Nótese que da igual que el producto sea propio o que seas revendedor, así que no se incentiva en absoluto que sea tecnología propia, con lo cual mayoritariamente se revende tecnología extranjera. Negocio redondo a corto plazo para que el amiguete de turno pegue el pelotazo.

Creo que la diferencia quede clara y no hace falta preguntarse porqué España anda como anda.


Ejemplo claro de esto: las subvenciones a la energía fotovoltaica.

En España subvencionamos instalaciones, así que se ponen placas fabricadas en China con tecnología alemana.

En USA se compran placas solares que produzcan electricidad a 6 cént/kWh, que no existen, así que están obligando a las empresas de allí a ponerse las pilas en investigación.


FOSDEM is one of the largest gatherings of Free Software contributors in the world and happens each February in Brussels (Belgium). One of the developer rooms will be the CrossDesktop DevRoom, which will host Desktop-related talks.

Are you interested in giving a talk about open source and Qt, KDE, Enlightenment, Gnome, XFCE, Windows, Mac OS X, general desktop matters, mobile development, applications that enhance desktops and/or web?

Hurry up and submit your proposal, deadline is December 20th!

There is more information in the Call for Talks we published one month ago.

If you are interested in Qt/KDE, come visit us at the KDE booth. If you add yourself to the KDE FOSDEM 2012 wiki page, we will be able to better organize the usual dinner on Sunday and/or smaller meetings for “special interest groups”.