+ All Categories
Home > Technology > Alejandro Villanueva - Google Inc.

Alejandro Villanueva - Google Inc.

Date post: 11-Nov-2014
Category:
Upload: alejandro-corpeno
View: 5,172 times
Download: 1 times
Share this document with a friend
Description:
Presentación de Alejandro VillanuevaDirector de Relaciones con Desarrolladores para Latinoamérica de Google, primera charla de la conferencia WebConfLatino 2009.
Popular Tags:
82
A More Powerful Web, Made Easier Alejandro Villanueva Developer Relations, Google June 5, 2009
Transcript
Page 1: Alejandro Villanueva - Google Inc.

A More Powerful Web, Made Easier

Alejandro VillanuevaDeveloper Relations, Google

June 5, 2009

Page 2: Alejandro Villanueva - Google Inc.

The Web Platform is AcceleratingU

ser

Experience

native web

1990 -- 2008 Q408 Q109 Q209 ...

iPhone 2.2:

Nov 22, 2008canvas

app cache

database

Safari 4.0b:

Feb 29, 2009canvas

video

app cache

database

workersHTML

DOM

CSS

XHR

Opera Labs:

Mar 26, 2009canvas

video

geolocation

Android 1.5:

Apr 13, 2009canvas

geolocation

app cache

database

workers

Firefox 3.5b4:

Apr 27, 2009canvas

video

geolocation

app cache

database

workers

Chrome 2.0:

May 21, 2009canvas

video

geolocation

app cache

database

workers

Page 3: Alejandro Villanueva - Google Inc.

And It’s Solving Key Developer ChallengesU

ser

Experience

native web

HTML

DOM

CSS

XHR

SpeedLocationGraphics Storage

1990 -- 2008 Q408 Q109 Q209 ...

Page 4: Alejandro Villanueva - Google Inc.

4

More DevelopersM

onth

ly C

ontr

ibuto

rs t

o O

SS

Bro

wsers

2002 2003 2004 2005 2006 2007 2008 2009

webkit

firefox 2.0-3.0

firefox 3.1+

chrome

Page 5: Alejandro Villanueva - Google Inc.

5

More SpeedS

unS

pid

er

Runs P

er

Min

ute

2001 2003 2005 2007 Q108 Q208 Q308 Q408 Q109

100x improvement

in JavaScript performance

Page 6: Alejandro Villanueva - Google Inc.

More UsersO

SS

Bro

wser

Users

(M

)

2005 2006 2007 2008 2009

Page 7: Alejandro Villanueva - Google Inc.

A More Powerful Web

Page 8: Alejandro Villanueva - Google Inc.

Cautionary Tales of Latent Lemonade

xhr

(1999)

xml (1998)

css

(1996)

AJAX (2004)

Page 9: Alejandro Villanueva - Google Inc.

HTML 5: A Chance to Do Things Differently

Page 10: Alejandro Villanueva - Google Inc.

canvas video geolocation app cache &

database

web workers

Page 11: Alejandro Villanueva - Google Inc.

0

0

width

heig

ht

Y

x

y

X

Until Recently, You Couldn’t Draw on the Web

Page 12: Alejandro Villanueva - Google Inc.

And Graphics Weren’t Very Interactive

javascript:onClick(Draw());

Page 13: Alejandro Villanueva - Google Inc.

The Usual Options Do This...

VMLFlash

Silverlight

Page 14: Alejandro Villanueva - Google Inc.

... But canvas is Intrinsic to the WebT

ranspare

nt S

tack

DOM

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,

Novell, JavaSoft, SoftQuad Inc., Inso EPS, Texcel

Research, Arbortext

Hypertext Markup Language (HTML)

Original: http://tools.ietf.org/html/rfc1866

Latest: http://www.w3.org/TR/html5/

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,

Microsoft, W3C, T. Berners-Lee, R. Fielding, J. Gettys, J.

Mogul, H. Frystyk, L. Masinter, P. Leach

HTTP

HTML

Page 15: Alejandro Villanueva - Google Inc.

// canvas

defines drawing

and animation

APIs with pixel-

level control

