keynote client connectivity and the cloud
TRANSCRIPT
Client, Connectivity,and the CloudVic GundotraEngineering VP, Google Inc.
May 28, 2008
3
Mainframe
computation & storage
accessibility
ease ofdeployment
functionality
1
0
-1
1
0
-1
4
Personal Computer
1
0
-1
1
0
-1
computation & storage
accessibility
ease ofdeployment
functionality
5
Internet
1
0
-1
1
0
-1
computation & storage
accessibility
ease ofdeployment
functionality
6
1
0
-1
1
0
-1
computation & storage
accessibility
ease ofdeployment
functionality
Make the cloud more accessible
Make the client more powerful
Internet
7
1
0
-1
1
0
-1
computation & storage
accessibility
ease ofdeployment
functionality
Make the cloud more accessible
Make the client more powerful
Keep connectivity pervasive
Internet
8
What? Why? How?
1 Make the cloud more accessible
Make the client more powerful
Keep connectivity pervasive2
3
9
“The industry is goingto develop as apartnering industry;not as a monopolyindustry… likewise,[Google’s] culture isone of consensus.”
Eric Schmidt, on the Internet and Google
What? Why? How?
innovate in the open
10
What? Why? How?
Richerweb apps
Moreusers
Moreusage
Morerevenue
open web platform
11
What? Why? How?
ScalabilitySecurity
Browser compatibility
Latency
Deployment User administration
Many devices
Storage
Programming languages
DistributionInternationalization
Authentication
Monetization AJAX Debugging Analytics
12
Client Connectivity Cloud
make it more powerful
13
User Experienceus
er e
xper
ienc
e
HTMLDOM
CSS
XHRCanvas
native (windows, OS X)flash, air, silverlightopen web
?
Proprietary Platforms v. Open Web
14
GearsExtending the Browser – Enabling Rich Web Apps
• LocalServer: offline access
• Database: local, relational DB
• WorkerPool: asynchronousthreads
code.google.com/apis/gears
15
GearsStandards-Driven and Open Source
databaselocalserver
HTML 5 Gears
Allen Hurff, Engineering SVPMySpace
17
MySpace MailPowered by Gears
• Available to everyone today!
• Committed to open web standards
• Technical session with Owyn Richen, Wed 3-4pm
18
Client Connectivity Cloud
keep it pervasive
19
Physical Device CharacteristicsHeap, Screen size, RMS, Key Mapping, Processor
Operating System CharacteristicsAccess to Camera, Address Book, IR, Bluetooth, Telephony
Java Virtual Machine (JVM)MIDP 1.0, MIDP 2.0, CDLC, JSR 120, JSR 135, JSR 185
Proprietary APIsNokia UI API, Motorola GPS, etc.
Operator/Mkt RequirementsLanguage, Presentation, Branding
Operator Client/Server APIsBilling, Game Servers, Messaging
(JavaWorld.com, 2004)
Steve Horowitz, Engineering DirectorAndroid
21
AndroidOpening Up the Mobile Software Stack
• Open source mobileplatform & key applications
• WebKit browser
• Raise the bar of baselinemobile functionality
code.google.com/android
22
Client Connectivity Cloud
make it more accessible
Kevin Gibbs, Tech LeadGoogle App Engine
24
Google App EngineRunning Web Apps on Google’s Infrastructure
• Fully-integratedapplication environment
• Python Runtime
• Free quota of 5Mpageviews per month
code.google.com/appengine
25
Google App EngineTechnical Challenges
26
Google App EngineFinancial Challenges
27
Google App EngineAdministrative Challenges
28
Google App EngineEasy to Start, Easy to Scale
29
Develop locally. Deploy to Google. Launch.
30
Develop locally. Deploy to Google. Launch.
Deploy
31
Develop locally. Deploy to Google. Launch.
32
Find out which of your Twitterfriends know each other!
33
34
35
“We got a prototype of our new ‘Pix Chat’OpenSocial app running in App Engine and theHi5 sandbox this morning. It took about 3 hours toget the app serving and our db code converted.”
Pixverse
36
Google App EngineAreas of Work, Including…
• Offline Processing
• Rich Media Support (e.g., large file UL / DL)
• Add’l Infrastructure Services
37
Google App EngineAreas of Work, Including… Two New APIs
• Offline Processing
• Rich Media Support (e.g., large file UL / DL)
• Add’l Infrastructure Services
• Memcache
• Image Manipulation
38
Google App EngineFree Quota and Expected Pricing
Bandwidth, Incoming
Bandwidth, Outgoing
Storage
CPU
Resource
15-18¢ / GB-month
11-13¢ / GB transferred
Equivalent to 5Mpageviews / month
for a typical app
Free Quota
9-11¢ / GB transferred
10-12¢ / core-hour
Additional
39
Google App EngineAnnouncing Open Signups
40
Client Connectivity Cloud
make it more accessible
Mark Lucovsky, Technical DirectorGoogle Data and AJAX APIs
42
Google Data APIsRead / Write Access To Google Services
code.google.com/apis/gdata
AtomPub Calendar Blogger
YouTubeNotebook
Picasa
Health
DocsContacts
Spreadsheets Apps
Base
Code Search<your web apps>
43
AJAX APIs and ControlsSprinkle the Web Onto Your Applications
code.google.com/apis/ajax
REST News Images
MapsVideos
Listings
Blogs
RSSAtom
YouTube Search
Books<your web apps>
44
Client Connectivity Cloud
make development easier
Bruce Johnson, Engineering ManagerGoogle Web Toolkit
46
Google Web ToolkitJava Development, JavaScript Deployment
Javasource
CompiledJavaScript
OptimizingCross-compiler
code.google.com/webtoolkit
47
Google Web ToolkitDevelop With <Your Favorite Java IDE>
48
Google Web Toolkit
• Java 5 language features
• Performance, performance,performance
* Thank you, open source contributors!
Announcing 1.5 Release Candidate
49
Client Connectivity Cloud
make the web more social
David Glazer, Engineering Director
51
52
53
54
“There are cries from the heart for myfriendship, that relationship to anotherperson, to transcend documents and sites.”
Tim Berners-Lee, on the “Giant Global Graph”
55
IdentityAuthorization
Apps
OpenIDOAuthOpenSocial
56
OpenSocialMaking the Web More Social
• A family of APIs
• A reference implementation
• A community of developers,containers and apps
opensocial.org
57
OpenSocialA Family of APIs
58
OpenSocialA Reference Implementation
59
OpenSocialA Community
Nat Brown, CTOiLike
61
iLike on hi5
62
iLike on MySpace
63
iLike on orkut
64
iLike on ingridmichaelson.com
65
OpenSocialBy The Numbers – November 2007
0M0M 0Ktotal reach developers app installs
66
OpenSocialBy The Numbers – May 2008
50M275M 20Ktotal reach developers app installs
67
OpenSocialContainer Status
68
OpenSocialContainer Status
®friendster
69
OpenSocialContainer Status
®friendster
70
OpenSocialWhat’s Next
• RESTful (v0.8)
• Template language
# Description: People API
personFeed = element atom:feed {( element atom:author { personConstruct}+ & personEntry* & generator & id & itemsPerPage? & peopleLink* & startIndex? & element atom:title { textConstruct } & totalResults? & updated ) }
71
OpenSocialWhat’s Next
• RESTful (v0.8)
• Template language
<Template name="my:Game"> <os:Page> <os:Title>The Game</os:Title> <os:Body> <my:FriendScores /> <my:LinkToClick /> <my:InviteFriends /> </os:Body> </osPage></Template><Template name="my:FriendScores"> <os:Headers> <os:Header>Friend</os:Header> <os:Header>Score</os:Header>
72
Google Friend ConnectBringing Friends to Every Website
• Built on open standards
• Copy & paste functionality
• Additional reach forOpenSocial containers anddevelopers
google.com/friendconnect
73
74
Client Connectivity Cloud
open web platform