Android y las tarjetas de memoria
Esta mañana (en realidad me desperté a la hora del segundo postre gracias a tirarme las noches con el PFC) vi un correo de uno de mis ex-compañeros de curro en Dycec. Me llevé un par de alegrías, la primera porque es un chaval muy majo, con el que me río mucho y siempre manda cosas con las que reírme. La segunda razón es porque me escribía para pedirme opinión y para los narcisistas como yo, eso te alegra la mañana.
El tema en concreto es que no sabe si hay algo que tener en cuenta a la hora de pillar una tarjeta de memoria para su deseado móvil con Android. Voy a tratar de responder a su pregunta de dos maneras, para la gente normal y para los que buscan exprimir un poco más sus terminales. Sí, el segundo apartado será para tirarme el rollo con algo que no le interesa ni al 10% de la población que pueda equivocarse y leer este blog (o quizá sí).
- Lo primero a tener en cuenta es el tamaño. Calcula en función del uso que le des al móvil. Si lo vas a usar de disco duro portátil para compartir cosas con la gente, tira por lo más bestia, si sólo para música... calcula la pereza que te da cambiar la música y si es poca puedes optar por unos 4GB, si quieres guardar pelis lo mismo, si te da pereza pasarlas a formato "nativo"ª (adaptado al tamaño de la pantalla) pilla una grandota. En cualquier caso, ponte una cifra para gastar y procura no pasarte, es la parte fácil.
- Lo segundo es la velocidad. Existen distintas velocidades en este tipo de tarjetas y según para lo que lo quieras te puede merecer la pena gastarte más dinero. Si vas a sacar muchas fotos con tu móvil (que suerte, la cámara de mi magic es una mierda) te interesa una buena, para que entre foto y foto no se te ponga a llover. Si vas a estar metiendo y sacando datos constantemente (el modo disco duro portátil del que hablaba antes) también te interesa una de las buenas. Si vas a escuchar música que no vas a estar cambiando... no te molestes en gastar dinero.
Extra para la versión no friki: si vas a usar mucho el navegador gps o juegos "tochos" (tipo FIFA) yo me pillaría una de las rápidas, tanto las voces del GPS como los datos de los juegos se guardan en la SD, así que siempre es interesante que sea rápida.
Aquí empieza lo friki, probablemente quieras seguir leyendo, pero no para aprender nada sino para sentirte orgulloso de no perder tanto tiempo aprendiendo gilipolleces como yo.
Hay dos cosas más a tener en cuenta relacionadas con las tarjetas de memoria y android.
- Desde Froyo podemos, de manera oficial, instalar apps en la SD. Esto se inventó para la gente (por llamarlos de alguna manera) que se instalan todo lo que tiene un icono molón. Se quedaban sin memoria interna y... algo había que hacer. Personalmente yo no lo uso porque no tengo tantas apps instaladas y porque no funciona bien, especialmente con los widgets. En cualquier caso, si eres una de estas personas cuanto más rápida la tarjeta, mejor.
- Si usas una ROM modificada, cosa que si tienes un móvil con Froyo no será necesario, pero si tu operadora o tu fabricante te ha dejado de lado con las actualizaciones puede ser una buena opción existe la posibilidad de crear una partición de swap. A mi no me gusta la idea y no la tengo, pero, de nuevo, si quieres usarla cuanto más rápida sea tu tarjeta, mejor.
Las razones para que no me guste la partición de swap es que hacen un trabajo que no necesito, permiten que haya más aplicaciones corriendo de fondo (andorid cuando se queda sin memoria termina las apps que hace más tiempo que no se usan y estaban abiertas (la explicación de este comportamiento es larga, pero el resumen es "No instales un task killer")), pero con el coste de que el acceso a la SD es más lento que a la memoria interna del teléfono. Personalmente no necesito tener muchas aplicaciones cargadas en memoria ya que por norma general sólo escucho música y alguna cosa más, pero puede que si estás cambiando constantemente entre aplicaciones puedas verle el beneficio al asunto, pero... eso no es todo. Por desgracia no creo que sea fácil saber cual es la cantidad recomendada para usar de swap. El principal problema es que la swap está para usarla y si la haces muy grande, con tanta información guardada en la SD va a llegar un punto en el que todo se relentice (sobretodo si hay más probabilidades de que algo esté en la swap que en la RAM), pero si eliges un tamaño demasiado pequeño, no te valdrá para mucho.
Por supuesto, es una opinión personal, pero cuanto más leo (sobretodo en la lista de desarrollo de android) más me doy cuenta de que este tipo de soluciones mágicas son un problema ya que las cosas pueden dejar de funcionar como uno las diseña porque gracias a la ROM que uno se ha instalado ahora el sistema no funciona como dice la documentación de android sino como le da la gana a los cocineros de turno.
Espero que sea un artículo útil para quien llegue hasta aquí.
Instalar ESbox 2 en Ubuntu 9.10
Al comenzar con mi PFC preparar el IDE para programar para Maemo era un poco lioso, pero desde que ha salido la versión 2.0 del ESbox (que "no es más" que un eclipse con todo lo necesario instalado de serie), la verdad es que no tiene ningún mérito.
- Paso 1: Echar un ojo en la web de ESbox 2nd Edition para enterarnos de las novedades.
- Paso 2: Descargar el ESbos para nuestro SO favorito
- Paso 3: Descomprimir
- Paso 4: Ejecutar vía esbox.sh (en distribuciones modernas hay fallo, pero mejor leerlos en la web de ESbox, al fin y al cabo, el Paso 1 era echar un ojo).
Listo. Si ya tenemos instalado el SDK, el Scratchbox y Xephyr, ya podemos ponernos a trabajar.
La versión 2.0 de ESbox sólo sirve para Maemo 4 y para Maemo 5.
Acelerar vídeo en Ubuntu
Hace poco he hecho una de esas compras que parecen arriesgadas pero que enseguida muestran todo su potencial, se trata de una tarjeta gráfica NVIDIA 9500 GT. Un poco viejuna podrán pensar, pero es que se da la casualidad de que no la quiero para jugar, sino para ver vídeos en alta definición (aunque en realidad la mayoría no van a pasar de 720p) en mi nuevo monitor de 23".
Ahora mismo tengo dos ordenadores, un portátil y un sobremesa, pero desde que compré el portátil apenas usaba el otro, más que nada porque era menos potente (y versátil). A la hora de enchufar el monitor se me ocurrió que debería tenerlo en el sobremesa, por ninguna razón en especial.
Mi sobremesa cuenta con P4 a 2GHz y 2GB de ram, está viejito el pobre, aunque es capaz de correr sistemas operativos como Ubuntu con mucha soltura (y también WIndows 7, para mi sorpresa), pero a la hora de reproducir vídeo (o juegos en flash, o vídeos en flash) todo el trabajo lo hace el procesador y la verdad es que se pone al límite con vídeos "normales" y no puede con 720p o superiores.
Pero llegó la 9500 GT a casa y con ella la tecnología VDPAU que logra que la GPU de la gráfica eche una mano (en realidad carga con casi todo el trabajo) y francamente, son los 60€ con más rendimiento que he gastado últimamente.
Los pasos para sacarle el máximo partido son muy fáciles:
- Instalar el ppa de VDPAU
- Instalar los últimos drivers de Nvidia desde el ppa
- Instalar el mplayer compilado con VDPAU y/o motores xine (creo que un sudo apt-get install smplayer auna este paso y el anterior)
- Decirle al smplayer (o al que hayas escogido que utilice VDPAU, Opciones -> Preferencias -> Vídeo -> Driver de salida -> vdapau)
Ha sido muy fácil y el rendimiento es excelente, esperemos que con la nueva versión de flash (10.1) también se acelere este formato, aunque ahora mismo no sé si esa característica estará disponible también en Linux.
Información sobre Wave I
Esta es la primera nota, espero que de muchas, que escribo sobre Google Wave, una tecnología que no ha hecho más que aumentar mis esperanzas en ese importante cambio en la manera de comunicarnos del que hablaba hace no tanto tiempo.
Trataré de escribir notas cortas en vez de una análisis de todo lo analizable que me llevaría semanas, no por mucho sino por vago, y probablemente estuviera desactualizado a la hora de la publicación.
Empezamos:
- ¿Qué es Google Wave? Según uno de sus desarrolladores, es el correo electrónico si en se hubiera inventado hoy en vez de hace más de 40 años, pero entrando más en detalle es una herramienta para editar conversaciones en tiempo real.
- ¿Qué ventajas se supone que tiene eso "del tiempo real"? Que, aunque estés acostumbrado a otra cosa, varias personas pueden estar contestando en una conversación y leerse de forma ordenada ¡a la vez!
- No me parece suficiente como para todo el follón que está montando en la "prensa friki". Por supuesto, puedes hacer muchas cosas más. Añadir fotos y que a los demás les aparezcan en tiempo real, sin actualizar, traducir lo que una persona dice en otro idioma mientras escribe, compartir vídeos, hacer anotaciones, editar cosas escritas por otros... un mundo enorme de posibilidades.
- ¡Pero yo pensaba que esto iba a ser una cosa molona como Facebook, Tuenti o Twitter! No, esto es demasiado... "grande" ahora mismo como para que alguien que sólo busca actualizar su estado o cotillear fotos lo use, sin embargo, es posible que le de a algunos de esos servicios nuevas posibilidades (más sobre esto en una posible entrada).
- Me he cansado de leer por hoy, dime por qué debería pedirte una invitación, explícame un caso concreto. Imagina que tienes un grupo de amigos a los que les gusta organizar cosas por correo. Imagina que de repente tienes que añadir a alguien a una serie de correos (conversación en gmail, de sistemas que no agrupen las conversaciones en hilos ni hablo), le mandas un correo a todos, añadiendo a la última persona, pero sólo va a ver el último correo. Con wave podrá ver todo lo que se ha comentado, además de poder verlo por orden cronológico con una herramienta muy chula en la que puedes ver como ha evolucionado esa conversación.
¿Quiero decir con esto que wave le será íltil a todo el mundo? No, seguramente su éxito esté por debajo del de facebook, pero por encima del de Google Docs. Tiempo al tiempo.
Si aún no te he convencido del todo, prueba a ver el siguiente vídeo, de desarrolladores para desarrolladores.
Convertir vídeo en HTC Magic desde Linux con Arista
Por desgracia nuestro cacharrito favorito no soporta muchos códecs de vídeo... además de que la resolución máxima es 320x480 así que si queremos ver videopodcast, series, el universo mecánico, charlas o lo que sea, tenemos un problema.
Al menos en karmic koala (creo que en jaunty también) hay un conversor de vídeo muy muy intuitivo (odio tener n^n opciones en una GUI, para eso está la línea de comandos) que se llama arista.
Para tenerlo todo perfecto para nuestra magic, he creado un perfil que hay que copiar en /usr/share/arista/presets/ una vez instalado arista.
Aunque vale con editar el magic.xml para echar un ojo, estos son los parámetros:
Vídeo H.264
Audio AAC
25 frames por segundo, en mp4.
Creo que si la calidad o resolución es más baja, la mantiene, pero no estoy seguro. Seguro que se puede mejorar.
Si alguien se anima a hacer un icono svg más mono que mi magic.png (es una foto real y con transparencia) que la pase, que yo no quería liarme mucho.
¡Happy encoding!
Cambios en la manera de comunicarnos
Llevo un tiempo pensado en escribir algo al respecto, pero con esto del twitter, facebook, google reader, identi.ca, etc, parece que escribir en el blog es el último recurso. Pero de eso va el artículo, de como hemos ido cambiando (mejor dicho, como he ido cambiando yo) mi manera de comunicarme.
Todo empieza con el teléfono fijo
Yo era un enano y aquel aparato al que mi hermana parecía enganchada a mi no me atraía para nada. Recuerdo a mis padres diciéndole que tenía que hablar menos por teléfono, pero no creo que a mi me lo dijeran nunca. Cuando era pequeño me daba mal rollo llamar a mis amigos... si lo cogen los padres hay que estar dando explicaciones. ¿Cuándo inventaría algo que se comunicara directamente con una persona y no con una casa?
Y llegó el busca
Nunca tuve uno, pero recuerdo que Killer-Cola los empezó a regalar y a mi se me hacía la boca agua.
El móvil
Una de las cosas buenas de tener un primo teleco es que tuve móvil relativamente pronto. No el primero, pero pronto. La maravilla de los SMS y de dar toques y que en el otro extremo descifraran si eso significaba "conectate", "ya llego", "llego tarde", "he leído tu mensaje" o "me acuerdo de ti". ¡Qué tiempos! Me gustaba esa comunicación pero los móviles han cambiado... pero eso llegará más tarde.
El IRC
Me encantaba el IRC, con el mIRC, claro. Entrabas en un canal y ahí estaban tus amigos, hablando entre ellos, podías apuntarte a una conversación en curso o abrir un privado. Tenías lo bueno del fijo y lo bueno del móvil.
El MSN Messenger
Yo no fui nunca de ICQ, llegué tarde, pero en cuanto el "MSN" se hizo popular en estas tierras, todo se fue a la mierda. Todo. La gente dejó de usar el IRC y ya no había manera de entrar en una sala y encontrar a tus amigos ahí. Podías hacer un chat en grupo, pero tenías que estar invitando uno a uno y eso era una mierda. Las conversaciones pasaron de ser en grupo a individuales. Para acabarla de joder, llegaron los colorcitos, las frases gilipollezcas en los estados y los virus del MSN.
Jabber/gTalk
Una vez asimilado el fracaso del IRC y resignado a usar el MSN, llegó mi afición por Linux y parece que los frikis de la libertad usaban un protocolo llamado Jabber que permitía algunas cosas interesantes, como estar conectado desde varios sitios a la vez o las salas de chat. Al poco, Google creo gTalk, basado en jabber. Una pequeña maravilla que al estar integrada en el webmail ha hecho que su uso y comodidad se extendieran entre los frikis menos frikis.
Blog, Tuenti, Facebook, Twitter, google reader e identi.ca
Llega la web 2.0 y a mi me entusiasma compartir noticias con los demás. Mientras se desarrolla el dospuntocerismo escribo cosas en mi blog bastante a menudo. El microblogging hace su aparición y uno empieza a escribir chorradas a menudo, con lo que deja de lado los largos artículos. Más adelante, la opción de comentar todo vía Facebook o en el propio google reader hace que las conversaciones respecto a un mismo tema se dispersen, cosa que no me hace demasiada gracia.
Y, por fin Android No tengo un iPhone, no quiero un iPhone.
Tengo un HTC Magic con Android. La manera de comunicarme desde que tengo este bicho ha sufrido un cambio. Estoy 24 horas al día disponible en mi cuenta de gtalk, cualquiera puede hablar conmigo sin gastar un duro. Leo el correo en tiempo real si no estoy en casa. Mi dependencia de la comunicación por teléfono se ha desvanecido.
Google Wave
Si con los servicios 2.0 todo se disgrega, veremos como actúa Wave, yo soy bastante escéptico, supongo que porque no lo he probado, pero si pudiéramos volver a unir los comentarios en un flujo creo que nos encontraríamos con un salto comparable al uso de gTalk en lugar del MSN. ¿Tendremos por fin una "sala" dónde poder encontrar no sólo a nuestros amigos sino las conversaciones?
Guardando valores con Gconfd
Esta entrada no es exclusiva de Maemo, ya que podemos programar utilizando Gconf también desde otros entornos, normalmente un GNU/Linux con GNOME.
Aunque en principio la existencia de un registro nos puede recordar al registro de Windows, sobretodo si comparamos sus editores regedit y gconf-editor, hay una diferencia clara entre ambas opciones. El registro de la empresa de Redmond, almacena valores tanto para configuraciones de usuario como para configuraciones de sistema. Por otra parte, el registro de los sistemas con el pingüino, sólo almacena configuraciones pertenecientes a un usuario concreto. La principal ventaja, en caso de que estropees algo jugando con el registro, sólo corre riesgos tu usuario.
La funcionalidad que nos ofrece el uso de un registro es poder acceder de forma centralizada a valores de variables "públicas". Digo públicas porque quiero recalcar que los datos del registro son accesibles a todas las aplicaciones que esté ejecutando el usuario. Esto nos provee de otra forma más de intercomunicar aplicaciones.
Por poner un ejemplo: tenemos un programa que detecta nuestra posición y queremos que cuando estemos en nuestro lugar de trabajo, utilice el proxy de la empresa. Pues modificamos la clave reglamentaria y listo. Gconf nos proporciona, además, notificaciones, para que si estamos vigilando un valor y una tercera parte hace un cambio podamos reaccionar. En nuestro ejemplo, el navegador sería avisado de que se ha cambiado el valor del proxy y haría las peticiones a través de el.
A la hora de trabajar con el registro es importante recordar algo que al menos a mi se me olvida a veces: los valores por defecto. ¿Qué pasa si la clave no existe? ¿Qué pasa si la clave tiene un valor que no nos interesa?
Conectando el Nokia 810 por USB en Ubuntu

