Review of Google I/O

44
Review of Google I/O The New York Web Standards Meetup Group 24 July 2008 Jeffrey Barke . Senior Developer / Information Architect

description

Review of Google I/O, Google's largest developer event. It was two days of in-depth, technical sessions on how to build the next generation of web applications with Google and open technologies. Presented to the New York Web Standards Meetup on 24 July 2008.

Transcript of Review of Google I/O

Page 1: Review of Google I/O

Review of Google I/OThe New York Web Standards Meetup Group24 July 2008

Jeffrey Barke . Senior Developer / Information Architect

Page 2: Review of Google I/O

Slideshow

Page 3: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 4: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Photo by Nancy-. http://flickr.com/photos/zonagirl/2531741509/

Page 5: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 6: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 7: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 8: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 9: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 10: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 11: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 12: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 13: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Photo by funcrunch. http://flickr.com/photos/funcrunch/2533475074/

Page 14: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 15: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 16: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 17: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 18: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 19: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 20: Review of Google I/O

Slideshow

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 21: Review of Google I/O

Google App Engine

Page 22: Review of Google I/O

What is the Google App Engine?

http://code.google.com/appengine/

The Google App Engine is a system for exposing Google’s scalable architecture to your Web applications. Basically, you run your app on Google’s cloud.

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Features:• Fully-integrated application environment• Python runtime• Free quota of 5 million pageviews per month

Discussion group: http://groups.google.com/group/google-appengine

Page 23: Review of Google I/O

Why is Google doing this?

• To make the cloud more accessible– Competition with Amazon?

• Actively courting developers, because Google views the Web as the next platform (mainframe, PC, Web) and recognize that the strength of Microsoft was its relationship to developers

• Google uses the app engine itself. Ability to create fast apps.

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 24: Review of Google I/O

Why should you use the Google App Engine?

Difficult to create a Web application:• Write app code• Set up Apache Web server, set up MySQL database, config files• Find way to push new version of code when make changes• Find place to run app--ie, get machines. From shared hosting to dv ==

$$$• Maintain Web site as grows

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 25: Review of Google I/O

Design goals

Three design goals:

1. Easy as possible to create a web app

2. Easy to scale

3. Free to get started

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 26: Review of Google I/O

How it works

• Develop locally• Deploy to Google• Launch app

– Consoles to check how app is doing

App can scale to millions of users with no further work by you!

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 27: Review of Google I/O

Google App Engine updates

As of Google I/O:• Two new APIs:

– Memcache– Image manipulation

• Pricing should be done before end of year.– App engine will always be free to get started. 500 MB and 5

million page views.– After that, pay 10-12c per core-hour, 15-18c per GB

• Open registration

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 28: Review of Google I/O

Getting started with Google App Engine

Sign up for an App Engine account.

Painless if you already have a Google account (and of course you do)

When you attempt to create a project, you will need to verify your account, you will need

to provide your cell number and know who your carrier is.

Download SDK

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 29: Review of Google I/O

Software development kit and buttons

http://code.google.com/appengine/downloads.html

• The SDK is available for:– Windows– Mac OS X– Linux/other platforms

• Requires Python 2.5 to be installed• It includes a web server application that simulates the App Engine

environment, including a local version of the datastore, Google Accounts and the ability to fetch URLs and send email directly from your computer using the App Engine APIs.

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 30: Review of Google I/O

Google App Engine APIs

1. The Python Runtime, about the Python environment in which your app runs; CGI, sandbox features, application caching, logging

2. Datastore API, all about the scalable datastore and how to use it effectively

1. Uses SQL-like query language called GQL

3. Images API, the image data manipulation service

1. Avatar creation

4. Mail API, sending email from your app

5. Memcache API, the distributed memory cache

6. URL Fetch API, accessing other Internet hosts from your app

7. Users API, integrating your app with Google Accounts

1. Users do not need to create new account

