blog

Android: Al final me quedo con Super D

Este fin de semana ha sido un caos de tantas pruebas de roms que he hecho gracias a los amigos de los foros de xda-developers.

¿Porqué cambia uno de rom? La respuesta es fácil, hay ciertas necesidades que no se me cumplen con la rom que usaba mi dispositivo. Llevo usando los firms de cyanogen desde que dude y haykuro dejaron de aparecer. Sin embargo, en los últimos tiempos, sentía como la ROM iba a pedales. No es normal que al empezar a escribir con el teclado, tengas un lag de varios segundos y que la carga del sistema esté rondando entre 2 y 3 casi todo el día. Así como que la swap estuviese casi siempre saturada. Lógicamente, todo esto hace que la experiencia Android se convierta en un poco desagradable. Así que tocaba probar con los siguientes requisitos:

  • El bluetooth debe de funcionar de forma completa, y la app del market, bluetooth file transfer funcione tanto para los ficheros como para los contactos. Y lo más importante de bluetooth en mi caso es que sea capaz de conectarse al manos libres del coche, un Parrot CK3100 Evolution con firm 5.11c
  • Velocidad de respuesta y estabilidad. No me importa que no siempre valla a más de 25fps todas las animaciones, ni que estén activadas todas los efectos. Pero sí que quiero tener la sensación de que el terminal responde a mis dedos y no que lo hace unos cuantos segundos después.
  • Conectividad wifi. La mayoría de firms tienen el mismo soporte de wifi, con que funcione es más que suficiente.
  • Por supuesto, deben funcionar la localización y My Maps Editor, así HTC_IME como teclado virtual aunque sea instalándolo mediante adb. Este último debe funcionar con soltura.
  • La home debe responder al acelerómetro para cambiar de vista horizontal a vertical y viceversa.

He probado varios firms Eclair tanto 2.0 como 2.1 y la mayoría de ellos me han dejado buen sabor de boca. Muchas de ellas ya sabía que no tenían algunos de los requisitos. Como el funcionamiento de bluetooth, el funcionamiento de la cámara, la no grabación de vídeo existente aún en las 2.x para el Dream y la falta de drivers 2D/3D para estas versiones. Sin embargo, la velocidad del termina era bastante aceptable. Incluso el paso de horizontal a vertical y viceversa tenían buena velocidad. Sin embargo, para la mayoría de firms de estas versiones, el soporte de bluetooth no parece estar completo.

Tras realizar pruebas con las 2.x estaba claro que tenía que pasar a firms 1.6 si quería estabilidad y entonces fue cuando usé la recomendación de @hugopvigo de usar Super D. Esta ROM tiene el hack de los 10M más de RAM, soporte de swap y en general es como una cyanogen pero los binarios han pasado por un zipalign. Lo que mejora sustancialmente el rendimiento del sistema, al estar los apk y compañía más optimizados para su ejecución.

Con esta firm desde cero, wipe + ext3 en sd formateada, me ha funcionado el bluetooth sin hacer nada, simplemente instalando la aplicación que he citado antes. He podido enviar unos cuantos contactos al Parrot y encima el móvil, se desenvuelve con normalidad aún ejecutando unos 12-14 servicios.

En concreto estoy usando la versión estable 1.6 de las publicadas en este hilo: http://forum.xda-dev...

Trucos Android: Apagado de emergencia

No es la primera vez que tras instalar un nuevo firmware, mi maltrecho HTC Dream no termina de arrancar. Al principio de mis tiempos con android, lo primero que se me ocurría era quitar la batería. Desde luego es la solución más drástica y que seguro que funciona. Pero claro, si desmontas unas diez o veinte veces la parte trasera del móvil simplemente para sacar la batería, la tapa cogerá holgura.

En el arranque, tras haber pasado ya la fase de inicio en la que vemos el logo de la compañía, en mi caso Movistar, el terminal ya es capaz de recibir comandos vía adb. Esto nos permite hacer ciertas operaciones mientras el móvil arranca, y en el caso que ahora nos interesa podemos realizar dos importantes acciones que son apagar o reiniciar el móvil.

Para ejecutar estas acciones desde el pc conectado por usb al móvil y sabiendo de antemano que tenemos adb funcionando tendríamos que lanzar los siguientes comandos:

Reiniciar:
$ adb shell reboot
Apagar:
$ adb shell reboot -p

Un ejemplo para el que necesitamos el comando de apagado es cuando una rom no termina de arrancar para poder llegar a la pantalla de restauración o recovery. A esa que llegamos si arrancamos el androide dejando pulsado el botón de la casita y a su vez el de encendido.

