<?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>feisley &#187; Google</title>
	<atom:link href="http://feisley.com/category/companies/google/feed/" rel="self" type="application/rss+xml" />
	<link>http://feisley.com</link>
	<description>programming with a side of life</description>
	<lastBuildDate>Thu, 15 Apr 2010 07:33:58 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Add a Little Privacy to Google Latitude</title>
		<link>http://feisley.com/2009/08/04/add-a-little-privacy-to-google-latitude/</link>
		<comments>http://feisley.com/2009/08/04/add-a-little-privacy-to-google-latitude/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 12:52:32 +0000</pubDate>
		<dc:creator>Jacob Feisley</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[LBS]]></category>
		<category><![CDATA[privacy]]></category>

		<guid isPermaLink="false">http://feisley.com/?p=3496</guid>
		<description><![CDATA[This title must sound very ironic given that the whole purpose of Google Latitude is to reduce privacy. I am not saying this is a bad thing, just that telling people where you are right now is less private than not telling them.
Recently, Google took the reduction of privacy a little further by allowing you [...]]]></description>
			<content:encoded><![CDATA[<p>This title must sound very ironic given that the whole purpose of Google Latitude is to reduce privacy. I am not saying this is a bad thing, just that telling people where you are right now is less private than not telling them.</p>
<p>Recently, Google took the reduction of privacy a little further by allowing you to setup a web site badge for Latitude. Up until this point, you could only share your location with select friends, however, now you can share it with the whole world via your website, blog, etc. I do use this, so you can spy on <a href="http://feisley.com/contact/location">my location</a> if you wish.</p>
<p><span id="more-3496"></span></p>
<p>But to the privacy elements shall we&#8230; When you generate a badge, Google gives you a snippet of HTML code that looks like this:</p>
<p><br class="spacer_" /></p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">&lt;!-- Google Public Location Badge --&gt;</span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;iframe</span> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">&quot;http://www.google.com/latitude/apps/badge/api?user=1234567890&amp;type=iframe&amp;maptype=roadmap&quot;</span> <span style="color: #000066;">width</span>=<span style="color: #ff0000;">&quot;180&quot;</span> <span style="color: #000066;">frameborder</span>=<span style="color: #ff0000;">&quot;0&quot;</span> <span style="color: #000066;">height</span>=<span style="color: #ff0000;">&quot;300&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span><span style="color: #000000; font-weight: bold;">&lt;/iframe<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #808080; font-style: italic;">&lt;!-- To disable location sharing, you *must* visit http://www.google.com/latitude/apps/badge and disable the Google Public Location badge. Removing this code snippet is not enough! --&gt;</span></pre></div></div>

<p>This works fine as is if you place it on your site, however, that number there (1234567890) is actually your API &#8220;username&#8221; and given inspecting this from your site, any user could simply place your position on their site or access the API by other programmatic methods. Notice Google&#8217;s warning that to disable it, you have to disable the badge globally via their site, but what if you just don&#8217;t want some people using your badge or plan to put it on a password protected area of your site&#8230; This is where a little privacy can help.</p>
<p>What I did for my site is use some PHP code to add a layer of abstraction to the Google Latitude API. It requests the content server side and displays it without ever revealing my Latitude user id. I then include my own PHP page within an iframe just as i would have the Google snippet and that&#8217;s it. Here is the simple PHP code to do this:</p>
<p><br class="spacer_" /></p>
<p><strong>location.php</strong></p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
&nbsp;
<span style="color: #000088;">$url</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;http://www.google.com/latitude/apps/badge/api?user=1234567890&amp;type=iframe&amp;maptype=roadmap&quot;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000088;">$content</span> <span style="color: #339933;">=</span> <span style="color: #990000;">file_get_contents</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$url</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">print</span> <span style="color: #000088;">$content</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>The resulting PHP page will generate a map that fills the entire browser. Then simply add an iframe that references that PHP script and your desired width and height and boom, no one can inspect your user id and you have added a little privacy back to Google Latitude.</p>
<p><br class="spacer_" /></p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;iframe</span> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">&quot;location.php&quot;</span> <span style="color: #000066;">width</span>=<span style="color: #ff0000;">&quot;650&quot;</span> <span style="color: #000066;">frameborder</span>=<span style="color: #ff0000;">&quot;0&quot;</span> <span style="color: #000066;">height</span>=<span style="color: #ff0000;">&quot;480&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span><span style="color: #000000; font-weight: bold;">&lt;/iframe<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>P.S. For the advanced users out there you can also do some creative things with the &#8220;$content&#8221; object within PHP such as inject your own CSS or even remove elements of the badge that you don&#8217;t want on your site since Google gives very limited customization to this.</p>
]]></content:encoded>
			<wfw:commentRss>http://feisley.com/2009/08/04/add-a-little-privacy-to-google-latitude/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Even my iPod wants to go back to California</title>
		<link>http://feisley.com/2008/10/28/even-my-ipod-wants-to-go-back-to-california/</link>
		<comments>http://feisley.com/2008/10/28/even-my-ipod-wants-to-go-back-to-california/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 00:54:24 +0000</pubDate>
		<dc:creator>Jacob Feisley</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Purdue]]></category>
		<category><![CDATA[iPod]]></category>
		<category><![CDATA[LBS]]></category>

		<guid isPermaLink="false">http://feisley.com/?p=2026</guid>
		<description><![CDATA[As many of you may know, I am very eager to graduate and head back out to California. However, last night I discovered that my iPod seemed just as eager to do the same&#8230; I was playing with the new Google Earth application which features location detection. Basically, all you do is press a button [...]]]></description>
			<content:encoded><![CDATA[<p>As many of you may know, I am very eager to graduate and head back out to California. However, last night I discovered that my iPod seemed just as eager to do the same&#8230; I was playing with the new Google Earth application which features location detection. Basically, all you do is press a button and it zeroes in on your location. At first it worked as expected, followed by some interesting results</p>
<p><span id="more-2026"></span>It first zoomed into Purdue which made sense to me. In fact it was disturbingly accurate for not having an on board GPS&#8230;</p>
<p><img class="alignnone size-full wp-image-2027" title="img_0005" src="http://feisley.com/wp-content/uploads/2008/10/img_0005.png" alt="" width="320" height="480" /> <img class="alignnone size-full wp-image-2028" title="img_0009" src="http://feisley.com/wp-content/uploads/2008/10/img_0009.png" alt="" width="320" height="480" /></p>
<p>What did surprise me was that a few moments later it suddenly zoomed out and panned over to California where it proceeded to zoom in to my apartment from this summer&#8217;s internship.</p>
<p><img class="alignnone size-full wp-image-2029" title="img_0010" src="http://feisley.com/wp-content/uploads/2008/10/img_0010.png" alt="" width="320" height="480" /> <img class="alignnone size-full wp-image-2030" title="img_0012" src="http://feisley.com/wp-content/uploads/2008/10/img_0012.png" alt="" width="320" height="480" /></p>
<p> </p>
<p>Of course, while I like to think my iPod has the same idea i have in mind, there is actually a logical explanation for this. iPods and iPhones (the ones without GPS) can actually determine your location based on wireless access points. (The complete details I am not fully aware of but that is the general concept) What seems to be happening here is my iPod is used to seeing my access point (which was with me in California) and therefore is not sure where I am. So when it sees other access points here it jumps from mine to them and therefore goes back and forth between locations. An interesting effect. I do wonder how long it will take it to realize that my access point did in fact travel with me back to Purdue&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://feisley.com/2008/10/28/even-my-ipod-wants-to-go-back-to-california/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Summer Wrap Up</title>
		<link>http://feisley.com/2008/08/09/summer-wrap-up/</link>
		<comments>http://feisley.com/2008/08/09/summer-wrap-up/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 02:38:58 +0000</pubDate>
		<dc:creator>Jacob Feisley</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://feisley.com/?p=1592</guid>
		<description><![CDATA[This summer has been anything but boring. My summer has brought many travel and experiences and I decided to list as many as I could remember as I prepare to head back to Purdue for my final yea!
Here we go (attempted to keep in order of occurrence):

Accepted internship with Cisco
Road trip across the country (to [...]]]></description>
			<content:encoded><![CDATA[<p>This summer has been anything but boring. My summer has brought many travel and experiences and I decided to list as many as I could remember as I prepare to head back to Purdue for my final yea!</p>
<p>Here we go (attempted to keep in order of occurrence):</p>
<ol>
<li>Accepted internship with Cisco</li>
<li>Road trip across the country (to get to Cisco in San Jose)</li>
<li>Visited Garden of the Gods</li>
<li>Climbed to the top of Pikes Peak (well, drove to the top)</li>
<li>Visited Las Vegas</li>
<li>Got a tour of the Googleplex</li>
<li>Spent 2 days in Yosemite National Park</li>
<li>Went to the Google I/O Conference</li>
<li>Visited the Mystery Spot</li>
<li>Visited San Francisco</li>
<li>Got my laptop stolen (from a locked trunk) in San Francisco</li>
<li>Traveled the 17 Mile Drive in Monterey</li>
<li>Redesigned <a href="http://hydralabs.com">Hydra Labs</a> web site (work in progress)</li>
<li>Got hired by Cisco to work through the school year</li>
<li>Vacationed at Deep Creek Lake in Maryland</li>
<li>Released 1.2.0 of <a href="http://dtella.org">Dtella</a></li>
<li>Wrote this post</li>
</ol>
<p>Time it took me to do all this: 13 weeks! Lets see if I can keep up this momentum as I head back to school&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://feisley.com/2008/08/09/summer-wrap-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google App Engine</title>
		<link>http://feisley.com/2008/04/08/google-app-engine/</link>
		<comments>http://feisley.com/2008/04/08/google-app-engine/#comments</comments>
		<pubDate>Wed, 09 Apr 2008 03:41:19 +0000</pubDate>
		<dc:creator>Jacob Feisley</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[App Engine]]></category>
		<category><![CDATA[PyAMF]]></category>

		<guid isPermaLink="false">http://feisley.com/?p=32</guid>
		<description><![CDATA[
Last night, Google launched App Engine which allows developers to create web applications and publish them on Google&#8217;s infrastructure. The exciting part of the App Engine in my eyes is that the language you use to develop on it is Python. Google provides many API&#8217;s to interface the Python programming language with the various services [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-thumbnail wp-image-33" title="Google App Engine" src="http://feisley.com/wp-content/uploads/2008/04/app-engine-150x150.png" alt="" width="150" height="150" /></p>
<p>Last night, Google launched <a href="http://appengine.google.com">App Engine</a> which allows developers to create web applications and publish them on Google&#8217;s infrastructure. The exciting part of the App Engine in my eyes is that the language you use to develop on it is Python. Google provides many API&#8217;s to interface the Python programming language with the various services they offer. You can authenticate via Google accounts, use Bigtable to store data, and use Google Aps to bind your application to your own domain. They opened the initial &#8220;Preview Release&#8221; to the first 10,000 developers to sign up. From the looks of it, those 10,000 spots filled up within the first few hours of the launch.</p>
<p>I was fortunate to be one of the first to sign up and got my account last night. I created a basic hello world application to test and overall the system seems very easy to use. My demo is at <a href="http://labs.appspot.com">http://labs.appspot.com</a>.</p>
<p>I also created an account for the <a href="http://pyamf.org">PyAMF</a> project and we were able to get a PyAMF echo server running on App Engine. It is currently located at: <a href="http://ae.pyamf.org">http://ae.pyamf.org</a> We are continuing to work with it today and tomorrow to write up some examples and a How-to to get people started quickly. We will continue to add more examples to the site as time progresses and we get everything documented.</p>
]]></content:encoded>
			<wfw:commentRss>http://feisley.com/2008/04/08/google-app-engine/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

