<< ALL BLOG POSTS

Django Saves the Day

Table of Contents

At Six Feet Up, we build software using several languages and frameworks. In a recent project, we were asked to add new features to a Google Cloud project based on Python and the Flask application framework. Knowing that switching frameworks is often expensive, we dutifully started building the new functionality using Flask.

It went well for a while. We built a web page with some interactive features. A few hours into the project, however, we realized the existing databases used by the application were not sufficient. Firestore and Cloud Storage could not support the kinds of queries we needed to make.

We briefly considered the other kinds of databases supported by Google, but we quickly settled on our favorite: SQL — specifically, Postgres. The application was for internal use only, so we didn't need any more scalability than what a small Postgres instance can provide. The most important priorities were speed of development and reliability, and that's where SQL shines.

Once we chose SQL, we thought about the rest of the features we needed to build. We needed to provide a simple way to log in, manage users and protect restricted resources. We decided Django would be a natural fit. While Flask is helpful for getting started, Django is a "batteries included" approach to web development.

We moved our Flask work to a new Django project in only about an hour. With Django, not only did we get the administration interfaces we were looking for, but we got a few more nice features like a database browser and a fast schema migration system for free. With that choice behind us, we built a React front end and started automating the deployment using Terraform.

While we're flexible in our technology choices, this was a case where some of our favorites were the clear winners. We saved days of effort and passed those savings to our client. The client was pleased that we were able to generate a prototype in a reasonable amount of time.

We are grateful to the communities that have built Flask, Django, Postgres, and all the infrastructure we rely upon. We do our part to contribute back.

Related Posts
How can we assist you?
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.