lunes, mayo 30, 2011

El cierre de algunas API de Google y la nube, una vez más

Hace unos días Google hacía público que iba cerrar una serie de servicios, que hasta ahora eran de libre acceso y el marcado de una serie de APIs para ser eliminadas en el futuro. Cuando uno lee diversos foros en Internet, ha levantado especialmente ampollas que a finales de este año el API de Google Translate quede cortada a final de esté mes.

Siempre hay que tener una cosa en cuenta con la nube: Nadie da gratis nada. Cuando Google, o cualquier otra compañía está ofreciendo cuentas de correo gratis, y cualquier persona se abre una, lo hace porque desde ese momento, tú eres un producto que estás siendo vendido por Google a la gente interesada en poner publicidad que recibas tú.

Peor aún son el caso de empresas que ha utilizado servicios supuestamente gratuitos, ya sea para incorporar funcionalidades a sus productos, ya sea para llevar toda su gestión, pensando inocentemente que los mismos van a estar disponibles, mantenidos y en correcto grado de funcionamiento siempre. Casi todos los servicios que están en la nube, suelen tener un cláusula de terminación de los mismos por parte del proveedor sin más o menos responsabilidad para éste. Como decía un amigo por el twitter si algo es core para que tu negocio funcione, no lo externalices. Esperemos que a Google no se le ocurra hacer lo mismo con Google Docs, porque a fin e cuenta, de alguna manera tendrá que monetizar todas las inversiones necesarias.

Y eso sin suponer que los mismos que a día de hoy te dan esos servicios, no decidan el día de mañana ofrecer lo mismo que tu das sobre tu infraestructura. Por ejemplo, ¿Qué habrá pensado Dropbox, que utiliza la infraestructura de Amazon, cuando ésta última decidió sacar su propio servicio de almacenamiento?


Technorati Tags: ,

Powerpoint y los ficheros multimedia

Preparando un Powerpoint para mi mujer, le inserté dos vídeos en dos diapositivas, grabé el fichero y comprobé que los archivos multimedia mayores que un determinado tamaño no se almacenan dentro del fichero de Powerpoint, sino que se guarda un enlace o referencia al fichero original que se usó para insertarlo en la diapositiva.

Si copiamos una presentación de este tipo a un servidor de red o a un CDROM, debemos de tener cuidado de copiar también cualquier archivo multimedia que hayamos insertado, porque nos podemos llevar la desagradable sorpresa al reproducirla que esos vídeos y sonidos insertados no están. Por defecto, Powerpoint buscará en el enlace que tiene insertado y sino, en el mismo directorio donde resida la presentación.

Referencias


Technorati Tags:

domingo, mayo 22, 2011

Las propuestas de los acampados en Sol

Durante estos días he estado leyendo durante todos estos días foros, blogs, periódicos, siguiendo a gente en Facebook y Twitter en fin, diversas noticias sobre las manifestaciones que se están produciendo en España desde mediados de la semana pasada. Hablando con diversos amigos y participando en algunos foros, mucha gente me insistía que este era un movimiento apolítico. Nunca me creí que esto fuera un movimiento apolítico, sobre todo cuando se partía de los mimbres de las propuestas de Democracia real ya.

Hoy, he leído en la web de RTVE la propuestas que han sido aprobadas en la asamblea de la Puerta del Sol, las cuales están recogidas en este pdf. Cualquiera que lo lea, puede darse cuenta que no son más que un programa político muy concreto y que probablemente tiene cabida en más de un partido del arco parlamentario español.

Una cosa es:

  • Proponer listas abiertas.
  • Control y transparencia en los presupuestos públicos.
  • Luchar contra la corrupoción
  • Separación de poderes.

Cosa con la que mucha gente estamos de acuerdo,con independencia de color político, como medidas de regeneración para nuestro sistema político y que si sólo hubiese sido eso, yo hubiese ido a las manifestaciones. Pero claro, otra cosa muy distinta es leer en las mismas propuestas:

  • Cierre de centrales nucleares.
  • Recuperación de empresas públicas privatizadas por el Estado.
  • Reforma fiscal.
  • Implantación de la tasa Tobin.
  • Anulación del Plan Bolonia.
  • Reducción del poder del FMI y BCE.

Se acabó el adjetivo de apolítico para todos estos actos - nunca lo fueron - . Aparte, no me creo ni la espontaneidad de los mismos ni el timing de su convocatoria, y después de leer el documento enlazado refuerza más mi idea original sobre todas estas manifestaciones.


