
Los androides
By Gabi Moreno

Los androidesFeb 20, 2023

150. Domina el UI Testing en ANDROID con estos tips
Descubre cómo dominar el UI Testing en Android. Aprende sobre bibliotecas, patrones y buenas prácticas. ✅
https://gabimoreno.soy/ui-testing-android
📜 ÍNDICE:
- Previa
- Cabecera
- Presentación y bienvenida
- Sergio nos cuenta sobre él, su experiencia y background
- ¿Qué tipos de tests existen dentro de Android? 💡
- Diferencia entre un Mock, un Fake y un Stub 🎯
- ¿Por qué los UI tests son importantes? 👀
- ¿Qué es un test de integración?
- ¿Marcan Robolectric o Roborazzi el camino de los JVM tests? ¿Los tests de instrumentación de UI van a quedarse obsoletos?
- Profundizamos en la respuesta ✔
- Diferencias entre UI tests y Screenshot tests 🤯
- Tips/trucos para renderizado de screenshots entre diferentes sistemas operativos 💻
- ¿No existe ninguna implementación en la que el renderizado de screenshots se haga en el CI? 🤔
- ¿Qué son Roborazzi y Paparazzi? Diferencias y similitudes entre estas bibliotecas
- Patrones de UI Testing
- Diferencia entre Page Object y Robot Pattern
- Cómo resolver un FLAKY test
- Dónde podemos encontrar a nuestro invitado
- Dream team de bibliotecas para una estrategia de testing ⚡
- ¡Muchas gracias Sergio! + despedida 😊
- Cierre

149. ¿Se puede ser SENIOR sin saber ARQUITECTURA y TESTING? Con XurxoDev
¿Es realmente necesario saber de arquitectura y testing para considerarse SENIOR DEVELOPER? A XurxoDev no le cabe ninguna duda. 😲
https://gabimoreno.soy/senior-arquitectura-testing
📜 ÍNDICE:
- Previa
- Cabecera
- Presentación y bienvenida
- Jorge Sánchez (XurxoDev) nos cuenta sobre él, su experiencia y su background 🙌🏼
- Opinión sobre el concepto “T-Shaped” 👀
- Cómo se las apaña para ser productivo entre saltos de ramas tecnológicas 🎯
- ¿Qué piensa sobre la creación de contenido técnico?
- La compra WOW en el último año (game changer) ⚡
- Su mayor reto de programación o laboral
- ¿Qué es un DESARROLLADOR SENIOR? ✔
- ¿Puedes ser DESARROLLADOR SENIOR sin saber arquitectura y testing?
- El mayor logro 🏆
- Momento ANÉCDOTAS
- Qué le diría a su yo del pasado justo en la primera clase de C
- Dónde se ve en 3 meses
- ¿Y de aquí a 1 año? 🤔
- ¿Y en 3 años?
- Recomendaciones de libros 📗
- Formación recomedada 👀
- Recomendación de membresía 🧠
- Recomendaciones para entrevistar en el podcast 🎙
- ¡Muchísimas gracias Jorge! 😊
- Dónde podemos encontrar a nuestro invitado
- Despedida, agradecimientos y cierre 👏🏼

148. Patrón STRATEGY en Android
Descubre cómo el patrón Strategy en Android hace tu CÓDIGO MÁS LIMPIO y flexible. Optimiza tu código con esta técnica. 👍🏼
https://gabimoreno.soy/patron-strategy-android
📜 ÍNDICE:
- Cabecera
- Presentación y bienvenida
- Alonso nos cuenta sobre él, su experiencia y background 🙌🏼
- Presentación y definición del Strategy Pattern
- Ejemplo de problemática solucionada 💡
- Código fuente del ejemplo ✅
- Live demo 👀
- Conclusiones de la problemática resuelta
- ¿Por qué no usar una función de extensión?
- Otras consideraciones para no hacerlo así
- Conclusiones, despedida, agradecimientos y cierre 👏🏼

147. Gané 47,000 $ haciendo APPS Android con AdMob en Google Play
¿Quieres conocer una historia real sobre cómo GANAR DINERO con AdMob en Android? 💲
https://gabimoreno.soy/admob-android
📜 ÍNDICE:
- Previa
- Cabecera
- Presentación y bienvenida
- Cirilo Bidó nos cuenta sobre él, su experiencia y background 🙌
- ¿Por qué empezó a programar?
- ¿Cómo fueron sus inicios en el mundo laboral? ¿Cómo consiguió su primer trabajo?
- ¿Por qué Cirilo es miembro de LOS ANDROIDES PREMIUM? 🤔
- ¿Qué hace para ser productivo en su día a día?
- Fortalezas ganadas y debilidades vencidas en este tiempo desarrollando en Android (soft skills) 🎯
- ¿Cómo supera Cirilo el FOMO de todo lo que va saliendo en Android?
- La compra WOW en el último año (game changer) ⚡
- ¿Cuál ha sido el mayor reto de nuestro invitado en su carrera profesional?
- ¿Y EL MAYOR LOGRO?
- ¿Qué tipo de apps eran? 📱
- ¿Hizo algún un modelo freemium o todo con publicidad? 👀
- Frase Discord: The best way to predict the future is to creat it. ¿Qué significado tiene para nuestro invitado? ¿Qué sentimientos/sensaciones le trasmite?
- Recomendaciones de libros 📗
- Recomendación de formación 🔍
- Momento ANÉCDOTA
- ¿Dónde se ve Cirilo de aquí a 3 meses?
- ¿Y en un año?
- ¿Dónde se ve Cirilo de aquí a 3 años?
- ¿Cómo te convertiste en senior?
- Pregunta para el siguiente invitado/a al podcast
- Recomendaciones para entrevistar en el podcast 🎙
- | La faceta de Cirilo como creador de contenido 👀
- | ¡Muchísimas gracias, Cirilo! 😊
- | Dónde podemos encontrar a nuestro invitado
- | Cirilo tiene algo que decirte
- | Despedida, agradecimientos y cierre 👏

