One of my favorite patterns in Django is the combination of “fat” models and cached_property from django.utils.functional.
Fat models are a general MVC concept which encourages pushing logic into methods on your Model layer rather than the Controller (“view” in …
Linting SCSS with sass-lint
Complex projects always require multiple developers and design heavy web sites are no exception. Sass/SCSS is still our language of choice when writing CSS, both for its wide support and flexibility. The latter can be a …
Django’s Signal Dispatcher is a really powerful feature that you should never use. Ok, it has valid use cases, but they may be rarer than you think.
First, to dispel a misconception about signals, they are not executed asynchronously. There …
In another of our “you can do that?!?” with uWSGI posts, today I’ll show you how to use uWSGI to host multiple sites and properly route traffic based on the hostname to those sites.
Multiple Sites (aka Emperor Mode)
uWSGI …
Serving Static Files with uWSGI
As noted in a previous post, uWSGI is a Swiss Army knife of functionality. One of its features is a built-in static file server.
When to Use uWSGI for Serving Static Files
While it may …
Virtualization technologies have been around for a while in various forms and over the last several years the container style of virtualization has become popular as a complement (or replacement) to VMs (Virtual Machines / hypervisors). The first half of …
Four years ago, I wrote a blog post called Introduction to Go Debugging with GDB. At the time, the only option was the GNU debugger. Even the official Go documentation page on GDB doesn’t set the bar very high:
GDB …
Nowadays, it’s common to deploy multiple application servers, but it poses a very common problem; How are these application servers going to share the media files contributed by the users?
Cloud providers like Google, Rackspace or Amazon Web Services solve …
This post could have been titled, “How We Use OpenPGP to Protect Our Secrets.” All the use cases illustrated below use a tool called GnuPG to take care of the crypto details for us. GnuPG is a complete and free …
The most famous quote to characterize python speed is:
It is fast enough
I have used this quote many times, and I still believe that it applies to most circumstances if you throw enough hardware at the problem.
Despite Python …