After 9 years of not touching Android development, I recently started to pick up this again 9 months ago. I hope it is still not too late for me to start learning all over again.
What is good now compared to the past, is there are a lot of free resources today. These free resources help me to pick up fast. I'm going to share with you what resources are useful for beginners.
This was the first course I took. I like this course because it is very straight forward except for those videos (which is optional anyway). This is the best course that give you a very quick overview of what Android development is all about.
Since I was new to Kotlin, I think this is the best and quickest way to learn Kotlin. It is good because it gives you examples, allowing you to visualize it instead of reading the boring and lengthy documentation.
The following blog post summarizes the new concept in Kotlin where you can't find in other languages (e.g C++ and C#).
I still felt missing at the time. I wanted to learn more, learned something more advance. So enrolled in this Android Kotlin Developer Nanodegreee. It is an expensive course in my opinion.
However, I recommend you do NOT pay for it because all the courses are available for free. In short, the following 2 links should cover all the paid courses:
The following article summarizes what I learned from this course (it is pretty detailed):
The issue with Android Kotlin Developer Nanodegree course is it doesn't cover Jetpack Compose. Luckily, this official Jetpack Compose Pathways course is quite complete in my opinion.
To be honest, some concepts are not easy to understand. The crucial one are recomposition and side effects. Thus, I always refer back to this official Jetpack Compose documentation.
I read the documentations many times, I still read it today, and I encourage you to do so. You will learn new things every time you read, especially when your experience level improves over a period of time.
I follow Phillip Lackner very closely, but I can't catch up his pace. He posts video faster than my learning speed!
I suggest you go through all his past videos and look at what are skills that you want to learn and pay attention to it. I particularly like when he shares best practice implementations, which you can't find them from the documentation.
This is my blog, so I'm self-promoting. I blog when I learn something new or what I think worth to share. My goal is to publish one article per week and so far, I'm still able to do it. Hopefully I can continue to do that...
Good thing is, most of the articles here are very beginner-friendly. Not so good thing is, the articles are probably not very well-structured. For example, what I blog this week probably may not be related to what blog last week.
I hope you find my little sharing here useful. It is useful for me at least. I know there are other good resources out there which I don't cover. Feel free to share with me.
To be honest, I'm still learning, and I still feel struggle sometimes. If you feel the same, you're not all alone. I just take baby steps at a time, and hopefully I can slowly pick up the skills. Maybe you can do the same.
All the best to you!