146. Programar usando AI en KOTLIN con Raúl Raja
Raúl Raja nos explica como usar XEF AI, un plugin open source para programar usando INTELIGENCIA ARTIFICIAL disponible desde Kotlin.
https://gabimoreno.soy/programar-ai-kotlin
📜 ÍNDICE:
- De qué trata la Charla Técnica 🎙
- Previa
- Cabecera
- Bienvenida y presentación
- Raúl Raja nos cuenta sobre él, su experiencia y background ✅
- Mundo AI: qué debemos utilizar y qué no 🛠
- ChatGTP Vs Bard
- Buenas prácticas para cambiar de una AI a otra
- ¿Qué hay que hacer para comenzar a usar xef AI? 🎯
- ¿De dónde viene el nombre de 47 Degrees?
- Interactuar con la AI: ¿qué significa? ¿Número de interacciones? 🧩
- Costes de uso de la API de OpenAI
- ¿Cómo supera Raúl sus bloqueos personales?
- Tip/s de productividad para el día a día ❕
- ¿La AI va a remplazar a los desarrolladores?
- Recursividad del ejemplo de la AI: ¿tiene un límite? ¿Cómo se gestiona? 🛡
- ¿Cómo ve Raúl el panorama de integrar la AI en la generación de código?
- ¡Muchísimas gracias, Raúl! 😊
- Dónde podemos encontrar a nuestro invitado
- Despedida, agradecimientos y cierre 👏

Trailer Los androides
Desata tu potencial como Android Developer:
👉🏼 http://gabimoreno.soy

145. EditorConfig para Android y Kotlin
Descubre cómo EditorConfig puede simplificar tus proyectos Android y Kotlin, mantener un estilo uniforme y mejorar la colaboración en equipo. 🎯
https://gabimoreno.soy/editorconfig
📜 ÍNDICE:
- Qué vamos a ver
- EditorConfig
- Ejemplo de EditorConfig
- charset
- end_of_line
- insert_final_newline
- trim_trailing_white_space
- Configuración para Android / Kotlin
- Conclusiones
- Recomendación

144. Supera el SÍNDROME del IMPOSTOR en programadores con Rusvel Leyva
El Síndrome del Impostor en programadores es algo muy habitual. ¿Quieres saber cómo superarlo? Entra y lo vemos. ✅
https://gabimoreno.soy/sindrome-impostor-programadores
📜 ÍNDICE:
- Previa
- Cabecera
- Presentación y bienvenida
- Rusvel nos cuenta sobre él, su experiencia y su background 🙌
- Por qué empezó a programar nuestro invitado 🤔
- Proyectos actuales ⚡
- Nivel como Android Developer cuando entró en la membresía
- Cómo se ve ahora 👀
- Tip, hábito, herramienta o truco para ser productivo en el día a día 🧩
- ¿Cómo lucha nuestro invitado contra el FOMO de todo lo que sale en Android? 😮
- Beneficios de participar en comunidades de desarrollo. ¿Se lo recomendaría a alguien? ¿Por qué?
- Cuál ha sido el mayor reto de programación de nuestro invitado 💻
- ¿Y el mayor logro? 🚀
- ¿Cómo es Rusvel de antes de entrar a Los androides Premium? ¿Y cómo es el Rusvel en la actualidad?
- Tips para hacer frente al Síndrome del Impostor 🕵️♂️
- ¿Qué le diría Rusvel a su yo de hace 3 años?
- Momento ANÉCDOTA
- Recomendación de libro 📗
- Recomendaciones de formación 🔍
- Nuestro invitado me pregunta sobre el tip de productividad para llevar a cabo todos los proyectos que llevo 🧩
- Recomendación de una membresía 🎟
- Dónde se ve nuestro invitado en 3 meses
- ¿Y en un año? ⌛
- ¿Y en 3 años? ⏳
- Recomendaciones para entrevistar en el podcast 🎙
- Pregunta para el siguiente invitado del podcast
- ¡Muchísimas gracias, Rusvel! 😊
- Dónde podemos encontrar a nuestro invitado
- Despedida, agradecimientos y cierre 👏

143. CONSEJOS para ANDROID Developers con David Cruz
¿Quieres consejos para mejorar como Android Developer? David Cruz nos brinda algunos que se salen de lo convencional. 💡
https://gabimoreno.soy/consejos-android-developer
📜 ÍNDICE:
- Previa
- Cabecera
- Presentación y bienvenida
- David nos cuenta sobre él, su experiencia y su background 🙌
- Cómo le dio a nuestro invitado por convertirse en divulgador
- Proyectos actuales ⚡
- KMM 📱
- Tips, hábitos, herramientas o trucos para ser productivo en el día a día 🧩
- ¿Qué es lo más difícil a lo que se ha enfrentado nuestro invitado? ¿Cómo lo ha resuelto?
- La compra WOW de David en el último año (game changer) 😮
- Recomendaciones de libros 📘
- Recomendaciones de formación 👀
- Momento ANÉCDOTA
- Qué le diría nuestro invitado a su yo de hace 5 años 🤔
- Dónde se ve de aquí a 1 año
- Y dónde se ve de aquí a 3 años 🤯
- Opinión de nuestro invitado sobre hablar inglés y trabajar en el extranjero
- ¿En algún momento ha sufrido nuestro invitado el síndrome del impostor? ¿Cómo lo ha superado? ⚡
- Soft skills que le están ayudando más en su día a día
- Recomendaciones para entrevistar a futuro
- Recomendaciones para entrevistar en el podcast (English version) 💂♂️💂♀️
- ¡Muchísimas gracias David! 😊
- Dónde podemos encontrar a nuestro invitado
- Despedida, agradecimientos y cierre

142. Tengo una pregunta para ti
En este episodio del podcast, tú eres el protagonista.
https://gabimoreno.soy/pregunta-para-ti
Clica en el link. ☝🏼

