40
Django on App Engine http://p.ota.to @potatobristol

Django on app engine

Embed Size (px)

Citation preview

Page 1: Django on app engine

Django on App Engine

http://p.ota.to@potatobristol

Page 2: Django on app engine

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

Page 3: Django on app engine

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

Page 4: Django on app engine

Our infrastructure is...

Page 5: Django on app engine

A connection to the interwebs!

Page 6: Django on app engine

Our apps serve

More than 35,000,000 requests per day.

Page 7: Django on app engine

Our apps serve

More than 35,000,000 requests per day. (On a boring day.)

Page 8: Django on app engine

Our apps serve

More than 200,000,000 requests per day on an exciting day. That's about 2300 requests per second.

Page 9: Django on app engine

What sort of apps?

● Small, rapidly developed, short-lived apps ● Large-scale, long-lived products● Internal secret tools● World famous, high traffic sites

Page 10: Django on app engine
Page 11: Django on app engine

Map Your Valentine

● Built in 4 days● Live for 1 week● Featured on Google.com home page

Page 12: Django on app engine
Page 13: Django on app engine

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!

Page 14: Django on app engine

Bristol?

Page 15: Django on app engine

Potato Bristol

● Own our own projects● Help with London projects (and vice versa)● The ‘Bristol Effect’● Such as...

Page 16: Django on app engine
Page 17: Django on app engine

Google for Veterans

● Very complex apps● Very high profile launch● Mentioned on the White House blog● Recommended by the First Lady

Page 18: Django on app engine
Page 19: Django on app engine

Secret Policeman's Ball

● Huge profile● Complex social platform integration● Withstood tweets from Steven Fry and

Chris Martin

Page 20: Django on app engine
Page 21: Django on app engine

Versus Debates

● Live YouTube channel● Google+ Hangouts● Scalable live ‘mood meter’

Page 22: Django on app engine

How?

Page 23: Django on app engine

App Engine

Page 24: Django on app engine

● Cloud based app server● Google's infrastructure● Powerful APIs and tools

What is it?

Page 25: Django on app engine

● 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

Page 26: Django on app engine

● 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

Page 27: Django on app engine

● Datastore (noSQL, schemaless)● Cloud SQL● Blobstore● Memcache● Backends● Task queue scheduled and deferred tasks● Choice of Java or Python, so...

Your app

Page 28: Django on app engine
Page 29: Django on app engine

● Written in Python● Sets up database from your code● Generic views● Powerful forms● Admin system which builds itself

Rapid development

Page 30: Django on app engine

● 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

Page 31: Django on app engine

● Auto-escaping● CSRF● SQL injection● Clickjacking

Security

Page 32: Django on app engine

● Multiple databases - abstracted by powerful

ORM● Flexible URL mapping● MVT framework - keeps things tidy● i18n● It's WSGI compliant

Other cool things

Page 33: Django on app engine

● 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!

Page 34: Django on app engine

Finally...

Page 35: Django on app engine
Page 36: Django on app engine
Page 37: Django on app engine
Page 38: Django on app engine
Page 39: Django on app engine

p.ota.to/jobs

Page 40: Django on app engine

Any questions?

[email protected]@[email protected]

http://p.ota.to

@potatobristol