Mostrando entradas con la etiqueta Desarrollo. Mostrar todas las entradas
Mostrando entradas con la etiqueta Desarrollo. Mostrar todas las entradas

Aprendiendo Android: Lecciones aprendidas (I) con Apatxas

Hace algún tiempo que quería aprender Android y el no estar trabajando me ha permitido poder dedicar más tiempo a ello.
Empecé con los siguientes cursos en Coursera:


La verdad es que están bien a modo de introducción pero yo personalmente no consigo sacar toda la chicha que me gustaría hasta que no me pongo manos a la obra.
Hasta ahora había hecho pequeñas pruebas y funcionalidades que no iban a ningún sitio y terminaba cansándome y no llegaba a ningún puerto. Así que me puse un objetivo: publicar una app en Google Play.

Me "inventé" una aplicación: Apatxas. La idea es sencilla: repartir los gastos compartidos entre varias personas. Pensé en esas veces en las que salimos de vacaciones con amigos o estamos compartiendo piso: vamos generando gastos, que a veces pagan unos y a veces otros y luego llega el momento de hacer las cuentas.

Me puse manos a la obra y este es el resultado:

Apatxas, compartiendo gastos


Lecciones aprendidas
He aprendido mucho, pero quiero destacar las siguientes lecciones que me servirán para no cometer los mismos errores en mi segunda aplicación (que aún me quedan muchas cosas de Android por aprender):

Iconos en Android

Esto es una "chuleta" que recopila la información que me he dado cuenta que busco/uso recurrentemente desde que estoy haciendo un desarrollo de una app android. Iré completándola y corrigiéndola si es necesario. Si a alguien más le sirve, pues mejor que mejor. Estoy utilizando la versión de iconos de Material Design ofrecidos por Google.

¿Dónde encontrar los iconos Material Design de Google? 
https://github.com/google/material-design-icons
En mi caso estoy utilizando los .png que se encuentran en las carpetas drawable-densidad

Preview de los iconos
http://google.github.io/material-design-icons/

Densidades de pantalla y escala

MDPI
Medium Pixel Density (baseline)
1 x
HDPI
High Pixel Density
1.5 x
XHDPI
Extra High Pixel Density
2 x
XXHDPI
Extra Extra High Pixel Density
3 x
XXXHDPI
Extra Extra Extra High Pixel Density
4 x
LDPI
Low Density(*)
0.75 x

(*) Normalmente no es necesario iconos específicos porque Android reduce HDPI a la mitad para obtener el tamaño requerido.

Tamaño de iconos en función del tipo


MDPI(*)
.png de material design icons
Launcher
48 x 48 px
--
Action Bar
24 x 24 px
/drawable-.../ic_..._24dp.png
Small
16 x 16 px
/drawable-.../ic_..._18dp.png
Notifications
24 x 24 px
/drawable-.../ic_..._24dp.png

Launcher for Google Play
512 x 512 px
--

(*) Para el resto de densidades escalar según la tabla de escala

Nomenclatura de iconos en función del tipo

Launcher
ic_launcher_xxxx.png
Menu / Action Bar
ic_menu_xxxx.png
Small / Contextual
ic_xxxx.png
Status bar
ic_stat_notify_xxxx.png
Tab
ic_tab_xxxx.png
Dialog
ic_dialog_xxxx.png


Android Asset Studio: http://romannurik.github.io/AndroidAssetStudio/index.html




¿Haces ranitas de papel?


Introducir a los alumnos de la facultad de informática en las metodologías ágiles. Fácil y sencillo de decir, pero ¿y de hacer?
Es curioso, quienes estamos metidos hasta las cejas en esto de las metodologías ágiles vemos las ventajas y los beneficios frente a otras formas de trabajo, precisamente por eso: por comparación. Una perspectiva, que no tienen los alumnos. ¿Cómo podemos hacerles ver la diferencia? Pues del mismo modo: por comparación. Y así nos "inventamos" la metáfora de las ranitas de papel.