141. Inyección de Dependencias en Android y Kotlin (nivel senior) con Javi Segovia
La Inyección de Dependencias en Android y Kotlin es un campo donde podemos conseguir MEJORAR los TIEMPOS de COMPILACIÓN.
https://gabimoreno.soy/inyeccion-de-dependencias-android-kotlin
¡Descubre cómo! 💡
📜 ÍNDICE:
- Previa
- Cabecera
- Presentación y bienvenida
- Javi nos cuenta sobre él, su experiencia y su background
- ¿De qué vamos a hablar? 🤔
- ¿Archivos innecesarios por una mala Inyección de Dependencias? Identificar esas malas prácticas 👀
- Build variants y Tiempos de compilación ✔
- ¿Hacen falta los BuildConfig? 🧐
- El 🔝 de malas prácticas y maneras de evitarlo
- ¿Qué papel juega Gradle y la modularización en la Inyección de Dependencias? 🎯
- Contextos de arquitectura Flux con reducers y desventajas
- Cómo mejorar los Tiempos de compilación
- ¿Cuándo usar una biblioteca para hacer Inyección de Dependencias y cuándo no? ⚡
- Criterios para seleccionar una biblioteca de Inyección de Dependencias
- Opinión sobre hacer Dependency Injection a mano 🛠
- Futuro de las bibliotecas 🙌
- ¿Qué es Arrow Inject?
- ¿Es Koin un Inyector de dependencias? 🚀
- ¿Qué motivó a Javi para crear Arrow Inject? 🧩
- Demo de Arrow Inject 👀
- ¿Cuáles son las diferencias entre KAPT, KSP y K2?
- Ambigüedad entre funciones 💥
- ¿Koin o Hilt?
- ¡Muchísimas gracias Javi! 😊
- Recursos para Inyección de Dependencias 📘
- Dónde podemos encontrar a nuestro invitado
- Despedida y agradecimientos 👏
- Cierre

140. Philipp Lackner
Descubre como Philipp Lackner, uno de los Android Developers más conocidos a nivel mundial, ha conseguido llegar hasta donde está hoy. 💡
https://gabimoreno.soy/philipp-lackner
Philipp Lackner es uno de los Android Developers más conocidos a nivel mundial. Ahí es nada. Una persona con mucha energía, amable y que aporta muchísimo a la comunidad.
En esta entrevista vas a poder escuchar de su viva voz cómo ha conseguido llegar hasta donde está hoy. Un episodio muy inspirador.
Además, te servirá para practicar idiomas, ya que la entrevista es en valenciano. 😄 ¡Estaría guay, eh! Como no podía ser de otro modo, es en inglés. Pero se le entiende perfectamente. Philipp Lackner habla un inglés muy estándar y claro, con lo que se le sigue de maravila.
¡Dale al play y nos vemos dentro! ▶️
📜 ÍNDICE:
- Opening
- Philipp Lackner’s background
- Why did he start teaching coding? ✔
- Current projects Philipp is involved 👀
- Would our guest recommend content creation to everyone?
- Tips or hacks for productivity 🎯
- Online academies: yes or no
- A game-changing item under €100 😮
- Use cases for using ChatGTP
- Book recommendation 📘
- Course recommendation
- A WOW anecdote ❕
- Future projects and plans ⚡
- Next podcast guests
- Thank you so much, Philipp, for coming to the podcast 😊
- Where can we find Philipp Lackner?
- Goodbye and see you soon!

139. CI/CD en Android: Tips
La CI/CD en Android es vital para ser eficientes y entregar CÓDIGO DE de CALIDAD.
https://gabimoreno.soy/ci-cd-android
Llévate unos TIPS para aplicar desde ya. ✅
📜 ÍNDICE:
- Cabecera
- Presentación, bienvenida, ¿de qué vamos a hablar?
- ¿Qué es CI y CD?
- Diferencia entre CI y CD ⚡
- Conexión con el mundo agile 🔗
- Casos prácticos de CI/CD ✅
- Cuándo el CI/CD se vuelve un beneficio y cuándo un dolor de cabeza
- 2 tipos de empresas: las que despliegan apretando un botón y las que se vuelven locas 🤪
- Herramientas de CI/CD 🛠
- Últimos comentarios
- Despedida
- Agradecimientos 👏
- Cierre

138. GRADLE con Android Studio
Gradle es el sistema de compilación que se emplea en Android Studio.
https://gabimoreno.soy/gradle-android-studio
En esta «Charla Técnica» tocamos varios de los conceptos que hay que dominar sí o sí. ✅
- Inyección de Dependencias
- Bibliotecas a usar en DI
- Context Receivers
- Diferencias entre Gradle y AGP (Android Gradle Plugin)
- Bytecodes
- Uso de KTS en lugar de Groovy
- Version Catalogs
- api Vs implementation
- …
Vamos… que ya estás tardando en darle al play. ▶️ 😁

137. 18 errores que cometemos los desarrolladores
18 errores que cometemos los desarrolladores / programadores.
👉️ https://gabimoreno.soy/errores-desarrolladores 👈️
Hoy te voy a contar errores en los que caemos los desarrolladores / programadores una y otra vez. Agárrate, porque este episodio voy a hablar alto y claro. Sin pelos en la lengua.
Este es uno de esos contenidos que vas a desear compartir con tus compañeros. IMHO, verdades como puños que no te van a dejar indiferente.
Puntos que te voy a explicar en el EPISODIO del PODCAST:
1️⃣ Querer abarcar demasiado
2️⃣ No enfocarse en una tecnología en particular
3️⃣ Tener poca paciencia
4️⃣ Pensar que ver vídeos de internet, es aprender programación
5️⃣ No leer las documentaciones oficiales
6️⃣ No seguir los estándares (buenas prácticas) de programación
7️⃣ Pensar en que se controla mucho
8️⃣ Escudarse en el Síndrome del Impostor
9️⃣ Tener Síndrome del Falso Senior
🔟 No hacer testing
1️⃣1️⃣ Pensar que la empresa en la que trabajamos es la responsable de su formación
1️⃣2️⃣ Empezar cursos y no terminarlos
1️⃣3️⃣ No pedir feedback
1️⃣4️⃣ Aguantar más tiempo de la cuenta en empresas donde no crecemos lo suficiente (zona de confort)
1️⃣5️⃣ Descuidar las soft skills
1️⃣6️⃣ No hablar inglés
1️⃣7️⃣ No participar activamente en comunidades
1️⃣8️⃣ No destinar una parte del sueldo a contenido de pago

