El software libre como motor del cambio económico

December 3, 2012

Llevo defendiendo el software libre desde hace tanto tiempo que ya ni me acuerdo. En los últimos diez años solo he utilizado software privativo en muy contadas ocasiones y por motivos de trabajo. En diversas ocasiones es expresado mi opinión de que el software libre puede ser una fuente de riqueza para España y para Canarias en particular. Hoy pretendo ahondar en dicha idea.

Las grandes inversiones en materia de nuevas tecnologías tienen un costo desorbitado para la administración pública. Según la wikipedia en España hay unos 2.6 millones de empleados que cobran su salario de la administración pública. Supongo que a día de hoy al menos la mitad de los mismos tendrán un ordenador en su puesto de trabajo y como mínimo dicho ordenador contará con un sistema operativo (casi siempre Microsoft Windows) y una suite ofimática (casi siempre Microsoft Office). Por supuesto los precios de estos productos cuando se compran en un volumen como este no son los precios minoristas que se manejan en las tiendas, pero aún así sabemos que el Gobierno de Canarias gastó en 2008 3.3 millones de euros en esta materia y en 2012 otros 2.3 millones, en 2015 (el contrato actual solo cubre tres años) gastará otra cantidad que dependerá de como vaya la economía española, si seguimos en una crisis como la que tenemos ahora, supongo que se mantendrá o reducirá, pero si la economía mejora aumentará, porque el pago no está relacionado con el gasto de fabricar un bien, sino que se apunta directamente en la cuenta de beneficios de una corporación americana.

De este dinero parte se la quedará el “Partner” de Microsoft que gane el concurso, parte irá para sostener a Microsoft Ibérica, y otra parte (la mayor) irá a engrosar el balance de resultados de Microsoft, con lo que la repercusión local o nacional de la inversión será mínima. Estaremos enviando el dinero que pagamos los españoles con nuestros impuestos a Estados Unidos.

Con el modelo de software libre se favorece que la repercusión local de la inversión sea mucho mayor, ya que los costes del SO operativo y de la suite ofimática son virtualmente 0, y simplemente se necesita hacer una labor de soporte, formación y adaptación. Incluso aunque el concurso lo gane una empresa que no sea local, el proyecto seguirá generando riqueza localmente, puesto que las personas que lleven a cabo el proyecto lo harán localmente y es probable que las pequeñas empresas locales, que por tamaño no pueden aportar las garantías económicas necesarias, puedan participar en algunos aspectos del proyecto y generar riqueza. Además el gasto iría disminuyendo con el tiempo, puesto que no tiene sentido formar a las mismas personas una y otra vez en lo mismo, y se podría ir desplazando dicho ahorro a desarrollar las mejoras que se detecte que necesite el software.

Además se favorece que la administración no tenga que gastar una y otra vez dinero en lo mismo. Un ejemplo puede ser la LAECSP obliga a que las administraciones ofrezca una serie de servicios electrónicos y todas las administraciones públicas estarán obligadas a cumplir dicha ley. Por poner un ejemplo los 8116 municipios de España tienen un problema similar, pero la mayoría de los municipios grandes han optado por seguir su propio camino, mientras que lo lógico sería trabajar juntos en la “parte común” y tratar las especificidades dentro del marco común ya sentado. Y esto pasa a todos los niveles, también con las 51 diputaciones  provinciales, y las 17 comunidades autónomas y todas los servicios de las mismas (educación, empleo, sanidad, etc.).

Cuando yo comencé a defender el software libre hace ya mucho tiempo, muchas veces decíamos que el software libre era más barato y es una verdad a medias, puesto que sí que es más barato a largo plazo, pero no a corto o medio plazo. Creo que hace ya algún tiempo que el discurso ha evolucionado y muchos somos los que decimos que lo importante no es que cueste más o menos, sino que la repercusión local y nacional de la inversión es mucho mayor. Se va a generar más empleo directo y también indirecto.

En tiempos de crisis hay que hacer más con menos y la idea que está detrás del software libre o del conocimiento libre en general es justamente esa, si en lugar de que cada administración o empresa privada haga todo el trabajo puede sumar con otras entidades que necesiten lo mismo, el precio va a ser menor y además el producto va a ser mejor puesto que se ajustará más a las necesidades concretas de cada empresa.


Espíritu emprendedor

November 30, 2012

