Google Devfest 2009 Argentina - Keynote

2,652 views
2,566 views

Published on

Keynote for Google Devfest 2009 Argentina

Published in: Technology, Travel
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,652
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
46
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Google Devfest 2009 Argentina - Keynote

  1. 1. Wednesday, November 18, 2009
  2. 2. Browser, Mobile, Cloud, Social, Geo Portrait of the developer as a kid in a candy store Patrick Chanezon Developer Advocate, Google http://twitter.com/chanezon November 17, 2009 Argentina #devfest09 Source Marshall Astor http://www.flickr.com/photos/lifeontheedge/711086777/sizes/l/#cc_license Wednesday, November 18, 2009
  3. 3. Las calles de Buenos Aires ya son mi entraña “A mi se me hace cuento que empezo Buenos Aires: La juzgo tan eterna como el agua y el aire.” “Hard to believe Buenos Aires had any beginning. I feel it to be as eternal as air and water” Fervor de Buenos Aires (1923) Photo public domain http://commons.wikimedia.org/wiki/File:Jorge_Luis_Borges_Hotel.jpg Wednesday, November 18, 2009
  4. 4. The Web Platform is Accelerating Chrome 2.0: May 21, 2009 canvas User Experience Firefox 3.5b4: video Apr 27, 2009 geolocation canvas app cache video database geolocation workers app cache Android 1.5: database Apr 13, 2009 workers canvas Opera Labs: geolocation Mar 26, 2009 app cache Safari 4.0b: canvas database Feb 29, 2009 video workers canvas XHR iPhone 2.2: video geolocation CSS Nov 22, 2008 app cache DOM canvas database app cache workers HTML database native web 1990 -- 2008 Q408 Q109 Q209 ... Wednesday, November 18, 2009
  5. 5. And It’s Solving Key Developer Challenges Graphics Location Storage Speed User Experience XHR CSS DOM HTML native web 1990 -- 2008 Q408 Q109 Q209 ... Wednesday, November 18, 2009
  6. 6. More Developers 300 chrome firefox 3.1+ Monthly Contributors to OSS Browsers firefox 2.0-3.0 webkit 225 150 75 0 2002 2003 2004 2005 2006 2007 2008 2009 Wednesday, November 18, 2009
  7. 7. More Speed 80 SunSpider Runs Per Minute 60 100x improvement in JavaScript performance 40 20 0 2001 2003 2005 2007 Q108 Q208 Q308 Q408 Q109 Wednesday, November 18, 2009
  8. 8. More Users 450 350 OSS Browser Users (M) 250 150 50 2005 2006 2007 2008 2009 Wednesday, November 18, 2009
  9. 9. A More Powerful Web 5>2 Wednesday, November 18, 2009
  10. 10. Cautionary Tales of Latent Lemonade AJAX (2004) xml (1998) css xhr (1996) (1999) Wednesday, November 18, 2009
  11. 11. HTML 5: A Chance to Do Things Differently Wednesday, November 18, 2009
  12. 12. canvas video geolocation app cache & web workers database Wednesday, November 18, 2009
  13. 13. Until Recently, You Couldn’t Draw on the Web 0 0 X y x height Y width Wednesday, November 18, 2009
  14. 14. And Graphics Weren’t Very Interactive javascript:onClick(Draw()); Wednesday, November 18, 2009
  15. 15. The Usual Options Do This... Silverlight VML Flash Wednesday, November 18, 2009
  16. 16. ... But canvas is Intrinsic to the Web Document Object Model (DOM) Specification Original: http://www.w3.org/TR/REC-DOM-Level-1/ Latest: http://www.w3.org/TR/DOM-Level-3-Core/ Contributors: Netscape, Sun, Microsoft, W3C, IBM, DOM Novell, JavaSoft, SoftQuad Inc., Inso EPS, Texcel Research, Arbortext Transparent Stack Hypertext Markup Language (HTML) Original: http://tools.ietf.org/html/rfc1866 Latest: http://www.w3.org/TR/html5/ HTML Contributors: T. Berners-Lee, D. Connolly, L. Masinter, MIT, W3C, AT&T, IBM, Microsoft, Netscape, Novell, SoftQuad, Spyglass, Adobe, Lotus, CWI, Reuters, JavaSoft, HP, GRIF, Sun, Opera, Mozilla, Google, Apple Hypertext Transfer Protocol (HTTP) Original: http://tools.ietf.org/html/rfc1945 Latest: http://tools.ietf.org/html/rfc2616 Contributors: UC Urvine, Compaq, MIT, Xerox, HTTP Microsoft, W3C, T. Berners-Lee, R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach Wednesday, November 18, 2009
  17. 17. // canvas defines drawing and animation APIs with pixel- level control Wednesday, November 18, 2009
  18. 18. canvas demos Wednesday, November 18, 2009
  19. 19. canvas Piggybacks Overall Browser Speed SunSpider Runs Per Minute Wednesday, November 18, 2009
  20. 20. Is the Web Ready for 3D? Wednesday, November 18, 2009
  21. 21. Canvas3D, WebGL O3D code.google.com/apis/o3d Wednesday, November 18, 2009
  22. 22. HTML 5 Support Chrome Firefox Safari Opera canvas video geolocation app cache database workers Wednesday, November 18, 2009
  23. 23. canvas video geolocation app cache & web workers database Wednesday, November 18, 2009
  24. 24. Video is Complicated, and Outside Your Control Wednesday, November 18, 2009
  25. 25. So What Would Occam Do? © topatoco.com Wednesday, November 18, 2009
  26. 26. // HTML 5 makes <video> as easy as <img> Wednesday, November 18, 2009
  27. 27. <video> demos Wednesday, November 18, 2009
  28. 28. HTML 5 Support Chrome Firefox Safari Opera canvas video geolocation app cache database workers Wednesday, November 18, 2009
  29. 29. canvas video geolocation app cache & web workers database Wednesday, November 18, 2009
  30. 30. Life’s Better with Location 2.8 mi Places Social Ads Games CRM Photos 2.1 mi 1.1 mi 500 ft 20 ft 75 ft Wednesday, November 18, 2009
  31. 31. But GPS and IP Aren’t Good Enough 1. too slow 2. too constrained 3. too fuzzy Wednesday, November 18, 2009
  32. 32. 1) Cell ID and WiFi Solve The Data Problem... Wednesday, November 18, 2009
  33. 33. Wednesday, November 18, 2009
  34. 34. 2) ...And Browsers Are Now Location-Enabled Wednesday, November 18, 2009
  35. 35. // the geolocation api brings browser- based location to your apps Wednesday, November 18, 2009
  36. 36. geolocation demos Wednesday, November 18, 2009
  37. 37. HTML 5 Support Chrome Firefox Safari Opera canvas video geolocation (iPhone) app cache database workers Wednesday, November 18, 2009
  38. 38. canvas video geolocation app cache & web workers database Wednesday, November 18, 2009
  39. 39. Web Apps Need to Work Everywhere Wednesday, November 18, 2009
  40. 40. // database and app cache store user data and app resources locally Wednesday, November 18, 2009
  41. 41. app cache & database demos Wednesday, November 18, 2009
  42. 42. Wednesday, November 18, 2009
  43. 43. index.html <title>Google Maps</title> Google Maps <script src="/usr/lib/mojo/framework/mojo.js" type="text/javascript" x-mojo-version="1"> </script> <script src="app/assistants/stage-assistant.js" type="text/javascript"></script> map-assistant.js this.controller.serviceRequest { 'palm://com.palm.location', { method: "getFix", parameters: {mode: "auto"}, onSuccess: this.goFix, onFailure: this.error } }; Wednesday, November 18, 2009
  44. 44. webOS and HTML 5 • CSS Transformations • HTML 5 database for history & bookmarks • Canvas in calendar application • Extensions - Accelerometer - ... Wednesday, November 18, 2009
  45. 45. webOS Accelerometer API • Shake: distinct start, stop with magnitude • Orientation • Raw acceleration - Individual acceleration per axis - Individual Pitch, Roll, and Yaw • ... all available from JavaScript using the DOM Level 2 interface Wednesday, November 18, 2009
  46. 46. Code Snippet <script type="text/javascript"> // Set up accelerometer event handlers window.addEventListener( "shakestart", beginShaking, true ); window.addEventListener( "shaking", isShaking, true ); window.addEventListener( "shakeend", endShaking, true ); window.addEventListener( "acceleration", handleAccel, true ); function isShaking(event) { // event.magnitude // ... } function handleAccel(event) { // event.accelX, event.accelY, event.accelZ // event.pitch, event.roll, event.yaw // ... } </script> Wednesday, November 18, 2009
  47. 47. webOS and HTML 5 Converge mobile and desktop web application development Wednesday, November 18, 2009
  48. 48. HTML 5 Support Chrome Firefox Safari Opera canvas video geolocation (iPhone) app cache (mobile) database (mobile) workers Wednesday, November 18, 2009
  49. 49. canvas video geolocation app cache & web workers database Wednesday, November 18, 2009
  50. 50. A More Powerful Web == More Powerful Apps Wednesday, November 18, 2009
  51. 51. But More Power == More Responsibility I will not hose the browser with JavaScript I will not hose the browser with JavaScript I will not hose the browser with JavaScript I will not hose the browser with JavaScript I will not hose the browser with JavaScript I will not hose the browser with JavaScript Wednesday, November 18, 2009
  52. 52. // web workers defines an API for running background scripts Wednesday, November 18, 2009
  53. 53. web workers demos Wednesday, November 18, 2009
  54. 54. HTML5 Support Chrome Firefox Safari Opera canvas video geolocation (iPhone) app cache (mobile) database (mobile) workers (mobile) Wednesday, November 18, 2009
  55. 55. HTML5 and SVG not available in IE? • ChromeFrame plugin implements HTML5 in IE • Shim libraries using Flash or VML to implement features – SVGWeb: SVG – Explorercanvas: Canvas – Video for Everybody: Video 55 Wednesday, November 18, 2009
  56. 56. Chrome Extensions • Programs that enhance Google Chrome's functionality • Written in HTML, CSS, and JavaScript • Integrated using a simple API • Developed iteratively 56 Wednesday, November 18, 2009
  57. 57. A More Powerful Web, Made Easier Wednesday, November 18, 2009
  58. 58. Nubes “¿Qué son las nubes? ¿Una arquitectura del azar? Quizá Dios las necesita para la ejecución de Su infinita obra y son hilos de la trama oscura. Quizá la nube sea no menos vana que el hombre que la mira en la mañana.” “What are the clouds? An architecture of chance? Perhaps they are the necessary things from which God weaves his vast imaginings, threads of a web of infinite expanse. Maybe the cloud is emptiness returning, just like the man who watches it this morning.” Borges, Nubes II, Los Conjurados (1985) Wednesday, November 18, 2009
  59. 59. App Engine and Google Web Toolkit (GWT) Easier to Scale and Optimize Your App Wednesday, November 18, 2009
  60. 60. 200,000+ Developers Wednesday, November 18, 2009
  61. 61. 80,000+ Applications 700 9:30am EST: WhiteHouse.gov Queries Per Second (QPS) Deadline for submissions 600 5:00pm EST: Link on Google homepage 500 11:30am EST: Townhall begins 400 Afternoon EST: NPR, NYTimes, CNN coverage 300 200 6:45pm EST: WhiteHouse.gov kick-off blog post 5:00pm EST: WhiteHouse.gov wrap-up blog post 100 0 18:00 21:00 24:00 3:00 6:00 9:00 12:00 15:00 18:00 21:00 24:00 3:00 6:00 9:00 12:00 15:00 18:00 21:00 24:00 3:00 Wednesday, November 18, 2009
  62. 62. Launched in the Last 12 Months X memcache API X SSL support X system status X paid quota X cron support X database import X java runtime Wednesday, November 18, 2009
  63. 63. Launched in the Last 2 Months X Background processing X XMPP X Incoming email X Datastore stats Wednesday, November 18, 2009
  64. 64. • Large object store • Database export Wednesday, November 18, 2009
  65. 65. Wednesday, November 18, 2009
  66. 66. Java + App Engine demo Wednesday, November 18, 2009
  67. 67. UI in the Front... ...Hosting in the Back Wednesday, November 18, 2009
  68. 68. GWT Browser-Proofs Your JavaScript Code... IE Firefo x S afari Chrome Wednesday, November 18, 2009
  69. 69. ...But CSS Headaches Persist Wednesday, November 18, 2009
  70. 70. Coming in GWT 2.0: In-Browser Debugging Wednesday, November 18, 2009
  71. 71. Rich Applications, Extra-Large Codebases Wednesday, November 18, 2009
  72. 72. LOADING Wednesday, November 18, 2009
  73. 73. Manual Code Splitting: Not For the Faint of Heart Wednesday, November 18, 2009
  74. 74. Coming in GWT 2.0: runAsync() // example public void onMySettingsLinkClicked() { GWT.runAsync(new RunAsyncCallback() { public void onSuccess() { new MySettingsDialog().show(); } public void onFailure(Throwable ohNoes) { // indicate that something went wrong, // usually a connectivity or server problem } }); } Wednesday, November 18, 2009
  75. 75. runAsync() Helps Apps Startup More Quickly 1500 1400 KB Size of Initial JavaScript Download (KB) 1125 750 7x Decrease In Initial Download Size with runAsync() 375 200 KB 0 26-Nov 29-Apr 18-Jun 28-Jul 12-Sep 27-Oct 24-Dec 16-Mar Wednesday, November 18, 2009
  76. 76. code.google.com/appengine code.google.com/gwt Wednesday, November 18, 2009
  77. 77. OpenSocial Wednesday, November 18, 2009
  78. 78. Wednesday, November 18, 2009
  79. 79. Large Reach Over 800M in a year – and more to come! Wednesday, November 18, 2009
  80. 80. Global Reach Wednesday, November 18, 2009
  81. 81. OpenSocial Supporting Products 27 Google Confidential Wednesday, November 18, 2009
  82. 82. Under the hood: Usage Stats • 315M+ App Installs • 85M+ Canvas Page Views / Day • 7,500+ Apps • 20+ Containers Wednesday, November 18, 2009
  83. 83. The Open Stack XRDS Wednesday, November 18, 2009
  84. 84. Google Friend Connect Wednesday, November 18, 2009
  85. 85. Google FriendConnect • Uses OpenSocial (gadgets, REST/RPC) • Allows site owners to mix in social data to existing sites • Cut and paste or • Deep integrations Wednesday, November 18, 2009
  86. 86. Google Friend Connect Demos Wednesday, November 18, 2009
  87. 87. TIME.com Daily Specials TIME.com’s Daily Specials provide a trusted and entertaining perspective on relevant current events. These interactive specials use photo and video galleries to engage the readers, and topics can range from important international events like the Pope visiting the Middle East) to light hearted topics like the Best iPhone Apps. Recent Popular Daily Specials Pageviews • top 10 disastrous letterman interviews - 7.4mm • top 11 iphone applications - 5.9mm •10 things you can like about $4 gas - 4.3mm •10 essential sites - 3.0mm Source: Omniture SiteCatalyst – Past 12 Months Wednesday, November 18, 2009
  88. 88. Specials Traffic 176MM From January – April 2009 Wednesday, November 18, 2009
  89. 89. Challenge How can we make our daily Top 10’s more fun and engaging? Wednesday, November 18, 2009
  90. 90. Wednesday, November 18, 2009
  91. 91. TIME Social Lists Demo Wednesday, November 18, 2009
  92. 92. Architecture Javascript APIs JSONP HTML + JavaScript Wednesday, November 18, 2009
  93. 93. Wednesday, November 18, 2009
  94. 94. Paul Berry, HuffingtonPost Wednesday, November 18, 2009
  95. 95. Wednesday, November 18, 2009
  96. 96. Wednesday, November 18, 2009
  97. 97. Google Product APIs Easier to Add Content and Services To Your Website Search Feeds Translation Calendar Video Comments News Maps Charts Contacts Spreadsheets Photos Documents Auth Wednesday, November 18, 2009
  98. 98. Data Liberation Front http://www.dataliberation.org/ Users should be able to control the data they store in any of Google's products. Our team's goal is to make it easier to move data in and out. Wednesday, November 18, 2009
  99. 99. Low-Level API Access Serves Many Needs... 5 4 Over 4B Google API Daily API Hits (B) Hits Every Day 3 2 1 May Jun Jul Aug Sept Oct Nov Dec Jan Feb Mar Apr May Wednesday, November 18, 2009
  100. 100. ...But Imagine AdSense for Everything Else Search Spreadsheets Video Calendars Maps Wednesday, November 18, 2009
  101. 101. Announcing: Google Web Elements Copy and Paste Website Content Wednesday, November 18, 2009
  102. 102. Google Web Elements demo Wednesday, November 18, 2009
  103. 103. google.com/webelements Wednesday, November 18, 2009
  104. 104. Android: Seven Months, By The Numbers • 30+ carriers in 21 countries •18-20 devices by the end of 2009 • 12,000+ applications in the Android Market • 40+ app downloads per user • #2 in U.S. mobile web browsing • 4 platform releases, and counting... Wednesday, November 18, 2009
  105. 105. code.google.com/android Wednesday, November 18, 2009
  106. 106. Google Wave • Real time communication and collaboration platform • Rich set of APIs – Embedding – Gadgets – Robots – Extensions • Open Source protocol, Wave federation • Open Source server 104 Wednesday, November 18, 2009
  107. 107. code.google.com/apis/wave Wednesday, November 18, 2009
  108. 108. Go language • A systems programming language – expressive – concurrent – garbage-collected • New • Experimental • Fast • Safe • Concurrent • Open Source 106 Wednesday, November 18, 2009
  109. 109. golang.org Wednesday, November 18, 2009
  110. 110. Enjoy the candies! http://twitter.com/chanezon Browser Mobile Cloud Social Geo Demos at http://delicious.com/chanezon/devfest09+demos Source Marshall Astor http://www.flickr.com/photos/lifeontheedge/711086777/sizes/l/#cc_license Wednesday, November 18, 2009
  111. 111. Wednesday, November 18, 2009

×