sábado, 31 de enero de 2015

Día 7

Esta mañana me iba a poner con los servicios en background, mientras desayunaba empecé a mirar los iconos que proporciona android gratis, son geniales!! Sobretodo el de Yao Ming!!


Así que le he dado una caña de las bestias a mi tecleado, lo he aporreado aleatoriamente hasta que los botones de mis listas mostraban iconos delante de las TextView's. Me duelen los codos.
No me he conformado con que las listas mostraran iconos, también necesitaba checkboxes personalizadas y he dedicado un buen rato a aprender como se definían recursos xml drawables, un aburrimiento. Así que mi aplicación ya no mostrará la checkboxes típicas de la api de android:


viernes, 30 de enero de 2015

Día 6

Apenas he podido dormir! esta noche parecía que el viento se iba a llevar el techo. 


Cuando he bajado a comprar el pan, había más gente de lo que suele ser habitual, corriendo y gritando enloquecidos. Me han sacado una foto probando los eventos sobre las RecyclerViews.

Hoy toca pelearse con los servicios que se ejecutan en background. Esas pequeñas piezas invisibles que se comen la batería y hacen que recibas esas super relevantes notificaciones de facebook en las que salen gatos tocando el piano, haciendo el café o manejando tanques.

jueves, 29 de enero de 2015

Día 5

Como dispongo de muy pocos recursos económicos, (sólo invierto mi tiempo, que es... ¿oro?), hago todas las pruebas sobre un Galaxy Young GT-S6310N de esos que regala Movistar al ponerte el teléfono con su compañía. Aquí tenéis una foto:

Resulta que este móvil de gama baja, dispone de GPS, y tiene un procesador 10 veces más potente que mi primer y enorme ordenador (que en paz descanse).
Mi proyecto requiere para algunas funcionalidades los datos del GPS, me ha dado bastante por culo el hecho de que google prácticamente obligue a usar Google Services para acceder al GPS. Es una recomendación frente a la forma antigua de acceso a los datos de localización, dicen que consumirá menos batería, pues bien esa recomendación ha hecho que casi explote mi móvil, porque no dispone de apenas memoria, y he tardado horas en poder actualizar Google Services.

Tras la odisea espacial he conseguido mostrar en los logs la latitud y longitud de la mesa sobre la que estoy bebiendo el zumo de piña de la victoria.

Espero que con IOS todo sea más fácil...

miércoles, 28 de enero de 2015

Día 4

La arquitectura de la capa de servicios para la app la he distribuido como sigue:

Servidor nginx para balancear la carga entre diferentes nodos o micro-instancias.
Un par de instancias de servidores en nodejs para responder a los servicios.
Redis como servidor de cache, para responder rápido a las peticiones.
Un servidor MySQL en la capa de persistencia. Mediante una tarea en background recogeré una serie de datos de la cache.

Sobre la app en Android... después de pelearme duramente con la documentación de google developer y después de leer no pocas entradas de stackoverflow, he conseguido que funcione la RecyclerView, que permite crear listas de este tipo:



Ahora me dispongo a leer las listas de contactos, para hacer un procedimiento similar al que tienen apps como Whatsapp o Line, para mostrar los contactos que ya tengan esta app.

martes, 27 de enero de 2015

Día 3

Hay que renovarse, después de diseñar en papel las pantallas que tiene que tener la app, me he puesto a investigar los mejores frameworks de interfaz de usuario. Prácticamente todo lo que he encontrado está basado en HTML5, me parece una opción atractiva pero quiero que mi app genere tráfico con datos encriptados, y a día de hoy no voy a trabajar con https. 
Como estoy más familiarizado con java y c++ para crear información encriptada, que con javascript, me voy a decantar por las interfaces de usuario propias de ambos sistemas operativos.

Parrafada espantosa¿? lo he releído y casi me duermo.

Material design de android es muy guapo, llevo toda la mañana trasteando con los nuevos tipos de listas, son muy futuristas!

domingo, 25 de enero de 2015

Día 2

El servidor ya está online y con una ip accesible! 
De hecho tengo contenido estático promocionando el juego para niños que hice con mi engine opengl, www.iwokystudios.com. He tenido que configurar el dominio para que redirija a esa ip, debo corregir que cambie el nombre del dominio por el de la ip.

Ahora empieza el juego, una lista de tareas inmensa, una libreta en blanco para rellenar de problemas y un margen de 2 meses de trabajo... esto es... genial¿? joajoa

Esta noche implementaré dos servicios json básicos en nodejs, para poder atacarlos desde los móviles.

Android lo llevo perfecto y este fin de semana he estado repasando objective C, cada vez me parece más natural esa forma rara de llamar a los métodos, no sé si acabaré de acostumbrarme. Todavía no he hecho ninguna app para IOS, va a ser una locura!

viernes, 23 de enero de 2015

Día 1

Tenía un servidor de bajo coste contratado, me salía por unos 200€ cada 3 años, realmente no ha estado nada mal. El hosting y el dominio fueron contratados en hostpapa. Lo escogí porque eran de los pocos que empleaban hosting ecológico!

Cuando lo contraté no conocía las micro instancias de Amazon aws, que durante el primer año son gratis. Después pagas según lo que consumes, es decir, bajo demanda, o bien un precio fijo al año.
Así que he decidido cancelar el servicio de hosting que me caduca en febrero y pasarme a una micro instancia de amazon.

Ya había creado una máquina virtual en local con Ubuntu server para simular como administraría una micro instancia. La experiencia fue muy útil, realmente todo lo que hice en local estoy extrapolándolo con facilidad a la instancia de amazon.

En local estuve probando diferentes tecnologías de cara a hacer un proyecto grande.
Jugué un poco con tomcat, java y memcached, pero tras haber trabajado tantos años con lo mismo quería probar algo nuevo. Así que finalmente me decidí por nodejs, mongoDB, redis y nginx. Creo que esta combinación trabajando con mysql puede ser un buen punto de partida escalable para lo que tengo entre manos.

Ahora estoy configurando los servidores! Es un jaleo que bien organizado puede ser fantástico!