En España la crisis es terrible, necesitamos encontrar vías para generar economía. En Canarias la situación es un poco más complicada si cabe, ya que hacer coches aquí sería muy caro puesto que todo tiene que entrar y salir por mar o aire. En ese sentido yo pienso que las nuevas tecnologías y particularmente el software sería una fantástica manera de hacerlo por varios motivos. La materia prima es el conocimiento, y el producto se consume virtualmente desde cualquier parte del mundo sin necesidad de enviarlo físicamente allí. Además tenemos un clima privilegiado que nos permitiría importar grandes talentos del norte de Europa y una situación política y fiscal muy buena con la movilidad europea y en menor media la reserva de inversiones de canarias (RIC). ¿Qué falla entonces?. En mi opinión es un problema de cultura.

Crear una empresa tecnológica cuesta mucho dinero, porque se requiere personal cualificado y porque hay que tener fortaleza económica para “aguantar” al menos un par de años antes de comenzar a recibir beneficios. Supongamos que para poner en marcha un proyecto necesitamos a cinco ingenieros durante dos años, asumiendo que les pagamos 20000 euros al año a cada uno (por esta cantidad se puede contratar un ingeniero en canarias, pero no sería suficiente para importar talento) el gasto anual para la empresa en personal sería de unos 150000 euros, es decir que necesitaremos unos 300000 euros para poner en marcha el proyecto con ciertas garantías, esto sin sumar los gastos de tener una oficina y el equipamiento informático necesario, pero sinceramente no creo que estas partidas sean tan elevadas.

El tipo de inversores que existen en Canarias que tienen esta capacidad inversora, no tiene ningún afán de invertir en tecnología, porque no entienden el negocio y además es una apuesta arriesgada (se puede tener mucho éxito o ningún éxito, pero normalmente no se consigue un punto intermedio). Muchos han sido inversores en ladrillo que ahora están apurados y además están acostumbrados a inversiones que se rentabilizan rápidamente. Otros están más centrados en sectores comerciales, importación y demás y otros están en el mundo del servicio (hoteles, restaurantes, etc.). Invertir en algo que no es tangible es un salto importante para ellos.

En otros sitios del planeta, particularmente en Estados Unidos esto no es así. Tienen una cultura distinta. Como ejemplo voy a poner a la empresa Zynga autores de algunos juegos como Farmville. Se fundó en el año 2007 por un grupo de emprendedores. Durante el año 2008 recibe 39 millones de dolares de capital venture y financiación venture. En los primeros cuatro años de existencia sus ingresos estuvieron cerca de los mil millones de dolares. Este año 2012 han tenido que rebajar sus previsiones de ingresos originalmente situadas en cerca de mil quinientos millones de dolares a tan solo cerca de mil doscientos millones de dolares. Esta empresa jamás habría encontrado financiación en España. Todas las grandes empresas de servicios de Internet son americanas (Facebook, Google, Yahoo, etc.) en Europa estamos despertando con cosas como Spotify, pero estamos muy rezagados aún.

Actualmente tengo tres grupos de amigos que están involucrados en procesos de emprendeduría. El primer grupo del que formé parte en el pasado, montó una empresa de servicios y trato de financiar con las entradas provenientes de los servicios el desarrollo de algunas ideas innovadoras, lo malo es que los servicios siempre acapararon el tiempo y nunca pudimos (al menos no en el periodo en el que yo formé parte de la empresa) dedicarnos a innovar de verdad. El segundo grupo de amigos, compañeros de estudios en su día, ha tenido que mudarse en bloque a Amsterdam, donde consiguieron la financiación y el mecenazgo que necesitaban para convertirse en una empresa rentable. El tercer grupo de amigos, también compañeros de estudios en su día, han ganado algún premio local y están buscando financiación en Silicon Valley. Si mis amigos consiguen éxito tributaran y generarán riqueza en Amsterdam y Silicon Valley, mientras que España y Canarias, donde surgieron sus ideas, donde su talento afloró, donde se formaron, solo podrá disfrutar de los servicios que creen.


Sobre rescates y lo que está pasando en España

October 26, 2012

Hoy me van a permitir que escriba un artículo no técnico sobre mi opinión acerca de lo que está ocurriendo en España.

