Upload
benpotato
View
169
Download
1
Tags:
Embed Size (px)
Citation preview
Django on App Engine
http://p.ota.to@potatobristol
Speaking today
[email protected]● Heads up Potato Bristol● Come and say hello! [email protected]● Leads a Google project team in London● Expert on our technologies
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
Our infrastructure is...
A connection to the interwebs!
Our apps serve
More than 35,000,000 requests per day.
Our apps serve
More than 35,000,000 requests per day. (On a boring day.)
Our apps serve
More than 200,000,000 requests per day on an exciting day. That's about 2300 requests per second.
What sort of apps?
● Small, rapidly developed, short-lived apps ● Large-scale, long-lived products● Internal secret tools● World famous, high traffic sites
Map Your Valentine
● Built in 4 days● Live for 1 week● Featured on Google.com home page
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!
Bristol?
Potato Bristol
● Own our own projects● Help with London projects (and vice versa)● The ‘Bristol Effect’● Such as...
Google for Veterans
● Very complex apps● Very high profile launch● Mentioned on the White House blog● Recommended by the First Lady
Secret Policeman's Ball
● Huge profile● Complex social platform integration● Withstood tweets from Steven Fry and
Chris Martin
Versus Debates
● Live YouTube channel● Google+ Hangouts● Scalable live ‘mood meter’
How?
App Engine
● Cloud based app server● Google's infrastructure● Powerful APIs and tools
What is it?
● App centric (not machine centric)● No server maintenance● Automatically scales (up and down)● Only pay for what you use● High replication● Control panel
Cloud based
● 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...
Google infrastructure
● Datastore (noSQL, schemaless)● Cloud SQL● Blobstore● Memcache● Backends● Task queue scheduled and deferred tasks● Choice of Java or Python, so...
Your app
● Written in Python● Sets up database from your code● Generic views● Powerful forms● Admin system which builds itself
Rapid development
● 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
Powerful templates
● Auto-escaping● CSRF● SQL injection● Clickjacking
Security
● Multiple databases - abstracted by powerful
ORM● Flexible URL mapping● MVT framework - keeps things tidy● i18n● It's WSGI compliant
Other cool things
● 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.
The best thing!
Finally...
p.ota.to/jobs