<?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>YamdaBlam! &#187; Technology</title>
	<atom:link href="http://www.yamdablam.com/category/technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.yamdablam.com</link>
	<description>YATB - Yet Another Technology Blog.</description>
	<lastBuildDate>Wed, 06 Jul 2011 09:33:16 +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>Capturing echo output and storing it in a variable</title>
		<link>http://www.yamdablam.com/2011/07/06/capturing-echo-output-and-storing-it-in-a-variable/</link>
		<comments>http://www.yamdablam.com/2011/07/06/capturing-echo-output-and-storing-it-in-a-variable/#comments</comments>
		<pubDate>Wed, 06 Jul 2011 09:33:16 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[echo]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[output buffering]]></category>
		<category><![CDATA[output control]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=60</guid>
		<description><![CDATA[Working with legacy code somethings throws up little eggs that need to be cracked. For instance, I need to use a function which is generally called via the browser and instead of using return statements, it uses echo. This post shows you how to deal assign echo statements into a local variable by using output [...]]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2011%2F07%2F06%2Fcapturing-echo-output-and-storing-it-in-a-variable%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p>Working with legacy code somethings throws up little eggs that need to be cracked.<br />
For instance, I need to use a function which is generally called via the browser and instead of using return statements, it uses echo.</p>
<p>This post shows you how to deal assign echo statements into a local variable by <a title="Link to php.net on the subject" href="http://www.php.net/manual/en/ref.outcontrol.php" target="_blank">using output control</a>.</p>
<blockquote><p>ob_start();<br />
helloWorld(param1, param2);<br />
$capturedVar = ob_get_contents();<br />
ob_end_clean();</p></blockquote>
<p>The echo from the function helloWorld() is now stored in $capturedVar for use!</p>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2011%2F07%2F06%2Fcapturing-echo-output-and-storing-it-in-a-variable%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2011/07/06/capturing-echo-output-and-storing-it-in-a-variable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL &#8211; Removing duplicate rows from a table</title>
		<link>http://www.yamdablam.com/2011/05/19/mysql-removing-duplicate-rows-from-a-table/</link>
		<comments>http://www.yamdablam.com/2011/05/19/mysql-removing-duplicate-rows-from-a-table/#comments</comments>
		<pubDate>Thu, 19 May 2011 08:03:45 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[data manipulation]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[removing duplicate rows]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=59</guid>
		<description><![CDATA[This save me loads of hassle this morning as I ran my script which populated an important table with duplicate entries which should not be there. This is a must share for those who fall into the same problem. Open up a mysql editor and paste in the following (don&#8217;t forget to edit for your [...]]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2011%2F05%2F19%2Fmysql-removing-duplicate-rows-from-a-table%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p>This save me loads of hassle this morning as I ran my script which populated an important table with duplicate entries which should not be there.</p>
<p>This is a must share for those who fall into the same problem.</p>
<p>Open up a mysql editor and paste in the following (don&#8217;t forget to edit for your table names)</p>
<blockquote>
<pre><code>CREATE TABLE new_table as
SELECT * FROM old_table WHERE 1 GROUP BY [column to remove duplicates by];
</code></pre>
</blockquote>
<p>Drop the old table and rename the new one &#8211; job done!</p>
<p>Quick, easy and slightly painless.</p>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2011%2F05%2F19%2Fmysql-removing-duplicate-rows-from-a-table%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2011/05/19/mysql-removing-duplicate-rows-from-a-table/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP Looping through a range of dates</title>
		<link>http://www.yamdablam.com/2010/09/10/php-looping-through-a-range-of-dates/</link>
		<comments>http://www.yamdablam.com/2010/09/10/php-looping-through-a-range-of-dates/#comments</comments>
		<pubDate>Fri, 10 Sep 2010 10:56:08 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[arrays]]></category>
		<category><![CDATA[date range]]></category>
		<category><![CDATA[loop]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=54</guid>
		<description><![CDATA[Problem: You need to get the individual dates in a date range and store them in an arbitary data structure such as an array Solution: $endDate = date(&#8220;Y-m-d&#8221;, strtotime(&#8216;yesterday&#8217;)); $startDate = &#8217;2010-08-01&#8242;; $newDate = $startDate; $arRangeOfDates = array(); while($newDate != $endDate) { $newDate = date(&#8216;Y-m-d&#8217;,strtotime(date(&#8220;Y-m-d&#8221;, strtotime($newDate)) . &#8221; +1 day&#8221;)); $arRangeOfDates[]=$newDate; }]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F09%2F10%2Fphp-looping-through-a-range-of-dates%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p>Problem:<br />
You need to get the individual dates in a date range and store them in an arbitary data structure such as an array</p>
<p>Solution:</p>
<blockquote><p>$endDate = date(&#8220;Y-m-d&#8221;, strtotime(&#8216;yesterday&#8217;));<br />
$startDate = &#8217;2010-08-01&#8242;;</p>
<p>$newDate = $startDate;<br />
$arRangeOfDates = array();<br />
while($newDate != $endDate) {<br />
$newDate = date(&#8216;Y-m-d&#8217;,strtotime(date(&#8220;Y-m-d&#8221;, strtotime($newDate)) . &#8221; +1 day&#8221;));<br />
$arRangeOfDates[]=$newDate;<br />
}</p></blockquote>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F09%2F10%2Fphp-looping-through-a-range-of-dates%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2010/09/10/php-looping-through-a-range-of-dates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Surprising Truth About What Motivates Us</title>
		<link>http://www.yamdablam.com/2010/09/09/the-surprising-truth-about-what-motivates-us/</link>
		<comments>http://www.yamdablam.com/2010/09/09/the-surprising-truth-about-what-motivates-us/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 11:29:36 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[Human]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=52</guid>
		<description><![CDATA[Google&#8217;s Eric Schmidt posted this on his twitter account and I liked it so much, I decided to post it on yamdablam too.]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F09%2F09%2Fthe-surprising-truth-about-what-motivates-us%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p>Google&#8217;s Eric Schmidt posted <a title="What motivates us twitter status update" href="http://twitter.com/ericschmidt/status/15056872303" target="_blank">this</a> on his twitter account and I liked it so much, I decided to post it on yamdablam too.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="500" height="400" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/u6XAPnuFjJc?fs=1&amp;hl=en_GB" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="500" height="400" src="http://www.youtube.com/v/u6XAPnuFjJc?fs=1&amp;hl=en_GB" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F09%2F09%2Fthe-surprising-truth-about-what-motivates-us%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2010/09/09/the-surprising-truth-about-what-motivates-us/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP matching url to a domain using parse_url</title>
		<link>http://www.yamdablam.com/2010/09/02/php-matching-url-to-a-domain-using-parse_url/</link>
		<comments>http://www.yamdablam.com/2010/09/02/php-matching-url-to-a-domain-using-parse_url/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 09:33:57 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=51</guid>
		<description><![CDATA[Purpose: My purpose is for a URL forwarding system whereby I need to ensure that the target of the URL forward doesn&#8217;t match the domain the forward is being applied to. // Take in the domain and the target url $target=trim($_REQUEST['target']); $domain=trim($_REQUEST['domain']); // always in the format domain.tld // Use parse_url() to get an array [...]]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F09%2F02%2Fphp-matching-url-to-a-domain-using-parse_url%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p><strong>Purpose:</strong><br />
My purpose is for a URL forwarding system whereby I need to ensure that<br />
the target of the URL forward doesn&#8217;t match the domain the forward is being applied to.</p>
<blockquote><p>// Take in the domain and the target url<br />
$target=trim($_REQUEST['target']);<br />
$domain=trim($_REQUEST['domain']); // always in the format domain.tld</p>
<p>// Use parse_url() to get an array of the various parts of the target url<br />
$arTargetUrl = parse_url($target);</p>
<p>// Since were only interested in the host part of the url<br />
$host = $arTargetUrl['host'];</p>
<p>// Break the target up into an array based on the &#8220;.&#8221; dot<br />
// www.url.ie becomes array(&#8216;www&#8217;,'url&#8217;,'ie&#8217;)<br />
$arTargetHost=explode(&#8216;.&#8217;,$host);</p>
<p>// Now get the size of this array<br />
$sizeOfArray = sizeof($arTargetHost);</p>
<p>// Since we&#8217;re only interested in the url.ie part of the host<br />
$newHost = $arTargetHost[$sizeOfArray-2] . &#8216;.&#8217; . $arTargetHost[$sizeOfArray-1];</p>
<p>// Now compare the the newHost to the domain.<br />
// If they&#8217;re different carry on applying the url forward<br />
// otherwise, stop.</p>
<p>if($newHost != $domain) {<br />
echo &#8216;yay! all good&#8217;;<br />
}<br />
else {<br />
echo &#8216;boo.. old man shouts at cloud!&#8217;;<br />
}</p></blockquote>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F09%2F02%2Fphp-matching-url-to-a-domain-using-parse_url%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2010/09/02/php-matching-url-to-a-domain-using-parse_url/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Augmented Reality Layar Submitted</title>
		<link>http://www.yamdablam.com/2010/08/23/augmented-reality-layar-submitted/</link>
		<comments>http://www.yamdablam.com/2010/08/23/augmented-reality-layar-submitted/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 22:03:16 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[Augemented Reality]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[augmented realaity]]></category>
		<category><![CDATA[donabate]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[layar]]></category>
		<category><![CDATA[layar submission process]]></category>
		<category><![CDATA[portrane]]></category>
		<category><![CDATA[smart phones]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=48</guid>
		<description><![CDATA[For those residents of the peninsula who have a GPS enabled smart phone, you'll be able to view Donabate and Portrane area like never before.]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F08%2F23%2Faugmented-reality-layar-submitted%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p>Further to my <a title="Augmented Reality and Layar = Exciting Times" href="http://www.yamdablam.com/2010/08/17/augmented-reality-and-layar-exciting-times/">previous post</a> about augmented reality and <a title="Layar Augemented Reality Browser" href="http://www.layar.com" target="_blank">Layar</a>, I have developed a small Layar for the Donabate and Portrane area. It basically will list all the business and tourist spots in the area. Pending approval I will be putting the remaining number of businesses and highlights of the area on to the layar with a view to having a Google map submission tool on a subpage of yamdablam.com in the very near future. So for those residents of the peninsula who have a GPS enabled smart phone, you&#8217;ll be able to view Donabate and Portrane area like never before.</p>
<p>So, fingers crossed the good people of Layar in Amsterdam approve the new layar for the area!</p>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F08%2F23%2Faugmented-reality-layar-submitted%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2010/08/23/augmented-reality-layar-submitted/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP &#8211; first day of the current month</title>
		<link>http://www.yamdablam.com/2010/08/20/the-first-day-of-the-month/</link>
		<comments>http://www.yamdablam.com/2010/08/20/the-first-day-of-the-month/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 09:53:40 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[first day in the month]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[strtotime]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=46</guid>
		<description><![CDATA[A really quick post mainly for myself, because I will need to remember this at some stage in the future $startDate=date(&#8220;Y-m-d&#8221;, strtotime(date(&#8216;m&#8217;).&#8217;/01/&#8217;.date(&#8216;Y&#8217;).&#8217; 00:00:00&#8242;)); Enjoy!]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F08%2F20%2Fthe-first-day-of-the-month%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p>A really quick post mainly for myself, because I will need to remember this at some stage in the future</p>
<blockquote><p>$startDate=date(&#8220;Y-m-d&#8221;, strtotime(date(&#8216;m&#8217;).&#8217;/01/&#8217;.date(&#8216;Y&#8217;).&#8217; 00:00:00&#8242;));</p></blockquote>
<p>Enjoy!</p>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F08%2F20%2Fthe-first-day-of-the-month%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2010/08/20/the-first-day-of-the-month/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Augmented Reality and Layar = Exciting times.</title>
		<link>http://www.yamdablam.com/2010/08/17/augmented-reality-and-layar-exciting-times/</link>
		<comments>http://www.yamdablam.com/2010/08/17/augmented-reality-and-layar-exciting-times/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 22:09:54 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[Augemented Reality]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[augmented reality]]></category>
		<category><![CDATA[donabate]]></category>
		<category><![CDATA[layar]]></category>
		<category><![CDATA[portrane]]></category>
		<category><![CDATA[services]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=43</guid>
		<description><![CDATA[To put it simply, I was blown away by this application. My mind was racing with ideas and to be frank, any excuse to get a layer of my own onto this service.]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F08%2F17%2Faugmented-reality-and-layar-exciting-times%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p>I&#8217;m very excited for a number of reasons.</p>
<p>I recently got myself a shiny <a title="iPhone 4" href="http://www.apple.com/iphone" target="_blank">iPhone 4</a> and since I upgraded from the 3G I have a whole host of new <a href="http://www.apple.com/iphone/features/" target="_blank">features</a> to play with. The one that got my attention most was the possibility of using some of its great GPS and navigational functionality. Enter, <a title="Layar Augemented Reality Browser" href="http://www.layar.com" target="_self">Layar</a>, the augemented reality browser, downloaded from the Apple App Store.</p>
<p>To put it simply, I was blown away by this application. My mind was racing with ideas and to be frank, any excuse to get a layer of my own onto this service. The first thing that I noticed that there was a startling lack of augmented reality layars for my local area. The layers that do exist for Dublin are great for example, the <a href="http://www.daft.ie/" target="_self">daft.ie</a> property search layer, but none the less they are few and far between.</p>
<p>After reviewing the API documentation and putting together a test layer, I developed a layer for Donabate &amp; Portrane and submitted this for publication on the Layar platform. I hope to hear back from them within 5 working days. (Watch this space) In the meantime, I will be continuing to add places of interest (POI&#8217;s) to the DonabatePortrane layer in the coming days and weeks. Dump a comment and let me know if you want any thing in particular on the layer and I&#8217;ll be happy to accommodate!</p>
<p>I am 100% sure  I will be posting about this in the very near future &#8211; and you never know, I might even be helping you get a layer in place for your business or area!</p>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F08%2F17%2Faugmented-reality-and-layar-exciting-times%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2010/08/17/augmented-reality-and-layar-exciting-times/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Getting GPS Data out of your images using PHP</title>
		<link>http://www.yamdablam.com/2010/07/21/getting-gps-exif-data-out-of-your-images/</link>
		<comments>http://www.yamdablam.com/2010/07/21/getting-gps-exif-data-out-of-your-images/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 21:17:58 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[EXIF]]></category>
		<category><![CDATA[ExifReader]]></category>
		<category><![CDATA[Google Maps]]></category>
		<category><![CDATA[GPS data]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[privacy]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=40</guid>
		<description><![CDATA[Learn how to extract GPS exif data from a images with PHP]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F07%2F21%2Fgetting-gps-exif-data-out-of-your-images%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p><span style="text-decoration: underline;"><strong>Privacy is important</strong></span></p>
<p>Your privacy is a big deal. Be it in the physical world or in the virtual world. The unfortunate thing is that because browsing the web can be done in solitude, personal privacy tends to be an after thought. Not too mention that nearly everybody in the western world has access to an internet connected device.</p>
<p>When you take a photo on one of the latest digital cameras, or from a smart phone and if the device has GPS functionality, it can be assumed that the photo has been tagged with the location of where it was taken. This information is stored in a data format call EXIF. You can read all about it <a href="http://en.wikipedia.org/wiki/Exchangeable_image_file_format" target="_blank">here</a> and <a title="Exif.org - the unoffical website of EXIF" href="http://www.exif.org" target="_blank">here</a>.</p>
<p>It is not a huge leap of the imagination that if your photos are published on the internet ( which is public and not private ) that you are enabling others to track your movements without your expressed informed consent. This information can be used against you aswell as for you. The question should arise of how to manage your online profile. I will cover this topic in a later post.</p>
<p><span style="text-decoration: underline;"><strong>GPS Data</strong></span></p>
<p>Photo location is encoded using the Global Positioning System. This is a network of satellites orbiting the globe which return positions of devices which request it.  If you would like to know more about this see <a href="http://en.wikipedia.org/wiki/Global_Positioning_System" target="_blank">here</a>.</p>
<p><strong>Do your uploaded photos hold GPS data?</strong></p>
<p>There are loads of web apps out there that will answer this question for you. In the spirit of DIY and because I like to program, I decided to put together my own image information parsing system. You can see it in action <a href="http://lab.yamdablam.com/#photo_stalking">here</a>. This basically reads the EXIF data from an image supplied via a URL to the image in question.</p>
<p><span style="text-decoration: underline;"><strong>Next steps&#8230;</strong></span></p>
<p>As you see from the lab, the system generates a link to the search page on <a href="http://maps.google.com/" target="_blank">http://maps.google.com/</a> When time permits, I will add a Google Mapping feature which will display the position from the image on a Google map. Watch this space.</p>
<p><a href="http://lab.yamdablam.com/#photo_stalking" target="_blank">Demo</a></p>
<p>This little web app is built using the ExifReader.php class from <a href="http://www.quietless.com/kitchen/wp-content/uploads/2010/01/gmaps-source.zip" target="_blank">quiteless.com</a>. You can get it here. It is an elegant PHP class which is now part of my library. Thank you Steve! (quiteless.com)</p>
<p>As always, feedback and comments are more than welcome!</p>
<p>Enjoy!</p>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F07%2F21%2Fgetting-gps-exif-data-out-of-your-images%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2010/07/21/getting-gps-exif-data-out-of-your-images/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cannot use object of type stdClass as array</title>
		<link>http://www.yamdablam.com/2010/07/19/cannot-use-object-of-type-stdclass-as-array/</link>
		<comments>http://www.yamdablam.com/2010/07/19/cannot-use-object-of-type-stdclass-as-array/#comments</comments>
		<pubDate>Mon, 19 Jul 2010 11:11:49 +0000</pubDate>
		<dc:creator>Jay</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[#php]]></category>
		<category><![CDATA[#webdev]]></category>
		<category><![CDATA[cannot use object of type stdClass]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php error]]></category>
		<category><![CDATA[stdClass]]></category>
		<category><![CDATA[type casting]]></category>

		<guid isPermaLink="false">http://www.yamdablam.com/?p=36</guid>
		<description><![CDATA[Problem I was getting this particular error when decoding JSON data block from a web service. It basically is trying to assert that the data block is a different type to the variable which it is being assigned to. Meet solution Explore the data dump by using something like echo &#8216;&#60;pre&#62;&#8217;;  print_r($dataDump); echo &#8216;&#60;/pre&#62;&#8217;; and [...]]]></description>
			<content:encoded><![CDATA[<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F07%2F19%2Fcannot-use-object-of-type-stdclass-as-array%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div><p><span style="text-decoration: underline;"><strong>Problem</strong></span></p>
<p>I was getting this particular error when decoding <a href="http://www.json.org" target="_blank">JSON</a> data block from a web service.</p>
<p>It basically is trying to assert that the data block is a different type to the variable which it is being assigned to.</p>
<p><span style="text-decoration: underline;"><strong>Meet solution</strong></span></p>
<p>Explore the data dump by using something like</p>
<blockquote><p>echo &#8216;&lt;pre&gt;&#8217;;  print_r($dataDump); echo &#8216;&lt;/pre&gt;&#8217;;</p></blockquote>
<p>and you will see the different data types for example:</p>
<blockquote><p>stdClass Object ( [acc] =&gt; Array &#8230;.</p></blockquote>
<p>Drill down through the structure to the data you want and check the data type of it. To prevent this error, simply apply some <a href="http://bit.ly/dczDKZ" target="_blank">Type casting</a> during the variable assignment. Bada-bing&#8230; problem, meet solution.</p>
<div style="padding-top:5px;padding-right:0px;padding-bottom:5px;padding-left:0px;;">
										<iframe
											style="height:25px !important; border:none !important; overflow:hidden !important; width:340px !important;" frameborder="0" scrolling="no" allowTransparency="true"
											src="http://www.linksalpha.com/social?link=http%3A%2F%2Fwww.yamdablam.com%2F2010%2F07%2F19%2Fcannot-use-object-of-type-stdclass-as-array%2F&fc=333333&fs=arial&fblname=like">
										</iframe>
										</div>]]></content:encoded>
			<wfw:commentRss>http://www.yamdablam.com/2010/07/19/cannot-use-object-of-type-stdclass-as-array/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

