29
Overview of Google Developer Technologies Jason Cooper Developer Programs Engineer [email protected] February 26th, 2010 St. Louis Innovation Camp

The Wide World Of Google Developer Technologies (STLIC 02-10)

Embed Size (px)

DESCRIPTION

In addition to its own suite of web applications, Google offers a wealth of world-class APIs and tools that can help startups and well-established businesses alike easily (and cheaply!) add significant value to their desktop, mobile, and web-based applications.In this presentation, I will provide a broad overview of the 70 APIs and developer tools that Google offers, touching on everything from the assortment of Apps, AJAX, and geo APIs (e.g. Calendar, YouTube, Maps, and Search, just to name a few), open web initiatives, mobile and social products including Android and Buzz, development/hosting solutions, and more. Rather than diving deeply into one API in particular -- that comes a bit later -- this session is designed to open your eyes to the bounty of Google APIs available and help inspire you to find creative ways of using them to enhance your present or future business, or even, dare I say it, change the world.

Citation preview

Page 1: The Wide World Of Google Developer Technologies (STLIC 02-10)

Overview of GoogleDeveloper Technologies

Jason CooperDeveloper Programs Engineer

[email protected]

February 26th, 2010St. Louis Innovation Camp

Page 2: The Wide World Of Google Developer Technologies (STLIC 02-10)

What is an API?

Page 3: The Wide World Of Google Developer Technologies (STLIC 02-10)

Application Programming Interface

Page 4: The Wide World Of Google Developer Technologies (STLIC 02-10)

Application Programming Interfaces...enable applications to interact with other applications.

Page 5: The Wide World Of Google Developer Technologies (STLIC 02-10)

Application Programming Interfaces...

enable developers to build interesting applicationsmore easily, quickly and cheaply than otherwise possible.

Page 6: The Wide World Of Google Developer Technologies (STLIC 02-10)

Application Programming Interfaces...

enable developers to "mash up" data from various sources.

Page 7: The Wide World Of Google Developer Technologies (STLIC 02-10)

Don't reinvent the wheel:leverage others' strengths

Page 8: The Wide World Of Google Developer Technologies (STLIC 02-10)

http://www.programmableweb.com

Great resource for API development

Categorized directory of APIsDirectory of mashups

Page 9: The Wide World Of Google Developer Technologies (STLIC 02-10)

70+ APIs and developer toolsfor web, mobile, and desktop apps

http://code.google.com/more

Page 10: The Wide World Of Google Developer Technologies (STLIC 02-10)

What's in it for Google?

Users can more easily import (and export!) their data.

Google application users get more features that they want.

The Web becomes more interesting and engaging for more users.

Page 11: The Wide World Of Google Developer Technologies (STLIC 02-10)

Data Liberation

http://www.dataliberation.org/

Page 12: The Wide World Of Google Developer Technologies (STLIC 02-10)

Classes of Google developer technology

Product APIs

Application platforms

Developer tools

Page 13: The Wide World Of Google Developer Technologies (STLIC 02-10)

Classes of Google developer technology

Product APIs

Application platforms

Developer tools

Page 14: The Wide World Of Google Developer Technologies (STLIC 02-10)

1. Product APIs

AJAX APIsSearchMapsEarthTranslate

Google Data APIsGoogle Apps

Google CalendarGoogle FinanceGoogle HealthGoogle Spreadsheets

YouTube

Page 15: The Wide World Of Google Developer Technologies (STLIC 02-10)

Google Data APIs (Atom + more)

Page 16: The Wide World Of Google Developer Technologies (STLIC 02-10)

Google Data APIs (Atom + more)

Data Model has 2 base types:feed: a container of data itemsentry: a single data item

APP has 4 operations:Create (POST)Retrieve (GET)Update (PUT)Delete (DELETE)

The Google Data Protocol extends AtomPub for processing queries, authentication, and batch requests.

Page 17: The Wide World Of Google Developer Technologies (STLIC 02-10)