136. MVI con Gema Socorro
Resuelve tus dudas sobre MVI con GEMA SOCORRO.
https://gabimoreno.soy/gema-socorro
Sensacional charla técnica con un montón de PREGUNTAS RESUELTAS por nuestra invitada. 🎯
- Cabecera, bienvenida y presentación
- Quién es Gema Socorro y cuál es su background 👀
- Qué es MVI
- Cómo podemos saber si estamos usando UDF en nuestra app 🎯
- Al usar un observable, dudamos si es MVI con UDF
- Si tuviésemos varios flows, ¿eso explota? Vemos varias maneras💥
- ¿Qué le diría Gema Socorro a su yo de hace 5 años?
- Consejos de nuestra invitada para evitar el estado de obsolescencia tecnológica 🖖
- Iniciarse en el mundo Android en 2023: 3 consejos de mayor a menor importancia ✔
- Personajes de ficción que han influenciado a nuestra invitada y en qué
- MVVM versus MVI, ¿cuándo se está transformando uno en el otro? 🔄
- Los eventos de UI: con los workarounds estamos abriendo otro flow (tubo), ¿cuándo sí y cuándo no?
- Cuando mostramos un Alert o un Toast, lo usamos como un “Side Effect” fuera del state
- Cuáles serían las ventajas y las desventajas entre MVVM y MVI 📋
- Qué es lo más extraño que se ha encontrado nuestra invitada en un proyecto 🤯
- Qué es un reducer
- ¿Está vinculado el reducer a lo de “viajar en el tiempo” de MVI? 😮
- Cómo nos facilitan la vida las bibliotecas tipo Orbit MVI, Mavericks 🛠
- MVI para principiantes: qué materiales nos recomienda Gema
- Agradecimientos 😃
- Dónde podemos encontrar a la invitada
- Despedida y agradecimientos

135. CAMBIAR de TRABAJO a los 40 con Sahuquillo
Descubre como CAMBIAR de TRABAJO (profesión) a los 40.
https://gabimoreno.soy/sahuquillo
Y qué mejor que la PROGRAMACIÓN con los tiempos que corren. 💯
📜 ÍNDICE:
- Previa y cabecera
- Bienvenida y presentación de José Ramón Sahuquillo 👋
- Sus orígenes 🙌
- Consejos para cambiar de profesión: road to developer
- Qué hace Sahuquillo para ser productivo en su día a día 💯
- La compra WOW + ANÉCDOTA profesional 😮
- El proyecto en que está trabajando actualmente
- Anécdota++
- Libros recomendados 📗
- Recomendaciones de formación ▶
- El Sahuquillo del futuro
- Muchas gracias por venir 🤗
- Recomendaciones para entrevistar 😃
- Dónde podemos encontrar al invitado
- Despedida y agradecimientos

134. HOLA MUNDO con Nicolás Schürmann
Descubre cómo MULTIPLICAR tus RESULTADOS profesionales con los consejos de HOLA MUNDO (Nicolás Schrürmann). 🚀
https://gabimoreno.soy/hola-mundo-nicolas
📜 ÍNDICE:
- Previa
- Bienvenida y presentación de Nicolás Schürmann 👀
- ¿Por qué comenzó a hablar sobre programación? 💻
- Quién hay detrás de Hola Mundo
- ¿Saber inglés abre puertas o no saberlo te las cierra? 🤔
- Proyectos en paralelo de Nicolás
- Creación de contenido como inbound marketing o también contenido por placer
- Qué hace para ser productivo en el día a día
- La compra WOW en el último año 😮
- Cualidad detonante para destacar al postular a un trabajo en el extranjero
- Dónde seguir el resto de la entrevista 🎧️

133. LEGACY CODE en Android: estrategias de TESTING
Lidiar con legacy code en Android suele ser un reto, sobre todo a la hora de hacer testing.
https://gabimoreno.soy/legacy-code-android-testing
Aquí te damos tips para abordarlo. ✅
📜 ÍNDICE:
- Cabecera
- Presentación, bienvenida, ¿de qué vamos a hablar?
- ¿Qué es un proyecto legacy? ¿Qué es código legado? 🤔
- Que no tenga tests significa que… ¿todo código que no tenga tests es legacy? o ¿todo código legacy es aquel que no tiene tests? 🤯
- Riesgos de tener código legacy ⚠
- Que otras características se tienen en cuenta para considerar que un proyecto es legacy
- Llegamos a una startup, todo el código es legacy, ¿con qué deberíamos empezar?
- Test de andamiaje (scaffolding): ¿qué son?
- ¿Por qué sería difícil arrancar por un unit test? 👀
- El poder de los IDEs, de ChatGTP ⚡
- Boyscout mood ✨
- ¿Cómo se podría extraer de Java a Kotlin con el IDE? 🤔
- Pruebas de regresión
- Hacer un refactoring grande: opiniones y consejos 👍
- Martin Fowler → estrategia de 3 pasos: expandir, migrar, contraer + IDE power 😮
- Comentario sobre el libro “Refactoring” 📙
- Feature flags: control de cambios 🏳
- Qué hacemos con el código legacy y qué hacemos con el nuevo código que escribamos
- Buena práctica / tip: cada vez que aparezca un bug, intentar arreglarlo y poner un test que lo cubra
- Comentamos 2 tips más
- Tips++ (uno más) → git-effort
- Más estrategias / tips para proyectos legacy ➕
- Hablamos de screenshot testing 📸
- Una experiencia personal con un proyecto legacy
- Pruebas de caja negra, ¿tienen cabida en el testing de un proyecto legacy?
- Un último tip: Singleton, static, and so on. 💥 Hablamos de qué hacer si nos lo encontramos
- Últimos comentarios
- Resumen de la charla
- Despedida y agradecimientos

