DjangoCon 2009 Keynote

58
Now what? Ted Leung Sun Microsystems [email protected] @twleung Thursday, September 10, 2009

description

Additional text notes on the talk are here: http://www.sauria.com/blog/2009/09/12/djangocon-2009/

Transcript of DjangoCon 2009 Keynote

Page 1: DjangoCon 2009 Keynote

Now what?Ted Leung

Sun [email protected]

@twleung

Thursday, September 10, 2009

Page 2: DjangoCon 2009 Keynote

Who is this guy?

Thursday, September 10, 2009

Page 3: DjangoCon 2009 Keynote

Thank you!

Thursday, September 10, 2009

Page 4: DjangoCon 2009 Keynote

http://www.flickr.com/photos/jamescalder/1797581548/Thursday, September 10, 2009

Page 5: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 6: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 7: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 9: DjangoCon 2009 Keynote

0

35

70

105

140

PHPRails

Django

Frameworks being used by startups

http://news.ycombinator.com/item?id=750142Thursday, September 10, 2009

Page 10: DjangoCon 2009 Keynote

Apps

Thursday, September 10, 2009

Page 11: DjangoCon 2009 Keynote

GeoDjango

Thursday, September 10, 2009

Page 12: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 13: DjangoCon 2009 Keynote

2008

Thursday, September 10, 2009

Page 14: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 15: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 16: DjangoCon 2009 Keynote

2009

Thursday, September 10, 2009

Page 17: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 18: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 19: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 20: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 21: DjangoCon 2009 Keynote

Web Appsare

Changing

Thursday, September 10, 2009

Page 22: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 23: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 24: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 25: DjangoCon 2009 Keynote

http://www.flickr.com

/photos/cle0patra/2881365063/

Thursday, September 10, 2009

Page 26: DjangoCon 2009 Keynote

Users

• Richer User Interfaces

• More responsive User Interfaces

• Real time UI’s

• Access on the go

• location

Thursday, September 10, 2009

Page 27: DjangoCon 2009 Keynote

Developers

• Rapid development

• frameworks

• libraries/components

• tools

• Scalability / latency

• real-time

• UI

Thursday, September 10, 2009

Page 28: DjangoCon 2009 Keynote

Operators

• Resource planning / allocation

• Scaling

• Good monitoring

• Good analytics / BI

Thursday, September 10, 2009

Page 29: DjangoCon 2009 Keynote

RIA’s

• Flex/Flash

• Silverlight

• JavaFX

• Open Web

Thursday, September 10, 2009

Page 30: DjangoCon 2009 Keynote

Latency

• Jakob Nielsen => 0.1 = responsive UI

• c = 186,000 mi/s

• 18,600 mi

• circumference of the earth = 24,900mi

• hmm

Thursday, September 10, 2009

Page 31: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 32: DjangoCon 2009 Keynote

http://www.flickr.com/photos/zykloid/3615237577/Thursday, September 10, 2009

Page 33: DjangoCon 2009 Keynote

http://www.flickr.com/photos/lleugh/3663693123/Thursday, September 10, 2009

Page 34: DjangoCon 2009 Keynote

Cloud computing

• began as deploy / operational play

• will impact development

• stacks

• services

• platforms

• development in the cloud

Thursday, September 10, 2009

Page 35: DjangoCon 2009 Keynote

http://www.flickr.com

/photos/st3f4n/3752208591/

Thursday, September 10, 2009

Page 36: DjangoCon 2009 Keynote

Rails 3

• New Bundler

• deployment is not licked yet

• Responder

• even better REST controllers

Thursday, September 10, 2009

Page 37: DjangoCon 2009 Keynote

Lift

• Security

• Comet

• AJAX support

• JSON forms

• http://liftweb.net/

Thursday, September 10, 2009

Page 38: DjangoCon 2009 Keynote

Webmachine

• optimized for REST / HTTP

• the cool REST diagrams

• http://bitbucket.org/justin/webmachine/wiki/Home

Thursday, September 10, 2009