He visto este artículo, donde se aboga por rescatar a los deshauciados y eso me ha hecho reflexionar sobre algunas cosas que están pasando en España. En España la crisis se ha producido principalmente por la burbuja inmobiliaria. Dicha burbuja se fue inflando con los años por los intereses de bancos, constructoras y promotores. Los promotores y las constructoras tenían acceso a financiación barata, porque lo que estaban produciendo, viviendas, siempre revalorizaba su valor, y los bancos obtenían beneficios porque los compradores pagaban las hipotecas que solicitaban. La tasa de morosidad en el año 2007 se situaba entorno al 1%   Todavía hoy se sitúa en un sorprendente 8.72% y digo sorprendente porque tenemos 5.8 millones de parados y una tasa de desempleo del 25.02%.

No saldremos de esta crisis hasta que seamos conscientes de que tenemos que ser creativos con las soluciones aportadas. No podemos caer en una espiral como la que están provocando los dirigentes políticos. Me refiero por ejemplo a medidas como eliminar la paga extra de navidad de los empleados públicos. Dicha medida significa reducir un 1/14% el salario bruto anual de los empleados públicos. Si esa es la cifra que hay que recortar no se puede hacer de peor manera que eliminando la paga extra de navidad. ¿Por qué?. La mayoría de los empleados públicos utiliza la paga extra de Navidad para gastar, comprar los regalos de navidad, las comidas tan especiales que tenemos en dicha época del año, etc. Eliminar dicha paga extra va a hacer que se eviten en gran medida gastos excesivos en dicha época del año, por contra si se hubiera hecho el recorte manteniendo las pagas extras, pero rebajando mes a mes dicho porcentaje, seguramente el consumo en Navidad se hubiera mantenido un poco más cercano a la normalidad.

Del mismo modo algunos rescates deberían ser replanteados. Por ejemplo, si en lugar de rescatar a la banca, se diese un paso más y se tratase de encontrar soluciones para las causas que provocan la crisis de la banca, se conseguiría el mismo efecto, pero de una manera mucho menos lesiva para los intereses de los ciudadanos. Si en lugar de darle dinero a la banca, se diera dinero a los que no pueden pagar sus hipotecas para que puedan pagarlas, se estaría rescatando de una sola vez a las personas y a la banca. A medida que la economía se recupere, que se recuperará, dichas ayudas dejarían de ser necesarias, y probablemente la cifra total empleada será infinitamente menor que la que nos vamos a gastar (todos) en rescatar a la banca.

La austeridad, palabra que llena la boca de los dirigentes de determinado signo político, es necesaria, pero austeridad no significa socializar las perdidas y privatizar los beneficios. Cada vez que nos bajan el sueldo y nos suben los impuestos están haciendo más difícil que salgamos de la crisis, porque nos hundimos un poco más en la espiral negativa. Necesitamos que se estimule la economía, que se estimule el consumo, que se estimulen las exportaciones, que se estimulen las inversiones, especialmente aquellas asociadas a sectores que deben experimentar gran crecimiento en los próximos años. Hasta que no logremos que los políticos vean esto, no conseguiremos salir de ninguna crisis.


Retina Display, y la forma de hacer las cosas de Apple

July 6, 2012

Será que me estoy haciendo mayor, pero por algún motivo que desconozco cada vez me siento más atraido por el universo Apple. Actualmente el único producto de esta empresa que tengo es un Ipod, no soy un fanboy ni nada que se le parezca, pero creo que el camino que están siguiendo es interesante, y me siento atraido por él. Esto puede ser sorprendente viniendo de alguien que lleva siendo firme defensor del software libre desde hace más de 10 años. Pero creo que la industria de los ordenadores ha elegido el camino equivocado y Apple ha sido la única empresa que se ha desmarcada ligeramente de dicha tendencia.

Esta historia comienza hace diez años cuando aun era un estudiante de ingeniería informática y, harto de encontrar las salas de informática complemente llenas día tras día, me decidí a comprarme un portátil personal. Era una época extraña en la que no todo el mundo tenía portátil, la wifi era un concepto que estaba comenzando, e incluso los pendrive eran alta tecnología. El sistema operativo dominante era Windows XP, pero aún no había recibido ningún Service Pack ni nada por el estilo. Como la informática era y es lo mio decidí invertir algo de “pasta” en el portátil, no me iba a conformar con un equipo de los más básicos. Saque los ahorros que tenía y adquirí un fantástico Dell Inspiron 8500 con 1GB de RAM, 40 GB de disco duro, grabadora de DVD, y una pantalla de 15.4 pulgadas con una resolución de 1920×1200. Aún tengo este portátil conmigo y la pantalla es espectacular.

