<?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>Nico.Berlee.nl &#187; Google</title>
	<atom:link href="http://nico.berlee.nl/tag/google/feed/" rel="self" type="application/rss+xml" />
	<link>http://nico.berlee.nl</link>
	<description>a digital portfolio</description>
	<lastBuildDate>Sat, 21 Jan 2012 21:31:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Writing my own Google Gadgets</title>
		<link>http://nico.berlee.nl/writing-my-own-google-gadgets/</link>
		<comments>http://nico.berlee.nl/writing-my-own-google-gadgets/#comments</comments>
		<pubDate>Sun, 07 Jan 2007 03:19:08 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[gadgets]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[loading_speed]]></category>

		<guid isPermaLink="false">http://nico.berlee.nl/writing-my-own-google-gadgets/</guid>
		<description><![CDATA[Because I had some spare time, I took a good look at theÂ Google Personalized Homepage&#8230; It looks very much the same as Live.com at first sight (although loading speed of Google is much better). Be amazed about the tremendious amount of items and gadgets you can add. The great thing about is is that google [...]]]></description>
			<content:encoded><![CDATA[<p>Because I had some spare time, I took a good look at theÂ Google Personalized Homepage&#8230; It looks very much the same as Live.com at first sight (although loading speed of Google is much better). Be amazed about the tremendious amount of items and gadgets you can add.<br />
<span id="more-31"></span><br />
<img width="370" src="http://nico.berlee.nl/files/2007/01/googlepersonal.png" alt="Google Personalized Homepage" height="267" /></p>
<p>The great thing about is is that google let you write your own gadgets if you can&#8217;t find what you are looking for. Take the hello world example on <a href="http://www.google.com/apis/gadgets/docs-home.html">http://www.google.com/apis/gadgets/docs-home.html</a>Â and modify it to fit your needs. If want to adjust the height of the plugin take further look in the API&#8230; It is really very easy&#8230;</p>
<p>I made two gadgets I want to share with you. The first one is <a href="http://www.google.com/ig/add?synd=open&amp;source=ggyp&amp;moduleurl=http://nico.berlee.nl/files/2007/01/3fm-live.xml" title="Add it to your Google Homepage">aÂ 3FM Live radio stream player</a> (Dutch) I created it because when I start my computer, I do that because I want to figure something out, and don&#8217;t want to be bothered by going to a website for webradio (that&#8217;s a secondary goal)</p>
<p>The second gadget has something to do with the first one. When you have webradio on a page, you want to keep hearing it after you click on a link on the Google Homepage&#8230; <a href="http://www.google.com/ig/add?synd=open&amp;source=ggyp&amp;moduleurl=http://nico.berlee.nl/files/2007/01/newwindow.xml" title="Add it to your Google Homepage">Open links in a new window</a> helps with that. As it contains a smallÂ javascript that forces the browser to open every link in a new tab/window. Note, after you add it click on the OK link. You can drag and this gadget, but you have to reload the website, because if you don&#8217;t, the gadget won&#8217;t work.</p>
]]></content:encoded>
			<wfw:commentRss>http://nico.berlee.nl/writing-my-own-google-gadgets/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>AdSense and AJAX: Not a happy combination</title>
		<link>http://nico.berlee.nl/adsense-and-ajax-not-a-happy-combination/</link>
		<comments>http://nico.berlee.nl/adsense-and-ajax-not-a-happy-combination/#comments</comments>
		<pubDate>Sun, 22 Oct 2006 20:05:38 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://nico.berlee.nl/adsense-and-ajax-not-a-happycombination/</guid>
		<description><![CDATA[After releasing my AjaxBerlee WordPress theme George and Milan&#8217;Che reported problems with Google&#8217;s AdSense. This left me with a problem. Because new page requests in my theme are parsed over the old ones. AdSense works as follows. The Mediapartners-Google spider indexes the site, when visitor now requests one of your pages it will load the [...]]]></description>
			<content:encoded><![CDATA[<p>After releasing my <a href="http://nico.berlee.nl/ajaxberlee-wordpress-theme-released/">AjaxBerlee</a> WordPress theme George and Milan&#8217;Che reported problems with Google&#8217;s <a href="https://www.google.com/adsense/">AdSense</a>. This left me with a problem. Because new page requests in my theme are parsed over the old ones.<span id="more-29"></span></p>
<p>AdSense works as follows. The Mediapartners-Google spider indexes the site, when visitor now requests one of your pages it will load the external JavaScript from the Google domain. In that JavaScript the text advertise is displayed.</p>
<p>So far so good. An AJAXified page will initially display the AdSense advertise very well (because the pages are <a href="http://nico.berlee.nl/my-improved-website-response-with-ajax/">backwards compatible</a>). The visitor clicks on a link and now only a part of the page get reloaded, but not the AdSense advertise. Because it&#8217;s possible to load an JavaScript into JavaScript, but its not possible to reload JavaScript into JavaScript (for scripts that aren&#8217;t build for it).</p>
<p>I suspected that Google had some kind of a refresh function build in where I could specify which URL the currently displayed AJAXified site was. So when you click on an AJAXified link, the Ajax JavaScript calls a Google refresh function. (this is actually how the <a href="http://www.google.com/analytics/">Google Analytics</a> support works in the AJAX JavaScript)</p>
<p>I was surprised to find out that there was not such a function in the AdSense JavaScript. So I tried to find out how AJAXified sites like <a href="http://maps.google.com">Google Maps</a> and <a href="http://www.gmail.com/">GMail</a> works with AdSense. Well, actually, they don&#8217;t!</p>
<p>GMail has some uses some AJAX function to display realtime new incoming messages, but the actually displaying of mail goes thru frames and plain old loading of pages! And Google Maps actually doesn&#8217;t use AdSense at all&#8230; Well, they do, but its parsed into the page and doesn&#8217;t use external JavaScript at all, as described above.</p>
<p>I found <a href="http://www.jguru.com/forums/view.jsp?EID=1305379">one workaround by Kevin Cho</a> who used an iframe. In that iframe the AdSense got loaded with the keywords of that page specially dedicated for AdSense for that site. You need to type these manually, which is a hell of a job if you have a lot of pages. And it&#8217;s probably against the <a href="https://www.google.com/adsense/support/bin/topic.py?topic=8423">Program Policies</a> which are very clear about cloaking.</p>
<p>I decided not to implement that workaround because of the Program Policies violation. But I will publish a modified ajax.js that is compatible with AdSense but does not have the enhanced page loading.</p>
]]></content:encoded>
			<wfw:commentRss>http://nico.berlee.nl/adsense-and-ajax-not-a-happy-combination/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>My improved website response with Ajax</title>
		<link>http://nico.berlee.nl/my-improved-website-response-withajax/</link>
		<comments>http://nico.berlee.nl/my-improved-website-response-withajax/#comments</comments>
		<pubDate>Sat, 19 Aug 2006 20:06:26 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Internet-Explorer]]></category>
		<category><![CDATA[Opera]]></category>
		<category><![CDATA[page-loading]]></category>

		<guid isPermaLink="false">http://nico.berlee.nl/my-improved-website-response-withajax/</guid>
		<description><![CDATA[I am an ajax-fan, in fact I watch every soccer match on TV. Ok, but that&#8217;s probably not what you want you are interested in . I really start wondering how to improve the response time after IÂ concluded that it would be allot of workÂ to convert this theme to a lightpress theme (I had to [...]]]></description>
			<content:encoded><![CDATA[<p>I am an ajax-fan, in fact I watch every soccer match on TV. Ok, but that&#8217;s probably not what you want you are interested in <img src='http://nico.berlee.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>I really start wondering how to improve the response time after IÂ concluded that it would be allot of workÂ to convert this theme to a <a href="http://www.lightpress.org">lightpress</a> theme (I had to make a lot of plugins to get it to work).<span id="more-25"></span></p>
<p>So I started to think about other possibilities. The nice thing about lightpress was, it would only query the data in the database that was actually needed. So I tried to make an intelligentÂ PHP frontend that only parses parts of the page that needs to change when youÂ switch from page to pageÂ and gives it, wrapped in XML (because more than one part of the site need to change) to the JavaScript on the Client. The JavaScript on the client thenÂ parses the XML responseÂ andÂ renders itÂ in the DIVs on the website.</p>
<p>Needles to say, itÂ saves a lot of bandwidth. My average page sizeÂ did goÂ from 15kb to 5kb (uncompressed, with ZLib compression, often not more than 1kb!). This has a lot of advantages, becauseÂ it uses less processing andÂ parsing time on the server and less download and render time on the client, and it looks nicer towards the user because the page doesn&#8217;t get refreshed.Â IÂ The only overhead is the 4kb JavaScript, which is nothing compared to someÂ <a href="http://nico.berlee.nl/ajax-javascript-libraries/">other ajax JavaScript libraries.</a></p>
<p><strong>Backwards compatible</strong></p>
<p>Backwards compatibility was a key requirement for me. Since Google, MSN search, yahoo and other search spider bots don&#8217;t understand the the first thing about JavaScript or cookies. And, of course, the security nutheads (people that read security bulletins andÂ don&#8217;t mitigate)Â that disables JavaScript because they think they are safer off. Ok I am going off topic, but think of it for a second. You are much, much, much better off (security and compatibility wise) by running Firefox of Opera as aÂ limited user (right-click on the shortcut, run as),Â instead of disabling JavaScript in Internet Explorer!</p>
<p>JavaScript is responsible for turning the normal A HREF links to an ajax request in the background. This way it&#8217;s fully backwards compatible&#8230; Even if JavaScript works and even if the ajax request fails, It will switch to the old A HREF link.</p>
]]></content:encoded>
			<wfw:commentRss>http://nico.berlee.nl/my-improved-website-response-withajax/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