Page 16: Alejandro Villanueva - Google Inc.

canvas demos

Page 17: Alejandro Villanueva - Google Inc.

SunS

pid

er

Runs P

er

Min

ute

canvas Piggybacks Overall Browser Speed

Page 18: Alejandro Villanueva - Google Inc.

18

Is the Web Ready for 3D?

Page 19: Alejandro Villanueva - Google Inc.

code.google.com/apis/o3d

Page 20: Alejandro Villanueva - Google Inc.

Chrome Firefox Safari Opera

canvas

video

geolocation

app cache

database

workers

HTML 5 Support

Page 21: Alejandro Villanueva - Google Inc.

videocanvas geolocation app cache &

database

web workers

Page 22: Alejandro Villanueva - Google Inc.

Video is Complicated, and Outside Your Control

Page 23: Alejandro Villanueva - Google Inc.

So What

Would

Occam Do?

© topatoco.com

Page 24: Alejandro Villanueva - Google Inc.

// HTML 5 makes

<video> as easy

as <img>

Page 25: Alejandro Villanueva - Google Inc.

<video> demos

Page 26: Alejandro Villanueva - Google Inc.

Chrome Firefox Safari Opera

canvas

video

geolocation

app cache

database

workers

HTML 5 Support

Page 27: Alejandro Villanueva - Google Inc.

geolocationcanvas video app cache &

database

web workers

Page 28: Alejandro Villanueva - Google Inc.

28

Life’s Better with Location

CRMSocial Ads Games

Photos

75 ft

20 ft

500 ft

1.1 mi2.1 mi

Places

2.8 mi

Page 29: Alejandro Villanueva - Google Inc.

But GPS and IP Aren’t Good Enough

1. too slow

2. too constrained

3. too fuzzy

Page 30: Alejandro Villanueva - Google Inc.

1) Cell ID and WiFi Solve The Data Problem...

Page 31: Alejandro Villanueva - Google Inc.
Page 32: Alejandro Villanueva - Google Inc.

2) ...And Browsers Are Now Location-Enabled

Page 33: Alejandro Villanueva - Google Inc.

// the

geolocation api

brings browser-

based location

to your apps

Page 34: Alejandro Villanueva - Google Inc.
Page 35: Alejandro Villanueva - Google Inc.

canvas

video

geolocation

app cache and database

web workers

for more info: http://bit.ly/ff35dev

Page 36: Alejandro Villanueva - Google Inc.

geolocation demos

Page 37: Alejandro Villanueva - Google Inc.

Chrome Firefox Safari Opera

canvas

video

geolocation

app cache

database

workers

HTML 5 Support

(iPhone)

Page 38: Alejandro Villanueva - Google Inc.

app cache &

database

canvas video geolocation web workers

Page 39: Alejandro Villanueva - Google Inc.

39

Web Apps Need to Work Everywhere

Page 40: Alejandro Villanueva - Google Inc.

// database and

app cache store

user data and

app resources

locally

Page 41: Alejandro Villanueva - Google Inc.

app cache & database demos

Page 42: Alejandro Villanueva - Google Inc.

Chrome Firefox Safari Opera

canvas

video

geolocation

app cache

database

workers

HTML 5 Support

(mobile)

(mobile)

(iPhone)

Page 43: Alejandro Villanueva - Google Inc.

web workerscanvas video geolocation app cache &

database

Page 44: Alejandro Villanueva - Google Inc.

A More Powerful Web == More Powerful Apps

Page 45: Alejandro Villanueva - Google Inc.

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

Page 46: Alejandro Villanueva - Google Inc.

// web workers

defines an API

for running

background

scripts

Page 47: Alejandro Villanueva - Google Inc.

web workers demos

Page 48: Alejandro Villanueva - Google Inc.

Chrome Firefox Safari Opera

canvas

video

geolocation

app cache

database

workers

HTML5 Support

(iPhone)

(mobile)

(mobile)

(mobile)

Page 49: Alejandro Villanueva - Google Inc.

49

A More Powerful Web, Made Easier

Page 50: Alejandro Villanueva - Google Inc.