Escenario: ¿qué significa ser programador? (empresa con un enfoque tradicional vs. empresa con enfoque en metodologías ágiles).

El codemotion según mi perspectiva

El viernes a la tarde partí rumbo a Madrid junto con algunos amigos y compañeros, destino: primera edición del codemotion en España. Tenía grandes expectativas puestas en este evento y no se si ha sido por eso o porque no acerté en la elección de las charlas, no me he quedado con muy buen sabor de boca.
Esquivé aquellas charlas basadas en los temas con los que tengo que lidiar a diario para aprovechar a descubrir temas por los que siento curiosidad. Voy a dar una pincelada del "top 3" de las charlas a las que fui:

Our role in a software based civilization por Aitor García (@_aitor)
Espectacular. Genial. ¿Qué es ser un desarrollador? ¿Cuál es nuestra responsabilidad? Una charla clara, bien preparada, bien desarrollada, increíblemente amena de la que me he llevado un montón de ideas y reflexiones. Fueron 45 minutos, que ojalá hubiesen sido más.

HTML5 o cómo será la web del futuro por Víctor Sánchez (@VictorSanchez)
Dinámica. Entretenida. Amena. Una muy buena charla en la que se dieron un montón de detalles de html5 muy interesantes. Fluyó de manera amena gracias a los ejemplos y la pasión que se transmitía. Me llevé unas cuantas ideas nuevas y links para consultar. Igual que la anterior una pena que no fuese un poco más larga.

Monetización de aplicaciones móviles por Curro Rueda Álvarez
Dinámica. Interesante. Menos técnica. Una charla entretenida en la que se dieron ideas sobre aplicaciones móviles, de la que me llevo algunos detalles en los que nunca hubiese pensado a la hora de comercializar aplicaciones. Me sirvió para romper un poco la dinámica de charlas técnicas a las que había asistido.

Greach, la primera conferencia de Groovy... y yo estuve allí!


El pasado viernes 4 de noviembre, se celebró en Madrid la primera conferencia sobre Groovy en España: Greach. Acogió a unos 140 entusiastas de groovy, tuvo 14 ponentes y llegó a ser TT. Me gustaría hacer un pequeño resumen, desde mi perspectiva de ese día.
Hasta ahora no he trabajado en ningún proyecto "oficial" con Groovy. Hace a penas un par de meses que empecé a trastear con ello (y Grails) y desde el principio me encandiló, de hecho, este ha sido el segundo evento relacionado con Groovy y Grails al que he asistido. Pero bueno, podríamos decir que mi nivel es de principiante total.

La organización del evento estuvo fenomenal. Todo, de principio a final, fue un éxito. Las sesiones elegidas, un acierto. A pesar de que empezamos con un pequeño retraso, las sesiones se adaptaron rápidamente al nuevo horario. Los tiempos de café y la comida, fenomenales... Grabar todas las sesiones... genial! Supongo que el esfuerzo para organizar el evento sería muy grande, pero se vio reflejado. Mi más sincera enhorabuena.

En cuanto a las sesiones destacar que estaban muy bien preparadas. Los ponentes transmitieron un claro dominio de sus exposiciones haciendo el discurso fluido, ameno e interesante.
Intentaré resumir en una frase mi impresión de cada una de las sesiones a las que pude asistir.

En marcha con Grails. Los plugins Spring security core y Spring security ui

Llevo unos días trasteando con Grails y descubriendo sus maravillas (y de paso las de Groovy). Me está gustando tanto que en unos días me pasaré por Madrid para asistir a Greach.

Creo que la única forma de aprender algo bien es utilizándolo, así que he empezado a desarrollar una aplicación en Groovy utilizando como framework Grails.

Es impresionante como sin tener que escribir a penas código tenemos una aplicación funcionando, con su gestión de usuarios, registro, login....

A continuación os dejo los pasos a seguir, desde la creación de la aplicación, para poner en marcha dos plugins de Grails: Spring Security Core y Spring Security UI