Keynote for DjangoCon 2009, presented on the 8th of September 2009. Covers two cowboy projects - WildLifeNearYou.com and MP expenses - and talks about ways of "reigning in the cowboy" and developing in a more sustainable way.
16. Search uses the geospatial branch of Xapian
Species database comes from Freebase
Photos can be imported from Flickr
“Suggest changes” to our Zoo information uses
model objects representing proposed changes to
other model objects
17. /dev/fort
Cohort 3: Winter 2009 What is /dev/fort?
The trip Imagine a place of no distractions, no
The third /dev/fort will run from 9th to 16th November on the Kintyre IM, no Twitter — in fact, no
Peninsula in Scotland. internet. Within, a group of a dozen
or more developers, designers,
thinkers and doers. And a lot of a
food.
Cohort 2: Summer 2009
Now imagine that place is a fort.
The trip
The second /dev/fort ran from 30th May to 6th June 2009 at Knockbrex
Castle in Scotland. As with the first cohort, we have a few remaining
problems still to iron out (thorny issues inside Django we were hoping to
avoid, that sort of thing). We hope to have the site in alpha by the end of the
summer.
Cohort members
Ryan Alexander, Steven Anderson, James Aylett, Hannah Donovan, Natalie
Downe, Mark Norman Francis, Matthew Hasler, Steve Marshall, Richard
Pope, Gareth Rushgrove, Simon Willison.
The idea behind /dev/fort is to throw
Cohort 1: Winter 2008 a group of people together, cut them
off from the rest of the world, and
http://devfort.com/
28. “All of the receipts of 650-odd MPs,
redacted and unredacted, are for sale at a
price of £300,000, so I am told. The price
is going up because of the interest in the
subject.”
Sir Stuart Bell, MP
Newsnight, 30th March
75. SELECT
COUNT(DISTINCT `expenses_page`.`id`)
FROM
`expenses_page` LEFT OUTER JOIN `expenses_vote` ON (
`expenses_page`.`id` = `expenses_vote`.`page_id`
) WHERE `expenses_vote`.`id` IS NULL
83. Reigning in the cowboy
An RSS to JSON proxy service
Pair programming
Comprehensive unit tests, with mocks
Continuous integration (Team City)
Deployment scripts against CI build numbers
84. Points of embarrassment
Database required to run the test suite
Logging? What logging?
Tests get deployed alongside the code (!)
... but generally pretty smooth sailing
86. Web development in 2005
Relational
Cache
Database
Application Admin tools
Templates XML feeds
87. Web development in 2009
Relational Search Datastructure External web Non-relational
Cache
Database index servers services database
Admin tools
Application Message queue Offline workers
Monitoring and reporting
Templates XML feeds API Webhooks