Officially Lucky

Django, Python, Programming, Web 2.0, The Social Graph, Fashion, Chicago. A whole mixed up bag of stuff.

by Clint Ecker

The technology behind this new site

25 December 2007

Filed under Django, Site news

I thought it would be useful for nerds, and specifically Django nerds, who might read this post to hear about how I threw it all together in a span of under a week. Most of the Django applications I’m using are detailed on my colophon page, but I’ll reproduce it here and add more commentary.

  • django-basic-blog by Nathan Borror.

    Provides simple Post and Category data models and helpful views.

  • django-tagging by Jonathan Buchanan & Jacob Kaplan-Moss.

    Provides excellent data models, helpful model fields, template tags, generic views, and a tag manager to add tags to any of your Django models. Tagging support is tied into the system by Nathan’s blog application, and presents itself as a simple text field (ala Flickr) to type in as many tags as you’d like.

  • typogrify by Christian Metts.

    Provides a number of typographical filters for your site. They’re detailed here. I use the master filter, typogrify all over the place on this site. It applies all six of the sub-filters. Makes things look a lot nicer.

  • Django contrib applications:

The process of tying all these packages and modules together was made ridiculously easy with the help of Django (and my experience building similar sites in Django for the past few months & years). I’ve not written a single view.py of my own yet. Most of the work was done on what I call “links” and which appear as a tumblelog down the middle column of the site. They are a generic object that can theoretically encompass anything in the form of a shared link, bookmark, or status update. This make them great for del.icio.us or Google Reader shared items, Twitter updates, Last.FM played songs, and even Flickr photo streams.

So far, everything in brought in by RSS feed and processed by Mark Pilgram’s feedparser module. Links in my system have a ‘url,’ ‘title,’ and ‘description.’ In addition they can be categorized and every item in a particular feed can be put through what I call “processors” that accept the newly created Link object as well as a feedparser entry object.

These processors are type specific and some do more than others as some data in feeds need more processing than others. For example, the bookmark processor sets the type of a Link coming out of a feed to ‘link.’ Generally nothing more is needed. The Flickr Processor works on feeds produced by Flickr (duh.) and does a bit of hacking to use the ‘square’ photo size instead of what Flickr provides by default, which is the small sized photo.

On my site, I’ve aggregated ‘text’ Links into the middle column, and put the photos in a film strip at the top and bottom of the site. These could be all in the middle column, if someone so desired, but I thought this looked better.

I still have a long list of things I need to add, which include, in rough order of importance:

  • Comments (and Akismet spam filtering) and comment feeds
  • Technorati Pinging
  • Twitter pinging when I make a new post
  • Category feeds
  • A section of the site with just my tumble updates, perhaps even with posts (no teaser) flown in. (what is the past-tense of flow, anyway?)
  • Bringing in my Facebook Posted Items
  • Bringing in my iTunes Purchased Items

Those are all I have on my list for now. I really only want to add things as I actually need them, not thing I think I might need them. Oh yeah, happy Christmas!

blog comments powered by Disqus

by Clint Ecker

tech journalist, web developer, cyclist, and chicagophile.

RSS Feeds

Search

A Django site.

©2008 Clint Ecker <me@clintecker.com>