132. Cómo conseguir TU PRIMER TRABAJO (empleo) como programador (17 Tips)
Tanto para conseguir el primer trabajo de PROGRAMADOR como si llevas un montón, estos 17 TIPS te serán muy útiles. 🎯
https://gabimoreno.soy/primer-trabajo-programador
📜 ÍNDICE:
- Cabecera
- Presentación
- Dónde me podéis encontrar
- Uncle Bob: Código Limpio y ¿me cuentas un tip al final?
- Tip 1: Olvídate del dinero 💰
- Tip 2: Escoge 1 rama tecnológica → frontend, backend, mobile, data, … 🔱
- Tip 3: Escoge 1 lenguaje de esa rama ❗
- Tip 4: Crea 1 proyecto de referencia en GitHub (Portfolio) 👍
- Tip 5: Ten ganas de aprender → es una carrera de fondo 💻
- Tip 6: Sé constante 💪
- Tip 7: Sé paciente ⚖
- Tip 8: Mejora tus habilidades de comunicación 🔊
- Tip 9: Mejora tu inglés ✔
- Tip 10: Pon tu LinkedIn a trabajar 👀 + truco: no poner...
- Tip 11: Participa en comunidades: Los androides, MoureDev, AristiDevs, DevExperto, PintaAPIs 🤝
- Tip 12: Sigue a tus referentes en redes sociales ✨
- Tip 13: Escucha podcasts de programación 🎙
- Tip 14: Céntrate en ir donde más puedas aprender 🎯 + experiencia personal
- Tip 15: Apúntate a plataformas de búsqueda de empleo 🔍
- Tip 16: Ofrece tus servicios (aunque no haya una oferta). Sé proactivo 🔝 + ANÉCDOTA 👀
- Tip 17: Sonreír 😃
- Turno de los tips de la audiencia 👏
- Tip extra: cada vez que se vaya a una empresa conectar con la gente: LinkedIn, móvil, lo que sea
- Seguimos con los tips de la audiencia
- Pregunta del público: ¿montar una startup o meterse en una?
- Recomendaciones de podcasts
- Tip extra para las entrevistas: sé tú mismo 😁 (muy manido)
- Ponerse en los zapatos del entrevistado: ¿qué se espera de una persona que no tiene experiencia previa?
- Tip extra: prepararse muy bien a qué se dedica la empresa
- Recomendaciones pruebas técnicas 💯
- ¿Las empresas suelen pedir entrevistas técnicas o vale sólo el título y la persona?
- Ofrecerse a la empresa para hacer prácticas: ¿se hace o no en este sector?
- Entrevista técnica hablada: ¿qué recomiendas cuando no sabemos algo?
- Despedida y agradecimientos

131. MVI en Android, Inmutabilidad y UDF (Unidirectional Data Flow)
¿Quieres conseguir que tus apps sean menos propensas a ERRORES?
https://gabimoreno.soy/mvi-android
Échale un vistazo a esta charla técnica. 👀
📜 ÍNDICE:
- Cabecera
- Presentación, bienvenida, ¿de qué vamos a hablar?
- Qué es la inmutabilidad y para qué sirve
- Damos la vuelta a la tortilla 🔄. ¿Por qué la mutabilidad es mala?
- Otras ventajas de tener algo inmutable
- Concurrencia… qué podría suceder con algo mutable
- Conclusiones inmutabilidad 👀
- Un apunte adicional sobre inmutabilidad-mutabilidad
- Definición de un compañero sobre: a qué llama él un side-effect
- Comentamos una práctica que deja bastante que desear ❌
- Buena práctica: Crear un nuevo objeto y devolverlo 👍
- ¿Han sufrido nuestros compañeros algún problema con la inmutabilidad a día de hoy?
- UDF - Unidirectional Data Flow - Flujo Unidireccional de Datos: definición ➡
- ¿Esto sería MVI o MVVM?
- La clave: ¿cuál es la diferencia principal entre MVI o MVVM? 🧩 + Diversas opiniones
- El tema del Reducer: un detalle de implementación, ¿o si no tiene no es MVI?
- Cómo gestionan los compañeros los ViewModel
- Un data class con varios estados posibles, ¿puede ser una fuente de errores?
- Qué nos dice ChatGTP sobre los ViewModel en MVI y MVVM 🤖 + opiniones
- ¿Por qué la inmutabilidad es importante para testear?
- ¿Por qué cuando hay un Singleton por medio, el testing unitario se hace complicado? 🤯
- Resumen de la charla
- Últimos comentarios: ¿time travel? 🤨
- Despedida y agradecimientos

130. Hoja de ruta hacia Senior Android Developer con Antonio Leiva
Si quieres avanzar rápido, te hace falta una buena HOJA DE RUTA.
https://gabimoreno.soy/antonio-leiva-2
Antonio Leiva comparte ideas y un plan para ayudarte. 💡
📜 ÍNDICE:
- Previa
- Bienvenida y presentación de Antonio Leiva 👋
- ¿Cómo convertirse en Senior Android Developer?
- Hoja de ruta hacia Senior Android Developer 🚶♂️
- Architect Coders ¿contenido actualizado con las últimas novedades? 👀
- Recomendación para aprendizaje de Jetpack Compose: mejora de puesto de trabajo
- La ANÉCDOTA de Antonio
- Opinión de Antonio sobre la creación de contenido y cómo lo lleva
- Formación Kotlin Expert: ¿para quién va dirigida?
- ¿Se ha planteado Antonio volver a trabajar por cuenta ajena? 🤔
- Opinión sobre las academias online
- ¿Por qué se produce el abandono del camino del aprendizaje de programación? 💔
- Cómo es el día a día de Antonio Leiva
- Libro recomendado 📖
- Formación recomendada
- Leiva en el futuro: algo nuevo❗️ALERTA SPOILER❗️
- ¿Extraña Antonio trabajar para una empresa de producto?
- ¿Kotlin Multiplatform va a coger fuerza?
- Las recomendaciones de Antonio para entrevistar 😃
- Dónde podemos encontrar a Antonio
- Despedida y agradecimientos

129. ASO (el SEO para apps) con Samuel Acera
Aprende a posicionar tu app en GOOGLE PLAY mediante optimización para su buscador. 🥇
https://gabimoreno.soy/samuel-acera
📜 ÍNDICE:
- Previa
- Bienvenida y presentación 👋
- Samuel nos explica: ¿Qué es el SEO? 🆙
- La jungla de estrategias técnicas: textos alternativos, keywords, H1, H2, H3… ¿eso debería estar hecho desde el principio? 🧩
- ¿Es el ASO el SEO para apps? 🤔
- Búsquedas en Google Play Vs buscador que todos conocemos 😉: buscamos que sean concisas
- Samuel nos cuenta estrategias que se pueden seguir para mejorar el ASO en las fichas de Google Play 🤩
- Cuando le llega un error al usuario… "modo broma ON" ¿es ese un buen momento para pedir la review? 🤯 "modo broma OFF"
- Aplicación en varios idiomas, Samuel nos comenta si tenemos que aplicar las estrategias por cada idioma 🎯
- App Gabi Moreno: Aprende Android → empatizamos con el tema de las estrategias por cada idioma
- El tip / truco de productividad de Samuel: nos habla de Asana, Notion, Gmail
- La compra WOW de Miguel en el último año se transforma en… LA ANÉCDOTA: la aventura de la pinza verde idadepinza
- Monetización de apps: ¿Qué podemos hacer? Samuel nos orienta
- El Samuel del futuro 🔮 y nos habla algo de la IA ¡Atentos!
- La recomendación de Samuel para la próxima entrevista
- ¡Muchas gracias por venir Samuel! 😊 Y nos cuenta dónde le podemos encontrar
- Despedida y agradecimientos

