Django on app engine
- 3. Who are Potato?
● Part of Google’s Creative Lab
● Work for Google, BBH, Mother, PayPal...
● Developer focussed
● ‘Whatever works’, no heavy process
● Based in London, Bristol, San Francisco,
Amsterdam
● 60 people growing fast, 9 in Bristol
- 8. Our apps serve
More than 200,000,000 requests per day on an
exciting day.
That's about 2300 requests per second.
- 9. What sort of apps?
● Small, rapidly developed, short-lived apps
● Large-scale, long-lived products
● Internal secret tools
● World famous, high traffic sites
- 13. Google Engage
● Intelligent distribution system for Google
AdWords coupons
● Live for 1.5 years, and counting...
● 70 countries
● 40 languages
● We're not allowed to say any more!
- 15. Potato Bristol
● Own our own projects
● Help with London projects (and vice versa)
● The ‘Bristol Effect’
● Such as...
- 17. Google for Veterans
● Very complex apps
● Very high profile launch
● Mentioned on the White House blog
● Recommended by the First Lady
- 19. Secret Policeman's Ball
● Huge profile
● Complex social platform integration
● Withstood tweets from Steven Fry and
Chris Martin
- 24. What is it?
● Cloud based app server
● Google's infrastructure
● Powerful APIs and tools
- 25. Cloud based
● App centric (not machine centric)
● No server maintenance
● Automatically scales (up and down)
● Only pay for what you use
● High replication
● Control panel
- 26. Google infrastructure
● Reliability, security, performance
● Global CDN
● URL fetch
● Mail
● Country in request
● Google Accounts (and OpenID)
● Images API
● Cloud storage
● Docs (app as user)
● Loads more APIs and tools...
- 27. Your app
● Datastore (noSQL, schemaless)
● Cloud SQL
● Blobstore
● Memcache
● Backends
● Task queue scheduled and deferred tasks
● Choice of Java or Python, so...
- 29. Rapid development
● Written in Python
● Sets up database from your code
● Generic views
● Powerful forms
● Admin system which builds itself
- 30. Powerful templates
● Keeps your HTML tidy, with logic separate
and re-usable
● Auto-escaping
● Nestable (extend/include other templates)
● Built-in formatting: date, re-grouping,
thousand commas, timesince, yesno
● Odd/even/last flags in loops
● Extensible
- 31. Security
● Auto-escaping
● CSRF
● SQL injection
● Clickjacking
- 32. Other cool things
● Multiple databases - abstracted by powerful
ORM
● Flexible URL mapping
● MVT framework - keeps things tidy
● i18n
● It's WSGI compliant
- 33. The best thing!
● You can throw it all away.
○ Pluggable, extensible everything. Use it, customise
it, or roll your own.
○ ...so it’s easy to develop your prototype into the
finished product.
- 40. Any questions?
ben@p.ota.to
adam@p.ota.to
jobs@p.ota.to
http://p.ota.to
@potatobristol