Deleting Mixpanel Profiles

Our current Mixpanel plan has a limit on the number of profiles we can keep. Going over that number will incur overage charges every month. To prevent us from going over and avoiding those charges, we need to delete profiles from the platform. Here’s how.
Read more →

Assume No Context for i18n

This is a quick post following up on conversations that began in a pull request that added a summary screen to our new onboarding flow. The internationalization library we use, i18n-js, doesn’t prescribe too much in terms of how to structure our localization files. So here’s a short start to defining how we’ll try to do localization in our mobile app.
Read more →

How does redux-axios-middleware work?

Hm… what are these logs that flash by the React Native Debugger log? How are they created? What are they doing…? 🤔
Read more →

Debugging Pages for Printing

TIL you can use Chrome DevTools to emulate how a page will print out from a … printer. Here’s how.
Read more →

Debugging Lambda Timeouts

For a while, and particularly in the past month, we had been seeing several of the Lambdas that power the Shine mobile app backend sporadically timeout. Today, we’re reporting an almost 0% error rate compared to, at its worst times, up to 20% of requests to an individual Lambda resulting in an error. To get to this point, there were several new (to me) learnings about how Lambdas work and the tools we can use to debug them.
Read more →