Entries published in June 2008
Microformats and such
I hope you’ll forgive this brief diversion from my ongoing attempt to distinguish web developers from web designers, but it’s late, I’ve had a couple beers and I’ve been tinkering a bit with some code. Regularly-scheduled programming will return shortly.
So. The microformats people and the accessibility people are at war with each other, or so it seems (remember to read that article with tongue firmly in cheek). The cause of this tempest in a teapot is a simple enough question: how do you embed both a “human friendly” and “machine ...
Designers and developers: FIGHT!
In a thorough and well-thought-out article published on Tuesday, Andy Rutledge listed what he considers to be the essential skills and knowledge for a web designer; this list is notable not only for what it includes — namely, a masterful distillation of just what it is that a web designer should be able to do — but also for what it explicitly excludes:
Note also that nowhere in this list do the words “Photoshop,” “Illustrator,” “Dreamweaver,” or “Fireworks” appear. As I and others have observed plenty of times ...
Media and performance
Ever since last September when I moved this site off the shared-hosting account which had been handling it from its initial launch, I’ve been using separate services to handle static files — “media” in common Django parlance — instead of using the same web server instance, or a separate instance running on the same physical server as the rest of the site. Specifically, I’m using Amazon S3.
When I first explained this a few months ago, I got a bit of pushback and a few questions, both in comments and ...
Things I have learned about XHTML
The following are gleaned from the comments to my recent explanation of why I chose to use HTML 4.01 Strict for my redesign, rather than a flavor of XHTML, an explanation in which I mostly boiled the debate — for my needs, here on this site — down to “XHTML doesn’t offer me any compelling advantage, and it’s more complex to do right than most people know/admit”.
Advance warning: yes, this is snarky and is going to make fun of uninformed comments. Yes, I do think it’s necessary ...
Let’s talk about documentation
One of the most active threads on reddit’s programming section right now discusses things people look for when reviewing someone else’s code; the article being discussed treats this as a great interview question and points to things like algorithm choices and object-oriented design as good responses. While these are important considerations, I’ve found I tend to make snap judgments long before I get to that level of analysis, and they’re almost always based on one key factor: documentation.
Of course, I have the luxury of mostly reviewing Python code, and ...
Fun with queryset-refactor
Mixed in with my recent redesign and server move, I’ve taken the opportunity to update the Django trunk snapshot this site runs on; generally I snapshot a week or two after a big change, once I’ve had time to see any major bugs shake out and update the various applications I use. This time around the recent big change was the queryset-refactor branch landing in trunk. Most people have been focusing obsessively on one single feature QSRF reintroduced, but that’s a bit of a shame because it brought tons of ...
So, as I let the dust settle from the most controversial changes I made in the redesign (and tweak some things and watch my stats in response to the constructive feedback I’ve gotten), I’d like to address the other big change that people have been asking about: why I switched (switched back, actually) from XHTML 1.0 to HTML 4.01.
The short and sweet reason is simply this: XHTML offers no compelling advantage — to me — over HTML, but even if it did it would also offer increased ...
Back in March when I read about Ryan Tomayko’s redesign, I had two immediate reactions:
- Wow, that’s hardcore!
- I should try that myself sometime.
Of course, at the time I was busy working on a book and so couldn’t really spare much effort for doing redesign work. Once that was in its final stages, though, I sat down and started thinking about what I could do to reduce the amount of cruft hanging around my weblog. Many revisions later, I have something I’m close to being happy with; of course, I don’t think ...
Following up on last weekend’s housekeeping announcement: hopefully you’re noticing that things look a little different around here. There’s a lot going on, and a lot to write about (expect that in coming days), but in summary:
- A nice, fresh look for the site. My focus this time around was on minimalism and clean design, emphasizing content as much as possible. See Ryan Tomayko’s recent redesign work for my inspiration.
- Upgrades and improvements to most of the applications I’m using. These will find their way into proper releases eventually, but for now ...
On a recent plane ride, I was watching an episode of The West Wing which had flashbacks to the original campaign which set up the Presidency on which the show is based. There’s a scene in that episode where Abbey Bartlet — the eventual First Lady on the show — is talking to some of her husband’s campaign staffers about whether her husband is ready to really run the campaign and be President. The dialogue is classic:
JOSH: Well, is he going to be ready?
ABBEY: You bet your ass he ...
A minor heads-up: going to be doing a little maintenance this weekend, which means that this site will be seeing some downtime as I upgrade a few things. I’ll most likely just turn things off for a bit while that’s running, but you may occasionally see an error page if I forget or if I manage to screw up.
Everything should be back to normal by Monday.
Just a quick note: I’ve bumped django-registration to version 0.5. New in this version are Italian and Serbian translations, registration at the Cheese Shop (so you can now do
easy_install django-registration) and a few bugfixes.
Notes you might care about:
- Built-in forms now use lazy translations.
- Activation now resets the activation key to a dummy string, which prevents re-activation of users you’ve manually deactivated.
registerview will pass any uploaded files from
request.FILESto the registration form.
- Username/email uniqueness checks are now, by popular demand, case-insensitive.
Also: I’m considering taking my ...
A few notes about the book:
- No, there will not be a free download like Jacob and Adrian’s book. I believe an e-book version will be available, but it’ll be a for-pay download from Apress. I’m OK with that, because they’ve already given one Django book away, and I’d like them to make some money so they can keep publishing.
- Yes, it’s written on the assumption of a checkout of Django trunk. A recent checkout (I was tracking queryset-refactor on the — correct — assumption that it would merge before my ...