Django Events

6 Jan 2009

There are a few of you out there who know I’ve been talking for months now about plans to expand the collection of community-oriented sites that are available for us Djangonauts to use and enjoy. It’s not that I think the current crop of sites are deficient in any way; it’s just that each site has a specific role it intends to fill, and I think there are more roles that need filling. In light of this, I’d like to officially announce Django Events.

Writing and Blogging

1 Nov 2008

So, the recent interest in National Blog Posting Month has made me reflect on my own writing over the past since since I took part last year. I wrote 30 posts in a month, then just 10 posts in the next 11 months. While I don’t regret letting my professional writing get in the way of my personal writing, I feel somewhat obligated to start giving back again. Once the book’s out of the way, I should be able to get back to writing here more regularly, but in the meantime, I thought I’d share a bit of what’s been occupying so much of my time.

Wicked [stuff].

22 May 2008

It’s been a while since I’ve posted regularly, and those of you who really keep your ear to the community already know why. Last week, news broke that I’m writing a book. I’ve actually been writing it for several months now, since before the sprint last December, toying with the idea of contacting a publisher. After getting positive feedback from several people at the sprint, I bit the bullet and contacted Apress in January, got a contract and have been working pretty much non-stop ever since.

Google App Engine: First Thoughts

8 Apr 2008

Like much of the Web development world, I caught wind of Google’s new App Engine launch last night, during the NCAA championship game. I wasn’t following the Scobleizer video though, so I was relying on the TechCrunch article and people in #django and #django-dev to fill me in on what all the fuss was about.


17 Mar 2008

So, PyCon proper has come and gone, and today begins the sprint. I had a great time, got my talk on (I’ll try to fix the fonts, but it’s online, anyway), and learned some fascinating stuff.

Review: The Definitive Guide to Django

16 Jan 2008

While I normally prefer to write about code, I’d like to take a few minutes and review the recently-published definitive guide on my favorite subject. That’s right, I’m talking about The Definitive Guide to Django: Web Development Done Right by Adrian Holovaty and Jacob Kaplan-Moss (and special quest author Simon Willison).

A Simple Plugin Framework

10 Jan 2008

Since getting involved with Python, I’ve read a few discussions about Zope, and though I haven’t used it, I do enjoy reading articles about it, to see how other people approach common problems. In particular, a recent Satchmo discussion pointed me to an article about using Zope3 interfaces to essentially manage plugins. I knew Trac did this, as I had tried to write a Trac plugin a while back, but I hadn’t really seen a good description of how the process actually works until now (thus my Trac plugin was doomed from the start).

Google Chart API

7 Dec 2007

So, I was surprised to see my news this morning, when information aesthetics spread the news of the new Google Chart API. Looks like they’ve been reading my blog, and they decided to save me the trouble of installing matplotlib or anything.

Looking back at the sprint

3 Dec 2007

Sadly, the sprint is now over, but we got a lot done. I won’t go over the whole list, but I will regretfully admit that I didn’t get anything finished in time to get committed during the sprint.

Closing out November

30 Nov 2007

It’s been a long month. It’s been a very long month. I’ve had my ups and downs, but over all, it’s been a good time. I stuck it out to the end, and I’m proud of that.

Django Projects

29 Nov 2007

A while back, Jacob posted a list of Django projects he found outstanding. I’ve now had some time to work with several projects myself, and I’d like to take the opportunity to recommend a few of them.

Upcoming Sprint

27 Nov 2007

I’m finally able to make a sprint this time. I missed the last one (though I did have my own shortly beforehand), but I’m all set to make this one, live and in Lawrence. I’m incredibly excited to be meeting everybody in person, I expect it’ll be a great time. It’s especially great that I’m one of those weird people who love nothing more than coding in my spare time.

Python Descriptors, Part 2 of 2

24 Nov 2007

Yesterday, I gave a basic overview of descriptors and what they can do, including a simple example to demonstrate one in action. That’s all well and good, but today I’ll explain how this can be genuinely useful in your apps, particularly when used in models.

Python Descriptors, Part 1 of 2

23 Nov 2007

I rather enjoyed writing about a relatively underused feature yesterday, so today is more of the same. Of course, continuing with a focus on Django, today’s Python feature is also commonly used throughout a number of Django’s internals: descriptors. Python’s documentation on descriptors is rather sparse, though there’s a great writeup on it already. I won’t try to reinvent the wheel in its entirety here, I’ll just write up some basic details and how it can be used for Django.

Except the Unexpected

21 Nov 2007

No, that title isn’t a typo. Predictably, yesterday’s post drew out an opposing view, and I’m very glad for it. While I haven’t changed my mind on the subject, Cedric did raises some reasonable points that I neglected in my original post. Maybe it’s just that I’m growing tired of posting every day, but I didn’t adequately explain my views, and for that I apologize. Only for not explaining, though, not for the views themselves. Today, I’ll try to be more detailed in my thoughts on the subject, and offer more recommendations than just “don’t return None” and “embrace exceptions”.

Returning None is Evil

20 Nov 2007

Yes, that headline was written for dramatic effect. No, I don’t think that None itself is evil. Yes, I realize there are many cases where None is an appropriate return value. No, this post isn’t about those cases.

Working on Visual Design

18 Nov 2007

It’s no secret that I’ve been very involved with Django, which requires a lot of design with regard to programming, but it doesn’t really deal with the visual aspect. Instead, that’s (rightfully!) left to graphic designers. Unfortunately, this only works at its best when you have access to a designer. When building my own site, I’m constantly reminded that I don’t have design skills, nor can I hire a designer. In fact, that’s one of the biggest reasons I’m on Blogger at the moment; I just can’t manage to get a personal site that looks good.