Con la popularización de los portátiles los precios fueron abaratándose, la industria se metió en una guerra de precios sin precedentes, y había que recortar, mi siguiente portátil tendría una pantalla con una resolución de 1280×800. Habían pasado 5 años y me había gastado dinero en un pantalla significativemente peor (y no solo por la resolución, la reproducción de color, la luminosidad, etc. habían empeorado por al camino también). Eso sí había ganado en portabilidad, el primero estaba por encima de los 3.5Kg, mientras que el segundo se quedaba en solo 2.3Kg.

A día de hoy la mayoría de portátiles tienen una pantalla de 1920×1080, no he encontrado nada mayor en ningún fabricante generalista salvo Apple con el retina display. La resolución es importante, y la calidad de la pantalla también, de hecho pienso que una pantalla de mejor calidad mejora más la experiencia de usuario que tener una memoria RAM ligeramente más rápida. Apple es la única empresa a día de hoy que parece preocuparse por innovar, y aquí no hablo únicamente de la pantalla. Los nuevos Macbook Pro cuentan con un nuevo diseño de ventilador destinado a conseguir que el aparato sea menos ruidoso, y lo grande de esto es que todos aceptamos ya que los portátiles son ruidoso cuando se usan. Otro ejemplo es el Time Capsule. Es una idea simplemente genial, un disco duro de red wifi, he buscado alternativas fuera del universo Apple y todo pasa por coger un disco duro de red y conectarlo a un router, esa solución existe, pero no es lo que busco, necesitaría más espacio, dos fuentes de alimentación externas, tendría dos posibles puntos de fallo, etc.

Hace cosa de un año estuve tentado de adquirir un iMac 27″ porque tiene una pantalla soberbia. Es un ordenador caro, pero si uno se plantea hacer uno similar por su cuenta termina dándose cuenta de que el precio es similar, ya que solo una pantalla similar cuesta (costaba cuando me plantee comprarlo) 1000 euros. Ahora con la llegada del Macbook Pro Retina pasa algo similar. El precio es caro, pero lo es porque utiliza procesadores ivy bridge, 8GB de ram, discos SSD, y una pantalla que no existe fuera del universo Apple. Creo que la innovación hay que pagarla, y necesitamos que alguien la haga. Sea por el tipo de clientes o por la búsqueda de maximizar el beneficio o por lo que sea, pienso que el fabricante de ordenadores menos conformista ahora mismo es Apple. Es cierto que son los más cerrados del mundo también, pero todas las decisiones tienen pros y contras, hay que sopesar que pesa más en cada caso.

Mi portátil está comenzando a pedir la jubilación ya y el caso es que el MBP Retina me gusta mucho y, aunque cuesta mucho dinero, creo que puede merecer la pena.

Perdón por el offtopic.

 


La historia se hace como se puede

April 20, 2012

Decía hace unos días la presidenta argentina Cristina Fernández de Kirchner que la “Historia se hace como se puede”. Esto unido a que los últimos días he podido rescatar mi faceta como desarrollador me ha hecho darme cuenta de que tiene razón. Siempre pensé que soy más un desarrollador que un administrador de sistemas o de servicios, pero en mi vida profesional esta última faceta siempre ha sido más importante que la primera.

Desde hace unos meses cuando dejé Galotecnia, no he podido dedicarme en profundidad a desarrollar, que es lo que realmente me apasiona, pero esto ha cambiado en las últimas semanas. Ayer fue uno de los días en los que más he disfrutado de mi trabajo en los últimos meses.

Como siempre sigo “picando” Django, y la aplicación que me ocupa está muy dirigida por los datos (data-driven) esto hace que haya que buscar un mecanismo para poder pasar de pre-explotación a explotación con nuevos datos. Básicamente se me ocurren tres aproximaciones:

  • Utilizar initial_data
  • Utilizar south
  • Utilizar scripts fabric

En condiciones normales me decantaría probablemente por las “data-migration” de south, pero la aplicación utiliza una base de datos no soportada (no preguntes), así que esto representaba una gran oportunidad para trabajar con fabric. Aunque fabric no está diseñado exclusivamente para esto su integración don Django permite importar los modelos y crear las entradas que sean necesarias. Anteriormente teníamos unos scripts hechos en una mezcla entre python y bash para cargar algunos datos, pero estos no estaban actualizados, así que ahora ya podemos usar fabric para eso.

