Simon Willison’s Weblog

Subscribe
Atom feed for python

1,146 posts tagged “python”

The Python programming language.

2008

Python Web Framework on the JVM. An update on both Jython and the Django on Jython project—it looks like Jython 2.5 isn’t that far away.

# 30th January 2008, 2:06 am / django, python, jython, java, jvm

Monkeypatching idioms—elegant or ugly? Guido offers a decorator and a metaclass as syntactic sugar for monkeypatching existing Python classes.

# 30th January 2008, 12:39 am / metaclasses, decorators, python, guido-van-rossum, monkeypatching, idioms

Linkherd—django. Linkherd is a Django-powered startup that offers sub-reddit style functionality. I’ve set up a Django site there as well.

# 26th January 2008, 11:58 pm / django, python, community, linkherd

Django sub-reddit. Reddit are trialling the ability to create custom sub-reddits, so I put one up for Django links and discussions.

# 26th January 2008, 11:56 pm / django, reddit, python, community

Community sites on Django People. Small new feature: I can now add community sites to individual country pages. If you know of any regional community sites that I’ve missed, let me know in a comment or by e-mail.

# 25th January 2008, 12:40 am / django-people, community, brazil, python, django

Django People: OpenID and microformats

In hindsight, it was a mistake to launch Django People without support for OpenID. It was on the original feature list, but in the end I decided to cut any feature that wasn’t completely essential in order to get the site launched before it drowned in an ocean of “wouldn’t-it-be-cool-ifs”.

[... 626 words]

Django People: Colophon. I’ve added a colophon to Django People, something I try to do for all of my personal projects.

# 23rd January 2008, 4:58 pm / colophon, django-people, python, django

Caching Layer for Django ORM. Interesting extension to Django’s ORM that adds automatic caching of querysets and smart cache invalidation.

# 23rd January 2008, 3:18 pm / django, orm, david-cramer, caching, python, ormcaching

World’s ugliest Django app. Brilliant hack from Paul Bissex: a self-contained Django application in 70 lines of code which shows off some internals trickery and makes use of a bunch of handy django.contrib packages.

# 22nd January 2008, 1:34 am / django, paul-bissex, python, selfcontained

Django at PyCon. Unfortunately I’ll be missing US PyCon this year (I’ll be at SxSW and Webstock in New Zealand though)—but it’s great to see that there’s a strong line-up of Django related presentations.

# 21st January 2008, 9:54 pm / django, pycon, python, sxsw, webstock, conferences

django-evserver. Marek Majkowski got Comet working with Django using a custom WSGI server that wraps libevent using ctypes.

# 19th January 2008, 12:15 pm / python, django, comet, wsgi, libevent, ctypes, djangoevserver, marekmajkowski

Django Developer Jobs. Just an observation: the Django job market is booming at the moment, with 16 new job ads posted so far this year (that’s nearly one a day). If you want to be paid money to develop in Django there’s never been a better time.

# 18th January 2008, 3:51 pm / python, jobs, django

Django snippets: “for” template tag with support for “else” if array is empty. A neat solution to a common pattern; I’d personally like to see this included in Django proper.

# 16th January 2008, 9:42 pm / django, python, templating, django-snippets

A little something I’ve been working on. Paul Bissex has been working on a Django book with Jeff Forcier and Wesley Chun, to be published by Prentice Hall. It sounds like they’re a good way along the process.

# 14th January 2008, 10:47 pm / django, paul-bissex, wesley-chun, jeff-forcier, python, prenticehall

pysolr. Python wrapper for Solr, the search web service wrapper for Lucene. One thing I’m not clear on: do you need to configure Solr with the fields you’ll be indexing in advance, or can Solr create new fields on the fly to match the data you send it?

# 9th January 2008, 8:50 pm / solr, search, apache, python, lucene, pysolr

Good architectural layering, and Bzr 1.1. Mark Shuttleworth on the growing importance of plug-in architectures as an open source project evolves, as they allow new developers to release their own components without needing commit access to the project. Django is pretty good for this, but more hooks (and a faster event dispatch system) would be useful.

