<?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>Locksmack</title>
	<atom:link href="http://www.locksmack.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.locksmack.com</link>
	<description>Technology, Web Development, Philosophy and more...</description>
	<lastBuildDate>Thu, 16 May 2013 23:16:39 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.1</generator>
		<item>
		<title>My new website: Great Hooks</title>
		<link>http://www.locksmack.com/my-new-website-great-hooks/</link>
		<comments>http://www.locksmack.com/my-new-website-great-hooks/#comments</comments>
		<pubDate>Thu, 16 May 2013 23:16:20 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://locksmack.com/?p=154</guid>
		<description><![CDATA[I have spent the last 9-odd months slaving away in front of a computer screen in my spare time, working jointly on a project with a work colleague. The resultant website is Great Hooks. The purpose of the site is to create a worldwide directory of fishing spots, where anglers can log their catches and [...]]]></description>
			<content:encoded><![CDATA[<p>I have spent the last 9-odd months slaving away in front of a computer screen in my spare time, working jointly on a project with a work colleague. The resultant website is <a href="http://greathooks.com">Great Hooks</a>.</p>
<p>The purpose of the site is to create a worldwide directory of fishing spots, where anglers can log their catches and  interact with other users. The site launched with over 600 fishing spots around Australia, though of course that is just the tip of the iceberg. All data will be crowdsourced (think Wikipedia or IMDB), and we have built the site in a way to allow anyone to contribute. </p>
<p>My involvement in a technical sense was PHP/MySQL development, while my colleague tackled the front end development. I learnt a lot doing this project, especially considering it is the first large scale PHP website I have created. Of note is the use of MySQL&#8217;s super speedy spatial data types, which the site uses extensively.</p>
<p>On the front end side my friend and colleague smashed out a kickarse design, complete with responsive action and some sweet JavaScript magic. Definitely a testament to his pro skills (I know you are reading this Nick).</p>
<p>So go check out <a href="http://greathooks.com">the best fishing website ever</a>! I am very proud of how it has turned out, but we have a lot more in store in the future.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/my-new-website-great-hooks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Firefox 3D Inspect Experiment</title>
		<link>http://www.locksmack.com/firefox-3d-inspect-experiment/</link>
		<comments>http://www.locksmack.com/firefox-3d-inspect-experiment/#comments</comments>
		<pubDate>Sun, 09 Sep 2012 11:57:42 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.locksmack.com/?p=152</guid>
		<description><![CDATA[With the launch of Firefox 11, our good friends at Mozilla gave us a HTML element inspector as standard equipment with our browser. Great stuff Mozilla, though it might take some time before I use it over the best web development software ever &#8211; Firebug. Nevertheless, Firefox&#8217;s inbuilt element inspecting software has a very cool [...]]]></description>
			<content:encoded><![CDATA[<p>With the launch of Firefox 11, our good friends at Mozilla gave us a HTML element inspector as standard equipment with our browser. Great stuff Mozilla, though it might take some time before I use it over the best web development software ever &#8211; Firebug. Nevertheless, Firefox&#8217;s inbuilt element inspecting software has a very cool (useless?) feature &#8211; 3D inspection.</p>
<p>I guess the idea is to view a website in 3D, with nested elements stacking on top of each other in order to give the developer a more visual sense of what is going on. Whether it is useful for other developers I can&#8217;t say, but I can&#8217;t ever see myself using it for actual development. It does have another use however&#8230;</p>
<p>A couple of weeks ago, standing around with my colleagues enjoying a well deserved Friday beer or two, the subject of Firefox&#8217;s 3D element inspector came up. After we had finished laughing about the uselessness of it, I had an idea &#8211; perhaps we can leverage it and use HTML elements to create 3D models. The obvious choice was a cityscape &#8211; just a bunch of stacked divs should create the effect.</p>
<p>By the next day I forgot about it. My colleague didn&#8217;t.</p>
<p>To my delight, he actually built it. Huge props have to go out to him &#8211; he created a fully randomized cityscape viewable in Firefox 3D Element Inspector! Very cool stuff indeed. Check it out below:</p>
<p><a href="http://www.onphire.net/firefox-3d-city">http://www.onphire.net/firefox-3d-city</a></p>
<p>Any suggestions for what else we could build?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/firefox-3d-inspect-experiment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Top 10 Movies of all time</title>
		<link>http://www.locksmack.com/top-10-movies-of-all-time/</link>
		<comments>http://www.locksmack.com/top-10-movies-of-all-time/#comments</comments>
		<pubDate>Sun, 12 Aug 2012 09:53:05 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.locksmack.com/?p=145</guid>
		<description><![CDATA[Here is my (ordered) list of my favourite movies of all time. Please leave feedback and recommend me some others! I&#8217;m sure this list will change overtime, but it is up to date as of the publishing date of this post. Enjoy! 1. Donnie Darko My all time favourite. Donnie Darko is very thought-provoking and [...]]]></description>
			<content:encoded><![CDATA[<p>Here is my (ordered) list of my favourite movies of all time. Please leave feedback and recommend me some others! I&#8217;m sure this list will change overtime, but it is up to date as of the publishing date of this post. Enjoy!</p>
<p><strong>1. Donnie Darko</strong><br />
My all time favourite. Donnie Darko is very thought-provoking and has an excellent storyline. You will definitely need to watch it more than once to fully understand everything. Unfortunately the sequel (S. Darko) was absolute rubbish.</p>
<p><strong>2. Requiem for a dream</strong><br />
This is a very close number 2. A story about drug addicts and the downfall of their lives. This movie is very confronting &#8211; I promise after watching this you won&#8217;t even want to pop a panadol.</p>
<p><strong>3. Shutter Island</strong><br />
Leo is my favourite actor, and this is my favourite of his movies. The entire time watching this I was positive there was a twist &#8211; even convincing myself that I knew exactly what it was. I was right that there is a twist &#8211; wrong about what it was. Great movie.</p>
<p><strong>4. Inception</strong><br />
A second Leo movie? Inception and Shutter Island were just about neck and neck while writing this list, but Shutter Island just nudged ahead. Inception is a crazy ride with brilliant acting (Joseph Gordon-Levitt shines in this). A must see.</p>
<p><strong>5. Alien (series)</strong><br />
I came to the plate very late on the Alien series. It took me 30 years to watch the first one, and I was hooked straight away. Even the prequels are suprisingly good. I&#8217;m even a fan of the Alien-inspired &#8216;Prometheus&#8217;.</p>
<p><strong>6. Eternal Sunshine of a Spotless Mind</strong><br />
Would you erase your memory if you could? Eternal Sunshine is a very non-standard movie for Jim Carey, and it turned out great. I will always be a fan of Jim in Ace Ventura, but a more serious role like this showcases his versatility. Great storyline.</p>
<p><strong>7. The Lord of the Rings (series)</strong><br />
I was only 12 when the first LOTR film was released. I still remember seeing it in Adelaide while on holidays visiting my family. The whole series is absolutely epic. The attention to detail in these films is second to none. I can&#8217;t wait for The Hobbit trilogy to be released.</p>
<p><strong>8. Star Wars (series)</strong><br />
A classic. Do I really need to explain why a 24 year old nerd likes Star Wars?</p>
<p><strong>9. The Matrix</strong><br />
This movie was the first to introduce me to alternative realities (I was very young when I saw it). The action scenes are insanely cool, as is the entire concept of an artificial universe.</p>
<p><strong>10. Princess Mononoke</strong><br />
I figured I couldn&#8217;t make a top 10 list without including at least one anime movie. I absolutely love Hayao Miyazaki, and this is my favourite of all his movies. I had the privilege of visiting the Ghibli museum in Tokyo last year and it blew my mind.</p>
<div id="attachment_146" class="wp-caption alignnone" style="width: 310px"><a href="http://www.locksmack.com/wp-content/uploads/2012/08/donnie_darko.jpg"><img class="size-medium wp-image-146" title="donnie_darko" src="http://www.locksmack.com/wp-content/uploads/2012/08/donnie_darko-300x126.jpg" alt="Donnie Darko" width="300" height="126" /></a><p class="wp-caption-text">Donnie Darko &#8211; My all-time favourite movie</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/top-10-movies-of-all-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A newbies guide to Geocaching</title>
		<link>http://www.locksmack.com/a-newbies-guide-to-geocaching/</link>
		<comments>http://www.locksmack.com/a-newbies-guide-to-geocaching/#comments</comments>
		<pubDate>Sun, 29 Jul 2012 12:09:40 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.locksmack.com/?p=138</guid>
		<description><![CDATA[Apparently I live under a rock. A few weeks ago I heard about a pretty cool thing calling &#8216;geocaching&#8217;. This is not a new thing, in fact it is more than a decade old already, has over 5 million participants in every country on earth and more than 200,000 &#8216;caches&#8217; (more on this later) exist. [...]]]></description>
			<content:encoded><![CDATA[<p>Apparently I live under a rock.</p>
<p>A few weeks ago I heard about a pretty cool thing calling &#8216;geocaching&#8217;. This is not a new thing, in fact it is more than a decade old already, has over 5 million participants in every country on earth and more than 200,000 &#8216;caches&#8217; (more on this later) exist. And I thought I was quite up-to-date with most things&#8230;obviously not.</p>
<p>For those, like me, who have no idea what &#8216;geocaching&#8217; is, let me explain. The basic idea is that participants go on a type of treasure hunt to look for something called a &#8216;cache&#8217;. A cache is some kind of container that is hidden by other players and contains (at minimum) a log book/paper, which the finder uses to log their visit &#8211; writing in the date they found it and their geo-handle, or nickname. The finder uses an online service (such as geocaching.com) to find hidden caches in their area and once they have found one they want, they punch the GPS co-ordinates into their GPS device or mobile phone and off they go on the hunt. Once the cache has been found and the logbook signed, the finder must replace the cache exactly as they found it for the next person to find.</p>
<p>When I say it out loud, it sounds SUPER lame.</p>
<p>But it&#8217;s really not. If you can look past the obviously dorky premise of the game, it is quite rewarding and fun. Geocaching can take you to places you would not have even knew existed &#8211; even in your home town! There is definitely a buzz to be achieved once you find the cache. To me, it is absolutely fascinating that these &#8216;caches&#8217; are littered all over the earth, with people walking past them every day none the wiser. Since I started geocaching, I have found caches in areas that I have been to hundreds of times, though ittle did I know that behind a pipe, in a hole or under a table was a container that many sought after and had existed for years (some I have found are more than 5 years old). It&#8217;s incredible to think about, and even more so once you play for yourself.</p>
<p>There is more to geocaching than finding a container and signing a log book however. Most caches also contain &#8216;swaps&#8217;. A swap is a small object of no monetary value that a finder is free to keep. Examples of swaps that I have found include matchbox cars, figurines, foreign currency and bouncy balls. If you do take a swap, you must replace it with another swap for the next finder to take.</p>
<p>There is more. Some caches require the finder to figure out where it is hidden or how to access it with clues and riddles. Multi-caches send finders on a quest to several destinations to complete the cache. Others require special circumstance to find, such as day-only caches and caches in high traffic areas which will require an element of stealth so that the cache is not seen by non-players (called muggles in the geo-community). Some caches also contain &#8216;trackables&#8217; &#8211; objects with unique identifies on them which the finder can input into their computer/phone to discover the mission of the trackable &#8211; the destination that it should ultimately end up. An example of this may be a trackable that I begin in Melbourne. I would log it online with a mission of Seattle. The first person to find it will take it, and leave it in another cache closer to it&#8217;s final destination, until it makes its way all the way to Seattle. This can be fun (so I&#8217;m told) to watch as the trackable makes it&#8217;s way all across the world.</p>
<p>Who hides caches? Anyone. In fact I hid my first one last week (&#8216;A splash of colour&#8217; if you are in Melbourne CBD). I am only speculating, but the satisfaction of growing this worldwide game and enabling complete strangers to participate is very rewarding. If you do decide to hide a cache, you must accept the responsibility to maintain the cache. Occasionally a cache will be found by a muggle and damaged/stolen, or a cache will become waterlogged. It is up to the hider to fix these things and replace (or archive) the cache if it is no longer available.</p>
<p>Geocaching is a fun past time and great to do with others (I geocache with my girlfriend and work mates). Many involve their kids as a fun way to get them outdoors. Whatever your reason, geocaching is a hoot. Why not have a look if there are any close to you? Just use <a href="http://www.geocaching.com" target="_blank">this website</a>.</p>
<p>Please share your geocaching experiences with me in the comments section below.</p>
<div id="attachment_140" class="wp-caption alignnone" style="width: 310px"><a href="http://www.locksmack.com/wp-content/uploads/2012/07/geo.jpg"><img class="size-medium wp-image-140" title="Geocache" src="http://www.locksmack.com/wp-content/uploads/2012/07/geo-300x225.jpg" alt="A geocache" width="300" height="225" /></a><p class="wp-caption-text">A medium-large sized geocache found in a rural area. Urban geocaches are usually smaller and often magnetic.</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/a-newbies-guide-to-geocaching/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My review on the 1989 Mazda MX-5 NA6</title>
		<link>http://www.locksmack.com/my-review-on-the-1989-mazda-mx-5-na6/</link>
		<comments>http://www.locksmack.com/my-review-on-the-1989-mazda-mx-5-na6/#comments</comments>
		<pubDate>Sun, 24 Jun 2012 11:37:11 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.locksmack.com/?p=130</guid>
		<description><![CDATA[This post differs to my usual posts on technology and philosophy; I am going to write my review on the original 23 year old Mazda MX-5 (Miata in the US). I have owned only 3 cars in my life. My first was a 1993 Toyota Camry that my parents bought me. It was your standard [...]]]></description>
			<content:encoded><![CDATA[<p>This post differs to my usual posts on technology and philosophy; I am going to write my review on the original 23 year old Mazda MX-5 (Miata in the US).</p>
<p>I have owned only 3 cars in my life. My first was a 1993 Toyota Camry that my parents bought me. It was your standard first car &#8211; a reliable piece of crap. That is, reliable until it blew up after 3 years of ownership. Still, I have very fond memories of that car, even if it was extremely boring.</p>
<p>My second car was a mistake (isn&#8217;t hindsight a great thing?). I bought a brand new 2009 Holden Cruze Diesel for the hefty sum of $26,500 (hefty for a 21 year old). The car was fine and served me very well, particularly on fuel, but was ultimately costing me too much and was a rather lackluster drive. I ended up selling it after only 1.5 years of ownership and taking a $7k loss on it (not including interest)&#8230;ouch.</p>
<p>Which brings me to my 3rd, and current car &#8211; a red 1989 Mazda MX-5 soft-top with 1.6L naturally aspirated engine. I did a lot of research before choosing this car and am still happy with my purchase after 1 year of ownership. I would like to share with you all of my thoughts about this car and can hopefully help those who are in the market for something similar. For the record, I paid AU$6,800 for it with ~180,000 kms on the clock.</p>
<h2>Old-school</h2>
<p>My primary concern with the MX-5, and I am sure it is yours too if you are considering purchasing an NA MX-5, is the age. At 23 years old, it is getting very long in the tooth. I toyed with buying different, and much newer cars, but ultimately went with the MX-5, and I am glad I did. It certainly doesn&#8217;t feel like a brand new car, it is quite rough and lacking many creature comforts of a more recent vehicle. Luckily, mine had air conditioning (many don&#8217;t), but was lacking power steering, CD player and overall comfort. If you are after a luxury car, the original MX-5 is not the car for you. With that said, the age of the car does not seem to be a problem where it matters &#8211; mechanically. The fuel-injected 1.6L engine runs like a dream. It is not uncommon for these engines to rack up more than 400,000kms and still be going strong. The same can be said for the other mechanical parts &#8211; the (non-power) steering, suspension, exhaust, electronics and more are all perfectly fine and are of no concern when considering the age of the car. The soft-top is also very sturdy. In my opinion, no other car is as sporty as a Lotus Elan and as reliable as a Toyota Corolla. It really is a great package.</p>
<h2>Handling</h2>
<p>So how does it drive? Like a dream. Having come from 2 front-wheel-drive cars, the MX-5 is an absolute delight. The MX-5 is renowned for it&#8217;s fantastic handling, and this is not an understatement. I have driven a few &#8216;sporty&#8217; cars in my life (350Z, Passat R36, tricked up Falcodores) and none can equal the MX-5 when it comes to cornering. There is NOTHING more gratifying than losing a P-plate douche in a commodore around a bend all the while with a big grin on your face. Not bad for a car that is only 1 year younger than me <img src='http://www.locksmack.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h2>Performance</h2>
<p>Straight-line performance is a different matter, however. The 1.6L engine puts out around 85kw (surely to be less considering the age). Not very much power, though the car weighs less than a tonne, so not as bad as it looks on paper. Still, don&#8217;t think you will be beating any V6 family sedans off the mark, let alone muscle cars. I&#8217;m not saying that the car is a slouch, because it can get up and go when needed, but outright speed is not the reason you would buy an MX-5. The engine needs to be kept in the high rpm range to get the most out of it.</p>
<h2>Comfort</h2>
<p>As mentioned earlier, the original MX-5 is an old car and lacks many of the creature comforts of recent cars. The cabin is also quite small, so may be a concern for those with more cushion <img src='http://www.locksmack.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  I am 6ft tall on the dot and weigh 80kg, and don&#8217;t have an issue with the cabin size, though if you are much bigger it may be a concern. I do find that my head brushes up against the roof when I sit tall.</p>
<p>One of the first things I would suggest to a new MX-5 owner is to replace the stock tape deck with a new CD player. I fitted mine out with a Pioneer DEH-9350SD which works, looks, and sounds great. The install would have been very easy, if it weren&#8217;t for the previous owner of my car butchering the wiring harness. If your MX-5 is lucky enough to have a more courteous past-owner, installation should be a breeze. I should note that early MX-5&#8242;s have a not so standard din stereo hole, so you will need to either upgrade the tombstone or (easier), purchase a cubby hole to fill in the gap, available <a href="http://www.mx5parts.co.uk/radio-cubby-mazda-p-119.html">here</a>.</p>
<h2>Styling</h2>
<p>Looks is a very subjective thing, but I absolutely love the styling of the original MX-5. I actually prefer it over the newer NB version. For a 23 year old car, it doesn&#8217;t look a day over 10. My car is in desperate need of a paint job however, as the paint is flaking and fading like nobody&#8217;s business. I am hoping to get this done later this year and will post an update with the results and the damage to my wallet.</p>
<h2>Conclusion</h2>
<p>I absolutely love my MX-5. If you are in the market for a cheap, reliable and absolutely addictive (convertible) sports car, look no further. I urge anyone considering purchasing one of these babies to take one for a test drive &#8211; I dare you not to smile when doing so.</p>
<div id="attachment_132" class="wp-caption alignnone" style="width: 310px"><a href="http://www.locksmack.com/wp-content/uploads/2012/06/mx5.jpeg"><img class="size-medium wp-image-132" title="mx5" src="http://www.locksmack.com/wp-content/uploads/2012/06/mx5-300x225.jpeg" alt="Red NA6 MX5" width="300" height="225" /></a><p class="wp-caption-text">My Mazda MX-5 NA6</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/my-review-on-the-1989-mazda-mx-5-na6/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to display mobile design in Squiz MySource Matrix</title>
		<link>http://www.locksmack.com/how-to-display-mobile-design-in-squiz-mysource-matrix/</link>
		<comments>http://www.locksmack.com/how-to-display-mobile-design-in-squiz-mysource-matrix/#comments</comments>
		<pubDate>Mon, 18 Jun 2012 12:41:09 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.locksmack.com/?p=124</guid>
		<description><![CDATA[Squiz MySource Matrix doesn&#8217;t play awfully well with mobile designs. It is easy enough to create a mobile design and bring it into Matrix, but there is no apparent way to make Matrix direct the user to the right design depending on the device they are using. Unfortunately we do not (generally) have access to [...]]]></description>
			<content:encoded><![CDATA[<p>Squiz MySource Matrix doesn&#8217;t play awfully well with mobile designs. It is easy enough to create a mobile design and bring it into Matrix, but there is no apparent way to make Matrix direct the user to the right design depending on the device they are using. Unfortunately we do not (generally) have access to any Matrix back-end code, so we must rely on JavaScript. This solution works very well and I have used it on several large sites (and directed many hundreds of thousands of users to the right place).</p>
<p>I want to share a piece of JavaScript code I have written to enable sites running Squiz MySource Matrix to redirect to a mobile version of their site. Firstly, you will need some things:</p>
<ol>
<li>A mobile design as a design parse file.</li>
<li>This design should be set as a &#8216;User Defined Design&#8217; (settings screen) at the Site level and cascaded throughout the site. You can give it any name when doing this, but I will be using &#8216;mobile&#8217; in this example.</li>
<li>Your <span style="text-decoration: underline;">regular</span> (desktop) design parse file must have jQuery and jQuery Cookie plugin.</li>
</ol>
<p>In your regular design parse file (not your mobile one), please include the following code AFTER the jQuery Cookie plugin. You can include it in a new (or existing) JS file, or directly in your parse file in script tags:</p>
<pre>var page_url = document.location.href;
page_url = page_url.split("?")[0];

function querySt(ji) {
  hu = window.location.search.substring(1);
  gy = hu.split("&amp;");
  for (i=0;i&lt;gy.length;i++) {
    ft = gy[i].split("=");
    if (ft[0] == ji) {
      return ft[1];
    }
  }
}

if(querySt("full") == "true"){
  $.cookie('full_version', 'yes', { expires: 7, path: '/' } );
}

if ( (navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i) || navigator.userAgent.match(/BlackBerry/i) || ( navigator.userAgent.match(/Android/i) &amp;&amp; navigator.userAgent.match(/Mobile/i) ) || ( navigator.userAgent.match(/Windows/i) &amp;&amp; navigator.userAgent.match(/Mobile/i) ) || ( navigator.userAgent.match(/Opera Mini/i)|| ( navigator.userAgent.match(/Opera Mobile/i)))) &amp;&amp; ($.cookie('full_version') != "yes"))
{
  window.location   = page_url + "?SQ_DESIGN_NAME=mobile&amp;SQ_ACTION=set_design_name";
}

$(document).ready(function(){
  if ($.cookie('full_version') == "yes"){
    $('#footer').append("&lt;a href=\"" + page_url + "?SQ_DESIGN_NAME=mobile&amp;SQ_ACTION=set_design_name\"&gt;View mobile site&lt;/a&gt;");
  }
});</pre>
<p>This script handles the detection of mobile use and redirects the user to the current page, appending the Matrix query string to it so that Matrix knows to serve the page using the mobile design. Matrix stores this preference in the users session, so this code only needs to run once per user, and only when they hit the non-mobile version. Once using the mobile design, there is no need for this code to run.</p>
<p>Now, if you have been concentrating, you will probably see a couple of things in there that don&#8217;t make sense. That is because we haven&#8217;t finished. We need to add something to our mobile design that allows users to jump back to the regular full design should they want to. You will need to add this HTML to your mobile design parse file (place it wherever you want, probably the footer):</p>
<pre>&lt;a href="%asset_url%?SQ_ACTION=clear_design_name&amp;full=true"&gt; View Full Site &lt;/a&gt;</pre>
<p>When this link is clicked, you are directing your user to the current page, but telling Matrix to clear the design that is stored in the session (causing Matrix to serve the normal, desktop design). At the same time, we are passing the variable &#8220;full&#8221;, which you will notice the original script way up top is checking for. This is used to ensure that the user is not simply redirected back to the mobile version again.</p>
<p>Lastly, what if you have a very indecisive user who wants to go back to the mobile site now? Not a problem, in the original script (yep, up top), towards the bottom you will see we are appending a link into the footer of the page for users to click to return to the mobile design. I am using a DIV with id of &#8216;footer&#8217; in this example, you will need to change it to suit your needs.</p>
<p>That is about it. I have tested this and it works on iPhone, Android, Windows Phone and Blackberry. As always, please hit me up in the comments if you have any questions and I will be glad to help out.</p>
<p><strong>Please Note: </strong>I wrote this script to work with mobile phones only &#8211; i.e, not tablets. If you want this to work with tablets, simply alter the code to search for the correct user agents.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/how-to-display-mobile-design-in-squiz-mysource-matrix/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to &#8211; Reverse Geocoding with Google Maps</title>
		<link>http://www.locksmack.com/how-to-reverse-geocoding-with-google-maps/</link>
		<comments>http://www.locksmack.com/how-to-reverse-geocoding-with-google-maps/#comments</comments>
		<pubDate>Sun, 20 May 2012 04:49:38 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.locksmack.com/?p=119</guid>
		<description><![CDATA[Reverse geocoding is the process of converting a set of coordinates (latitude/longitude) into a human-readable address. The most common reason to do this with Google Maps is to plot the users location on a map, leveraging either their GPS coordinates (if available) or their estimated position using WiFi location data. I have created a prototype [...]]]></description>
			<content:encoded><![CDATA[<p>Reverse geocoding is the process of converting a set of coordinates (latitude/longitude) into a human-readable address. The most common reason to do this with Google Maps is to plot the users location on a map, leveraging either their GPS coordinates (if available) or their estimated position using WiFi location data.</p>
<p>I have created a prototype <del>page</del> site to show this functionality. It is usable on a PC, Mac, iPhone/iPad and Android device (possibly more, I didn&#8217;t bother checking Blackberry and Windows Phone) &#8211; it can be accessed <a title="What is this address" href="http://whatisthisaddress.org/" target="_blank">here</a>. It uses your availble coordinates (GPs or WiFi) to determine your approximate location and spit out an address. Here is the code:</p>
<pre>&lt;script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="modernizr.min.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="http://geo-location-javascript.googlecode.com/svn/trunk/js/geo.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=AIzaSyDf4yVlGBNJ-jOvGo-T35yfo5dRTDFOrGc&amp;sensor=true"&gt;&lt;/script&gt;
&lt;script type="text/javascript"&gt;
    $(document).ready(function(){
        if (Modernizr.geolocation) {
            if (geo_position_js.init()) {
                geo_position_js.getCurrentPosition(showLocation, gps_error_handler);
            }
        }
    });

    function showLocation(position) {
        var geocoder = new google.maps.Geocoder();
        var lat = position.coords.latitude;
        var lng = position.coords.longitude;
        var latlng = new google.maps.LatLng(lat, lng);
        geocoder.geocode({'latLng': latlng}, function(results, status) {
            if (status == google.maps.GeocoderStatus.OK) {
                if (results[1]) {
                    $('#address').text(results[0].formatted_address).show();
                }
            } else {
                alert("Geocoder failed due to: " + status);
            }
        });
    }

    function gps_error_handler(error){
        switch(error.code){  
            case error.PERMISSION_DENIED: alert("You must allow this site to use your GPS data to display your address.");  
            break;  

            case error.POSITION_UNAVAILABLE: alert("Sorry, your address could not be determined, please try again later.");  
            break;  

            case error.TIMEOUT: alert("Sorry, your address could not be determined, please try again later.");  
            break;  

            default: alert("Sorry, your address could not be determined, please try again later.");  
            break;  
        }  
    }
&lt;/script&gt;
&lt;div id="address"&gt;&lt;/div&gt;</pre>
<p>You can see I am using jQuery to run the code on DOM ready and do DOM manipulation with the results of the reverse geocode &#8211; you could do this with vanilla JavaScript, but I prefer the ease of jQuery. I am also using the <a href="http://modernizr.com/" target="_blank">Modernizer plugin</a> for feature detection, so we know if the users device supports GPS Location data. Please keep in mind you will need to get your own Google Maps script and API key from <a href="https://developers.google.com/maps/documentation/javascript/tutorial#api_key" target="_blank">here</a>. Just use what Google give you instead of the URL I am using.</p>
<p>The interesting part of the code is here:</p>
<pre>var geocoder = new google.maps.Geocoder();
var lat = position.coords.latitude;
var lng = position.coords.longitude;
var latlng = new google.maps.LatLng(lat, lng);
geocoder.geocode({'latLng': latlng}, function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
        if (results[1]) {
            $('#address').text(results[0].formatted_address).show();
        }
    } else {
         alert("Geocoder failed due to: " + status);
    }
});</pre>
<p>Firstly, we are creating a new Geocoder object named &#8220;geocoder&#8221;. Next, we are creating a google maps LatLng object with the Latitude and Longitude retrieved through the HTML5 GPS methods. Next we are simply feeding this LatLng object into our geocoder object method &#8220;geocode&#8221;, which returns what we want in it&#8217;s callback. We are using &#8216;results&#8217; as the results array &#8211; the further along the array you access, the more high-level the address returned is. For example, results[1] will return &#8220;1 Bourke Street Melbourne Victoria Australia&#8221;, but results[2] would return &#8220;Melbourne Victoria Australia&#8221;. Stick with [1] for the most accurate result.</p>
<p>I am then inserting the returned address (string) into my &#8216;address&#8217; div with jQuery, which was empty up until now.</p>
<p>And that&#8217;s about it! Google Maps can appear daunting when first working with it, but if you study the code above for 5 minutes, it will make a lot of sense.</p>
<p>If you have any questions or comments, please hit me up int he comments below and I will do my best to answer every query.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/how-to-reverse-geocoding-with-google-maps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Apple Approach</title>
		<link>http://www.locksmack.com/the-apple-approach/</link>
		<comments>http://www.locksmack.com/the-apple-approach/#comments</comments>
		<pubDate>Mon, 14 May 2012 13:19:03 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://blog.locksmack.com/?p=116</guid>
		<description><![CDATA[Those who know me well, actually&#8230;.those who know me at all, know that I am a hardcore Apple fan. As of writing this post, I own an iPhone 4, &#8220;new&#8221; iPad, MacBook Air and Apple TV, and an iMac on the way. I would like to give my thoughts on the way Apple products traditionally [...]]]></description>
			<content:encoded><![CDATA[<p>Those who know me well, actually&#8230;.those who know me at all, know that I am a hardcore Apple fan. As of writing this post, I own an iPhone 4, &#8220;new&#8221; iPad, MacBook Air and Apple TV, and an iMac on the way. I would like to give my thoughts on the way Apple products traditionally work, and hopefully enlighten those who laugh at us &#8216;fanbois&#8217;.</p>
<p>I&#8217;d like to acknowledge that there are degrees of fanboi-ism. Some people own one or two Apple products, enjoy them, but don&#8217;t care enough beyond that. Others own every Apple product that has ever existed and will irrationally defend them to death. I like to think I sit somewhere in the middle &#8211; I generally agree with Apples product decisions and enjoy the products they offer compared to competitors, but I do remain objective when assessing a new product or update that they release.</p>
<p>Now to my point &#8211; Apple focuses on the user experience, and only the user experience, something that eludes many Apple nay-sayers. Of course, in order to achieve a smooth, useable user experience, other factors come into play such as specifications, but these are not the focus. Tell me &#8211; which is more desirable, PC 1 which has 1 million gigaflops, or PC 2 with 1.2 million gigaflops? Does your decision change if I tell you that PC 1 actually loads quicker, has a smoother interface and is more stable? What I am trying to say is that specifications only tell part of the story and are only directly comparable when running the same software. In Apples case, I don&#8217;t think comparing specifications to a Windows PC is going to paint you a picture of which computer is better (to a point).</p>
<p>This is also, and probably even more so, true in the mobile world. I am yet to come across an Android phone that can match the perceived speed of the iPhone 4S (or even the 4), even though said Android phones may beat the iPhone in every way on paper. I am not only talking about the operating system, but also games and apps that are featured on both platforms.</p>
<p>We have a very opinionated team at work when it comes to mobile platforms, with many swearing allegiance with either Apple or Android. The Android crowd are always throwing specs at me as proof and justification as to why their new phone is superior to the iPhone. On the other hand, it is rare to find an iPhone owner saying anything other than &#8220;it works really well and is so easy&#8221;. Why should I care about an arbitrary number on a piece of paper compared to the experience that I am getting using the device I have spent good money on? Is it simply to brag?</p>
<p>Moving away from hardware and user experience talk now, I&#8217;d like to focus on the often discussed closed eco-system of Apple. Whether it is music, video or apps, all content must be download through Apple in order to be played on our new iDevice. This is something I don&#8217;t necessarily agree with &#8211; though I do actually like the way apples various stores operate, I do believe having the choice would be a good thing. With that said, I find it vastly superior to the Android marketplace (or play as it is now called). I do own an android device &#8211; a Samsung Galaxy Tablet, and find the Android marketplace absolutely full of crap. There is no quality control whatsoever, so many apps either have problems or don&#8217;t work at all. This is a big disappointment, especially considering Android has far less apps than the Apple App Store in the first place.</p>
<p>And lastly, my biggest issue with Android &#8211; fragmentation. When all products on a platform are created by a single company, there is a single point of support and development. This means that Apples products are just about guaranteed to play any app you can find in the app store without issue. Android faces many issues with app support, simply because there are just so many different phones to support. There are technical limitations to some phones that mean some apps will run slow or not at all, and there is also display issues due to the vast amount of screen sizes and display resolutions that must be supported by the developer. On top of this, many Android phones run custom versions of Android or have driver incompatibilities which cause even more issues when trying to develop or run apps on android devices. Apples closed system approach is definitely favourable when it comes to apps.</p>
<p>I haven&#8217;t covered every aspect of the war between Apple and it&#8217;s competitors here, but I would love for people to post their options in the comments and I will include them within my post.</p>
<p><strong>Disclaimer</strong> &#8211; I did not make this post to point out flaws with Android or other platforms, I actually think Android does many things well too. I simply wanted to focus on the strengths of Apple, how it compares with Android and hopefully change some minds about us one eyed Apple fans.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/the-apple-approach/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>My thoughts on Open Universities (OUA)</title>
		<link>http://www.locksmack.com/my-thoughts-on-open-universities-oua/</link>
		<comments>http://www.locksmack.com/my-thoughts-on-open-universities-oua/#comments</comments>
		<pubDate>Thu, 10 May 2012 07:16:40 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Philosophy]]></category>

		<guid isPermaLink="false">http://www.locksmack.com/?p=107</guid>
		<description><![CDATA[I have been a student with Open Universities Australia (OUA) for just over a year now, and about to start my fifth unit at the end of this month (Introduction to Japanese I in case you were wondering). Here are some thoughts for anyone contemplating studying with OUA. The jump into University study is a [...]]]></description>
			<content:encoded><![CDATA[<p>I have been a student with Open Universities Australia (OUA) for just over a year now, and about to start my fifth unit at the end of this month (Introduction to Japanese I in case you were wondering). Here are some thoughts for anyone contemplating studying with OUA.</p>
<p>The jump into University study is a big one for most students, but particularly so for students studying by correspondence. What we gain in flexibility, we lose in peer support and face-to-face time with our tutors and lecturers. Online study is by no means a cake-walk, and should be viewed as equally, if not more challenging than on-campus study. It is not the path for everyone, but it is a very good option for many with other commitments in life. Personally, I work full time, which severely limits the time I can spend studying &#8211; those with children would feel the pressure even more I imagine. This is the entire point of Open Universities &#8211; flexibility.</p>
<p>OUA offers an extensive range of degree&#8217;s to choose, from numerous educational institutes all around Australia. I have chosen to study the Bachelor of Arts, majoring in Philosophy, offered through OUA by Macquarie University. Perhaps one of the best things about OUA is that I am able to study units offered by universities that are not Macquarie &#8211; for example I did the &#8216;Internet Communications&#8217; unit by Curtin as an elective for my Arts Bachelor. I do have to fulfill a certain amount of Macquarie units, but others I am free to complete elsewhere.</p>
<p>So how have I found the experience in my year+ of study with OUA? Not bad. There certainly isn&#8217;t anything wrong with the operational model of OUA &#8211; it all comes down to the individual. Although I started strong in my first couple of units, I found myself studying less and less as time went on, affecting my grades a fair bit. Every now and then I pick up my game however, so long-term, my study is sustainable, I just need to work harder at it. To put things into perspective, I am, by design, a rather lazy person. If you consider yourself the opposite, I have no doubt you will do quite well with OUA.</p>
<p>My biggest suggestion for new students is to start with just one unit in your first study period. Use this to gauge the workload and decide in the future if you want to take on multiple units in a single study period. For me, one is enough &#8211; though it does mean my Bachelor will take 6 years to complete (I&#8217;m not in a hurry). One unit per study period is thought of as part-time study, and 2 or more is considered full-time. Each year there are four study periods.</p>
<p>I mentioned earlier that correspondence studying lacks peer support. It absolutely does compared to on-campus study, but it is not totally absent. I have made several study-buddies in my units and we keep in contact usually through Facebook. It is a good idea to engage with as many of your peers as you can to share thoughts and help each other out. Often I am able to ask a quick question on Facebook and get a response from a peer straight away, rather than ask my tutor and wait potentially days for an answer. Just because you aren&#8217;t physically with your peers doesn&#8217;t mean you should ignore them.</p>
<p>Open Universities operates (mostly) as a no-commitment study platform. You are able to pick up even a single unit without committing to any further study &#8211; this is great if you simply want to test the waters. Also worth noting is that study through OUA can take advantage of FEE-HELP, so long as you qualify for it.</p>
<p>Finally, there are, for most units/degrees, no entrance requirements. Simply sign up and start studying. This is great if you did lousy in your VCE/HSC but still want to do University.</p>
<p>To conclude, I am quite fond of the OUA model. I do urge anyone thinking about studying with OUA to give it a go, even for just one unit. Remember, there are no commitments, if you decide it&#8217;s not for you, all you have lost is a few hundred dollars (likely through FEE-HELP anyway), hardly the end of the world. It does take motivation to keep up the study, so try to stay focused!</p>
<p>As a current OUA student I am happy to answer any questions anyone has. Just leave a comment below.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/my-thoughts-on-open-universities-oua/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why most (not all) Internet privacy concerns are silly</title>
		<link>http://www.locksmack.com/why-most-not-all-internet-privacy-concerns-are-silly/</link>
		<comments>http://www.locksmack.com/why-most-not-all-internet-privacy-concerns-are-silly/#comments</comments>
		<pubDate>Wed, 25 Apr 2012 07:40:38 +0000</pubDate>
		<dc:creator>locksmack</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.locksmack.com/?p=101</guid>
		<description><![CDATA[I read about Internet privacy concerns in the media often, and am bombarded with these concerns at my job &#8211; but I think most arguments about how the Internet gods (Google, Apple, Microsoft) are stealing personal information are not of concern at all. Here&#8217;s why&#8230; Let me preface this post by stating upfront that I [...]]]></description>
			<content:encoded><![CDATA[<p>I read about Internet privacy concerns in the media often, and am bombarded with these concerns at my job &#8211; but I think most arguments about how the Internet gods (Google, Apple, Microsoft) are stealing personal information are not of concern at all. Here&#8217;s why&#8230;</p>
<p>Let me preface this post by stating upfront that I am not referring to the obvious problematic personal information like bank/credit card details, but rather search history, browsing and shopping habits and other superficial information that is often automatically collected.</p>
<p>What is the concern? What problems do people see coming from third parties collecting this information from you? The obvious use for companies wanting to extract this information is for targeted advertising &#8211; perhaps showing an ad for BMW if you have been searching for cars recently. I for one absolutely welcome targeted advertising. If a website is going to shove ads down my throat, at least they may be somewhat relevant to me. I would rather google make me aware of a special on sports cars, than tell me that my tampon isn&#8217;t absorbent enough. This makes for happier users and happier advertisers. Who loses?</p>
<p>Unless you are the president of a country, do you think anyone cares what you are googling? Don&#8217;t kid yourself that there is a team of people dedicated to stealing your identity based on your Internet habits &#8211; you, just like me, are (most likely) not all that exciting to the powers that be. No one cares if I look up erectile dysfunction (this is an example! :p) or pornography, and why should they? I have nothing to hide from the world, and if you think you do, you may want to have a chat with a councillor.</p>
<p>Anywho, I would love some feedback on this. As with every point of view, there is always another and I would love for people to show me why I am wrong. Please post below.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.locksmack.com/why-most-not-all-internet-privacy-concerns-are-silly/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