Por otro lado he podido probar bootstrap que es algo que llevaba algún tiempo queriendo hacer. Yo no soy un diseñador y contar con una herramienta como esta me parece muy positivo. Sin embargo creo que no voy a poder profundizar mucho en esta herramienta con este proyecto. Ya habrá más proyectos!.

Hoy me toca seguir trabajando en este proyecto. En principio tendré que llamar a un procedimiento almacenado en una base de datos Oracle que es algo que tampoco he hecho nunca, aunque he leído que es relativamente sencillo

Una cosa “chula” que hice ayer fue implemenar un Mixin que permite validar un NIF, NIE o CIF español. En “django.contrib.localflavor.es” hay un tipo de form field que permite hacer esto (aunque creo que la validación del NIE es incorrecta), pero en mi formulario se almacena por separado el tipo de documento identificativo y el propio documento. Hice un pequeño mixin que contiene un método clean que tiene en cuenta todas las posibilidades, las clases que hereden de forms.ModelForm o forms.Form y este mixin pueden aprovechar esta validación lo cual, teniendo en cuenta que se usa en varios formularios por toda la aplicación, es muy deseable.


Documentación de proyectos

April 12, 2012

Llevo un tiempo trabajando en el despliegue de JASIG CAS. Como neófito en aplicaciones web desarrolladas en Java me ha costado bastante comprender cómo se hacen algunas cosas en este entorno. Sin embargo una vez que hemos concluido con éxito el proyecto, debo decir que echo de menos una documentación del proyecto adecuada. La documentación se gestiona mediante un wiki, el problema es que se mezcla información para diferentes versiones del proyecto sin ningún tipo de control. Varios de los errores que he tenido que enfrentar se han producido porque la documentación del wiki hacía referencia a una versión obsoleta.

Anteriormente he trabajado con otros productos de software libre donde la documentación está a un nivel altísimo. Por nombrar dos pondré Django y QT. La documentación del proyecto es muy importante para su éxito en un entorno de software libre evolutivo. Creo que el éxito de las buenas documentaciones viene por evolucionar con el proyecto. ¿Qué buenos mecanismos de gestión de la documentación conoces?


New position “hands on”

November 9, 2011

I have been working in my new position for one week. I already knew all team so that wasn’t difficult. I knew my two major projects but I had not look them inside.

The first project I look is the one I consider more exciting. To make a long story short, it involves two pieces of code.

The first one is called “salmorejo” (a typical canarian food is “conejo en salmorejo” or in english “rabbit in salmorejo” where salmorejo is a sauce). salmorejo use rabbitmq to spread some messages over a wide variety of systems. For instance, you can create a new user in and application completly uncouple to this and, throw salmorejo, the addition of the new user to ldap and the creation of the mailbox magically occurs in two different servers. salmorejo is a big black box to me so far, it’s my first experience with rabbitmq or any AMQP so it’s not a big surprise.

The other one is called “gestion de usuarios” (user management). This is a Django application which has access to several data origins (the databases used by the corporate applications in my organization), and to the queue system. The multidb support in Django is awesome, it makes possible to use this application as clue in the identity management process. The Django modularization is also awesome,it makes possible to have several small sub-projects to work with. As I feel comfortable with Django I feel much better working with this sub-project, and, in just one week, there are some code written by me in production. The lack of tests is disturbing in a long term project like this, but there are some tests over there (I hope the most critical parts 😉 ). I agreed with my boss to provide tests for all new code.

On the other hand I had some time with Jasig-CAS. This projects seems to be much more simple. We already have an installation using and old version. I’m supposed to deploy the new version. I had a first contact with maven. The maven overlay system for CAS is really smart, although I had not success deploying the war I generated. I feel the cas project could be closed in a couple of weeks. We are going to try some new TicketRegistry (we are using JPA and want to try Memcached and possibly Ehcache before going into production).

The minor projects, those projects out there that used to break my concentration, eats lot of time. I also feel some lack of team work, in my last position every single day had some pair working session, but, in the new one, everyone in the team work in a different thing therefore there are almost no pair working. So far I’m learning tons of things about services, application servers, oracle databases, etc.