128. ARQUITECTURA en ANDROID con Olmo Gallegos y muuucho más
Entrevista al excelente Android Developer, Olmo Gallegos, en la que nos habla sobre arquitectura en Android, Jetpack Compose, testing, legacy code y muuuchas cosas más.
https://gabimoreno.soy/olmo-gallegos
Un montón de conceptos, contados de un modo muy dinámico, en el que aprenderás nuevas perspectivas.
Además, la anécdota que nos cuenta… ¡buah! Yo me partí de la risa con ella. 🤣
Y una afición, que probablemente no te esperes viniendo de un developer.

127. TIER LIST Android Skills 2023
Charla Técnica en la que hacemos una Tier List de las skills fundamentales que un desarrollador Android debería dominar en este 2023.
https://gabimoreno.soy/tier-list-android-2023
Bueno, quizá no hace falta todas…
De hecho, esa es gran parte de la gracia de hacerlo en este formato.
La explicación de cada uno de estos conceptos, herramientas y habilidades en general y el orden en el que las ponemos, te aportará una idea de lo que desde dentro de Los androides Premium, consideramos más relevante a día de hoy.
Una sesión extraordinariamente dinámica en la que tocamos la friolera de 38 skills:
- Jetpack Compose
- Retrofit
- Room
- Background Services
- Clean Architecture
- Clean Code
- Coroutines
- Design Patterns
- Espresso
- Flow
- Gradle
- Hilt
- Kluent
- Mockito
- MockK
- MVP
- MVVM
- MVI
- Navigation Component
- Rx
- SOLID
- Testing con Hilt
- XML Views
- CI / CD
- DataStore
- Detekt
- Dynamic Features
- Firebase App Distribution
- Github Actions
- Git
- Gson
- Moshi
- Jenkins
- Ktlint
- Paparazzi
- Shot
- Robolectric
- Shared Preferences

126. Cómo aprender ANDROID eficazmente con Marcelo Czerewacz
Nuestro invitado nos explica las claves para aprender Android de un modo óptimo.
Notas del vídeo:
https://gabimoreno.soy/marcelo-czerewacz
Marcelo Czerewacz, miembro de nuestra comunidad premium, nos explica a través de su experiencia, cómo crecer como desarrollador.
Nos explica el por qué es miembro de Los androides Premium.
También sobre tecnologías en Android.
Y algo muy interesante que es sí es mejor empezar por Java o por Kotlin.
También nos recomienda un libro y una formación.
¡Y menuda anécdota!
Tienes que verla. 🤣
No te hago más spoiler, y te dejo que lo escuches por ti mismo.
Índice:
- Presentación
- ¿Por qué empezaste a programar en Android Kotlin?
- Previa
- ¿Cuánto tiempo llevas programando en Android?
- ¿Por qué estás dentro de la comunidad de Los androides Premium?
- Tecnologías Android
- ¿Es interesante empezar con Java antes que con Kotlin?
- ¿Qué se puede mejorar en la membresía?
- ¿Qué lo que más te gusta de la COMUNIDAD premium?
- Anécdota sobre tele...
- Preguntas filosóficas
- LIBRO RECOMENDADO
- Formación Recomendada
- TIP para CRECER como DESARROLLADOR ANDROID

125. HÉCTOR de LEÓN nos cuenta EL TRUCO de la PRODUCTIVIDAD
Fantástico episodio junto al gran HÉCTOR de LEÓN. 🤟🏼
https://gabimoreno.soy/hector-de-leon
Solo por el truco que nos cuenta sobre productividad, ya merece la pena ver la entrevista.
Pero es que además nos habla sobre herramientas para backend, motores de bases de datos, arquitectura y un montón de cosas superinteresantes.
Puedes ver el índice con los temas tratados aquí abajo, por cierto:
- Previa
- Presentación
- Quién es Héctor de León
- EL TRUCO de Productividad
- Qué cerveza recomiendas
- Herramientas para BACKEND
- Motores de bases de datos en mobile
- Algo de menos de 100€ que te haya cambiado la vida
- Anécdota
- Qué ARQUITECTURA empleas para backend
- Qué tal Gabi como DJ para la banda con MoureDev y Hola Mundo
- Libro recomendado
- Formación recomendada
- El Héctor del futuro
- A quién recomiendas para un futuro episodio
- Overview y agradecimientos

124. NAMING en Android, Charla Técnica
Hoy toca una charla técnica superinteresante. En ella hablamos sobre naming.
https://gabimoreno.soy/naming
Una skill que tenemos dominar si queremos trabajar apropiadamente en un equipo Android.
Los nombres que les damos a las clases, a los métodos, a las variables, etc., son importantes para tener un marco de referencia común y que hablemos el mismo idioma.
Y es que no por simplemente programar en Android en Kotlin, tenemos que compartir el mismo «lenguaje». Esas reglas que aplicamos, esas convenciones que seguimos, son fundamentales para una colaboración óptima.
Dale al play si quieres ver / escuchar la «discusión» que tenemos sobre el uso de Impl, por cierto. 😉
Índice:
- Previa
- Presentación
- Qué es el naming y por qué es importante?
- El naming es importante trabajando en equipo. ¿Y cuando uno trabaja solo?
- ¿Impl es un buen sufijo?
- ¿Es la notación húngara apropiada a día de hoy?
- Manager, Handler, Utils, Commons…
- Tip / Hack para funciones de extensión
- Buenas prácticas en nombres de paquetes
- Code Style en Android Studio
- Ktlint al rescate
- Truco para las Trailing Commas
- ¿Qué es un Magic Number?
- Consejos prácticos para escribir código
- Naming conventions en los tests
- Conclusiones