Todo lo que voy a contar ahora lo he probado en mi Ubuntu Karmic, que en estos momentos se encuentra en fase alpha (concretamente alpha 6) así que no es seguro que los pasos funcionen en próximas o pasadas versiones, ya que se está cambiando la forma de funcionar de algunos servicios en Ubuntu. Aún así y por lo que recuerdo, los pasos son similares a los de Ubuntu Jaunty.
Empezamos por el principio:
Lo primero es instalar en nuestro Nokia 810 unas cuantas utilidades básicas: xterm, ssh-server y maemo-pc-connectivity, con ellas podremos acceder por ssh, tener una consola y conectar el trasto al PC. Cosas básicas para cualquiera que tenga un 810 y quiera cacharrear (no recomiendo para nada este dispositivo para usarlo en la vida real, no he probado el n900, estoy muy contento con mi HTC Magic).
Configurando el Nokia 810:
Antes de conectar el cable USB, accedemos a: Aplicaciones - Ajustes - Panel de Control. En el apartado Extras encontramos la herramienta USB networking. Hacemos clic en el botón "Setup USB networking" y si no obtenemos ningún mensaje de error, ya hemos hecho todo el trabajo necesario en el "móvil".
Por desgracia esta aplicación te permite volver a hacer clic aunque ya esté configurado, lanzando un bonito mensaje de error diciendo que el módulo no se ha podido cargar. En realidad el módulo ya está cargado así que no hay problema. Pero estas son cosas mías que tampoco afectan demasiado.
Configuramos nuestro equipo:
Ahora toca la parte que puede cambiar con distintas versiones de Ubuntu, pero que si no recuerdo mal, lleva al menos dos versiones estables funcionando.
Una vez enchufado el cable, en nuestro gestor de conexiones (network-manager) añadimos los siguientes datos a nuestra conexión que por defecto se llamara Auto usb0:
Dirección: 192.168.2.14
Máscara: 255.255.255.0
Acto seguido podemos hacer un script para configurar las reglas de iptables para que nuestro Nokia acceda a internet usando nuestro PC.
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -P FORWARD ACCEPT
iptables -A POSTROUTING -t nat -j MASQUERADE -o eth0
Siendo eth0 la interfaz por la que nuestro PC acceded a internet. El script habrá que ejecutarlo con permisos de administrador.
Para dejar las reglas como estaban:
echo 0 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -F POSTROUTING
En su mayor parte la información la he sacado del manual de maemo de Interconexión por USB. Pero modificadas algunas cosas para mi gusto.
Actividades de la uc3m
Esta es una pequeña entrada para criticar a mi universidad (Universidad Carlos III de Madrid). ¿Por el precio de los créditos? ¿Por el ridículo paso al grado? ¿Por las dispensas limitadas? ¿Por las trabas para matricularte de más de dos cursos a la vez? ¿Por tener que aprobar prácticas, teoría y problemas del examen para aprobar la asignatura? ¿Por lo poco que valen las prácticas en relación a la nota final? No, en este caso no va a ser por ninguna de esas cosas, ni por otras del estilo de las que hablamos cada vez que el estrés puede con nosotros.
Voy a hablar de la pésima organización de las charlas y demás eventos interesantes.
Una de las cosas que creo que menos aprovecho en la universidad son las charlas o las presentaciones de proyectos. No me termino de poner las pilas, pero creo que en parte no es culpa mía.
¿Tanto cuesta hacer un calendario con las charlas, ponencias y proyectos? No, no cuesta nada. Si nos ponemos cutres lo podemos hacer con google calendar y permitir importarlo.
En vez de esta manera, que no creo que se me haya ocurrido por ser un lumbreras, de vez en cuando recibo un correo diciendo que dentro de dos meses habrá una charla. Ese es el caso bueno, tienes tiempo de apuntarla y listo. El caso malo es cuando recibes el correo dos meses antes, una semana antes y/o 10 minutos (verídico) antes de la charla.
Algunos profesores ya tienen disponible un calendario en formato ical para las prácticas, ¿tanto cuesta hacer un calendario general del departamento/universidad? Conseguiríamos, por ejemplo, que si estoy por la universidad sin nada que hacer y veo una charla vaya seguro y no creo que la afluencia de estos eventos sea tan grande que podamos despreciar a los frikis.
Bueno, pues dicho y hecho. Aquí el enlace a un calendario sobre actividades relacionadas con la telemática. Según me vaya enterando de las cosas, las iré añadiendo, lo cual me obliga a hacer una entrada en breve sobre como utilizar los calendarios dignamente en un escritorio GNOME.
Google Latitude en HTC Magic, Ubuntu y Archlinux
Creo que este es uno de los títulos más largos que le he puesto a una entrada, no en vano, nos hemos tirado todo el día jugando con Google Latitude.
Información por encima.
Para quien no sepa de lo que estoy hablando, se trata de un servicio de la omnipresente Google que nos permite saber dónde están nuestros amigos (si ellos quieren). Para mi gusto la privacidad está muy bien implementada, una vez que alguien nos invita a compartir nuestra localización, tenemos tres opciones:
- Mandarlo a freír espárragos. Pasar del tema, que no te digo dónde estoy, que no me caes bien.
- Vale, me pillas en un compromiso, te voy a decir en que ciudad me encuentro, pero olvídate de seguirme la pista muy de cerca
- Quiero que seas capaz de encontrarme, que para eso me caes bien. Útil también por si me pierdo (o saber dónde tienen el móvil que me lo han tangado). Máxima precisión.
Además tenemos la opción de dejar de compartir nuestra localización temporalmente a todo el mundo o establecerla a mano.
Otra cosa muy interesante es que podemos decirle que añada nuestra ciudad y país al estado de Google Talk, con lo que podemos incluso informar a los que se resisten a utilizar Latitude.