Technorati Tags:

sábado, mayo 21, 2011

Compilar programas y librerías para distintas arquitecturas en MacOS X

Suelo compilar bastantes programas opensource en MacOS X, normalmente, sin demasiados problemas. En las versiones de XCode 3.x que se hizo público con la versión del sistema Snow Leopard, genera por defecto binarios de 64 bits. Casi nunca he tenido la necesidad de tener que compilar algún binario para 32 bits, hasta que tropecé con wine. Al menos en la versión 1.3.19 que es la que he probado, no puede compilarse en 64 bits, con lo cual tenía que tirar de las librerías en 32 bits ... cosa que no tenía preparadas. Teniendo en cuenta que no quería perder las de 64 bits que ya tenía, empecé a buscar información de como generar binarios universales.

Una particularidad que tiene MacOS X es que tanto sus ficheros ejecutables como sus ficheros de objeto, permiten tener código para varias arquitecturas. Esta particularidad, los binarios Universales, fue una de las ventajas que aprovechó Apple para hacer la transición de la arquitectura PowerPC a la arquitectura Intel x86 de manera poco traumática. Pero a su vez, nos permite generar código en 32 bits o 64 bits según queramos de manera bastante elegante. Se puede encontrar bastante información sobre este formato en Mach-O Runtime.

Lo primero que hice fue buscar por la web de desarrollo de Apple si había alguna información sencilla para generar los binarios. Y encontré la nota técnica Building Universal Binaries from "configure"-based Open Source Projects, que es la manera más sencilla de empezar a hacer este tipo de cosas, puesto que hay gran cantidad de software opensource que utiliza las autotools para configurarse. Si este es el caso, se puede empezar probando con la siguiente secuencia de órdenes (en este caso estoy compilando las swftools)

env CFLAGS="-arch i386 -arch x86_64" LDFLAGS="-arch i386 -arch x86_64" ./configure --prefix=/usr/local
make

Aquí es clave entender los valores que les estamos pasando en las variables CFLAGS y LDFLAGS. Si se ha generado todo el sistema de compilación de las autotools:

  • El contenido de la variable de entorno CFLAGS se añadirá a las opciones que se le pasará al compilador. En el caso de estar compilando código C++ esta variable de entorno será CXXFLAGS.
  • El contenido de la variable de entorno LDFLAGS será las opciones que se le añadirán al linker.
En este caso le estamos pasando una opción que es específica de Apple que es -arch que le indica al compilador y al linker que genere código para todas las arquitecturas que se le pasen. En este caso i386 y x86_64. Es más, podría generar código para PowerPC de 32 bits (-arch ppc) y para PowerPC de 64 bits (-arch ppc64).

Sin embargo las cosas no son tan fáciles. Puede ocurrir, por ejemplo, que haya opciones incompatibles con -arch, cosa que ocurre al compilar la librería libjpeg: Se usan algunas opciones en el gcc que no son compatibles con usar las variables de entorno CFLAGS y LDFLAGS con los valores que nos pueden interesar. En este caso hay que jugar un poco, compilar para las dos arquitecturas y posteriormente usar lipo que nos va a permitir combinar dos ficheros binarios, dos librerías binarias o dos ficheros de archivo, cada uno de diferentes arquitecturas en un binario universal que las arquitecturas de procesador que queramos:

lipo -create -output file -arch i386 file.i386 -arch x86_65 file.x86_64

En este caso vamos a crear un fichero universal file a partir de los otros dos de cada una de las arquitecturas. Sin embargo hay que ser bastante cuidadoso en estos casos. Tenemos que asegurarnos que no dejamos ningún fichero binario por detrás. Desde mi punto de vista, lo más sencillo es instalar en dos directorios distintos y luego con diff ver realmente que ficheros difieren, explorar que son ejecutables o librerías con la utilidad file y posteriormente, generar los ficheros universales que se necesiten.


Technorati Tags:

jueves, mayo 19, 2011

Lo importante es el cambio, según Enrique Dans

Estaba buscando información sobre todo el movimiento ¿espontáneo? formado para protestar contra la clase política española por su inoperancia, y uno de los enlaces con los que he dado ha sido a Enrique Dans intentando explicar las manifestaciones que han ocurrido en España - no, no pongo el tag de twitter porque creo que todavía no estoy tan enfermo de historias 2.0 -.

Estoy leyendo tranquilamente el artículo, hasta que me encuentro con esto (fusilo):

