Slides
TL;DW
The point of my talk is that all the best practices that apply under normal circumstances are doubly necessary under difficult circumstances, such as building for bad internet, old phones, small screens, or technically inexperienced users.
There is no shortcut to learning best practices, but here are some good sources for further reading.
Bad Internet Box
If you want to get your own Bad Internet Box, I suggest you contact PJH Technologies.
Google Tips
I feel that this Google Architecture Recommendation Guide is right now the best starting point for building the architecture that allows you to more easily adapt for low connectivity and old phones.
Once you have the basic architecture set up, the Google Build for Billions Guide and the Google Performance Guidelines both have a myriad of great tips.
This recent article by Ben Weiss, as well as this series of articles by Niharika Arora on optimizing for Android Go, are both good supplements to the above.
Other Reading
The Http client standard is hosted here, with a direct link to how they define idempotent methods.
This medium article has a good warning about how OkHttp default retry works.
Video
Also
This video helped me a lot to build the skills to understand and implement a lot of the above, and I just like recommending it because it’s a timeless and important presentation.