Fixing bugs or adding features?

17 Nov 2007

No, I’m not going to actually answer that question, as I expect it to be different for each person. This post is more about what I go through when trying to answer it for myself. With the upcoming sprint, it’s especially important to answer, at least it is for me.

Data Visualization in Django: A dream?

16 Nov 2007

Continiung a bit in the vein of yesterday’s post, one thing I go keep wishing I could do is easily generate graphs and charts of Django-managed data. I have so much other stuff going on that I can’t work on it now, but I’d love to do it sometime. I know things like matplotlib are already out there, and I’m not hoping to reinvent them.

Blog stats

15 Nov 2007

I was looking at my Google Analytics data today, and I noticed a few surprising things.

What I mean by “modular”

13 Nov 2007

I’m putting my series on hold for a little while, as there’s been some recent chatter about a project I’ve been working on, django-modular, and I thought I’d try to write it up properly for the first time.

Using Declarative Syntax, Part 3

12 Nov 2007

Continuing where we left off yesterday, it’s time for some more sugary syntactic goodness.

Using Declarative Syntax, Part 2

11 Nov 2007

Today, continuing the series, get ready for some code. The first thing we’ll need to do is lay out some files to work with.

Using Declarative Syntax, Part 1

10 Nov 2007

A while back, I wrote a bit about my work on django-modular, and one of the comments pointed me to the Netvibes UWA. While that wasn’t the point of django-modular, it still looked like it would be reasonably easy to support in a way that would integrate well with a Django app.

A Django Analogy

9 Nov 2007

I was thinking recently about how I look at Django and my place in it, and I found a certain analogy to be very apt: it’s a lot like a kitchen. Bear with me here.

Customizing filenames without patching Django

7 Nov 2007

Recently, I’ve noticed a good bit of chatter on the mailing lists about how to override the filename of an uploaded file before saving it. Django currently provides options for customizing the location based on upload time, but nothing else. Often, projects find the need to store attachments in directories according to details of the object or a related object. I’m doing a good bit of work on FileField at the moment, but that’s still a way off and doesn’t yet address this issue anyway.


6 Nov 2007

I discovered Ohloh a while back, and I must say that I find the idea very intriguing. The notion of tracking who uses a particular framework is fine and dandy, but it’s great to be able to track real statistics about code size over time, commits over time, even approximately how much it would cost to be developed commercially.

Local Branches

5 Nov 2007

Okay, I officially despise National Blog Posting Month. It’s neat to try to think about how to populate the blog every day, and I really appreciate all the extra thought it’s made me put into it. But I just don’t think I can reasonably manage to do it. Here it is, five days in, and I’ve already resorted to a minor status update just to get my post in for the day. Sorry folks, you’re in for a long month.

Django in JavaScript

4 Nov 2007

Well, this post isn’t very substantial, because I don’t really have much code to back up my plans in this area, but it’s time for me to post again on what I’ve worked out for using Django with Google Gears. It’s turning out to be a bit trickier than I thought, bu I think it’s still something worth working toward.

Storing passages of time

3 Nov 2007

One thing I need for VGMix is the ability to store the length of a song in a Django model. There are date and time features, but nothing for just a length of time, unrelated to any particular point in time. I did a bit of searching and found a ticket to add an IntervalField to Django, but no patches were provided.

The future of dbsettings

2 Nov 2007

I took a look at Satchmo recently, and I noticed that its new configuration system (now in Satchmo 0.6) looked vaguely familiar. I had a brief conversation with Bruce about it, and it turns out he forked dbsettings! And I mean that in a good way.

Django Projects

1 Nov 2007

Thanks, James, for giving me a heads-up about National Blog Posting Month. It’s unfortunate that I heard about it with just one hour left on November 1, but I’ll give it a shot.

My very own mini-sprint

7 Sep 2007

Perhaps in anticipation of next week’s sprint, or maybe due to just plain luck of the draw, I made major progress on three separate projects today. I feel tired, but exhilarated at the same time. If this is what a sprint feels like, I want to take part. Badly.

Django and the Linux Desktop

5 Sep 2007

Reading a recent discussion regarding Django’s ORM, I got to thinking about how I might respond if someone raise such an argument to me. After some reflection, I think my view on the matter comes down to something I’ve learned from being on the django-developers mailing list for the past several months.

Dynamic models in the real world

14 Aug 2007

A while back, I wrote up an article on creating models dynamically at run-time, and Malcolm Tredinnick rightly noted that there are potential uses, but it’s high time I provide an actual example.

Update on database-backed settings

16 Jul 2007

I’ve made a few updates recently to dbsettings, which finally brings the issue count to zero, and adds some new features worth discussing.

Signed Cookies

16 Jun 2007

Some time ago, I created a Signed Cookies middleware for Django, allowing views to transparently sign and validate cookies. With recent developments on django-developers, it was best to create a separate project for it, rather than maintain it as a ticket.

Offline Django?

1 Jun 2007

A few weeks back, I got bored for a bit and started trying to emulate Django’s declarative model syntax in JavaScript. This was a fairly useless exercise, but one that seemed entertaining at the time. However, now that I look into some of the information on how Google Gears helps makes web applications available offline, I wonder it might actually be worth the time to make it happen.

Choosing a name

18 May 2007

For those of you who have been following my progress lately on django-developers, that title probably makes some sense. For the rest of you, I’ll explain. I’ve been working on on a project for quite some time now, with the goal of eventually being accepted as a contrib app in the official distribution. Trouble is, nobody (myself included) likes the name as it stands: django-values.