No esperes un acuerdo con respecto a las medidas a tomar, es imposible. Pero sobre lo que sí hay acuerdo es sobre la necesidad de un CAMBIO. Y eso no tiene ya vuelta atrás
Es decir, se sale a la calle pidiendo un cambio. ¿Un cambio hacia donde sr Dans?. ¿A tirarnos por un barranco?. ¿A socializar - aún más - las pérdidas?. ¿A no pagar las deudas?. ¿A pedir dación en pagos?. Mire, me sorprende que no sea usted capaz de decir a donde quiere, porque como toda mala situación es susceptible de empeorar, podemos acabemos destrozando el barco de España contra unos bajíos y hundirnos aún más de lo que estamos (en especial tras leer la parte económica de las propuestas de los manifestantes que he visto publicadas). Me sorprende esa falta de definición de ideas, y me ha venido a la cabeza aquel artículo sobre la economía de la cancamusa que leí hace un par de años.

No sé que ocurrirá en las elecciones del 22 de Mayo, pero si tengo una cosa clara: Los políticos no son más que un reflejo de la sociedad a la que representan. Puede que muchos no nos sintamos representados por ellos. Pero muchas otras personas sí. Y España es el país donde se escribió el Lazarillo de Tormes y Rinconete y Cortadillo.


Technorati Tags:

viernes, mayo 06, 2011

Brotes verdes

El pasado 29 de Abril conocimos varios datos interesantes sobre cual es el verdadero estado de la economía española.

  • El primer dato, y que eclipsó a todos los demás fue la EPA, encuenta de población activa, que nos regaló que el paro había subido hasta el 21,29% de la población activa (y por favor, este es el verdadero termómetro del paro en España, no los datos del Ministerio de Trabajo que salieron el pasado cinco de Mayo. Aproximadamente equivale a unos 4.910.200. de personas en paro.
  • El Índices de Comercio al por Menor, también publicado por el INE indica que se ha producido una caída de casi un 8% en dicho índice con respecto al año anterior, habiendo caído en media trimestral las ventas del sector un 5,8% respecto al mismo trimestre del año anterior.
  • Las ventas de coche han caído en abril un 23,3% respecto al mismo mes del año anterior.
Aunque claro, desde todas las instancias políticas pueden seguir diciendo que lo peor de la crisis ha pasado. Al menos, leyendo ese enlace, nos podemos reír un rato sobre las capacidades de predicción del fin de la crisis de algunos....


Technorati Tags: economía

domingo, mayo 01, 2011

Usar el gdb como un usurio normal en MacOS X

En la última versión de MacOS X, Snow Leopard, si utilizamos el gdb si nuestro usuario no pertenece al grupo Developer Tools, nos pedirá que introduzcamos en login / passwod de uno que pertenezca al mismo, normalmente el un usuario administrador, a través del siguiente cuadro de diálogo:


Pantalla de diálogo pidiendo permisos

Como nunca trabajo, a menos que sea imprescindible, intento usar siempre usuarios que ejecuten los programas con el mínimo de privilegios posibles. Para que el usuario sea capaz de ejecutar el gdb debe de pertenecer,por tanto. al grupo Developer Tools. Sin embargo, no es sencillo añadir un usuario a un grupo, a pesar de que MacOS X es un Unix tradicional. Debemos de hacer uso de la utilidad dscl. Podemos listar los grupos que tenemos en el sistema con la siguiente orden:

dscl . -list Groups

El grupo que nos interesa _developer, podemos saber las propiedades de este grupo con la siguiente orden:

swordcoast:~ terron$ dscl . -read Groups/_developer 
AppleMetaNodeLocation: /Local/Default
Comment:
 Standard Users who use advanced Developer Tools
GeneratedUID: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
NestedGroups: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Password: *
PrimaryGroupID: 204
RealName:
 Developer Tools
RecordName: _developer
RecordType: dsRecTypeStandard:Groups

Podemos ver si el usuario actual pertenece a dicho grupo con la orden groups o con dseditgroup

swordcoast:~ terron$ dseditgroup -o checkmember _developer
no terron is NOT a member of _developer
swordcoast:~ terron$ 

Podemos usar la orden dseditgroup para añadir el usuario que queramos al grupo de developer:

swordcoast:~ terron$ dseditgroup -u admin -p  -o edit -a terron -t user _developer
Please enter user password:
En este caso, las opciones que hemos usado para dseditgroup han sido las siguientes:
  • -u user indica el usuario que se va a usar para modificar el directorio, en el ejemplo admin
  • -p Contraseña para el usuario user especificado con la opción -u.
  • -o operación indica la operación a realizar en el directorio, en nuestro caso edición, edit
  • -a usuario1, este va a ser el usuario que vamos a añadir al grupo, en el ejemplo terron
  • -t user indica que vamos a añadir un registro de tipo usuario al grupo.
  • Por último indica en grupo que vamos a modificar, en nuestro caso _developer

Ahora podemos verificar con la ayuda de dseditgroup que se ha añadido correctamente el usuario al grupo:

swordcoast:~ terron$ dseditgroup -o checkmember _developer
yes terron is a member of _developer
swordcoast:~ terron$ 
Como vemos, todo sencillo y con interfaz gráfica integrada, lástima que no tenga un addgroup ;)

