<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>searchengineland.com &#187; Google: APIs</title>
	<atom:link href="http://searchengineland.com/library/google/google-apis/feed" rel="self" type="application/rss+xml" />
	<link>http://searchengineland.com</link>
	<description>Search Engine Land: Must Read News About Search Marketing &#38; Search Engines</description>
	<lastBuildDate>Mon, 23 Nov 2009 05:34:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>AdWords API v200909 &amp; V13 Sunsets April 22, 2010</title>
		<link>http://searchengineland.com/adwords-api-v200909-v13-sunsets-april-22-2010-28372</link>
		<comments>http://searchengineland.com/adwords-api-v200909-v13-sunsets-april-22-2010-28372#comments</comments>
		<pubDate>Fri, 23 Oct 2009 13:01:47 +0000</pubDate>
		<dc:creator>Barry Schwartz</dc:creator>
				<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: AdWords]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=28372</guid>
		<description><![CDATA[The AdWords API Blog announced a new version of the v2009 API and also released a date as to when version 13 of the API will sunset.
The new version of v2009, known as v200909 has many changes, but the most important include:

Asynchronous calls &#8211; Asynchronous calls allow you to work with large sets of data [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Fadwords-api-v200909-v13-sunsets-april-22-2010-28372"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Fadwords-api-v200909-v13-sunsets-april-22-2010-28372" height="61" width="51" /></a></div><p>The AdWords API Blog <a href="http://adwordsapi.blogspot.com/2009/10/were-happy-to-announce-newest-version.html">announced</a> a new version of the v2009 API and also released a date as to when version 13 of the API will sunset.</p>
<p>The new version of v2009, known as v200909 has <A href="http://code.google.com/apis/adwords/v2009/docs/releasenotes.html">many changes</a>, but the most important include:</p>
<ul>
<li><strong>Asynchronous calls</strong> &#8211; Asynchronous calls allow you to work with large sets of data faster and more easily. Instead of having to wait for our system to fully complete your request before you can make another one, you’re now able to make another call as soon as the API service confirms that it has received your previous call. No more waiting for the server to complete large requests. V200909 will continue to support Synchronous methods as well.</li>
<li><strong>Keyword and placement ideas</strong> &#8211; With the new TargetingIdeaService, you&#8217;ll be able to get keyword and placement ideas through the API, leveraging the functionality of the search-based keyword tool.</li>
<li><strong>Location Extensions preview</strong> &#8211; Limited location extensions functionality is now available as a preview of the full functionality in development.</li>
</ul>
<p>Also, Google has extended the sunset date for the previous API, version 13, to drop support on April 22, 2010.  So make sure to start migrating to <A href="http://code.google.com/apis/adwords/v2009/docs/">API v2009</a> as soon as possible.</p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/adwords-api-v200909-v13-sunsets-april-22-2010-28372/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>9/11, Google &amp; The Internet</title>
		<link>http://searchengineland.com/911-google-the-internet-25627</link>
		<comments>http://searchengineland.com/911-google-the-internet-25627#comments</comments>
		<pubDate>Fri, 11 Sep 2009 13:28:42 +0000</pubDate>
		<dc:creator>Barry Schwartz</dc:creator>
				<category><![CDATA[Ask: Other]]></category>
		<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: General]]></category>
		<category><![CDATA[Google: Logos]]></category>
		<category><![CDATA[Google: Maps & Local]]></category>
		<category><![CDATA[Microsoft: Bing]]></category>
		<category><![CDATA[Top News]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=25627</guid>
		<description><![CDATA[As everyone knows, today is the 8th year anniversary of the terrible 9/11 attacks.  Many people, companies and organizations are doing things to remember the day.  A lot of people are asking why there is no logo from Google for today.  The quick answer is that Google does not do Google Doodles [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2F911-google-the-internet-25627"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2F911-google-the-internet-25627" height="61" width="51" /></a></div><p>As everyone knows, today is the 8th year anniversary of the terrible 9/11 attacks.  Many people, companies and organizations are doing things to remember the day.  A lot of people are asking why there is <A href="http://www.seroundtable.com/archives/020745.html">no logo from Google</a> for today.  The quick answer is that Google does not do Google Doodles (aka logos) for sad days like this, they typically only do these types of logos for happier occasions.  </p>
<p>But that does not mean Google is not doing anything.  They have partnered up with several organizations and companies to <a href="http://googleblog.blogspot.com/2009/09/make-history-with-national-september.html">bring</a> together a web site named <A href="http://www.911history.org/">Make History</a> at 911history.org.  The site has a storytelling sharing tool that  uses the Google Maps API to display Google&#8217;s Street Views. It allows &#8220;people to place and then share their photos and videos in geographical context, collectively piecing together the history that was witnessed, one photo and video at a time,&#8221; Google said.  The site is also hosted on Google&#8217;s cloud computing environment, Google App Engine.</p>
<p>On the logo front, both Microsoft Bing &#038; Ask.com have used meaningful background images for their home pages.  Here are pictures:</p>
<p><a href="http://www.flickr.com/photos/rustybrick/3909631442/" title="Bing 9/11 Remembrance by rustybrick, on Flickr"><img src="http://farm4.static.flickr.com/3445/3909631442_d22f6289cb.jpg" width="500" height="272" alt="Bing 9/11 Remembrance" /></a></p>
<p><a href="http://www.flickr.com/photos/rustybrick/3909631528/" title="Ask.com 9/11 Remembrance by rustybrick, on Flickr"><img src="http://farm3.static.flickr.com/2541/3909631528_ed0bc386da.jpg" width="500" height="264" alt="Ask.com 9/11 Remembrance" /></a></p>
<p>Clearly, the <A href="http://www.yahoo.com/ ">Yahoo</a> home page has news and images for the day.  Plus Gary Price at ResourceShelf has compiled a <A href="http://www.resourceshelf.com/2009/09/11/world-trade-center-memorial-and-museum-opening-new-video-released-other-911-archives/">comprehensive list</a> of how the Internet is remembering the day.</p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/911-google-the-internet-25627/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hasbro To Create &#8220;Monopoly City Streets&#8221; Game Using Google Maps</title>
		<link>http://searchengineland.com/hasbro-to-create-google-monopoly-game-with-google-maps-25372</link>
		<comments>http://searchengineland.com/hasbro-to-create-google-monopoly-game-with-google-maps-25372#comments</comments>
		<pubDate>Tue, 08 Sep 2009 13:14:00 +0000</pubDate>
		<dc:creator>Barry Schwartz</dc:creator>
				<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: Maps & Local]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=25372</guid>
		<description><![CDATA[
TechCrunch reports Hasbro company, the company behind many board games, including Monopoly, is making a new Monopoly game at MonopolyCityStreets.com.  The game is expected to launch tomorrow, September 9th and use the Google Maps API.  The site explains:
On the 9th SEPTEMBER, a world of property empire building on an unimaginable scale will be [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Fhasbro-to-create-google-monopoly-game-with-google-maps-25372"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Fhasbro-to-create-google-monopoly-game-with-google-maps-25372" height="61" width="51" /></a></div><p><a title="Google Monopoly Google Maps by rustybrick, on Flickr" href="http://www.flickr.com/photos/rustybrick/3900422108/"><img src="http://farm3.static.flickr.com/2581/3900422108_16d2a59df6_o.png" alt="Google Monopoly Google Maps" width="220" height="110" /></a></p>
<p>TechCrunch <a href="http://www.techcrunch.com/2009/09/07/googles-monopoly-the-board-game-not-antitrust/">reports</a> Hasbro company, the company behind many board games, including Monopoly, is making a new Monopoly game at <a href="http://www.monopolycitystreets.com">MonopolyCityStreets.com</a>.  The game is expected to launch tomorrow, September 9th and use the Google Maps API.  The site explains:</p>
<blockquote><p>On the 9th SEPTEMBER, a world of property empire building on an unimaginable scale will be launched! A live worldwide game of MONOPOLY using Google Maps as the game board. The goal is simple. Play to beat your friends and the world to become the richest property magnate in existence.</p></blockquote>
<p>In addition, the game uses Google SketchUp to create 3D buildings.  This sounds incredibly interesting and I can&#8217;t wait to check it out.</p>
<p>From the looks of it, it does not seem to be part of any direct Google partnership, outside of Hasbro using the various Google APIs like any developer might use them.</p>
<p>Update: I posted screen shots and a video at the <A href="http://www.seroundtable.com/archives/020737.html">Search Engine Roundtable</a> of this web site in action.</p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/hasbro-to-create-google-monopoly-game-with-google-maps-25372/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Two Months Later, Google Releases AdWords API v2009 (Beta) To All</title>
		<link>http://searchengineland.com/two-months-later-google-releases-adwords-api-v2009-beta-to-all-24729</link>
		<comments>http://searchengineland.com/two-months-later-google-releases-adwords-api-v2009-beta-to-all-24729#comments</comments>
		<pubDate>Fri, 28 Aug 2009 13:04:05 +0000</pubDate>
		<dc:creator>Barry Schwartz</dc:creator>
				<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: AdWords]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=24729</guid>
		<description><![CDATA[The Google AdWords API announced the new beta version of the AdWords API, i.e. API v2009, is available for all advertisers to give a try.  
Google first released the beta just about two months ago, as a limited beta.  Now, any advertiser can sign up at this page.
Note, there are significant changes and [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Ftwo-months-later-google-releases-adwords-api-v2009-beta-to-all-24729"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Ftwo-months-later-google-releases-adwords-api-v2009-beta-to-all-24729" height="61" width="51" /></a></div><p>The Google AdWords API <A href="http://adwordsapi.blogspot.com/2009/08/adwords-api-v2009-beta-now-available-to.html">announced</a> the new beta version of the AdWords API, i.e. API v2009, is available for all advertisers to give a try.  </p>
<p>Google first <A href="http://searchengineland.com/google-releases-adwords-api-v2009-beta-21763">released</a> the beta just about two months ago, as a limited beta.  Now, any advertiser can sign up at <A href="http://code.google.com/apis/adwords/v2009/">this page</a>.</p>
<p>Note, there are significant changes and improvements made to this API.  The <A href="http://code.google.com/apis/adwords/docs/developer/adwords_api_ratesheet.html">rate sheet</a> for API calls shows a reduced rate and new features are coming, such as asynchronous calls, partial failure acceptance, keyword optimization tools, and reporting.  </p>
<p>If you are using the current API (<a href="http://searchengineland.com/google-improves-apis-for-webmaster-tools-adwords-15815">v13</a>), it is important to start looking at this new API, especially this one, since it is significantly different from the current API.  Version 13 will likely be retired in early 2010, so prepare as soon as you can.</p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/two-months-later-google-releases-adwords-api-v2009-beta-to-all-24729/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Releases AdWords API v2009 (Beta)</title>
		<link>http://searchengineland.com/google-releases-adwords-api-v2009-beta-21763</link>
		<comments>http://searchengineland.com/google-releases-adwords-api-v2009-beta-21763#comments</comments>
		<pubDate>Tue, 30 Jun 2009 13:55:06 +0000</pubDate>
		<dc:creator>Barry Schwartz</dc:creator>
				<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: AdWords]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=21763</guid>
		<description><![CDATA[The Google AdWords API Blog announced the new AdWords API v2009.  The new API promises &#8220;more speed, scale, and flexibility to developers, at a lower cost.&#8221;  The AdWords API v2009 will ultimately replace version 13, and there are &#8220;significant&#8221; differences between the two.  The biggest additions include:

Partial failure acceptance &#8211; We plan [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-releases-adwords-api-v2009-beta-21763"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-releases-adwords-api-v2009-beta-21763" height="61" width="51" /></a></div><p>The Google AdWords API Blog <a href="http://adwordsapi.blogspot.com/2009/06/adwords-api-v2009-launch.html">announced</a> the new <A href="http://code.google.com/apis/adwords/v2009/docs/">AdWords API v2009</a>.  The new API promises &#8220;more speed, scale, and flexibility to developers, at a lower cost.&#8221;  The AdWords API v2009 will ultimately replace version 13, and there are &#8220;significant&#8221; differences between the two.  The biggest additions include:</p>
<ul>
<li>Partial failure acceptance &#8211; We plan to support partial failures, which means that large posts won&#8217;t be completely rolled back due to a few small errors. This allows you to keep moving forward with development without halting to re-do posts.</li>
<li>Asynchronous calls &#8211; We’ll offer asynchronous calls, which will allow you to work with large sets of data faster and more easily. Instead of having to wait for our system to fully complete your request before you can make another one, you’ll be able to make another call as soon as the API service confirms that it’s received your previous call. No more waiting for large requests to be finished. (Synchronous methods will still be supported as well.)</li>
<li>Keyword Tools &#8211; With new keyword management tools, you&#8217;ll be able to directly access new URL-specific keyword suggestions from the AdWords Keyword Tool and the Search-based Keyword Tool through the API.</li>
<li>MCC and Reporting functionality.</li>
</ul>
<p>To sign up for the beta, go to <a href="http://code.google.com/apis/adwords/v2009/docs/signup.html">this form</a> and enter your information.   Do note there is a revised <a href="http://code.google.com/apis/adwords/docs/terms.html">terms and conditions</a> and a lower <A href="http://code.google.com/apis/adwords/docs/developer/adwords_api_ratesheet.html">rateplan</a> for API calls.   AdWords API version 13 will not sunset until early 2010, but it might make sense for you to begin looking at <a href="http://code.google.com/apis/adwords/v2009/docs/">v2009</a> now.</p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/google-releases-adwords-api-v2009-beta-21763/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google I/O: New Advances In The Searchability of JavaScript and Flash, But Is It Enough?</title>
		<link>http://searchengineland.com/google-io-new-advances-in-the-searchability-of-javascript-and-flash-but-is-it-enough-19881</link>
		<comments>http://searchengineland.com/google-io-new-advances-in-the-searchability-of-javascript-and-flash-but-is-it-enough-19881#comments</comments>
		<pubDate>Fri, 29 May 2009 18:11:04 +0000</pubDate>
		<dc:creator>Vanessa Fox</dc:creator>
				<category><![CDATA[Features: Analysis]]></category>
		<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: SEO]]></category>
		<category><![CDATA[Google: Webmaster Central]]></category>
		<category><![CDATA[SEO: Flash]]></category>
		<category><![CDATA[Top News]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=19881</guid>
		<description><![CDATA[This week at Google I/O, Google talked a lot about the evolution of the technological capabilities of the web. HTML 5 is ushering in new era of browser-based development and applications. Eric Schmidt, Google CEO, kicked things off with, &#8220;My message to you is that this is the beginning of the real win of cloud [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-io-new-advances-in-the-searchability-of-javascript-and-flash-but-is-it-enough-19881"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-io-new-advances-in-the-searchability-of-javascript-and-flash-but-is-it-enough-19881" height="61" width="51" /></a></div><p><a title="Google I/O by Search Engine Land, on Flickr" href="http://www.flickr.com/photos/23148333@N06/3576675864/"><img src="http://farm4.static.flickr.com/3635/3576675864_4b64ddab0c_o.jpg" alt="Google I/O" width="239" height="75" align="right" /></a><a href="http://searchengineland.com/live-blogging-google-io-keynote-19812">This week at Google I/O</a>, Google talked a lot about the evolution of the technological capabilities of the web. <a href="http://dev.w3.org/html5/spec/Overview.html">HTML 5</a> is ushering in new era of browser-based development and applications. Eric Schmidt, Google CEO, kicked things off with, &#8220;My message to you is that this is the beginning of the real win of cloud computing, of applications, of the internet, which is changing the paradigm that we’ve all grown up with so that it just works … regardless of platform or hardware you’re using.&#8221;</p>
<p>Which is great and all, but if &#8220;the web has won&#8221;, as Vic Gundotra, VP of Engineering at Google proclaimed, then it&#8217;s not just application development that&#8217;s moved to the web. The potential consumers of these applications have moved to the web too. And Google, more than any other company, knows that <a href="http://searchengineland.com/how-we-navigate-our-online-landscape-12350">search has become the primary navigation point of the web</a>. We&#8217;ve become a searching culture and if we don&#8217;t see something in the first 10 search results on Google, we may not realize it exists. (<a href="http://www.pewinternet.org/Reports/2008/Search-Engine-Use.aspx">A 2008 PEW/Internet survey</a> found that 49% of online Americans use search engines every day, and a <a href="http://www.iprospect.com/about/researchstudy_2008_blendedsearchresults.htm">2008 iProspect/JupiterResearch study</a> found that &#8220;68% of search engine users click a search result within the first page of  results, and a full 92% of search engine users click a result within the first  three pages of search results.&#8221;)</p>
<p>Web applications need more than technology to thrive. They also need customers. And more often than not these days, those customers are acquired through search. But how well can this new world of the web that Google is ushering in at Google I/O be crawled, indexed, and ranked by search engines such as Google?</p>
<p>If the search engines&#8217; ability to handle the rich internet applications (RIAs) developers have been creating over the last few years are any indication, <a href="http://janeandrobot.com/library/search-friendly-design-patterns-for-web-developers">not very well</a>. Google in particular has <a href="http://searchengineland.com/google-now-crawling-and-indexing-flash-content-14299">recently made strides in this area</a>, as it benefits them in their <a href="http://www.google.com/corporate/">quest</a> to organize the world&#8217;s information and make it universally accessible and useful. But years after Flash and AJAX hit the market, their <a href="http://googlewebmastercentral.blogspot.com/2007/11/spiders-view-of-web-20.html">searchability still isn&#8217;t ideal</a>.</p>
<p>When this year&#8217;s <a href="http://code.google.com/events/io/about.html">Google I/O conference</a> was first announced, I talked with Tom Stocky, Director of Product Management for developer products at Google, and asked about the searchability issues with some of the Google Code APIs and products. He noted that Google I/O included a session about searchability: <a href="http://code.google.com/events/io/sessions/SearchFriendlyDevelopment.html">Search Friendly Developmen</a>t, presented by Maile Ohye. Having heard Maile speak about developer issues before, I have no doubt that her content was top notch, but that doesn&#8217;t answer my underlying question about the general searchability of the code Google offers to developers. After all, if Google is encouraging developers to<a href="http://code.google.com/events/io/sessions/BuildingBusinessFreeApis.html"> &#8220;build a business&#8221; with their APIs</a>, they should realize that building a business is about more than application construction &#8212; it&#8217;s about the ability to acquire customers as well.</p>
<p><strong>JavaScript and AJAX</strong></p>
<p>For instance, <a href="http://code.google.com/apis/ajax/">Google&#8217;s AJAX APIs</a> are created with, well, AJAX, which is <a href="http://www.businessol.com/seo-blog/2007/12/making-ajax-seo-friendly.html">notoriously difficult to index</a>. A core issue with AJAX is that it dynamically changes the content of the page. The URL doesn&#8217;t change as the new content loads. Often, the URL is appended with a hash mark (#). Historically, a # in a URL has denoted a named anchor within a page, and thus search engines generally drop everything in a URL beginning with a # as not to index the same page multiple times.</p>
<p>You can see this implementation on <a href="http://www.coldfusionbloggers.org">coldfusionbloggers.org</a>, for instance.</p>
<p>Click the Next button, and the URL is appended as follows: http://www.coldfusionbloggers.org/#2</p>
<p>Other AJAX implementations don&#8217;t append anything to the URL, but simply dynamically load new content on the page based on clicks. Take a look at an example from the <a href="http://code.google.com/apis/ajax/playground/#tabbed_display_mode">Google Code Playground</a>.</p>
<p><a title="Google Code Playground by Search Engine Land, on Flickr" href="http://www.flickr.com/photos/23148333@N06/3571264085/"><img src="http://farm4.static.flickr.com/3633/3571264085_b48a448e90.jpg" alt="Google Code Playground" width="500" height="463" /></a></p>
<p>In this example, each of the three tabs (Local, Web, and Blog) contains unique content. The URL of the page doesn&#8217;t change as the content reloads. You might expect one of two things to happen:</p>
<ul>
<li> search engines associate the content from the tab that appears when the page first loads with the URL</li>
<li> search engines associate the content from all of the tabs with the URL.</li>
</ul>
<p>Either of these scenarios could happen, depending on how the code is implemented. What actually happens in this case is less desirable than either of those options. Because the entire tab architecture is loaded in JavaScript, search engines can&#8217;t access the content at all.</p>
<p>You can see this in action for an implementation <a href="http://googleajaxsearchapi.blogspot.com/2008/11/styling-searchcontrol-guest-post.html">showcased on the Google AJAX APIs blog</a>. The <a href="http://jgeerdes.home.mchsi.com/google/googleAjaxApiSearchControlStyled.html">sample site</a> uses a tabbed architecture to organize results, but all that shows up in Google search results is &#8220;loading&#8221;:</p>
<p><a title="Loading Sample by Search Engine Land, on Flickr" href="http://www.flickr.com/photos/23148333@N06/3576557916/"><img src="http://farm3.static.flickr.com/2438/3576557916_c843326d04.jpg" alt="Loading Sample" width="500" height="240" /></a></p>
<p>A similar thing happens with<a href="http://74.125.155.132/search?q=cache:QBqLLs4mVpkJ:www.agilegallery.com/ajax-demo.html+http://www.agilegallery.com/ajax-demo.html&amp;cd=1&amp;hl=en&amp;ct=clnk&amp;gl=us&amp;client=firefox-a"> this page that uses AJAX</a> to provide navigation through photos:</p>
<p>All Google sees is &#8220;loading photos, please wait&#8230;&#8221;</p>
<p><a title="loading by Search Engine Land, on Flickr" href="http://www.flickr.com/photos/23148333@N06/3575465556/"><img src="http://farm4.static.flickr.com/3630/3575465556_9e0abfcddd.jpg" alt="loading" width="500" height="202" /></a></p>
<p>A <a href="http://www.dynamicdrive.com/dynamicindex17/ajaxtabscontent/">dynamic menu such as the one described here</a> has related, but different issues. Each tab loads content from an external HTML file. Google doesn&#8217;t see that content as part of the page. Rather, it sees the content as part of those external files and <a href="http://www.google.com/search?q=inurl%3Ahttp%3A%2F%2Fwww.dynamicdrive.com%2Fdynamicindex17%2Fajaxtabscontent%2F+%22This+is+the+contents+of+%22external3.htm%22+&amp;ie=utf-8&amp;oe=utf-8&amp;aq=t">indexes them separately</a>.</p>
<p>There are ways to get the content indexed, of course.</p>
<ul>
<li>You can do away with AJAX in this instance and use CSS and divs instead.</li>
<li>You can use the approach taken on the Yahoo home page. The Featured, Entertainment, Sports, and Life tabs load inline when you click on them, but if JavaScript isn&#8217;t enabled, the tabs are shown as links to separate pages. (For instance, the entertainment tab links to http://entertainment.yahoo.com/.)</li>
</ul>
<p style="padding-left: 30px;"><a title="Yahoo Home Page by Search Engine Land, on Flickr" href="http://www.flickr.com/photos/23148333@N06/3571275153/"><img src="http://farm4.static.flickr.com/3664/3571275153_7c5f5508e3.jpg" alt="Yahoo Home Page" width="500" height="224" /></a></p>
<p style="padding-left: 30px;">You can tell that Google sees the version of the Yahoo page in which the tabs link to separate pages because this is the behavior found in the <a href="http://74.125.155.132/search?hl=en&amp;q=cache%3Ayahoo.com&amp;btnG=Search">Google cache</a>.</p>
<ul>
<li>You can gracefully <a href="http://www.businessol.com/seo-blog/2007/12/making-ajax-seo-friendly.html">degrade your AJAX implementation</a> or use <a href="http://www.sitepoint.com/blogs/2007/02/23/handling-javascript-disabled-browsers/">progressive enhancement techniques.</a></li>
</ul>
<ul>
<li>You can implement a technique that <a href="http://adactio.com/">Jeremy Keith</a> describes as <a href="http://domscripting.com/presentations/xtech2006/">Hijax</a>: return false from the onClick handler and include a crawlable URL in the href as shown below:</li>
</ul>
<pre style="padding-left: 30px;">&lt;a href=”ajax.htm?foo=123” onClick=”navigate('ajax.html#foo=123');
return  false”&gt;123&lt;/a&gt;</pre>
<p style="padding-left: 30px;">Of course, with an implementation like this, similar to the Yahoo home page experience, search engines may index each page individually or as variations of the same page (depending on what the AJAX code is meant to do), rather than as part of a single, comprehensive page  and when visitors enter your site through search, those individual pages will be how they first experience your site.</p>
<p><strong>Cloaking?</strong></p>
<p>None of these JavaScript/AJAX workarounds are <a href="(http://google.com/support/webmasters/bin/answer.py?answer=66355">considered cloaking</a>, which can get a site banned from Google, because they don&#8217;t present content based on user agent (such as Googlebot). Rather, they present &#8220;degraded&#8221; content to any user agent without JavaScript support (including screen readers, some mobile devices, and older browsers) or &#8220;enhanced&#8221; content to any user agent with JavaScript support.</p>
<p><strong>Flash and Flex</strong></p>
<p>Similar issues exist with <a href="http://www2.webmasterradio.fm/office-hours/2009/adobe-flash-improvements">Adobe technologies such as Flash and Fle</a>x. Search engines have historically had trouble crawling Flash. Last year, Adobe made a search crawler version of the Flash player available to Google so it could extract text and links, and more recently launched an <a href="http://www.adobe.com/devnet/seo/">SEO knowledge center</a>, but <a href="http://www.ninebyblue.com/blog/search-friendly-flash/">problems remain</a>.</p>
<p>If the Flash application is built with a single URL (rather than changing URLs for each interaction), then the site visitor coming from search will always enter the site at the home page, and have no way of knowing how to get to the content. Not to mention this style of web application is difficult to share. It&#8217;s much easier to copy and paste a link to a cute pair of shoes than it is to email a friend instructions like, &#8220;go to the home page, then click shoes, then click sandals, then brown, then scroll to the third page and look in the fifth row, second pair over from the left.&#8221; Seriously, no matter how good a friend you are to me, I am not following those instructions.</p>
<p>The Flex framework introduces challenges similar to AJAX. <a href="http://www.insideria.com/2008/09/advanced-flex-deep-linking-wit-1.html?sdid=DNJYZ">It creates new URLs by adding a hash mark (#)</a>. As with AJAX, this can make things faster because new pages aren&#8217;t loading with each click, but also as with AJAX, search engines drop everything in a URL beginning with the #. Depending on your infrastructure, you might be able to <a href="http://grails.org/URL+mapping">remap</a> or rewrite the URLs, but that sort of defeats the purpose of using a coding framework to begin with.</p>
<p><strong>Should Google Search and Google Code Have Coffee?</strong></p>
<p>I (more than many people, having previously worked in Google search) understand that Google is a big company. And I know that both the search and code teams are working hard at their core goals. And believe me, I really love the people working on both teams. I&#8217;ve had the wonderful opportunity to work very closely with many of them, and I can vouch for the fact that any lack of integration between the two is not for lack of caring. Those teams care very much about putting out quality products that their customers are delighted by.</p>
<p>But as can happen in big companies where everyone is working hard, there seems to be a disconnect. Google APIs and other products for developers should be built search-engine friendly right out of the box not only because they&#8217;re being built by Googlers who should therefore know better, but because searchability is vital to for a business to be successful on the web today. Code should be secure; it should function properly; it should be crawlable.</p>
<p>At Google I/O&#8217;s first <a href="http://sites.google.com/a/pressatgoogle.com/googleio2009/keynote-videos">keynote session</a>, Vic Gundotra touted the <a href="http://www.whitehouse.gov/OpenForQuestions/">White House&#8217;s use of Google Moderator</a> earlier this year as an example of how useful Google tools are to developers. Sure, the AppEngine servers running Google Moderator held up, but <a href="http://www.ninebyblue.com/blog/whitehousegov-keeping-searchers-from-asking-questions-inadvertently/">none of the discussion could be crawled or indexed by search engines</a>. Maybe this didn&#8217;t matter to the White House (although I would think that some American citizens might find it helpful to be able to search through the questions people had). But a small business using Google Moderator as its forum or support framework would almost certainly want that content to be found in Google searches.</p>
<p><strong>Google is working on it</strong></p>
<p>The Google Webmaster Central team has been providing a wealth of education around these issues to help developers build search-friendly web sites. For instance:</p>
<ul>
<li><a href="http://www.google.com/support/webmasters/bin/answer.py?hl=en&amp;answer=81766">Search-friendly AJAX</a></li>
<li><a href="http://www.google.com/support/webmasters/bin/answer.py?hl=en&amp;answer=139066">Canonicalization</a></li>
<li><a href="http://www.google.com/support/webmasters/bin/answer.py?hl=en&amp;answer=83105">Site moves</a></li>
</ul>
<p>At Maile&#8217;s Search-Friendly Development session at Google I/O, Google announced two advances in their ability to crawl and index RIAs. While both of these advances are great efforts, they were driven entirely by the search team. And unfortunately, they don&#8217;t solve the issues with the Google Code APIs. Wouldn&#8217;t it be great if the new <a href="http://google-code-updates.blogspot.com/2009/05/introduce-google-web-elements.html">Web Elements</a> they just announced were search-engine friendly by default?</p>
<p><strong>Flash improvements</strong></p>
<p>Google <a href="http://googlewebmastercentral.blogspot.com/2008/06/improved-flash-indexing.html">made improvements in crawling content in Flash files in July of 2008</a>, but wasn&#8217;t able to extract content from external files (such as resource files). In addition, many sites loaded Flash via a JavaScript link on the home page, and since Google didn&#8217;t follow the JavaScript link, they couldn&#8217;t get to the Flash at all. Both of those things have changed as of this week. Google can now access content in external files and can follow JavaScript links to Flash applications.</p>
<p>Both of these are great improvements, but the <a href="http://searchengineland.com/google-now-crawling-and-indexing-flash-content-14299">advice in my original article remains</a>. Don&#8217;t use Flash in situations where you really don&#8217;t need it. Make sure that all text and links are built into the Flash file as text and links (and not, for instance, in images), and create a new URL for each interaction.</p>
<p><strong>JavaScript improvements</strong></p>
<p>Google has also been crawling some JavaScript for a while. Primarily, they&#8217;ve been <a href="http://googlewebmastercentral.blogspot.com/2007/11/spiders-view-of-web-20.html">extracting very simply coded links</a>. As of today, they&#8217;re able execute JavaScript onClick events. They still recommend using progressive enhancement techniques, however, rather than to rely on Googlebot&#8217;s ability to extract from the JavaScript (not just for search engine purposes, but for accessibility reasons as well).</p>
<p>Googlebot is now able to construct much of the page and can access the onClick event contained in most tags. For now, if the onClick event calls a function that then constructs the URL, Googlebot can only interpret it if the function is part of the page (rather than in an external script).</p>
<p>Some examples of code that Googlebot can now execute include:</p>
<ul>
<li>
<pre>&lt;div onclick="document.location.href='http://foo.com/'"&gt;</pre>
</li>
<li>
<pre>&lt;tr onclick="myfunction('index.html')"&gt;&lt;a href="#"
onclick="myfunction()"&gt;new page&lt;/a&gt;</pre>
</li>
<li>
<pre>&lt;a href="javascript:void(0)" onclick="window.open
('welcome.html')"&gt;open new window&lt;/a&gt;</pre>
</li>
</ul>
<p>These links pass both anchor text and PageRank.</p>
<p><strong>The end of progressive enhancement?</strong></p>
<p>Does this mean that web developers no longer need to progressively enhance their JavaScript? I would recommend continuing this practice. Not only does it benefit accessibility and mobile users, but search engines other than Google aren&#8217;t yet crawling JavaScript. And in any case, we will have to watch and see what happens in the Google search results before we know exactly how JavaScript content is handled.</p>
<p>For instance, for that Star Trek example above, the entire body code is as follows:</p>
<pre id="line17"> &lt;<span class="start-tag">body</span>&gt;
    &lt;<span class="start-tag">div</span><span class="attribute-name"> id</span>=<span class="attribute-value">"searchcontrol"</span>&gt;Loading&lt;/<span class="end-tag">div</span>&gt;
  &lt;/<span class="end-tag">body</span>&gt;</pre>
<p>The JavaScript function in the head section of the page loads the Google AJAX API code externally, and even with these latest improvements, Googlebot is still only able to interpret code on the page.</p>
<p><strong>What about all those workarounds to accommodate Googlebot&#8217;s previous lack of support for JavaScript?</strong></p>
<p>One issue that is worth investigating is how is Google handling &lt;noscript&gt; content and content when the onClick handler returns false? If a developer uses the Hijax method described above as a workaround for URLs with hash marks in them, will Google now see only the non-search-friendly version of the URL? I asked Google about these issues and they told me regarding Hijax that &#8220;we try to mimic the browser&#8217;s behavior, but it&#8217;s still possible for us to discover URLs even though the function returns false.&#8221;</p>
<p>As for &lt;noscript&gt;, Google told me that text outside of noscript is best, but they do process information inside of &lt;noscript&gt;. That statement is worth digging into a bit more [and I'll update this post when I have more information]. Does Google prefer text outside of &lt;noscript&gt; because they can now easily crawl all the text inside of JavaScript? Or is it a technique that could be perceived as potentially manipulative? And what does &#8220;process  information&#8221; mean exactly? [<strong>Updated with additional information from Google: </strong>as noted below in their help information, &lt;noscript&gt; is a technique that can be useful for graceful degradation, but HTML text is the best option, if possible. And as noted below, the &lt;noscript&gt; text should match what displays in JavaScript-enabled browsers.]</p>
<p>Conventional wisdom has generally been that using &lt;noscript&gt; to provide graceful degradation for those without JavaScript support was fine by the search engines as long as the text in the &lt;noscript&gt; matched the text in the JavaScript exactly. <a href="http://www.google.com/support/webmasters/bin/answer.py?hl=en&amp;answer=66355">Google itself recommends it</a> in their guidelines. Although, to be fair, there&#8217;s always <a href="http://www.stonetemple.com/blog/?p=80">been a bit of concern</a> about this method. In Google&#8217;s words (emphasis mine):</p>
<blockquote><p>If your site contains elements that aren&#8217;t crawlable by search engines (such  as rich media files other than Flash, JavaScript, or images), you shouldn&#8217;t  provide cloaked content to search engines. Rather, you should consider visitors  to your site who are unable to view these elements as well. For instance:</p>
<ul>
<li>Provide alt text that describes images for visitors with screen readers or  images turned off in their browsers.</li>
<li><strong>Provide the textual contents of JavaScript in a noscript tag.</strong></li>
</ul>
<p><strong>Ensure that you provide the same content in both elements (for instance,  provide the same text in the JavaScript as in the noscript tag).</strong> Including  substantially different content in the alternate element may cause Google to  take action on the site.</p>
<p>Sneaky JavaScript redirects</p>
<p>When Googlebot indexes a page containing JavaScript, it will index that page  but it cannot follow or index any links hidden in the JavaScript itself. Use of  JavaScript is an entirely legitimate web practice. However, use of JavaScript  with the intent to deceive search engines is not. <strong>For instance, placing  different text in JavaScript than in a noscript tag violates our <a href="answer.py?answer=35769">webmaster guidelines</a></strong> because it displays  different content for users (who see the JavaScript-based text) than for search  engines (which see the noscript-based text). Along those lines, it violates the  webmaster guidelines to embed a link in JavaScript that redirects the user to a  different page with the intent to show the user a different page than the search  engine sees. When a redirect link is embedded in JavaScript, the search engine  indexes the original page rather than following the link, whereas users are  taken to the redirect target. Like cloaking, this practice is deceptive because  it displays different content to users and to Googlebot, and can take a visitor  somewhere other than where they intended to go.</p>
<p>Note that placement of links within JavaScript is alone not deceptive. When  examining JavaScript on your site to ensure your site adheres to our guidelines,  consider the intent.</p>
<p>Keep in mind that since search engines generally can&#8217;t access the contents of  JavaScript, legitimate links within JavaScript will likely be inaccessible to  them (as well as to visitors without Javascript-enabled browsers). <strong>You might  instead keep links outside of JavaScript or replicate them in a noscript  tag.</strong></p></blockquote>
<p><strong>What about paid links</strong>?</p>
<p>On the one hand, this is great news for the web. Google can access more content, which means searchers now have easier access as well. One potential issue is that historically, JavaScript was one of the common methods used for coding a <a href="http://searchengineland.com/the-2007-paid-links-war-in-review-13032">link that was paid</a> (an advertising rather than editorial link). <a href="http://google.com/support/webmasters/bin/answer.py?answer=66736">Google has been recommending for some time</a> that site owners either add a nofollow attributes to those links or use a URL redirector and block the redirect via robots.txt, but they haven&#8217;t explicitly said that the JavaScript method was no longer allowed.</p>
<p><a href="http://www.seomoz.org/blog/the-paid-links-debate-rages-on-ses-san-jose-2007">As late as 2007</a>, Google&#8217;s Matt Cutts was <a href="http://www.mattcutts.com/files/paid-links-presentation.ppt">espousing JavaScript as a valid option</a> for indicating links that shouldn&#8217;t pass PageRank because they were paid for. It&#8217;s likely that many sites around the web use this method for &#8220;machine-readable&#8221; disclosure that the links are advertising. In fact, one of the advertising platforms that Matt showcased as coding links properly is <a href="http://quigo.com/index.html">Quigo</a> (now owned by AOL), which appears to still enclose its ad links in JavaScript without adding the extra step of blocking the URL redirect with robots.txt. Look, for instance, at the <a href="http://sportsillustrated.cnn.com/">Sports Illustrated</a> home page:</p>
<p><a title="Quigo Ads by Search Engine Land, on Flickr" href="http://www.flickr.com/photos/23148333@N06/3572196628/"><img src="http://farm4.static.flickr.com/3416/3572196628_8ab9049319.jpg" alt="Quigo Ads" width="500" height="367" /></a></p>
<p>You can see that the sponsored links are implemented in JavaScript (and when onClick returns false, the link is disabled). The links are redirected through Quigo&#8217;s ad server: redir.adsonar.com, but this subdomain <a href="http://redir.adsonar.com/robots.txt">isn&#8217;t blocked with robots.txt</a>.</p>
<p>What about <a href="http://advertising.microsoft.com/publishersolutions">Microsoft adCenter Content Ads</a>? The example below is from an MSN page.</p>
<p><a title="Microsoft adCenter Content Ads by Search Engine Land, on Flickr" href="http://www.flickr.com/photos/23148333@N06/3572247416/"><img src="http://farm4.static.flickr.com/3647/3572247416_f297b2941b.jpg" alt="Microsoft adCenter Content Ads" width="500" height="481" /></a></p>
<p>The ad links are run through a JavaScript redirect (a variation of r.msn.com, in this case, 0.r.msn.com). But this subdomain has no <a href="http://0.r.msn.com/robots.txt">robots.txt</a>. Is MSN in danger of violating the Google webmaster guidelines? Will be Microsoft adCenter be penalized for selling links? Surely not. Surely Google is working out a way to crawl more of the web, while not inadvertently penalizing large portions of it. (Although this may not be an issue in any case. Both of the examples above use a 302 redirect, which likely satisfies Google&#8217;s guidelines about coding paid links in such a way that they don&#8217;t pass PageRank.)</p>
<p>When I asked Google about this, they told me:</p>
<blockquote><p>Our onclick processing is becoming more widespread, but keep in mind it&#8217;s still an area where we&#8217;re constantly improving. We already detect many ads generated by onclick events.</p>
<p>To prevent PR [PageRank] flow, it remains a good practice to do things like have the onclick-generated links in an area that&#8217;s blocked from robots, or to use a url redirector that&#8217;s robots.txt disallow&#8217;d. Penalties for spam techniques have been and will continue to be enforced, but as you know, we work extremely hard to minimize false positives.</p>
<p>Webmaster Tools Message Center already sends emails to developers to inform them when we believe that they are inadvertently violating our guidelines. Whether it&#8217;s through our blog or our tools, we&#8217;ll continue to find ways to communicate with webmasters, especially as we further innovate in our crawling capability. Processing onclicks is one step of many! :)</p></blockquote>
<p>I entirely understand their answer, even if I might not entirely like it. They want to crawl and index more of the web and they have to keep evolving to do that. Their aim is to only penalize those sites that intentionally violate their guidelines, but they&#8217;re not going to give away the secret sauce of how they detect that intention.</p>
<p>But the truth is that most people who have websites haven&#8217;t heard of the <a href="http://www.google.com/support/webmasters/bin/answer.py?hl=en&amp;answer=140528">Google Webmaster Tools Message Center</a> or <a href="http://googlewebmastercentral.blogspot.com/">Google Webmaster Central blog</a> (or Search Engine Land!). The web contains substantially more site owners than the 52,000 who are subscribed to Google&#8217;s webmaster blog. Most site owners don&#8217;t know what SEO means. One could argue that anyone who has a web site <em>should </em>know about these things, but most small business owners don&#8217;t know really know how to set up accounts payable either, but they&#8217;re doing accounting themselves too because they can&#8217;t afford to get expert help. And while it&#8217;s not Google&#8217;s responsibility to ensure business owners know how to run their businesses properly, it is in Google&#8217;s best interest to index all of the web. And if they change the rules in inadvertently throw innocent businesses out of their search results, they&#8217;re not reaching that goal.</p>
<p>Since Google itself previously recommended JavaScript as a way to block paid links, it seems a bit much for them to now expect the entire web to modify their sites now. Google should take it upon themselves to sort things out. And to be fair, they&#8217;re saying that they will. But I imagine some webmasters will be nervous about leaving things up to Google, when the risk of them getting it wrong is being removed from the index.</p>
<p><strong>This isn&#8217;t a new issue</strong></p>
<p>As technology on the web continues to advance, web developers will continue to confront these issues.  New infrastructure and platforms will move faster than search engines, which after all, were originally built on the concept of HTML-powered, text-based web pages. So developers will have to create workarounds and then dismantle those workarounds as search engines catch up.</p>
<p>This happened, for instance, with dynamic URLs. Originally, search engines had trouble with URLs that contained characters such as question marks (?) and ampersands (&amp;). In fact, Google advised in its guidelines to avoid using &amp;=sid <a href="http://googlewebmastercentral.blogspot.com/2006/10/update-to-our-webmaster-guidelines.html">until mid 2006</a>.</p>
<p>To get around this, some sites encoded their URLs to appear static. This <a href="http://www.sitepoint.com/article/dynamic-site-seo-tips-hints/">Sitepoint article on dynamic URLs</a> in 2002 explained:</p>
<blockquote><p>For example, the following URL contains both &#8220;?&#8221; and &#8220;&amp;,&#8221; making it non-indexable:</p>
<pre>http://www.planet-source-code.com/vb/scripts/ShowCode.asp?
lngWId=3&amp;txtCodeId=769</pre>
<p>Below, it has been made search engine-friendly (all &#8220;?&#8221; and &#8220;&amp;&#8221; and &#8220;=&#8221; characters replaced with alternate characters):</p>
<pre>http://www.planet-source-code.com/xq/ASP/txtCodeId.769/lngWId.3
/qx/vb/scripts/ShowCode.htm</pre>
</blockquote>
<p>Dennis Goedegebuure of eBay explains  <a href="http://thenextcorner.net/w0qq-double-encoding-legacy/">in his blog</a> that eBay employed this technique:</p>
<blockquote><p>In 2004 search engines were not smart enough to read dynamic URL&#8217;s. Especially those URL&#8217;s that had a lot of parameters in them to determine sort order or aspects of the product search for shopping sites were a problem to get these indexed. Replacing the dynamic parameters like &amp; or ? with static delimiters was one technique back in the days to make a dynamic URL static for the search engines to crawl.</p>
<p>Now fast forward to 2009, Search Engines have become much smarter and are now able to understand dynamic URL with parameters much better. Last week they even announced their new canonical tag to help website owners to avoid duplicate content issues when it comes to sort order.</p></blockquote>
<p>In fact, Google is now so good at interpreting dynamic URLs that use traditional patterns that Maile Ohye used eBay as an example of what not to do in a presentation at SMX West:</p>
<blockquote><p>[At] SMX West a Google rep presented on URL structure. One part of her presentation was about MAVRICK URL&#8217;s, and in particular the long and complicated url&#8217;s you sometimes see on the Interwebs. i.e. used in her presentation:</p>
<p><a href="http://shop.ebay.com/items/_W0QQ_nkwZipodQQ_armrsZ1QQ_fromZR40QQ_mdoZ">http://shop.ebay.com/items/_W0QQ_nkwZipodQQ_armrsZ1QQ_fromZR40QQ_mdoZ</a></p></blockquote>
<p>Things on the web have evolved so much that an implementation built entirely to ensure that pages could be crawled by search engines is now being used as an example of what not to do if you want pages to be crawled by search engines!</p>
<p><strong>Continuing the conversation</strong></p>
<p>Clearly, Google and the other major search engines want to crawl and index all of the content on the web. That is, after all, why they continue to evolve their crawlers to adapt to changing technology. And clearly, they want to help site owners and web developers build sites that can be easily found in search. And while it may seem like I&#8217;m singling Google out, I&#8217;m focusing on them now only because of their messaging of building a business with Google APIs at Google I/O. In truth, <a href="http://developer.yahoo.com/">Yahoo</a> and <a href="http://msdn.microsoft.com/en-us/default.aspx">Microsoft</a> are also aggressively courting developers and their developer groups seem to be just as disconnected from their search teams. Microsoft&#8217;s IIS versions 5 and 6, for instance, are configured to <a href="http://www.getfoundnow.com/iis_301_redirect.htm">implement redirects as 302s by default</a>, when for search engine value, <a href="http://searchengineland.com/search-illustrated-301-and-302-redirects-explained-13934">redirects should be 301s</a>. (Newer versions provide more search-friendly configurations.)</p>
<p>Two upcoming events will provide opportunities for us to continue the discussion about search-engine friendly web development with Google, Microsoft, Yahoo, and Adobe. Next week at SMX Advanced in Seattle, we&#8217;ve got a <a href="http://www.ninebyblue.com/blog/developers-welcome-at-smx-advanced/">whole set of things for developers</a> including lunch discussion tables and an after-hours Q&amp;A with Adobe, and Matt Cutts will be doing a Q&amp;A session where we can ask him all about the ripple effects of these advances. The following week in San Francisco, <a href="http://janeandrobot.com/">Jane and Robot</a> is holding a <a href="http://janeandrobot.com/events/developer-summit">search developer summit</a>. Again, all the reps will be on hand for some in-depth technical discussion. We&#8217;ll also have beer, which we all just might need.</p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/google-io-new-advances-in-the-searchability-of-javascript-and-flash-but-is-it-enough-19881/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Did Google Cleverly Upstage Microsoft&#8217;s Bing?</title>
		<link>http://searchengineland.com/did-google-cleverly-upstage-microsofts-bing-20185</link>
		<comments>http://searchengineland.com/did-google-cleverly-upstage-microsofts-bing-20185#comments</comments>
		<pubDate>Fri, 29 May 2009 15:10:23 +0000</pubDate>
		<dc:creator>Greg Sterling</dc:creator>
				<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: General]]></category>
		<category><![CDATA[Google: Marketing]]></category>
		<category><![CDATA[Google: Other]]></category>
		<category><![CDATA[Microsoft: Bing]]></category>
		<category><![CDATA[Microsoft: Business Issues]]></category>
		<category><![CDATA[Microsoft: General]]></category>
		<category><![CDATA[Top News]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=20185</guid>
		<description><![CDATA[Mike Arrington thinks that Google engaged in &#8220;a little stealth black ops mission&#8221; and blunted the full impact of the Ballmer Bing announcement yesterday by announcing Wave. Whether Wave represents a huge new development in digital communications remains to be seen, but almost every major news outlet had to cover it and divide its attention [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Fdid-google-cleverly-upstage-microsofts-bing-20185"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Fdid-google-cleverly-upstage-microsofts-bing-20185" height="61" width="51" /></a></div><p>Mike Arrington <a href="http://www.techcrunch.com/2009/05/28/what-just-happened-thursday-was-supposed-to-be-bing-day/?awesm=tcrn.ch_2oM&amp;utm_campaign=techcrunch&amp;utm_content=techcrunch-autopost&amp;utm_medium=tcrn.ch-twitter&amp;utm_source=direct-tcrn.ch">thinks</a> that Google engaged in &#8220;a little stealth black ops mission&#8221; and blunted the full impact of the Ballmer Bing announcement yesterday by announcing <a href="http://wave.google.com/">Wave</a>. Whether Wave represents a huge new development in digital communications remains to be seen, but almost every major news outlet had to cover it and divide its attention between Bing and Wave. Indeed, many journalists and bloggers were physically divided between the AllThingsD conference near San Diego and Google&#8217;s developer event I/O in San Francisco.</p>
<p>Arrington also cites the lack of access to Bing/Kumo as a PR mistake. But that&#8217;s less a function of a PR miscalculation in my understanding than the fact that Ballmer had agreed to appear at the D event and knew that he was going to be probed about Kumo; so Microsoft decided to effectively pre-announce the engine before its public release next week at SMX Advanced. As a practical matter, however, Arrington may be correct: more stories and deeper coverage would have been driven if everybody was able to do what I did and <a href="http://searchengineland.com/microsofts-bing-vs-google-head-to-head-search-results-20006">compare Kumo/Bing to Google side by side</a>.</p>
<p>At the <a href="http://searchengineland.com/googles-new-wave-of-ambition-20134">press event following the Wave keynote</a> the panel was asked who Google saw as its competition for the product (impliedly Outlook and others). Vic Gundotra, Google Engineering VP, feel back on the position that Google developed the product without any thought to the existing or potential competition. After the close of the session, I was talking to a reporter about Google&#8217;s awareness of competitors and its thinking about its competitive positioning. I said I agreed that Google often develops products without thinking about competitors directly.</p>
<p>But I also agree with Arrington that on the PR front Google is more directly engaged in competitive maneuvers. In the same way that before the ill-fated <a href="http://searchengineland.com/cuil-launches-can-this-search-start-up-really-best-google-14459">Cuil launch</a>, Google coincidentally announced that its search index had massively increased, undermining one of Cuil&#8217;s central PR points and claims against the search incumbent, Google was certainly aware that Bing was going to be announced this week. While the timing of the Google I/O event itself was not scheduled to undermine Bing I&#8217;m sure, the Wave announcement was likely calculated to steal some thunder &#8212; which it appears to have done.</p>
<p>Arrington discusses in his post the fact that the developer audience cheered throughout the Wave demo yesterday. I was kind of amazed by that myself. There was enthusiastic applause multiple times throughout, much like a political speech is often broken up by cheers or applause. And the decision to give away the HTC Magic/G2 phone to attendees was both a shrewd and practical move that has already paid dividends in Android coverage.</p>
<p>Next week will see the public launch of Bing and a wave of &#8220;hands on&#8221; stories will be written. As the marketing campaign for Bing rolls out more stories will be written about the campaign itself and whether it&#8217;s having an impact and so on. Microsoft will get a good deal more PR and news coverage accordingly. Beyond the so-called search wars there are the &#8220;meta-level&#8221; PR strategies and wars that mirror the underlying products they&#8217;re exposing.</p>
<p>From that standpoint, if the PR goal of Wave was to diminish the focus on the Bing announcement Google appears to have succeeded.</p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/did-google-cleverly-upstage-microsofts-bing-20185/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Google Names Marchex First &#8216;Google AdWords Authorized Reseller Technology Platform&#8217;</title>
		<link>http://searchengineland.com/google-names-marchex-first-google-adwords-authorized-reseller-technology-platform-16184</link>
		<comments>http://searchengineland.com/google-names-marchex-first-google-adwords-authorized-reseller-technology-platform-16184#comments</comments>
		<pubDate>Fri, 16 Jan 2009 15:55:57 +0000</pubDate>
		<dc:creator>Greg Sterling</dc:creator>
				<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: AdWords]]></category>
		<category><![CDATA[Google: Partnerships]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=16184</guid>
		<description><![CDATA[As we&#8217;ve seen several times recently, there&#8217;s a chasm between consumer usage of search and SEM by small business advertisers (SMBs). Google developed its authorized reseller program to address this issue in part and create a network of third party relationships that could help it gain more traditional small business (SMB) advertisers, which it had [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-names-marchex-first-google-adwords-authorized-reseller-technology-platform-16184"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-names-marchex-first-google-adwords-authorized-reseller-technology-platform-16184" height="61" width="51" /></a></div><p>As we&#8217;ve seen <a href="http://searchengineland.com/small-businesses-struggle-with-search-marketing-15850">several times</a> recently, there&#8217;s <a href="http://searchengineland.com/the-search-gap-between-consumers-and-small-business-advertisers-16108">a chasm between consumer usage of search and SEM</a> by small business advertisers (SMBs). Google developed its <a href="http://searchengineland.com/are-you-endorsed-by-the-search-engines-12564">authorized reseller program</a> to address this issue in part and create a network of third party relationships that could help it gain more traditional small business (SMB) advertisers, which it had difficulty doing through traditional AdWords self-service.</p>
<p>These third parties were and are largely established media companies (i.e., yellow pages publishers, newspaper publishers) and selected others who sell directly to small businesses (e.g., Yodle, ReachLocal). The traditional media companies need the traffic and Google needs their reach into the SMB market. (There&#8217;s quite a bit more to say about these relationships, but not for purposes of this post.) The &#8220;authorized reseller&#8221; certification is based on meeting a range of criteria that Brad Geddes explains <a href="http://searchengineland.com/are-you-endorsed-by-the-search-engines-12564">in this post</a>.</p>
<p>One of the things that Chris LaSala, Google&#8217;s Director of Local Markets, said to me recently is that companies with lots of SMB relationships often don&#8217;t have a technology platform sufficient to manage online advetising at scale or that integrates well with Google&#8217;s API. To address this Google has created a new certification within its authorized reseller program: technology platform provider. And Google has named <a href="http://marchex.com">Marchex</a> (Marchex Connect), after a review of several companies and would-be vendors, the first &#8220;AdWords authorized reseller technology platform.&#8221;</p>
<p>LaSala said that the purpose of this new category or designation is to allow Google to recommend an approved technology partner to AdWords resellers if those partners don&#8217;t have the requisite scalable technology.</p>
<p>While only Marchex occupies this position currently, LaSala also told me that he expects others to qualify for the program in the future. He told me there were a number of considerations involved in Google&#8217;s determination of whether a technology platform can qualify. At a high level:</p>
<ul>
<li>The platform must integrate and be complaint with Google&#8217;s API</li>
<li>The platform/company must provide comprehensive reporting that shows the SMB advertiser the value being delivered (clicks, impressions, etc.) through Google/SEM</li>
<li>It must be highly scalable</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/google-names-marchex-first-google-adwords-authorized-reseller-technology-platform-16184/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Improves APIs For Webmaster Tools &amp; AdWords</title>
		<link>http://searchengineland.com/google-improves-apis-for-webmaster-tools-adwords-15815</link>
		<comments>http://searchengineland.com/google-improves-apis-for-webmaster-tools-adwords-15815#comments</comments>
		<pubDate>Fri, 12 Dec 2008 13:58:15 +0000</pubDate>
		<dc:creator>Barry Schwartz</dc:creator>
				<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: AdWords]]></category>
		<category><![CDATA[Google: Webmaster Central]]></category>

		<guid isPermaLink="false">http://searchengineland.com/?p=15815</guid>
		<description><![CDATA[Google announced they have or will be improving the API controls for both Webmaster Tools and AdWords.  API access gives developers a way to communicate with Google through a structured coding format, in short, it can help automate functions that are done through the standard Google interfaces.
The Google Webmaster Central blog announced that the [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-improves-apis-for-webmaster-tools-adwords-15815"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-improves-apis-for-webmaster-tools-adwords-15815" height="61" width="51" /></a></div><p>Google announced they have or will be improving the API controls for both Webmaster Tools and AdWords.  API access gives developers a way to communicate with Google through a structured coding format, in short, it can help automate functions that are done through the standard Google interfaces.</p>
<p><span id="more-15815"></span>The Google Webmaster Central blog <a href="http://googlewebmastercentral.blogspot.com/2008/12/message-center-info-through-our-api.html">announced</a> that the <a href="http://code.google.com/apis/webmastertools/">Google Webmaster Tools API</a> now has added message central data to the API.  The additional features include the ability to retrieve messages, mark messages as read or unread and the ability to delete messages.  This would come in handy if an SEO company has a login area for customers and they want to show the Webmaster Tools messages in the SEO company&#8217;s dashboard without having them login to Google Webmaster Tools and leave the current site.  There are many other applications for this API.</p>
<p>The Inside AdWords Blog <a href="http://adwordsapi.blogspot.com/2008/12/preview-of-2009-adwords-api-changes.html">announced</a> a preview of what changes are coming to the AdWords API in 2009.  The changes include the ability to make multiple operations (i.e. add, update, and delete keywords) within a single API call, the ability to make multiple calls at the same time (i.e. Asynchronous calls), the support of &#8220;partial failure,&#8221; the cost will be lower due to what is mentioned above and they promise to develop more features, faster.</p>
<p>The new API is expected to launch in the first half of 2009.  They will extend the &#8220;normal sunset period for v13 to at least 6 months after the new version&#8217;s launch,&#8221; due to the major changes in the next version.</p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/google-improves-apis-for-webmaster-tools-adwords-15815/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Announces Google Book Search APIs</title>
		<link>http://searchengineland.com/google-announces-google-book-search-apis-14788</link>
		<comments>http://searchengineland.com/google-announces-google-book-search-apis-14788#comments</comments>
		<pubDate>Mon, 22 Sep 2008 18:19:52 +0000</pubDate>
		<dc:creator>Barry Schwartz</dc:creator>
				<category><![CDATA[Google: APIs]]></category>
		<category><![CDATA[Google: Book Search]]></category>

		<guid isPermaLink="false">http://searchengineland.com/beta/google-announces-google-book-search-apis-14788.php</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;"><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-announces-google-book-search-apis-14788"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsearchengineland.com%2Fgoogle-announces-google-book-search-apis-14788" height="61" width="51" /></a></div><p>The Google Book Search Blog <a href="http://booksearch.blogspot.com/2008/09/book-search-everywhere-with-new.html">announced</a> the new developer site for the <a href="http://code.google.com/apis/books/">Google Book Search APIs</a>.  The API allows developers to add Google Book Search features to their web site.</p>
<p><a href="http://www.flickr.com/photos/rustybrick/2879130323/" title="Google Book Search Preview Icon by rustybrick, on Flickr"><img src="http://farm4.static.flickr.com/3149/2879130323_e723472890_o.gif" align="left" hspace="3" width="88" height="31" alt="Google Book Search Preview Icon" /></a>For example, you can now embed book previews, when available, to books listed on your site.  For example, if you are on Books A Billion and find a book named <a href="http://www.booksamillion.com/product/9780596101084?id=4221072573432">Google Advertising Tools</a> but you&#8217;re not clear on if you should buy it, just click on the Google Preview icon and up comes a preview of the book.</p>
<p><span id="more-14788"></span>
With this API, anyone can:</p>
<ul>
<li>Embed book previews on your site</li>
<li>Add book search results to your site</li>
<li>Locate book information, reviews, ratings, labels, and user libraries</li>
<li>Send Google user-generated content</li>
<li>Link your users to Google Book Search</li>
<li>and more.</li>
</ul>
<p>More details at <a href="http://code.google.com/apis/books/">http://code.google.com/apis/books/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://searchengineland.com/google-announces-google-book-search-apis-14788/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