# 9th January 2008, 2:06 pm / hooks, bazaar, bzr, dispatch, django, events, mark-shuttleworth, open-source, programming, python

daemon.py (via) Neat little Python module for daemonizing a process; handles logging and pid files out of the box.

# 8th January 2008, 9:58 pm / python, daemonizing, daemon, pid, logging

Job: Django developer in London. I’m consulting with GCap Media at the moment, who are looking to hire full-time Django developers in London for some really interesting projects. Please feel free to contact me directly with questions.

# 7th January 2008, 9:37 pm / django, jobs, gcapmedia, python

Naming twins in Python and Perl. Simple anagram problem solved in Perl and Python, with a bunch more solutions in the comments. The C# solution provides an interesting example of LINQ in action.

# 7th January 2008, 11:03 am / linq, csharp, python, perl, brad-fitzpatrick, programming, anagrams

FUD and TurboGears. Not cool: the TurboGears guys have been targeted by some (hopefully not deliberate) FUD along the lines of “the author of the TurboGears book is using Django now”, based on Mark posting about his research in to other frameworks.

# 7th January 2008, 9:02 am / mark-ramm, python, turbogears, django, fud

Django Tip: Complex Forms. Malcolm demonstrates some advanced tricks with newforms.

# 6th January 2008, 10:14 pm / newforms, django, python, malcolm-tredinnick

Filtering foreign key choices in newforms-admin. A nice introduction to the Django newform-admin branch, including an example of how to easily implement row-level permissions.

# 6th January 2008, 8:31 pm / django, newforms, newformsadmin, python, christian-joergensen, django-admin

Chatting with Adrian Holovaty. Fabio Akita interviews Adrian about Django and related topics.

# 1st January 2008, 11:44 am / django, adrian-holovaty, python, fabioakita

This Week in Django podcast. Michael Trier’s been doing a really fantastic job putting together a Django podcast. The most recent episode (number 4) includes an update on the newforms-admin branch and a couple of handy tips.

# 1st January 2008, 10:44 am / django, michael-trier, thisweekindjango, python, podcasts, django-admin

2007

django-mptt (via) Jonathan Buchanan’s simple utility for performing Modified Preorder Tree Traversal (efficient tree operations in SQL) on Django models.

# 29th December 2007, 11:33 am / modifiedpreordertreetraversal, mptt, django, python, djangoorm, models, jonathan-buchanan, sql

I definitely like Python 3K's Unicode support better [...] In fact, I think I prefer Ruby 1.8's non-support for Unicode over Ruby 1.9's "support". The problem is one that is all to familiar to Python programmers. You can have a fully unit tested library and have somebody pass you a bad string, and you will fall over.

Sam Ruby

# 28th December 2007, 7:05 pm / ruby, sam-ruby, unicode, python, unittesting, ruby19, rubi18

Django and Comet. How to build a chat application using Django and the Orbited comet server. Orbited can be set up to proxy most requests through to a Django backend while handling any comet requests itself.

# 26th December 2007, 9:05 pm / comet, django, orbited, javascript, python

IPy. Handy Python module for manipulating IP addresses—use IP(ip_addr).iptype() == ’PUBLIC’ to check that an address isn’t in a private address range.

# 24th December 2007, 1:19 pm / ipy, ipaddresses, ip, networking, python, security

Size Is The Enemy. Jeff Atwood: “I’ve started a cottage industry mining Steve [Yegge]’s insanely great but I-hope-you-have-
an-hour-to-kill writing and condensing it into its shorter form points.” Lots of verbose static typing apologists in the comments.

# 24th December 2007, 10:50 am / dynamiclanguages, statictyping, python, jeff-atwood, steve-yegge, java

WebOb. WebOb is “an extraction and refinement of pieces from Paste”—provides a very nice request and response object, clearly inspired partly by Django. The documentation includes the differences between the WebOb API and that of other frameworks.

# 23rd December 2007, 10:22 am / python, webob, paste, ian-bicking, django, frameworks