Referencias


Technorati Tags: ,

Linea de estado en vim

El otro día un compañero de trabajo me comentó si era posible que el vim mostrara el nombre del fichero que se está editando. A pesar de que llevo mucho tiempo usándolo como mi principal editor de código, nunca me había planteado cual era la opción para que mostrara esa información. Total, buscando un poco encontré que la opción que hay que activar es set laststatus=2, que se puede abreviar como set ls=2. Esta opción nos controla la línea de estado en función del valor que tenga de la siguiente manera:

  • 0 Oculta la línea de estado.
  • 1 Sólo muestra la línea de estado si hay dos o más ventanas. Esta es la opción por defecto.
  • 2 Muestra siempre la línea de estado.

Aparte, a mi me gusta saber cual es la posición del cursor (porque suelo usar comandos como n,ms/..../g), por lo cual suelo usar la orden set ruler para saber cual es la posición del cursor en la ventana que estoy editando, mostrando el vim los datos en la esquina inferior derecha.


Technorati Tags:

110 km/h y consumo de petróleo: Nos siguen tomando por tontos

Que los políticos españoles nos consideran tontos, es algo que cualquiera que lea las declaraciones de lo mismos a lo largo del año tiene claro. Pero hay algunas declaraciones de los mismos que rozan ya la obscenidad. Ayer Miguel Sebastián, ministro de Industria, Turismo y Comercio del Reino de España (o lo que queda de él), comentaba que la medida de disminuir la velocidad máxima a 110 km/h había permitido ahorrar 94 millones de euros en importaciones de petróleo en el mes de Marzo respecto al año pasado.

De todas las noticias que leí a lo largo del día sobre este particular, ningún periodista se molestó lo más mínimo en decir:

  • Que el precio de la gasolina ha subido desde los 1.10 euros el litro de Enero, hasta los cerca de 1.33 euros en menos de tres meses. Y hoy estaba ya rondando los 1.40 en alguna gasolinera. Sr Sebastián, ¿No tendrá nada que ver esto?. Además, el viernes salió la noticia que el consumo en España se ha desplomado en Marzo de un 9%.
  • Llevo observando los últimos tiempos que a final de mes, la gente coge menos el coche. Hay menos circulación a partir del día 20 de cada mes, y da idea de lo que está cayendo el consumo en España.
  • Que la Semana Santa del año 2010 empezó el 26 de Marzo, y siendo una de las épocas donde más desplazamiento por carretera se hace en España. ¿Cómo se puede comparar los meses de Marzo del 2010 y del 2011?.

Lo peor de todo es que esto parece ser el mismo movimiento de la anterior reducción de velocidad en España que ocurrió durante la crisis del petróleo del año 1973: Por aquellos entonces, la velocidad máxima en España era de 130 km/h. Por este mismo motivo, se redujo a 120 km/h, y a pesar de la evolución de los coches y el menor consumo de los mismos, jamás se subió de nuevo, sospecho que lo que quieren hacer es dejarla en 110 km/h.

Relacionado con esta noticia, En Europa Press todavía no se han enterado que en España el monopolio del petróleo desapareció hace poco, y al Estado no le cuesta nada la gasolina, en todo caso las empresas privadas que comprar el petróleo y lo refinan. Lo digo por el siguiente párrafo que aparece en la noticia enlazada:

Según afirmó, estos resultados "llamativos" son "muy superiores a lo estimado" y, de consolidarse durante el ejercicio,recortarán el gasto del Gobierno en importaciones de petróleo de 1.150 millones de euros este año. En marzo, el ahorro fue de 94,2 millones.


Technorati Tags: ,