No necesitas todos. Necesitas uno por fase y volver al código. Esta lista está ordenada por utilidad real para esta ruta.
Regla de oro
Si un recurso no te hace escribir código en 20 minutos, ciérralo. Los recursos son herramientas, no trofeos.
Fase 1 — Kotlin base
Kotlin Docs — https://kotlinlang.org/docs/home.html
La referencia oficial. Empieza por “Basic syntax”, “Idioms”, “Classes” y “Null safety”.
Kotlin Koans — https://play.kotlinlang.org/koans/overview
Ejercicios cortos en el navegador. Perfectos para los primeros días.
Kotlin Playground — https://play.kotlinlang.org/
Para probar un snippet sin crear un proyecto.
Kotlin coding conventions — https://kotlinlang.org/docs/coding-conventions.html
Léelo una vez y vuelve cuando un nombre o una indentación te chirríen.
Exercism Kotlin — https://exercism.org/tracks/kotlin
Katas con mentoría. Úsalo si quieres práctica extra fuera del lab.
Advent of Code — https://adventofcode.com/
Para practicar colecciones y parsing cuando ya domines el nivel 2. No empieces por aquí.
Fase 2 — Kotlin avanzado
Kotlin Docs: Generics — https://kotlinlang.org/docs/generics.html
Lee
out,iny “star projections” después de hacer el nivel 4.Kotlin Docs: Inline functions — https://kotlinlang.org/docs/inline-functions.html
Para entender
inlineyreifiedsin magia.Kotlin Docs: Delegation — https://kotlinlang.org/docs/delegation.html
Para el nivel 5 y para leer código de librerías.
Kotlin Docs: Scope functions — https://kotlinlang.org/docs/scope-functions.html
Léelo, pero no abuses. Un
ifclaro gana a unletingenioso.Effective Kotlin — Marcin Moskała
Libro de idioms y decisiones. No es para el día 1; es para la semana 5.
Kotlin in Action — Dmitry Jemerov y Svetlana Isakova
Buen libro de fundamentos y Java interop. Útil si vienes de un lenguaje estático.
Fase 3 — Coroutines y Flow
Kotlin Coroutines Guide — https://kotlinlang.org/docs/coroutines-guide.html
La guía oficial. Lee en orden: basics, cancellation, composition, context, exceptions.
Kotlin Flow — https://kotlinlang.org/docs/flow.html
La referencia de Flow. Presta atención a cold vs hot,
stateInyflatMapLatest.Testing coroutines — https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-test/
runTest,StandardTestDispatcher,advanceUntilIdle. También puedes leer el README del módulo: https://github.com/Kotlin/kotlinx.coroutines/blob/master/kotlinx-coroutines-test/README.mdTurbine — https://github.com/cashapp/turbine
Para testear Flow de forma legible.
Kotlin Coroutines: Deep Dive — Marcin Moskała
Libro avanzado. Úsalo cuando ya hayas escrito coroutines y quieras entender el porqué.
Fase 4 — Android y Compose
Android Basics with Compose — https://developer.android.com/courses/android-basics-compose/course
Curso oficial. Salta lo que ya sepas; haz los codelabs.
Compose tutorial — https://developer.android.com/develop/ui/compose/tutorial
Para la primera pantalla.
Compose state — https://developer.android.com/develop/ui/compose/state
State hoisting,
remember,rememberSaveable. Léelo antes de tocar Kontor.Compose testing — https://developer.android.com/develop/ui/compose/testing
Para tests de UI y semantics.
Now in Android — https://github.com/android/nowinandroid
App de referencia con arquitectura, Compose, Hilt, Room y tests. No la copies entera; roba ideas.
Android architecture guide — https://developer.android.com/topic/architecture
Para entender capas, UDF y ViewModel.
Compose performance — https://developer.android.com/develop/ui/compose/performance
Cuando ya tengas pantallas y quieras evitar recomposiciones innecesarias.
Fase 5 — Datos, red y DI
Room — https://developer.android.com/training/data-storage/room
Entidades, DAOs, relaciones, migraciones y tests.
Hilt — https://developer.android.com/training/dependency-injection/hilt-android
@Inject,@Module,@Provides, scopes y tests.Retrofit — https://github.com/square/retrofit
Para APIs HTTP. Aprende a modelar errores, no solo el
200.OkHttp — https://github.com/square/okhttp
Interceptors, timeouts y logging. Retrofit se apoya en OkHttp.
kotlinx.serialization — https://kotlinlang.org/docs/serialization.html
Para DTOs y JSON. Alternativa a Gson/Moshi.
DataStore — https://developer.android.com/topic/libraries/architecture/datastore
Para preferencias y estado pequeño.
Fase 6 — KMP y backend
Kotlin Multiplatform — https://kotlinlang.org/docs/multiplatform.html
Empieza por compartir dominio, no UI.
Ktor — https://ktor.io/docs/
Servidor y cliente. Para el proyecto 5.
Ktor testing — https://ktor.io/docs/server-testing.html
testApplicationpara tests de endpoints.SQLDelight — https://sqldelight.github.io/sqldelight/
Persistencia multiplataforma. Solo si el proyecto 4 lo pide.
Kotlin Exposed — https://jetbrains.github.io/Exposed/
SQL idiomático para JVM. Opcional.
Libros, en orden
| Libro | Cuándo | Para qué |
|---|---|---|
| Kotlin in Action | Semanas 1–4 | Fundamentos y Java interop |
| Effective Kotlin | Semanas 5–8 | Idioms, diseño y rendimiento |
| Kotlin Coroutines: Deep Dive | Semanas 7–10 | Concurrencia seria |
| Android Programming: The Big Nerd Ranch Guide | Semanas 9–12 | Android clásico si te falta base |
| Real-World Android by Tutorials | Semanas 12–14 | Arquitectura y features |
No compres los cinco el primer día. Un libro leído y aplicado vale más que una estantería.
Newsletters y comunidad
Kotlin Weekly — https://kotlinweekly.net/
Android Weekly — https://androidweekly.net/
Kotlin Blog — https://blog.jetbrains.com/kotlin/
Android Developers Blog — https://android-developers.googleblog.com/
r/Kotlin — https://www.reddit.com/r/Kotlin/
Kotlin Slack — https://kotlinlang.org/community/
Stack Overflow Kotlin — https://stackoverflow.com/questions/tagged/kotlin
Úsalas para descubrir, no para sustituir la práctica.
Lo que puedes ignorar de momento
Compiler plugins y KSP avanzado.
Arrow y programación funcional pura.
KMP con UI compartida.
Hilt multi-módulo complejo.
Benchmarks y baseline profiles.
GraphQL.
Arquitecturas hexagonales de 14 capas.
No porque sean malos, sino porque no toca. Aprende a resolver problemas reales primero.
Recursos locales de este proyecto
Rutas desde la raíz de kotlin-lab:
README.md: cómo ejecutar el lab.docs/CURRICULUM.md: ruta de 16 semanas.docs/FLUTTER_TO_KOTLIN.md: traducción mental.docs/ANDROID_FLUENCY.md: plataforma, jerga y frases de mid Android.docs/COMPOSE.md: Compose para quien viene de Flutter.docs/PRACTICE.md: rutina y método.docs/LEVELS.md: ejercicios y pistas.docs/PROJECTS.md: capstones.docs/ASSESSMENT.md: rúbrica y banco único de preguntas.docs/MOBILE_DESIGN.md: diseño oral de apps de pagos.docs/ANDROID_BASICS.md: Android desde cero.docs/MOCK_INTERVIEWS.md: simulacros con guion.docs/INTERVIEW_ENGLISH.md: respuestas en inglés.docs/CODE_READING.md: lectura de código en voz alta.docs/KONTOR_REVIEW.md: revisión crítica de Kontor.docs/KONTOR_TICKETS.md: 20 tickets para Android/Compose.../../kontor/docs/kotlin/README.md: curso de audio.