123. KOTLIN MULTIPLATFORM con Giuseppe Vetri
Giuseppe Vetri nos habla sobre KOTLIN MULTIPLATFORM:
https://gabimoreno.soy/giuseppe-vetri
Así como Backend con Kotlin, Gradle y muchas cosas más:
- Previa
- ¿Quién es Giuseppe Vetri?
- ¿Por qué empezaste a programar?
- Kotlin MULTIPLATFORM
- Cómo no caer en el Tutorial Hell
- ¿Por qué soltar es bueno para resolver bugs?
- ¿Qué tenemos que tener en cuenta para migrar a Kotlin Multiplatform?
- Cómo convencer a los de iOS para que se pasen a Kotlin Multiplatform
- Cómo manejar el ESTADO de la UI con Jetpack Compose, View Binding y Data Binding
- ¿Algo game changer que te hayas comprado de menos de 100€?
- BACKEND con Kotlin
- Giuseppe nos cuenta una anécdota muy curiosa
- Inyección de Dependencias en Kotlin Multiplatform
- Tips sobre GRADLE
- LIBRO recomendado
- ¿Alguna FORMACIÓN recomendada?
- Proyectos futuros
- Pregunta de Los androides Premium: ¿Cuáles han sido los mayores PROs y CONs en KMM?
- ¿A quién te gustaría que entrevistara en un próximo episodio?
- Agradecimientos

122. COMUNIDAD ANDROID y su IMPORTANCIA con JIMMY SÁENZ
Jimmy Sáenz.
https://gabimoreno.soy/jimmy-saenz
En este NUEVO EPISODIO del PODCAST nos cuenta su experiencia dentro de LOS ANDROIDES PREMIUM e insights sobre pertenecer a una COMUNIDAD. 🚀
Algunos de los puntos que se tratan son estos:
- ¿Quién es Jimmy Sáenz?
- ¿Por qué entraste a LOS ANDROIDES PREMIUM?
- ¿A qué tecnologías le estás dando caña ahora en Android?
- ¿Qué relación tienes con el TESTING?
- ¿Qué te gustaría que mejorara en la comunidad premium?
- ¿Qué LIBRO nos recomiendas?
- ¿Dónde tes ves en 3 meses?
- ¿Dónde tes ves en 1 año?
- ¿Dónde tes ves en 3 años?

121. CLEAN CODE y Buenas Prácticas con Fernando Franco
En esta ocasión Fernando Franco nos habla sobre código limpio y buenas prácticas.
https://gabimoreno.soy/fernando-franco
Formación a la par que entretenimiento.
¡Qué más se puede pedir! 🎯

120. CHARLA TÉCNICA Premium sobre ESTIMACIÓN de TAREAS
¿Quieres conocer TIPS para estimar tareas?
https://gabimoreno.soy/charla-tecnica-premium-estimacion-de-tareas
En esta charla técnica desde LOS ANDROIDES PREMIUM te damos algunos. 🌟

119. MANUEL VIVO nos explica CONCEPTOS que tienes que dominar en ANDROID
MANUEL VIVO nos explica CONCEPTOS CLAVE que todo Android Developer debería tener claro si quiere construir software de calidad.
https://gabimoreno.soy/manuel-vivo
Nos habla sobre corrutinas, Flow, Jetpack Compose, Inyección de Dependencias, Hilt... 🎯

118. RAÚL RAJA nos habla sobre PROGRAMACIÓN FUNCIONAL
Fantástico episodio del PODCAST:
https://gabimoreno.soy/raul-raja
Raúl Raja nos explica conceptos sobre programación funcional, verificación formal, Skala, Haskell... 💯
📜 ÍNDICE:
- Previa
- Cabecera
- Presentación y bienvenida
- Raúl nos cuenta sobre él, su experiencia y su background 👀
- Cuándo y por qué comenzó a programar nuestro invitado 🤔
- ¿Cuándo comenzó en Open Source?
- ¿Qué hacen en 47 Degrees?
- Programación funcional Vs Programación Orientada a Objetos 😮
- Qué es Arrow y su estado actual 🛠
- Scala: orígenes y de dónde viene
- ¿Qué diferencias, ventajas e inconvenientes hay entre Scala y Kotlin? 💥
- Metaprogramación: ¿qué es?
- ¿Scala es interoperable con algún lenguaje de programación?
- ¿Scala y Kotlin son interoperables? 💡
- Alguna herramienta que use Raúl para ser más productivo en su día a día
- ¿Cómo gestiona el tema de los shortcuts?
- Qué es Haskell
- La compra WOW en el último año (game changer) ⚡
- ¿Qué piensa Raúl sobre el TESTING?
- ¿Qué opina de la gente que dice que el testing no es importante?
- Momento ANÉCDOTA
- Verificación formal: ¿en qué consiste?
- ¿Tiene alguna similitud con los WHEN en Kotlin? 🎯
- Recomendaciones para entrevistar en el podcast 🎙
- El Raúl del futuro
- ¡Muchísimas gracias Raúl! 😊
- Dónde podemos encontrar a nuestro invitado
- Despedida, agradecimientos y cierre 👏

117. CHARLA TÉCNICA Premium sobre TESTING
¿Quieres conocer las bases del TESTING en ANDROID?
https://gabimoreno.soy/charla-tecnica-premium-testing
En esta charla técnica desde LOS ANDROIDES PREMIUM las abordamos. 🌟

116. Cómo organizar un MASTERMIND de Android
¿Quieres organizar un grupo de mastermind en Android?
https://gabimoreno.soy/mastermind
¿O quizá quieres unirte a uno?
Entra que te cuento cómo hacer ambas cosas. 🎧️

115. MIGUEL SESMA nos explica si los TESTS con Jetpack Compose son UNITARIOS
Entrevista a MIGUEL SESMA.
https://gabimoreno.soy/miguel-sesma
Nos habla sobre Testing en Jetpack Compose, ARQUITECTURA, Inyección de Dependencias, WebSockets y mucho más... 💯

114. RESULTADOS encuesta sobre Tipos de TESTS en ANDROID en el día a día
Reacción a los RESULTADOS de la ENCUESTA sobre tipos de TESTING en ANDROID en el día a día.
https://gabimoreno.soy/resultados-encuesta-tipos-de-tests-android
En este formulario se trataba de arrojar luz a la relación entre los años programando en Android y los tipos de tests empleados en el día a día.
¡Muchas gracias por participar! 🤗

