Blog / Django

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 ...

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 ...

Generating a signed URL for an Amazon S3 file using boto

April 9, 2017

I was refactoring some code for EZ Exporter, a data exporter app for Shopify, last week as our customer base has been growing pretty steadily these last few months. I figured it's time to do some optimization to make sure the app is ready for future growth.

One of the functionalities that we needed to optimize is how we handle manual downloads. Initially, I just made it very simple by returning the data as ...

Launching A job board and aggregator for remote Python jobs (and only remote Python jobs)

January 4, 2017

I recently launched, a job board specifically for remote Python jobs. I aimed to release it on January 1 and was actually able to make it in time. There were a few minor last minute bugs I had to fix before the launch, but overall it went pretty well.

I started the project as I'm a freelance Python developer who can only work remotely due to my "digital nomad" lifestyle and constantly ... Progress Report

December 24, 2016

I started development of, a job board/aggregator for finding remote Python jobs and developers, towards the end of November. Just almost a month later, I'm happy to announce that I'm about 90% done with the site. I've logged around 66 hours of development time so far.

The site is of course built with Python, using the Django web framework. I also made sure I took advantage of the latest ...