2. Your app does not need to manage its own login system

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 31: Review of Google I/O

Example apps

PhotoMunchers by Pamela Fox: http://photomunchers.appspot.com/

TweetWheel by Augusto Becciu: http://tweetwheel.appspot.com/

LaterLoop by Greg Hochmuth: http://laterloop.appspot.com/

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 32: Review of Google I/O

Gears

Page 33: Review of Google I/O

What is Gears?

http://code.google.com/apis/gears/

An attempt to make the client better. The open web stack (HTML, DOM, CSS, XHR, canvas) is still far inferior to native applications. Gears is an open source plugin that extends the functionality of existing Web browsers by utilizing more of the client’s resources. It exposes a set of JavaScript APIs to developers.

Discussion group: http://groups.google.com/group/gears-users/

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 34: Review of Google I/O

What is Gears? cont’d

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Current modules include:• LocalServer:

– Cache and serve application resources (HTML, JavaScript, images, etc.) locally

• Database:– Store data locally in a fully-searchable relational database

• WorkerPool:– Make your web applications more responsive by performing

resource-intensive operations asynchronously• Desktop:

– Create shortcuts

Page 35: Review of Google I/O

Browser support

• Browsers– Internet Explorer 6.0+– Firefox 1.5+– Internet Explorer Mobile 4.01+

• Platforms– Windows XP/Vista– Windows Mobile 5+– Mac OS X 10.4+ and Linux

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 36: Review of Google I/O

Gears updates

As of Google I/O:• Debranding Google Gears to just Gears• Working on support for Opera (including mobile version) and Safari• New APIs

– Desktop shortcut creation (live)– Desktop notifications (not yet)– File system (not yet)– Blob (pass binary data--not yet)– Geolocation (not yet)

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 37: Review of Google I/O

Why should you use Gears?

• Can be used to augment apps– Latest version of WordPress: Turbo– MySpace: Search and sort messages

• Can be required in custom, corporate content management systems

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 38: Review of Google I/O

Demo

Demo: http://themechanism.com/barkode/demos-tutorials/gears/

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 39: Review of Google I/O

Google AJAX APIs

Page 40: Review of Google I/O

What are the Google AJAX APIs?

http://code.google.com/apis/ajax/

Google's AJAX APIs let you implement rich, dynamic web sites entirely in JavaScript and HTML. You can add a map to your site, a dynamic search box or download feeds with just a few lines of JavaScript.

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

• Google Maps API• Google AJAX Search API• Google AJAX Feed API• Google Visualization API• Google AJAX Language API• AJAX Libraries API

Page 41: Review of Google I/O

AJAX Language API

Translate and detect the language of blocks of text within a webpage using only Javascript.

http://code.google.com/apis/ajaxlanguage/documentation/#Examples

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 42: Review of Google I/O

AJAX Libraries API

Content distribution network and loading architecture for the most popular open source JavaScript libraries. By using the Google AJAX API Loader's google.load() method, your application has high speed, globally available access to a growing list of the most popular JavaScript open source libraries including:

• jQuery• prototype• script.aculo.us• MooTools• dojo

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 43: Review of Google I/O

AJAX Libraries API cont’d

• The latest stable versions as they are released.• Once they host a release of a given library, Google is committed to

hosting that release indefinitely• Takes the pain out of developing mashups in JavaScript while using a

collection of libraries.• Take the pain out of hosting the libraries, correctly setting cache

headers, staying up to date with the most recent bug fixes, etc.

<script src="http://www.google.com/jsapi"></script>

<script>

// load jQuery

google.load(‘jquery’, ‘1’);

</script>

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008

Page 44: Review of Google I/O

AJAX Feed API

Download any public Atom or RSS feed using only JavaScript

Demo:

http://themechanism.com/barkode/demos-tutorials/google-ajax-apis.php

Review of Google I/O • The New York Web Standards Meetup Group / 24 July 2008