Hurray, tomorrow morning (friday) I’ll go to Amsterdam for the first one-day django under the hood conference.
The tickets sold out quickly, but I convinced the company where I work (Nelen & Schuurmans) to sponsor the event, so we had three tickets reserved for us :-) If, by this evil strategem, I managed to snatch away your ticket: I’ll provide a little bit of atonement by providing summaries of all the talks. (I’ll tag them with djangocon to keep them together with my other django summaries).
We as Nelen & Schuurmans use a lot of Django, so we’re happy to do a bit in return by sponsoring the conference. We’re certainly not a pure IT company, as our main focus is water management. 40 of us are experts in ecology, water management, hydrology etcetera, 12 of us are programmers. And most of our work is done with Python and Django. That makes us one of the biggest Django shops in the Netherlands, which is fun for a company mainly associated with water :-)
I’m looking forward to the talks tomorrow. The conference aims at giving us a better understanding of Django’s internals so that we’ll hopefully contribute more to Django’s code and documentation.
Two talks about the database layer directly: the ORM internals and the
summer of code work done on the models’ ._meta
attribute. I hope to
gather some extra tricks here.
Every year I seem to discover one or two features of Django’s ORM that make my live easier. Features I saw no use for earlier or features that I didn’t now the real power of. Using the django debug toolbar is essential: it tells you the number of queries your page is generating. Often the number sends me directly to the django documentation to re-visit the ORM pages in search of stuff I missed.
Anyway, these two talks should help me deepen my understanding.
Talking about databases: one of the talks is about the new migration framework. We’re heavy users of south, which has now been superseded by similar migration functionality in django 1.7 itself.
Honesty forces me to confess to not having used 1.7 in a project yet. The one I’m starting next week will be 1.7, so hurray for some extra background information!
Templating languages: I’m happy with Django’s default one. And I use Jinja2 in outside-of-django python projects. Apparently jinja2 is quicker. Is that also true if integrated in Django? Are there other template languages better suited to other tasks? How about django’s template security features? Does that map OK to Jinja2, which allows more python in the templates?
Lots of questions, so I’m all ears during that talk.
Internationalisation. Some extra info here won’t hurt.
We normally do everything in English and translate it to Dutch. For a
foreign project there might be some Vietnamese or Afrikaans translations
lying around somewhere. Some of the projects have translations in our local
transifex instance. We use that sometimes so that a project partner in
FarFarAwayCountry can translate everything without needing github access and
without needing knowledge of *.po
files.
In our setup, there’s room for improvement, especially regarding the workflow we use. So… what will the talk bring?
Django rest framework. Tom Christie got funding beyond his wildest dreams via kickstarter to work on the new 3.0 version.
We use django rest framework quite a lot. The browseable API is its most direct selling point. That, and the fact that it is very actively developed.
It is getting boring, but I’m also looking forward to this talk :-)
Six useful talks. That’ll be a good day. Followed by a day of sprinting on saturday.
As this is my own blog, I’ll be excused if I do a shout-out for the nice company where I work (Nelen & Schuurmans) again :-) If you live in the Netherlands (and if you speak Dutch) and if you’re good with Django, give us a thought. Useful, fun and socially relevant Django work!
My name is Reinout van Rees and I program in Python, I live in the Netherlands, I cycle recumbent bikes and I have a model railway.
Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):