Better Local Settings — January 5, 2010

A common convention I've seen in the Django community is to place code like the following at the bottom of your settings file: # ``settings.py`` # Lots of typical settings here. # ... then ... try: from local_settings ... [Read More]

Fresh News

Blogging Frustration

Most of the way through the National Blog Posting Month, I'm pretty frustrated. I've got 3-4 topics I really would be interested in writing as well as a couple more simple topics. But ...

Balancing OSS And Commercial Development

Open source has had a tremendous impact on my personal and professional life. Without open source, I would never have landed where I have, nor would I enjoy what I do nearly as much. So ...

Customizing The Admin: Part 3

This entry in the "Customizing The Admin" mini-series is a basically a quick tip but has tons of potential. The ModelAdmins that make up the admin area can take many arguments to customize the ...

The Problem With Monoculture

I'd like to wax philosophical for a couple moments and talk about what I perceive to be the problems with monoculture. Culture is an interesting beast. At times, it can be brilliant but in ...

Aborted Post On Context Processors

Well crap. I was going to write about context processors but James already did one and two years ago at that, natch. This leaves me throwing out everything I just wrote as well as the ...

Customizing The Admin: Part 2

On of the pony requests that can up prominently at DjangoCon 2008 was the request for multiple deletes in the changelist of the admin. Thanks to newforms-admin, we can roll our own. Rather than go ...

More Metadata With "Through"

I've professed my love of metadata before and one of my new favorite features in Django is the addition of through on ManyToManyField relationships. I almost missed this addition when it happened (caught via ...

Launch Post-Mortem

Since my brain has turned pretty soft and mushy post-launch, I thought I'd cover a couple "lessons learned" from the experience of relaunching the flagship World Company properties. My biggest responsibility during the launch ...

Launched!

As a point of historical note, the sites that caused Django to be created, LJWorld, Lawrence.com and KUSports.com have all launched on Ellington running on Django 1.0! It's been a long ...

Simple Web Scraping

Taking a work-related break from admin topics tonight and tomorrow night. So instead I'd like to introduce simple web scraping, which I have done my fair share of.

In a perfect world, all websites ...

Customizing The Admin: Part 1

For many people, one of Django's best selling points is the Admin app. And as wonderful as it is, there often comes a point where you need/want more. With the changes that landed ...

Tea Timer

Since I'm pressed for time tonight, this will be quick. While coding at home, I like to enjoy a good cup of tea. However, nearly without fail, I leave the tea bag in too ...

What's Wrong With Django (Slight Return)

Having been a professional Django developer for Mediaphormedia/The World Company the last 5 months has been a happy experience. The vast majority of my experience, especially the changes leading up to 1.0, has ...

Book Meme

"Did you have something special in mind?"

From The Essential Calvin And Hobbes.

Found via James Tauber. To do the meme dance:

  • Grab the nearest book.
  • Open it to page 56.
  • Find the fifth sentence ...

Choosing A License

So I had planned on writing about choosing a license for your software. But in the spirit of due diligence, I came across (again) an article by Jeff Atwood that does a better job than ...

A Brief Introduction To Multiprocessing

Parallel processing has been getting increasing attention lately online, and with good reason. As CPU manufacturers start adding more and more cores to their processors, creating parallel code is a great way to improve performance ...

Bugfix to CachedPaginator

Found by Mr. Bennett, there was a bug in the CachedPaginator. Newly added is a number = self.validate_number(number) call in the page method. You'll want to grab the latest source from http://www ...

Quick & Dirty Search with Django

There's a lot of options out there for search. You can defer to the big boys like Google, you can go with the enterprise-y solutions like lucene/solr and there's plenty more smaller ...

Fun With Dictionaries

Another brief entry, this time about a fun little Python trick. One of the fun things about Python is the fact that functions are first class objects. Which means that, in general, any where you ...

CachedPaginator

Another quickie tonight in favor of crunch time at work. In a specific use case of Ellington, we have a list of objects that is very expensive to generate and is requested very frequently. To ...