Blog

How to figure out your month-over-month revenue growth with an SQL query (PostgreSQL)

September 10, 2017

These last couple of days, I've been working on a dashboard for one of our Shopify apps so we can get a quick overview of how our app is doing revenue-wise.

One of the metrics we'd like to be able to see instantly is the month-over-month revenue growth rate. For a subscription-based SaaS (software as a service) product, this is a very important metric to track as it tells you if your business ...

Retry decorator for Python 3

September 1, 2017

When your app relies on making API calls to external resources, you should expect that there will be network issues from time to time and you should prepare for them.

While these will be rare relative to the number of requests you're making, handling them early on could really save you a lot of headache in the future as your app usage grows. Many of these things can be easily handled with a simple ...

Import orders from other platforms into Shopify with EZ Importer

August 22, 2017

Our third Shopify app, EZ Importer, was actually published on the Shopify App Store a couple of months ago but we decided to stay in beta for a bit to make sure the app is stable and our early users are happy with it. We're finally at a point now that we're ready to get out of beta and have added a bunch of features since the initial release as well.

If you ...

Google's Project Fi: The Digital Nomad's Cell Carrier

August 14, 2017

I've been using Google's Project Fi service for about 4 months now and it's one of those services that I wish I'd known earlier.

I first heard about this service when I was living in Bogota, Colombia earlier this year from another traveler. Currently, to sign up to the Project Fi service, you need to have a U.S. address. So when I visited family back in the U.S., I ...

Upgrading to Ubuntu 16.04, Python 3.6, and Django 1.11

August 12, 2017

I've finally decided to perform major version upgrades of the main components of this blog: the operating system (Ubuntu), the programming language (Python), and the web framework (Django). Doing these upgrades to the latest LTS (long-term support) versions will future-proof the stack for at least the next 3 years.

One of the main reasons you'd want to do this is to get the latest security updates. It's hard to keep up with ...

Older