App Engine and Google Web Toolkit (GWT)Easier to Scale and Optimize Your App

Page 51: Alejandro Villanueva - Google Inc.

51

200,000+ Developers

Page 52: Alejandro Villanueva - Google Inc.
Page 53: Alejandro Villanueva - Google Inc.

Google Apps + your apps

Your custom applicationsOur Google Apps

Google's scalable serving architecture

Page 54: Alejandro Villanueva - Google Inc.

Launched in the Last 12 Months

memcache API

SSL support

system status

paid quota

cron support

database import

java runtime

X

X

X

X

X

X

X

Page 55: Alejandro Villanueva - Google Inc.

• Background processing

• Large object store

• Database export

• XMPP

• Incoming email

Page 56: Alejandro Villanueva - Google Inc.

56

Page 57: Alejandro Villanueva - Google Inc.

Announcing: Open Java Signups

Page 58: Alejandro Villanueva - Google Inc.

Google Plugin for Eclipse

Page 59: Alejandro Villanueva - Google Inc.

Secure Data Connector (SDC)

Page 60: Alejandro Villanueva - Google Inc.

Secure Data Connector

and 50+ more...

Page 61: Alejandro Villanueva - Google Inc.

Your application's health

Page 62: Alejandro Villanueva - Google Inc.

GWT Browser-Proofs Your JavaScript Code...

Page 63: Alejandro Villanueva - Google Inc.

...But CSS Headaches Persist

Page 64: Alejandro Villanueva - Google Inc.

Coming in GWT 2.0: In-Browser Debugging

Page 65: Alejandro Villanueva - Google Inc.

GWT Debugging in the browser

Page 66: Alejandro Villanueva - Google Inc.

Rich Applications, Extra-Large Codebases

Page 67: Alejandro Villanueva - Google Inc.

67

LOADING

Page 68: Alejandro Villanueva - Google Inc.

Manual Code Splitting: Not For the Faint of Heart

Page 69: Alejandro Villanueva - Google Inc.

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 } });}

Page 70: Alejandro Villanueva - Google Inc.

runAsync() Helps Apps Startup More Quickly

26-Nov 29-Apr 18-Jun 28-Jul 12-Sep 27-Oct 24-Dec 16-Mar

Siz

e o

f In

itia

l JavaS

cript D

ow

nlo

ad (

KB

)

375

750

1125

1500

0

7x Decrease In

Initial Download Size

with runAsync()

1400 KB

200 KB

Page 71: Alejandro Villanueva - Google Inc.

All together

Page 72: Alejandro Villanueva - Google Inc.

code.google.com/appengine

code.google.com/gwt

Page 73: Alejandro Villanueva - Google Inc.

Google Product APIsEasier to Add Content and Services To Your Website

Search Feeds Translation Calendar

Maps Charts Contacts Documents

Comments

AuthPhotos

NewsVideo

Spreadsheets

Page 74: Alejandro Villanueva - Google Inc.

74

Low-Level API Access Serves Many Needs...D

aily

AP

I H

its (

B)

May Jun Jul Aug Sept Oct Nov Dec Jan Feb Mar Apr May

Over 4B Google API

Hits Every Day

Page 75: Alejandro Villanueva - Google Inc.

75

...But Imagine AdSense for Everything Else

Maps

SpreadsheetsSearch

Video Calendars

Page 76: Alejandro Villanueva - Google Inc.

76

Announcing: Google Web ElementsCopy and Paste Website Content

Page 77: Alejandro Villanueva - Google Inc.

Google Web Elements demo

Page 78: Alejandro Villanueva - Google Inc.

google.com/webelements

Page 79: Alejandro Villanueva - Google Inc.

79

Android: Seven Months, By The Numbers

• 10 carriers in 12 countries

• 4,900+ applications in the Android Market

• 40+ app downloads per user

• #2 in U.S. mobile web browsing

• 3 platform releases, and counting...

Page 80: Alejandro Villanueva - Google Inc.

code.google.com/android

Page 81: Alejandro Villanueva - Google Inc.

81

Summary

Page 82: Alejandro Villanueva - Google Inc.

Recommended