Y qué hago yo con el blog

Solo con ver la última entrada, que era una prueba, y su fecha, está claro que tengo abandonado este blog. Sin embargo, me resisto a deshacerme de él.

Digamos que perdí el hábito de la escritura de textos de más de 140 caracteres hace bastante tiempo. Y sin embargo, durante estos meses de abandono sí que he sentido la necesidad de publicar cosas. De ahí que haya algunas en la lista de salida como borrador, pero no saldrán por estar ya más que desfasadas.

Una posible opción para fuente de contenidos sería hablar de las aplicaciones de Android que suelo ir probando. Algunas más útiles que otras, algunas las descubro en el market mientras viajo en el autobús, otra son recomendaciones de amigos y conocidos y otras, de webs. Pero lo cierto es que rara es la semana que no pruebo unas cuantas aplicaciones.

Concluyendo ya, espero poder tener la fuerza de voluntad necesaria como para ir poniendo los reportes de las aplicaciones que vaya probando a partir de ahora. Por lo menos así recordaré lo bueno y lo malo de las aplicaciones que he usado.

Cambiando de hosting

Tras dos años teniendo como hosting a 1and1.es , he decidido cambiar de hosting hacia DreamHost. En un principio, seguiré usando como registrador de dominio a 1and1.es. Por 5€ al año el dominio ".es" es un precio bastante asequible.

Y respecto al espacio, teniendo en cuenta que en dreamhost dan un poco más de holgura respecto a 1and1 y ya tengo varias web alojadas en esa cuenta, pues he acabado decidiéndome por el cambio.

Este post se ha escrito bajo un dominio de prueba en dreamhost con la intención de comprobar el cambio correcto de dns.

Capturas y marcador para firefox: dashboard

dashboardcapture.png
dashboardcapture.png

Buscando si existía un plugin para capturar zonas de una ventana de firefox y que además incorporase un marcador o algo para resaltar una zona de esa captura, me he encontrado con este plugin: DashBlog.

Permite capturar tanto una imagen, como un vídeo de una página (ideal para efectos js/ajax). Y además, permite escribir, poner flechas o dibujar a mano alzada. Pero es que además de esto, permite publicar esta captura directamente en WordPress, Blogger/Blogspot, Tumblr, aunque esto último no he conseguido que me fucione.

Lo bueno es que te salva de tener que abrir GIMP para remarcar una zona, o incluso recortar una zona de la pantalla sino quieres tener instalado/activo el plugin ScreenGrab.

Puedes ver los resultados en la captura de ejemplo, en la zona inferior derecha.

Una lástima que el plugin aún no funcione para Firefox 3.5

Terrminales ligeros, la solución para las aulas de formación

Tras llevar bastante tiempo ligado a los servicios web, tanto en el desarrollo como en el despliegue y mantenimiento de esta clase de sistemas, ahora tengo la oportunidad de trabajar en un proyecto mucho más relacionado con Sistemas directamente y el comúnmente llamado "cacharreo".

Se trata de incorporar a una serie de aulas de formación, un sistema basado en clientes ligeros y servidor, usando para ello Tcos.

El hecho de incorporar este tipo de arquitectura a las aulas es beneficioso por varios motivos:

  • Fácil administración de todos los equipos del aula. Ahora todos los puestos usarán el mismo sistema, que será servidor y procesado por el servidor
  • Ahorro en máquinas. Los clientes ligeros tienen un tiempo de vida muy superior al de un equipo normal. En un aula con equipos normales, hay que renovar equipos cada 3 o 5 años, porque se han quedado obsoletos. En un aula con clientes ligeros. Pasado este tiempo, solo habría que cambiar el servidor si se necesita más rendimiento.
  • Consumo energético. En el caso de usar clientes ligeros, tenemos terminales con consumos desde 5w, y máximo de 20w. El PC de un puesto normal, con estar encendido ya viene a consumir 60-80w como mínimo.
  • Reutilización de equipos viejos. Se pueden usar equipos antiguos con poca ram (a partir de 64MB, o un incluso menos), sin disco duro, ni disquettes. Solo necesitan una tarjeta de red que soporte arranque con PXE o una disquetera para emular el arranque PXE con etherboot
  • Además, si decidimos usar Linux y la alternativa fuese windows, nos ahorramos el precio de licencia por puesto.

Dejo pendiente para otros días analizar alguno de los principales sistemas que tenemos para ofrecer este tipo de servicio, como son LTSP, Tcos, PXEs, ...

Pasándome a Android

