Patrick Chanezon presented the Google API to Maps and Calendar and its use in third party applications. The reason Google API exists, in GOOGLESpeak that is... Is to assist the world's organization of information and providing universally and accessible for every day and programmtic use.
The first API Google provides is the MAPS API which in fact lit the fire of the AJAX world. MAPS front end architecture is VPages (support back button), RPC, and the API boostraps and the accessiblity to this architecture was the point to this meeting.
Patrick discussed the technologies involved with the Google API inclusive of the DOM, CSS, HTML, JavaScript, Data xfer (ie:Json), XML, E4x, JSON/E4X. Maps as many already know is based on one large image that is digitized into tiles. From this structure the logisitcs are a matter of x/y coordinates and calculations.
Google Maps implements PNGs which of course all browsers understand natively. Well, with one exception IE 6.0 which achieves this feat using an activeX plugin.
Google applies some solutions to
VPAGESThe problem solved with in AJAX is handling the state of the browser and mainting the state on hitting the back button and handling the state as in the legacy browser behavior
- The solution Replace the URL with a stateful back button
- Maps solution: dummy IFRAME (“VPage”)
Copyrights JavaScript can only download data from the same host as the HTML document that includes the <script> tag
- <img> tags can have URLs that are hosted on any server
- One way communication (client to server):
var img = new Image();
img.src = “http://myserver.com/myapp?a=1&b=2&c=3”;
- <script> tag can include scripts that are hosted on any server
- Client Script
function DoRPC(arg0, arg1) {
var script = document.createElement("script");
script.src = "http://myserver.com/myapp?arg0=" +
escape(arg0) + "&arg1=" + escape(arg1);
document.body.appendChild(script);
}
function HandleRPCResponse(data) {
...
}
API BootstrapCaching: Maps Javascript file was over 75K
- Bootstrap” wrapper for Maps JavaScript
The presentation went into GMAPS and how to overlay content such as maps, satellites and hybrid images. This allowed developers to post company logos as thumbtacks on the map to identify the locations of satelite offices. This can also be used to locate places you visit or any logistical outcome. Large sites are restricted, I believe Patrick identified 50,000 hits/links but I am not sure of the exact number. However, there is a rectriction and one should look into the Licensing and usage before getting to far into their respective effort. :-)
MAPS API V2 has a beefed up interface and identifies how to select adresses, update icons for your own gicon,
how to pass HTML or DOM nodes for mashups, as well as custom controls. The overlay interface includes for simplisitc methods to implement
initializ()
remove
copy()
redraw()Moving on to the Calendar and Google DATA API's are based on ATOM and the ATOM Publishing Protocol
REST AP. The calendar feed and and query feeder provides quick calendar integration. I believe I heard, but may be dead wrong, there is no usage and restriction on these API's but I would review the license and restrictions to insure your ideas of use are in line with Google. All calendar data is ATOM or RSS and the Google NameSpaces are listed here xmlns://gd=http://schemas.google.com/g/2005.
Patrick suffered from a problem with the network and was unable at the begginning to hit some sites live! He got beyond this very quickly and demonstrated from the links below:
http://del.icio.us/chanezon/ajaxian+google+maps+app+coolhttp://del.icio.us/chanezon/ajaxian+google+maps+app+techhttp://code.google.com/http://www.google.com/apis/mapsGoogle-Maps-API Developer ForumMaps API blogMike William’s tutorialshttp://del.icio.us/chanezon/google+mapshttp://www.google.com/calendar/user/public/fullOverall the presentation and material was very strong and the capabilities of the Google API's were presented very well. The presentation can be seen on Patricks website @
http://blog.chanezon.com/.Patrick's blog is worthy of an RSS feed, he's realy got some good things to say!
The presentation was well worth the time spent, Patrick gave the audience a "TRUE" "Ajax Experience"