Designing the technology for social good is not enough. It has to be useful for the end user. We focus on solution designs on the end user's context and level of knowledge. By closely co-developing tools with our users, the tools are more effective and resilient in the oftentimes harsh environments where they are used -- regardless of differences in language, literacy levels, or types of technology available.