113. PACO ESTÉVEZ y cómo mejorar tu OWNERSHIP
En esta ocasión, tenemos el placer de contar con Paco Estévez, desarrollador de gran reputación y dilatada experiencia dentro de la comunidad Android.
https://gabimoreno.soy/paco-estevez
Nos habla sobre:
- Programación funcional
- Tips para pasar los procesos de selección en las grandes compañías
- Cómo mejorar nuestro ownership como desarrolladores
Y alguna cosilla más que escucharás dentro. 😉
📜 ÍNDICE:
- Previa
- Bienvenida y presentación de Paco Estévez 👀
- ¿Cuándo empezó a programar?
- ¿Qué es la programación funcional?
- En qué anda trabajando actualmente Paco
- Qué es lo que más le gusta de su día a día 🙂
- Cuál es la diferencia de trabajar en una empresa 🔝 respecto a otro tipo de empresa
- Qué prefiere él
- Recomendaciones para quien quiera entrar en una empresa 🔝
- Herramientas que utiliza en su día a día
- ¿Compila sólo lo de dentro de los imports?
- Opinión sobre TDD 🤔
- La compra WOW en el último año 😮
- Momento ANÉCDOTA release
- El consejo para avanzar en la carrera profesional → ownership
- El Paco del futuro: ideas en mente 🎯
- La recomendación para entrevistar 😃
- Agradecimientos
- Dónde podemos encontrar al invitado
- Despedida y agradecimientos

112. No solo TESTING con SERGIO ARROYO
Seniority, testing, cultura y mucho más...
https://gabimoreno.soy/sergio-arroyo
Es lo que nos enseña de un modo superameno y didáctico el gran SERGIO ARROYO.

111. La prueba técnica rechazada que marcó un punto de inflexión en Diego Gómez Pulgarín
Estamos de inauguración, ya que esta es la primera entrevista premium.
https://gabimoreno.soy/diego-gomez-pulgarin
En ella, Diego Gómez Pulgarín, miembro de la Suscripción Premium, nos cuenta su experiencia con un aprendizaje que no te va a dejar indiferente.
Un punto de inflexión en toda regla.
Muchísimas gracias por contárnoslo, Diego. Muy inspirador.
Eres un ejemplo a seguir. 👏🏼

110. Pablisco, qué será RETROKIT
Entrevista al gran Pablisco.
https://gabimoreno.soy/pablisco
Nos aporta su punto de vista sobre diversos temas que nos interesan a los Desarrolladores Android.
Además, nos cuenta en primicia la nueva biblioteca que tiene en mente: RETROKIT.

109. ¿Por qué es inteligente pagar por formarte?
En este episodio te explico por qué pagar por formarse es una muy buena idea. 💡
https://gabimoreno.soy/pagar-por-formarse

108. JORGE BARROSO nos explica el significado de KARUMI
Entrevista al gran Jorge Barroso.
https://gabimoreno.soy/jorge-barroso
En ella nos brinda insights para ser desarrolladores senior, tips y alguna anécdota que no te esperas. 😉
📜 ÍNDICE:
- Previa: Bienvenida y presentación de Jorge Barroso
- Qué hace nuestro invitado y cuál es su background
- Herramientas que usa para programar en los diferentes lenguajes 🛠
- Recomendaciones de Jorge cuando nos estancamos en el mundo tech 🎯
- ¿Hay alguna diferencia entre programar apps y programar videojuegos? 🎮
- La compra WOW de Jorge en el último año (game changer) 😮
- Momento ANÉCDOTA
- Tips/insights para ser desarrollador senior ✔
- Qué hacen en Topi
- El Jorge del futuro
- Recomendaciones para entrevistar en el podcast 😃
- De dónde viene el nombre de Karumi 👀
- Dónde podemos encontrar al entrevistado
- Despedida y agradecimientos

107. Qué diferencia hay entre las CORRUTINAS cancelables y las no cancelables
¿Sabes qué tipo se usa en cada caso?
https://gabimoreno.soy/corrutinas-cancelables-y-no-cancelables
¿Por qué unas se pueden cancelar y las otras no?
En este episodio del podcast, trato de arrojar un poco de luz sobre todo esto. 😉
La cancelación de corrutinas es algo que deberíamos dominar si no queremos vernos afectados por Memory Leaks.
Básicamente la idea está sencilla: unas se pueden cancelar y las otras no. Pero con esto no queda muy claro el asunto, ¿verdad? 😁
Escucha el episodio que tiene insights interesantes.

106. Crear un VIDEOJUEGO y vender 100,000 COPIAS con Álex Pérez
Si quieres conocer CÓMO SE PROGRAMA en la industria del GAMING a NIVEL PROFESIONAL, no te puedes perder esta charla.
https://gabimoreno.soy/alex-perez
🎯

105. CLIENT, SERVICE, REPOSITORY: Buenas Prácticas
¿Sigues buenas prácticas en tu capa de datos para remoto? 🤔
https://gabimoreno.soy/buenas-practicas-client-service-repository-android
Comprueba en este episodio si tu punto de vista coincide con el mío. ✅
Hay ocasiones en las que llevamos mucho tiempo haciendo las cosas de la misma manera y un poco de información externa, de aire fresco, nos lleva a aplicar un enfoque nuevo a algo que dábamos por sentado.
Quizá ya sigas lo que te voy a explicar y te sirva para corroborarlo.
O quizá haya algún insight que puedas aprovechar para tus desarrollos.
En este episodio, te simplifico en qué consiste una implementación estándar desde la parte de Android.

104. Inspírate con ARI REINVENTADA
Hoy tenemos a una de las personas que más impacto está produciendo dentro y fuera de la comunidad de desarrolladores.
https://gabimoreno.soy/ari-reinventada
Todo ello, debido a su ejemplo, acompañado de una naturalidad super positiva. 🙂

103. Mi EXPERIENCIA tras 10 AÑOS trabajando como DESARROLLADOR ANDROID
Este es un episodio especial. Te voy a contar mi experiencia después de estar trabajando 10 años como Desarrollador Android.
https://gabimoreno.soy/10-anyos-trabajando-como-desarrollador-android
No importa si aún no has empezado a trabajar como programador. Si llevas 1 año, 3, 5, 10 o 20...
Te cuento de viva voz los insights que he ido extrayendo a lo largo de los distintos proyectos en los que me he embarcado.
Estoy convencido que podrás extraer unas cuantas pepitas de oro.
Espero que te inspire y que lo disfrutes.
¡Te veo dentro! 😉

102. ANAHI SALGADO y su ANÉCDOTA de película
Una pasada todos los tips que nos cuenta Anahi Salgado en esta charla.
https://gabimoreno.soy/anahi-salgado
Y la anécdota, de película desde luego.
¿En qué genero la catalogarías? 🎬️