Google Data APIs (Atom + more)

<?xml version='1.0' encoding='utf-8'?><feed> <title>Foo</title> <updated>2006-01-23T16:25:00-08:00</updated> <id>http://www.example.com/myFeed</id> <author> <name>Jo March</name> </author> <link href='/myFeed' rel='self'/> <entry> ... </entry> <entry> ... </entry></feed>

Page 18: The Wide World Of Google Developer Technologies (STLIC 02-10)

Google Data APIs: retrieving

Request:

GET /myFeed

Response:200 OK

<?xml version='1.0' encoding='utf-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='W/"C0QBRXcycSp7ImA9WxRVFUk."'> <title>Foo</title> <updated>2006-01-23T16:25:00-08:00</updated> <id>http://www.example.com/myFeed</id> <author> <name>Jo March</name> </author> <link href='/myFeed' rel='self'/></feed>

Page 19: The Wide World Of Google Developer Technologies (STLIC 02-10)

Google Data APIs: creating

Request:

POST /myFeed

<?xml version='1.0' encoding='utf-8'?><entry xmlns='http://www.w3.org/2005/Atom'> <author> <name>Elizabeth Bennet</name> <email>[email protected]</email> </author> <title type='text'>Entry 1</title> <content type='text'> This is my entry </content></entry>

Response:201 CREATED

<?xml version='1.0' encoding='utf-8'?><entry xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='"CUUEQX47eCp7ImA9WxRVEkQ."'> <id>http://www.example.com/id/1</id> <link rel='edit' href='http://example.com/myFeed/1/1/'/> <updated>2006-01-23T16:26:03-08:00</updated> <author> <name>Elizabeth Bennet</name> <email>[email protected]</email> </author> <title type='text'>Entry 1</title> <content type='text'>This is my entry</content></entry>

Page 20: The Wide World Of Google Developer Technologies (STLIC 02-10)

Google Data APIs: querying

Request:

GET /myFeed?q=this

Response:200 OK

<?xml version='1.0' encoding='utf-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='W/"S0wCTlpIIip7ImA0X0QI"'> ... <entry gd:etag='"CUUEQX47eCp7ImA9WxRVEkQ."'> <id>http://www.example.com/id/1</id> <link rel='edit' href='http://example.com/myFeed/1/'/> <updated>2006-01-23T16:26:03-08:00</updated> <author> <name>Elizabeth Bennet</name> <email>[email protected]</email> </author> <title type='text'>Entry 1</title> <content type='text'>This is my entry</content> </entry></feed>

Page 21: The Wide World Of Google Developer Technologies (STLIC 02-10)

Classes of Google developer technology

Product APIs

Application platforms

Developer tools

Page 22: The Wide World Of Google Developer Technologies (STLIC 02-10)

2. Application platforms

Web

Android

OpenSocial

Page 23: The Wide World Of Google Developer Technologies (STLIC 02-10)

Android

At the close of 2009:

18-20 devices30+ carriers in 21 countries12,000+ applications in the Android MarketNo. 2 in U.S. mobile web browsing4 platform releases and counting...

Page 24: The Wide World Of Google Developer Technologies (STLIC 02-10)

OpenSocial

Page 25: The Wide World Of Google Developer Technologies (STLIC 02-10)
Page 26: The Wide World Of Google Developer Technologies (STLIC 02-10)

Classes of Google developer technology

Product APIs

Application platforms

Developer tools

Page 27: The Wide World Of Google Developer Technologies (STLIC 02-10)

3. Developer tools

Google Web Toolkit

Closure Tools

App Engine

Page 28: The Wide World Of Google Developer Technologies (STLIC 02-10)

Classes of Google developer technology

Product APIs

Application platforms

Developer tools

70+ APIs and developer toolsfor web, mobile, and desktop apps

Page 29: The Wide World Of Google Developer Technologies (STLIC 02-10)

http://code.google.com/more

Jason CooperDeveloper Programs Engineer

[email protected]