Localización en el estado
Un poco más técnicos
El funcionamiento es fácil, se sirve de datos de localización diversos para informar. Desde la posición del GPS que ofrece mi móvil hasta la dirección IP de mi red. En la práctica podemos usar Latitude desde diferentes dispositivos, móviles y ordenadores incluidos, por supuesto.
En mi HTC Magic sólo necesitas ir a la aplicación de Google Maps y decirle que te unes a Latitude, podrás invitar a tus amigos desde la aplicación y la verdad es que me resulta mucho más cómodo y fácil que desde el PC. En la Magic se ejecutará un demonio que se encarga de actualizar tu posición. Yo utilizo triangulación desde las redes inalámbricas y funciona muy bien sin quemar la batería.

Opciones para Latitude en HTC Magic.
Desde un PC es algo menos... interesante, aunque viene bien para saber si llega ya o no ese amigo con el que quedaste en la uni para hacer unas prácticas. Encontraremos problemas tanto en Archlinux como en Ubuntu 9.04. El logo y la marca de Firefox no son software libre, con lo que llaman a la versión 3.5 de Firefox Shiretoko. Eso hace que no podamos instalar Google Gears, extensión que necesitamos para compartir nuestra localización desde el PC. Es muy fácil de arreglar, tecleas about:config en la barra de direcciones y cambiamos el valor de general.useragent.extra.firefox. Dónde ponga Shiretoko, ponemos Firefox y ya podemos instalar Gears y empezar a cotillear desde nuestro pc. Para eso tenemos que añadir latitude a nuestro igoogle, que tendrá que estar en inglés. Un poco engorroso.
Así que lo dicho, si a alguien le apetece curiosear por dónde andan sus amigos y tiene un portátil, un PC, una Magic, un iPhone o un móvil con wifi, es muy posible que pueda ver consumados sus sueños de cotilleo.