Tras unos meses de espera, ya puedo decir que tengo un móvil con Android. En concreto una HTC Dream de Movistar, pero que ya corre su cupcake gracias un post en el foro de and.roid.es. Va a la perfección, se nota mucho la evolución de la 1.1 a la 1.5, con el teclado virtual entre otras cosasl

¿Abandono Symbian? la verdad es que el n70 no me ha dejado muy buen sabor de boca, la inestabilidad le hacía bastante deprimente. Ciertos problemas con bluetooth y la asociación con otros dispositivos hacía que la batería se esfumase en unas pocas horas y solo de vez en cuando. Sin embargo, para mí llevar activado bluetooth era casi obligado, por el tema del manos libres del coche o durante aquella época de desarrollos con esta tecnología inalámbrica.

No, no voy a abandonar a Symbian, estoy buscando un móvil pequeño, espero que con symbian, que haga buen reemplazo del n70 y complemente al dream. Hay veces que se necesita llevar un móvil pequeño y la verdad es que la HTC es ladrillo al lado de un 6600 slide, sin symbian o el mismo 6210 navigator, con symbian. A ver si logro encontrar algún stock del 6120 classic.

Por cierto, que tengo esto del blog casi abandonado, a ver si ahora voy sacando cosas para escribir. Alguna sobre algún que otro proyecto hay pendiente.

¡¡Feliz Año 2009!!

Este día, la mayoría de blogs, de twitts, de sms... todos dicen lo mismo: Feliz 2009, Próspero Año nuevo, ... Algunos los pondrán más tarde y otros más temprano. Otros sencillamente lo pondrán autopublicado para que se publique justo a las 00:00.

Este día cerramos 2008, año de muchos sucesos, como casi todos los años... ¿Un poco de balance? Sigo trabajando (Bien!!, que con la crisis ya se sabe), conseguí sacar el permiso de conducir y comprar un coche nuevo. He ido al EBE (Evento blog España) en Sevilla y también he estado en la OSWC (Open Source World Conference) de Málaga. También he empezado a desarrollar cosas en Django, y empiezo a dejar de lado Plone, que nunca me terminó de convencer.

Y ¿qué puede ocurrir durante 2009? Pues realmente no sé nada, no tengo nada planeado, aunque pueda parecer raro. Miento, sí que las hay, pero no pasan de ser las típicas proposiciones de año nuevo, como seguir aprendiendo inglés, seguir aprendiendo otras tecnologías durante mi tiempo libre, conseguir algo que se puedan enseñar de mi gestor de servicios en función de máquinas virtuales y reales.

En fin, os que deseo que 2009 sea lo más favorable para vosotros y vuestros cercanos.

Feliz y próspero año nuevo.

Proyectos: API python para tuenti, tuenpy

Últimamente me ha empezado a picar el tema de desarrollo de redes sociales y una de las cosas que más hacen falta en una red social es la capacidad de conexión con otras redes sociales. De ahí que cada una tenga a disposición una API pública, en la mayoría de casos, para poder comunicarse con el resto de redes de su especie. Desde poder buscar amigos de una red social en otra como poder interactuar en los contenidos.

Cuando empiezas a crear una red que encima está muy localizada, ya sea regionalmente o por la temática, el interés máximo es conectar con otras redes de tu entorno. Un claro ejemplo es tuenti en España. Que a base de invitaciones ha logrado una comunidad impresionante. Se podría decir que se han distribuido tan bien las invitaciones como aquellas de Gmail.com antes de que se abriera definitivamente como ahora.

La red social en la que estoy trabajando últimamente, mymem.mobi, está escrita en python y aunque ya tenemos implementadas bastantes conexiones, aún nos faltaba la parte de tuenti. Tras buscar y rebuscar no hemos encontrado nada, así que hemos decidido empezar a realizar un desarrollo no oficial que nos permita conectar nuestras aplicaciones python con tuenti. En este caso se trata de tuenpy.

Lo empezamos con licencia GPLv3 y esperamos tener un fructífero desarrollo del que iremos contando cosas según vayan surgiendo. Otro día hablaremos de mymem que también pinta muy bien.

Commits durante el EBE

No hay nada mejor que hacer durante el EBE que un par de commits, en alguno de ellos se coló un set_trace para variar. Normal ¿no?. Estoy intentando atender a la conversación de GYM, donde están hablando ahora de censura y control de la publicidad.

Con tanta distracción, lo raro es que el código funcione.

Atención: inicie sesión si desea enviar comentarios

Para enviar comentarios necesita estar logueado y para ello debe usar una cuenta openid.

Puede obtener una cuenta openid que podrá usar en múltiples blogs en español, en las siguientes direcciones:

openid.blogs.es

openid.es