Page 39: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 40: DjangoCon 2009 Keynote

Nitrogen

• Ajax

• Comet

• http://nitrogenproject.com/

Thursday, September 10, 2009

Page 41: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 42: DjangoCon 2009 Keynote

-module (web_samples_binding2).-include ("wf.inc").-compile(export_all).

-record(mydata, {title, author, description, postback}).

main() -> #template { file="./wwwroot/twocolumn.html", bindings=[ {'Group', learn}, {'Item', samples}]}.

title() -> "Record-Based Binding".headline() -> "Record-Based Binding".right() -> linecount:render().

% Binding data stored in a record.get_data() -> [ #mydata { title="Title 1", author="Author 1", description="Description 1", postback={data, 1} }, #mydata { title="Title 2", author="Author 2", description="Description 2", postback={data, 2} }, #mydata { title="Title 3", author="Author 3", description="Description 3", postback={data, 3} }].

get_map() -> #mydata { title=titleLabel@text, author=authorLabel@text, description=descriptionLabel@text, postback=myButton@postback }.

column1() -> Data = get_data(), Map = get_map(), Column1 = [ #h3 { text="Div Binding" }, #bind { id=simpleBinding, data=Data, map=Map, body=[ #hr{}, #label { class=tiny, id=titleLabel }, #label { class=tiny, id=authorLabel }, #label { class=tiny, id=descriptionLabel }, #button { class=tiny, id=myButton, text="Button" } ]} ], wf:render(Column1).

Thursday, September 10, 2009

Page 43: DjangoCon 2009 Keynote

column2() -> Data = get_data(), Map = get_map(), Column2 = [ #h3 { text="Table Binding" }, #table { class=tiny, rows=[ #tablerow { cells=[ #tableheader { text="Title" }, #tableheader { text="Author" }, #tableheader { text="Description" }, #tableheader { } ]}, #bind { id=tableBinding, data=Data, map=Map, body=#tablerow { cells=[ #tablecell { id=titleLabel }, #tablecell { id=authorLabel }, #tablecell { id=descriptionLabel }, #tablecell { body=#button { id=myButton, text="Button" } } ]}} ]} ], wf:render(Column2). event({data, Data}) -> Message = "Clicked On Data: " ++ wf:to_list(Data), wf:wire(#alert { text=Message }), ok;

event(_) -> ok.

Thursday, September 10, 2009

Page 44: DjangoCon 2009 Keynote

CouchApps

• CouchDB has a JS engine in it

• Have that engine run / serve apps

• Hook that engine up to Bespin

• http://github.com/couchapp/couchapp/tree/master

Thursday, September 10, 2009

Page 45: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 46: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 47: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 48: DjangoCon 2009 Keynote

http://www.flickr.com/photos/oskay/208844120/Thursday, September 10, 2009

Page 49: DjangoCon 2009 Keynote

http://www.flickr.com/photos/ericrice/840284432/Thursday, September 10, 2009

Page 50: DjangoCon 2009 Keynote

http://www.flickr.com/photos/foreversouls/4809950/Thursday, September 10, 2009

Page 51: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 52: DjangoCon 2009 Keynote

http://www.flickr.com/photos/tidewatermuse/167891626/Thursday, September 10, 2009

Page 53: DjangoCon 2009 Keynote

http://www.flickr.com

/photos/sizima/382652040/

Thursday, September 10, 2009

Page 54: DjangoCon 2009 Keynote

Thursday, September 10, 2009

Page 55: DjangoCon 2009 Keynote

http://www.flickr.com/photos/17972620@N00/3181540606/Thursday, September 10, 2009

Page 56: DjangoCon 2009 Keynote

http://www.flickr.com

/photos/steffanyszphotography/2364953056/

Thursday, September 10, 2009

Page 57: DjangoCon 2009 Keynote

Coordinates

[email protected]

• @twleung

• http://www.sauria.com/blog

• http://www.slideshare.net/twleung

Thursday, September 10, 2009

Page 58: DjangoCon 2009 Keynote

Thanks!

Thursday, September 10, 2009