When i first started Android, back in 2010 when everyone was still using eclipse for Android development, it was a bit rough for me, due to the fact that I did not have a mentor, someone to talk to, someone to guide me and teach me best practices, someone to teach me how to Android.
It was hard, but I made up my mind and i was going to become an Android developer the hard way. Teaching my self.
This post is not about all the sleepless nights i had, all the friends and family that kept getting angry with me because I kept pushing them away to learn, or about all of my headaches and mistakes i made along the way, that’s story for another time. I want to share with you the resources I used and continue to use to get me where I am today as an Android developer.
Note: The order of the list is arbitrary.
One of the best Android developer podcast at the moment, and my favorite personally. Fragmented is the Android developer podcast where Donn Felker and Kaushik Gopal talk about building good software and becoming better Android developers. They engage in bi-weekly banter about the platform, tools, patterns and practices that helps a developer go from good to amazing.
A podcast by and for Android developers. Hosted by engineers from the Google Android engineering team, this show covers topics of interest to Android developers, with in-depth discussions and interviews with engineers on the Android team at Google.
Another podcast by and for Android developers. Hosted by Hannes Dorfmann and Artem Zinnatullin. This podcast is fairly new, and only has 8 episodes. But each one is full of useful information.
This podcast has been around since July 15th 2015 and is not about any specific software platform. This is by far one of the greatest software engineering podcasts out there that cover everything from functional programming, how to get a job as a software developer, how to negotiate salaries, how to become a better developer, machine learning, philosophies for engineers, music algorithms, android and so much more!
This is not an Android development podcast BUT it is an amazing place to go to listen to topics ranging from best programming practices, design patterns, coding for performance, object-oriented design, database design and implementation, tips, tricks and a whole lot of other things. These guys have many years of experience as professional software engineers with a bonus of a great sense of humor. I ride the train to work everyday, and when I am listening to this podcast i guarantee you can find me laughing to my self because of them. These guys are not Android developers but most topics discussed are relevant in any number of object-oriented programming language and i highly recommend it to any Android developer
This list is pretty short, but it may be all the newsletter you need. I mean its hard enough keeping up with the list of podcasts and trying to listen to them all.
- http://androidweekly.net/ – Best android development newsletter period
- http://www.pointer.io/ – not specific to android but has outstanding content. Amazing. Highly recommended.
- https://www.reddit.com/r/androiddev/ (not a newsletter but a pretty damn good place to go for daily/weekly updates about android development)
- YouTube Android developer channel
- Derek Banas
There are more video websites/series out there you can go and learn from, but these are my favorite personally.
- https://medium.com/ – you will need to specify channels to follow, they have a great amount of android/java/kotlin content
Ok this is all the websites/blogs i am going to list for now. I almost didn’t stop!
- The gang of 4 book – (The real title is: “Design patterns – Elements of reusable Object-Oriented Software” but no one calls it this.)
- Effective java 2nd edition
- Head first design patterns
- Refactoring – improving the design of existing code
- Android Programming: The Big Nerd Ranch Guide
- Java puzzlers: Traps, Pitfalls, and Corner Cases – test your java knowledge with this one. Pretty fun and very challenging.
Now this may all be exciting and whatnot but listen to this: do NOT try to read/watch/listen to everything. This is just not possible, i mean it is but you wont learn much if anything at all. Choose your favorite blogs, podcasts, or whatever and just take it slow. Read 1 or 2 article a day. Read them over again. Learn what you read. Memorize it. Then move on to 1 or 2 more.
If you read just to say you read you will not learn anything. You will try to read everything, see all the videos, and listen to every podcast but it will be too much for your brain to handle. Try to pace yourself, it has been scientifically proven that if you take a break and analyze what you just learned after learning something new, and maybe even trying to apply it immediately, you are more likely to remember and record the information in your brain for long-term recall.
Here is a good article on learning that can be applied to software engineers as well: https://blog.todoist.com/2016/04/25/read-less-learn-more/