<?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>At the end of the Web</title>
	<atom:link href="http://martinhansen.no/feed/" rel="self" type="application/rss+xml" />
	<link>http://martinhansen.no</link>
	<description>meh</description>
	<lastBuildDate>Sun, 09 Oct 2011 17:42:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>ASUS U36SD windows experience index score</title>
		<link>http://martinhansen.no/2011/10/05/asus-u36sd-windows-experience-index-score/</link>
		<comments>http://martinhansen.no/2011/10/05/asus-u36sd-windows-experience-index-score/#comments</comments>
		<pubDate>Wed, 05 Oct 2011 14:31:39 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=271</guid>
		<description><![CDATA[After getting my new laptop, an ASUS U36SD, weighting only 1,7 KG, replacing the HDD with an SSD and upgrading the RAM to 8 GB (I can&#8217;t believe how cheap ram is these days.) I ran the windows experience index test. These are the results I came up with. I think that is pretty good [...]]]></description>
			<content:encoded><![CDATA[<p>After getting my new laptop, an ASUS U36SD, weighting only 1,7 KG, replacing the HDD with an SSD and upgrading the RAM to 8 GB (I can&#8217;t believe how cheap ram is these days.) I ran the windows experience index test. These are the results I came up with.</p>
<p><a href="http://martinhansen.no/wp-content/uploads/experience.png"><img src="http://martinhansen.no/wp-content/uploads/experience.png" alt="" title="windows experience index score asus u36sd" width="653" height="198" class="aligncenter size-full wp-image-272" /></a></p>
<p>I think that is pretty good for a laptop of this size and price.</p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2011/10/05/asus-u36sd-windows-experience-index-score/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Format your json with userscript</title>
		<link>http://martinhansen.no/2011/09/08/format-your-json-with-userscript/</link>
		<comments>http://martinhansen.no/2011/09/08/format-your-json-with-userscript/#comments</comments>
		<pubDate>Thu, 08 Sep 2011 18:56:02 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=254</guid>
		<description><![CDATA[I have created a very small userscript for opera (might work ok with other browsers) that formats /indents/ beautifies the JSON data in a document if it&#8217;s only JSON there. For opera to open the JSON by itself and this to work (the default is to present it as a download), you will have to [...]]]></description>
			<content:encoded><![CDATA[<p>I have created a very small userscript for opera (might work ok with other browsers) that formats /indents/ beautifies the JSON data in a document if it&#8217;s only JSON there.</p>
<p>For opera to open the JSON by itself and this to work (the default is to present it as a download), you will have to enable that in opera. Go to preferences -> advanced -> downloads -> Add</p>
<p>Mimetype: application/json<br />
Select open with opera</p>
<p>That will result in your JSON looking like this in the browser:<br />
<a href="http://martinhansen.no/wp-content/uploads/large.png"><img src="http://martinhansen.no/wp-content/uploads/large.png" alt="" title="large" width="770" height="386" class="aligncenter size-full wp-image-265" /></a></p>
<pre class="brush: javascript">
// ==UserScript==
// @name 		   JSON formatter
// @version        1.0
// @description	   Formats JSON if the document only contains JSON
// @compability    Only tested with Opera, might work with others
// @author		   Martin Hansen
// @website        http://martinhansen.no
// ==/UserScript==
(function(){
	var indentation = 4;//Change this to vary the indentation

	var pre = document.querySelector(&#039;body pre:only-child&#039;);
	if(!pre) return; //Don&#039;t do anything if this don&#039;t seem to be a json only document
	try{
		pre.innerHTML = JSON.stringify(JSON.parse(pre.innerHTML), null,indentation);
	}
	catch(e){
		console.log(e);
	}
})();
</pre>
<p>
Either save the sourcecode directly from here, or get it from <a href="http://userscripts.org/scripts/show/112472">userscripts.org</a></p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2011/09/08/format-your-json-with-userscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Text selection mode off in opera</title>
		<link>http://martinhansen.no/2011/06/13/text-selection-mode-off-in-opera/</link>
		<comments>http://martinhansen.no/2011/06/13/text-selection-mode-off-in-opera/#comments</comments>
		<pubDate>Mon, 13 Jun 2011 14:01:55 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=249</guid>
		<description><![CDATA[A nice feature in opera is to turn off text selection when dragging on the web page. For instance when using opera on an iPad over remote desktop to your pc. This allows you to drag the page as you would in the native browser on the iPad. To enable this, right click any toolbar [...]]]></description>
			<content:encoded><![CDATA[<p>A nice feature in opera is to turn off text selection when dragging on the web page. For instance when using opera on an iPad over remote desktop to your pc. This allows you to drag the page as you would in the native browser on the iPad.</p>
<p>To enable this, right click any toolbar and press customize &#8211; apperance &#8211; buttons &#8211; browser view. Then drag the button &#8220;text selection on&#8221; to any toolbar of your choice. Then whenever you want to activate the mode, click the button.</p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2011/06/13/text-selection-mode-off-in-opera/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting the bearing/heading betweet 2 coordinates</title>
		<link>http://martinhansen.no/2011/04/14/getting-the-bearingheading-betweet-2-coordinates/</link>
		<comments>http://martinhansen.no/2011/04/14/getting-the-bearingheading-betweet-2-coordinates/#comments</comments>
		<pubDate>Thu, 14 Apr 2011 10:33:07 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[bearing]]></category>
		<category><![CDATA[google maps]]></category>
		<category><![CDATA[heading]]></category>
		<category><![CDATA[panorama]]></category>
		<category><![CDATA[streetview]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=242</guid>
		<description><![CDATA[Thanks to rjsteward with his answer over at stackoverflow.com I have now a simple function for getting the bearing between to coordinates: The function is meant to be used with google maps, so the parameters are google.maps.LatLng objects function getBearing (from, to) { var lat1 = from.lat() * Math.PI / 180; var lon1 = from.lng(); [...]]]></description>
			<content:encoded><![CDATA[<p>Thanks to <a href="http://stackoverflow.com/users/76639/rjsteward">rjsteward</a> with his <a href="http://stackoverflow.com/questions/1971585/mapping-math-and-javascript">answer</a> over at stackoverflow.com I have now a simple function for getting the bearing between to coordinates:</p>
<p>The function is meant to be used with google maps, so the parameters are google.maps.LatLng objects </p>
<pre class="brush: javascript">
function getBearing (from, to) {
            var lat1 = from.lat() * Math.PI / 180;
            var lon1 = from.lng();

            var lat2 = to.lat() * Math.PI / 180;
            var lon2 = to.lng();

            var dLon = (lon2 - lon1) * Math.PI / 180;
            var y = Math.sin(dLon) * Math.cos(lat2);
            var x = Math.cos(lat1) * Math.sin(lat2) - Math.sin(lat1) * Math.cos(lat2) * Math.cos(dLon);

            var bearing = Math.atan2(y, x) * 180 / Math.PI;
            if (bearing &lt; 0) {
                bearing = bearing + 360;
            }
            return bearing;
        }
</pre>
<p>This allows you to easily set the heading in the streetview, between your &#8220;streetviewman&#8221; and the actual position you are trying to see. So that you are looking to that direction from the street.</p>
<pre class="brush: javascript">
map.getStreetView().setPov({ heading: getBearing(streetViewManPosition, myLocationPosition), zoom: 1, pitch: 0 });
</pre>
<p>Resulting in something like this:</p>
<p><a href="http://martinhansen.no/wp-content/uploads/streetview-heading.png"><img src="http://martinhansen.no/wp-content/uploads/streetview-heading.png" alt="" title="streetview heading" width="475" height="255" class="aligncenter size-full wp-image-245" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2011/04/14/getting-the-bearingheading-betweet-2-coordinates/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to return clean JSON from EF object with data attributes</title>
		<link>http://martinhansen.no/2011/04/04/how-to-return-clean-json-from-ef-object-with-data-attributes/</link>
		<comments>http://martinhansen.no/2011/04/04/how-to-return-clean-json-from-ef-object-with-data-attributes/#comments</comments>
		<pubDate>Mon, 04 Apr 2011 16:25:16 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[asp.net]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[attributes]]></category>
		<category><![CDATA[entity framework]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[mvc]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=232</guid>
		<description><![CDATA[Returning JSON is very simple in ASP.NET MVC: return Json(Person, JsonRequestBehavior.AllowGet); (Person is an Entity Framework object) The problem with this is if Person have related objects, like e.g. Friends. Then the serializer will throw an error because it will get a circular reference when tying to serialize Person. So one common solution is to [...]]]></description>
			<content:encoded><![CDATA[<p>Returning JSON is very simple in ASP.NET MVC:</p>
<pre class="brush: c#">
 return Json(Person,  JsonRequestBehavior.AllowGet);
</pre>
<p>(Person is an Entity Framework object)</p>
<p>The problem with this is if Person have related objects, like e.g. Friends. Then the serializer will throw an error because it will get a circular reference when tying to serialize Person.</p>
<p>So one common solution is to just create a new anonymous object on the fly like so:</p>
<pre class="brush: c#">
 return Json(new {Name = Person.Name, Age = Person.Age},  JsonRequestBehavior.AllowGet);
</pre>
<p>A second solution is to create a <a href="http://en.wikipedia.org/wiki/Plain_Old_CLR_Object">Poco</a> class that you fill with data from the entity object.</p>
<p>A third solution is to &#8220;tag&#8221; your model members with Attributes. But you cannot do this with an EF class, since the codefile is autogenerated, and if you change the code then your changes will be overwritten the next time you use the designer.</p>
<p>The following code demonstrates how to make this work anyway. </p>
<pre class="brush: c#">
public class PocoAttribute : System.Attribute
{
}

[MetadataType(typeof(PersonMeta))]
public partial class Person
{
}

public class PersonMeta
{
    [Poco]
    public string Name { get; set; }
    [Poco]
    public int Age { get; set; }
}
</pre>
<p>This is the same approach used to add data annotations to members in your EF objects. (See <a href="http://www.asp.net/mvc/tutorials/validation-with-the-data-annotation-validators-cs">http://www.asp.net/mvc/tutorials/validation-with-the-data-annotation-validators-cs</a>)</p>
<p>Now we need a way to automatically return a JsonResult with only the properties we have given our attribute to. For this we can create an extension method:</p>
<pre class="brush: c#">
public static Dictionary&lt;string, object&gt; GetPocoDictionary(this EntityObject obj)
{
    PropertyInfo[] properties = obj.GetType().GetProperties();
    var pocoMembers = properties.Where(d=&gt; d.GetCustomAttributes(typeof(PocoAttribute), true).Count() &gt;= 1).ToArray();

    var metadataAttribute = (MetadataTypeAttribute)obj.GetType()
    .GetCustomAttributes(typeof(MetadataTypeAttribute), true).FirstOrDefault();

    var metaClassMembers = metadataAttribute.MetadataClassType.GetProperties()
    .Where(d=&gt; d.GetCustomAttributes(typeof(PocoAttribute), true).Count() &gt;= 1).ToArray();

    var combinedPoco = pocoMembers.Union(metaClassMembers);
    var allMembers = from propall in properties
                     join combined in combinedPoco on propall.Name equals combined.Name
                     select propall;

    var dict = new Dictionary&lt;string, object&gt;();
    foreach (var item in allMembers)
    {
        dict.Add(item.Name, item.GetValue(obj, null));
    }
    return dict;
}
</pre>
<p>This will take any EF object and return a dictionary with only the members that we have given the attribute to.<br />
Now to use it:</p>
<pre class="brush: c#">
 return Json(Person.GetPocoDictionary(),  JsonRequestBehavior.AllowGet);
</pre>
<p>That&#8217;s it!</p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2011/04/04/how-to-return-clean-json-from-ef-object-with-data-attributes/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>jQuery checkbox/radiobutton dependence plugin</title>
		<link>http://martinhansen.no/2011/03/29/jquery-dependance-plugin/</link>
		<comments>http://martinhansen.no/2011/03/29/jquery-dependance-plugin/#comments</comments>
		<pubDate>Tue, 29 Mar 2011 13:44:57 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=208</guid>
		<description><![CDATA[I have made a small jQuery plugin that enables you to have checkboxes and radiobuttons that depends on each other in a nested way. The usage is very simple, just take a collection of radios or checkboxes and define an element they depend on. If you check an element that depends on something, the parent [...]]]></description>
			<content:encoded><![CDATA[<p>I have made a small jQuery plugin that enables you to have checkboxes and radiobuttons that depends on each other in a nested way.</p>
<p>The usage is very simple, just take a collection of radios or checkboxes and define an element they depend on. If you check an element that depends on something, the parent will be checked as well.</p>
<p>In the same way, if you uncheck a parent element that have children, then the children will be unchecked as well.</p>
<p>The plugin is designed to also work with jQuery UI buttons</p>
<pre class="brush: javascript">
$(&#039;#fruitlist&gt;li&gt;input&#039;).dependsOn(&#039;#fruits&#039;);
$(&#039;#citruslist input&#039;).dependsOn(&#039;#citrus&#039;);
</pre>
<pre class="brush: javascript">
&lt;ul&gt;
	&lt;li&gt;&lt;input type=&quot;radio&quot; name=&quot;products&quot; value=&quot;books&quot;&gt;books&lt;/li&gt;
	&lt;li&gt;&lt;input type=&quot;radio&quot; name=&quot;products&quot; id=&quot;fruits&quot; value=&quot;fruits&quot;&gt;fruits
		&lt;ul id=&quot;fruitlist&quot;&gt;
			&lt;li&gt;&lt;input type=&quot;checkbox&quot;&gt;apples&lt;/li&gt;
			&lt;li&gt;&lt;input type=&quot;checkbox&quot; id=&quot;citrus&quot;&gt;citrus fruits
				&lt;ul id=&quot;citruslist&quot;&gt;
					&lt;li&gt;&lt;input type=&quot;radio&quot; name=&quot;citrus&quot;&gt;lemons&lt;/li&gt;
					&lt;li&gt;&lt;input type=&quot;radio&quot; name=&quot;citrus&quot;&gt;oranges&lt;/li&gt;
				&lt;/ul&gt;
			&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;&lt;input type=&quot;radio&quot; name=&quot;products&quot; value=&quot;pens&quot;&gt;pens&lt;/li&gt;
&lt;/ul&gt;
</pre>
<p><strong>Demo:</strong></p>
<style>
ul{
list-style:none;
}
</style>
<p><script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js" type="text/javascript"></script><br />
<script src="http://martinhansen.no/wp-content/uploads/dependancy1.js" type="text/javascript"></script> </p>
<p><script type="text/javascript">
   $(function(){
       $('#fruitlist>li>input').dependsOn('#fruits');
       $('#citruslist input').dependsOn('#citrus');
    });
</script></p>
<ul>
<li>
<input type="radio" name="products" value="books">books</li>
<li>
<input type="radio" name="products" id="fruits" value="fruits">fruits</p>
<ul id="fruitlist">
<li>
<input type="checkbox">apples</li>
<li>
<input type="checkbox" id="citrus">citrus fruits</p>
<ul id="citruslist">
<li>
<input type="radio" name="citrus">lemons</li>
<li>
<input type="radio" name="citrus">oranges</li>
</ul>
</li>
</ul>
</li>
<li>
<input type="radio" name="products" value="pens">pens</li>
</ul>
<p>Here is the code:</p>
<pre class="brush: javascript">
/* jQuery checkbox/radiobutton dependance plugin
* By Martin Hansen http://martinhansen.no
* MIT Licensed.
*/
(function($) {
  $.fn.dependsOn = function(parent) {
    // build main options before element iteration
    if(parent === undefined){ console.log(&#039;Parent is required&#039;); return;   }        

    var opts = {parent: parent, value: null};

     //If parent is a radiobutton part of a group, make the group the parent
    if($(opts.parent).attr(&#039;type&#039;) == &#039;radio&#039;){
      opts.origparent  = $(opts.parent);
      opts.parent = &#039;input[name=&#039; +$(opts.parent).attr(&#039;name&#039;) +&#039;]&#039;;
    }  

    return this.each(function() {
    var caller = $(this);
    $.data(this, &#039;dependsOnOptions&#039;, opts);//Store the dependency options

    caller.bind(&#039;click iterate&#039;, function(event){
      var parent = (opts.origparent) ? opts.origparent : $(opts.parent);
      parent.attr(&#039;checked&#039;, true).trigger(&#039;iterate&#039;, [&#039;Iterate&#039;, &#039;Event&#039;]);
      if (jQuery.ui)parent.button(&#039;refresh&#039;); //If jquery ui is loaded try to refesh button
    });              

    $(opts.parent).each(function(i){
      var pp = $(this);
      //Do first time checks
      var checked = pp.attr(&#039;checked&#039;);
      if(checked){
        $.fn.dependsOn.check(pp, caller, opts);
      }
      //bind for change
      pp.change(function(event){
        $.fn.dependsOn.check($(this), caller, opts);
      });
    });

   });
  };     

   $.fn.dependsOn.check = function(parent, child, opts){
    if (!parent.is(&#039;:checked&#039;) || !$(opts.origparent).is(&#039;:checked&#039;)) {
      child.attr(&#039;checked&#039;, false).change(); //uncheck the checked child, and trigger the change event so that any potential grandchildren also gets updated
      if (jQuery.ui)parent.button(&#039;refresh&#039;); //If jquery ui is loaded try to refesh button
    }
   };
})(jQuery);
</pre>
<p>On github: <a href="https://github.com/mokkabonna/jQuery-dependency">https://github.com/mokkabonna/jQuery-dependency</a></p>
<p>Edit:updated the code to use .is(&#8216;:checked&#8217;) instead of .attr(&#8216;checked&#8217;), as jQuery 1.6.3 returns &#8216;checked&#8217; instead of true. Thanks to &#8220;all&#8221; in the comments for making me aware of if.</p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2011/03/29/jquery-dependance-plugin/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Network problems with DNS symptoms</title>
		<link>http://martinhansen.no/2010/03/14/network-problems-with-dns-symptoms/</link>
		<comments>http://martinhansen.no/2010/03/14/network-problems-with-dns-symptoms/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 19:16:09 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=185</guid>
		<description><![CDATA[If you are having what seems to be DNS problems in your network, but others seem to connect without problems it might not be DNS problems at all, but something to do with your MTU setting, read more here. This solved a problem I&#8217;ve had for a long time on a friends network.]]></description>
			<content:encoded><![CDATA[<p>If you are having what seems to be DNS problems in your network, but others seem to connect without problems it might not be DNS problems at all, but something to do with your MTU setting, read more <a href="http://groups.google.com/group/blogger-help/web/how-to-check-the-mtu-setting-on-your-computer">here</a>. This solved a problem I&#8217;ve had for a long time on a friends network.</p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2010/03/14/network-problems-with-dns-symptoms/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Harvest time tracking widget for Opera</title>
		<link>http://martinhansen.no/2010/03/14/harvest-widget-for-opera/</link>
		<comments>http://martinhansen.no/2010/03/14/harvest-widget-for-opera/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 18:52:33 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=188</guid>
		<description><![CDATA[I&#8217;ve made a Opera widget that connects to Harvest, a time tracking/invoicing service which is great. The widget is built using only HTML/CSS/Javascript(jQuery) and since I only need to support Opera, I have used technologies like web databases, rounded CSS corners, box shadow etc. Also nice to have the ability to use CSS selectors like [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve made a Opera widget that connects to <a href="http://getharvest.com">Harvest</a>, a time tracking/invoicing service which is great. The widget is built using only HTML/CSS/Javascript(jQuery) and since I only need to support Opera, I have used technologies like web databases, rounded CSS corners, box shadow etc. Also nice to have the ability to use CSS selectors like :last-of-type to make things easier.</p>
<p><a href="http://martinhansen.no/wp-content/uploads/screenshot.png"><img class="aligncenter size-full wp-image-189" title="Screenshot" src="http://martinhansen.no/wp-content/uploads/screenshot.png" alt="" width="450" height="237" /></a></p>
<p><a href="http://widgets.opera.com/widget/16042/1.0/">Download it here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2010/03/14/harvest-widget-for-opera/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>HowTo: Set google &#8220;I&#8217;m Feeling Lucky&#8221; as default search</title>
		<link>http://martinhansen.no/2009/10/23/howto-set-google-im-feeling-lucky-as-default-search/</link>
		<comments>http://martinhansen.no/2009/10/23/howto-set-google-im-feeling-lucky-as-default-search/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 16:43:01 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[default search]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[opera]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=163</guid>
		<description><![CDATA[URL&#8217;s suck. When I want to go to Google calendar I want to type just that, or even google cal. Instead of Google dot com slash calendar. When I want to see today&#8217;s episode of Colbert report, I should be able to type that in the address bar even though the address is colbertnation dot [...]]]></description>
			<content:encoded><![CDATA[<p>URL&#8217;s suck.</p>
<p>When I want to go to Google calendar I want to type just that, or even google cal. Instead of Google dot com slash calendar. When I want to see today&#8217;s episode of Colbert report, I should be able to type that in the address bar even though the address is colbertnation dot com.</p>
<p>Enter Google&#8217;s &#8220;I&#8217;m Feeling Lucky&#8221; search. Below is a guide to set Google&#8217;s &#8220;I feel lucky&#8221; as default search in various browsers:</p>
<p>Opera:</p>
<ul>
<li> Open Google.com, or your favorite Google page.</li>
<li>Right click the search field and select &#8220;Add custom search&#8221;</li>
<li>Click details, in the address field you will see something like this:</li>
</ul>
<blockquote><p>http://www.google.com/search?hl=en&amp;source=hp&amp;q=%s&amp;btnG=Google+Search&amp;aq=f&amp;oq=&amp;aqi=</p></blockquote>
<ul>
<li> Now, change  btnG=Google+Search to btnI, so it looks like this:</li>
</ul>
<blockquote><p>http://www.google.com/search?hl=en&amp;source=hp&amp;q=%s&amp;btnI&amp;aq=f&amp;oq=&amp;aqi=</p></blockquote>
<ul>
<li>Finally check &#8220;Use this as default search engine&#8221;</li>
</ul>
<p>Chrome:</p>
<ul>
<li>Enter options -&gt; Basics -&gt;Default search section, click manage.</li>
<li>Select the already existing Google search, click edit, copy the URL.</li>
<li>Close, and add new.</li>
<li>Type a name and, leave keyword empty, and paste into the URL that which you copied and add &amp;btnI, it should be something like this:</li>
</ul>
<blockquote><p>{google:baseURL}search?{google:RLZ}{google:acceptedSuggestion}{google:originalQueryForSuggestion}sourceid=chrome&amp;ie={inputEncoding}&amp;q=%s&amp;btnI</p></blockquote>
<ul>
<li>Click ok, and then set as default.</li>
<li>You can still search with Google by typing  the keyword (google.com) and then you&#8217;ll see the search appear under the address bar.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2009/10/23/howto-set-google-im-feeling-lucky-as-default-search/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dragging and resizing windows easily</title>
		<link>http://martinhansen.no/2009/10/22/dragging-and-resizing-windows-easily/</link>
		<comments>http://martinhansen.no/2009/10/22/dragging-and-resizing-windows-easily/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 22:41:22 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[KDE]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://martinhansen.no/?p=171</guid>
		<description><![CDATA[My absolute favourite feature of KDE on linux is the ability to move a window by holding down the Alt button and left-clicking ANYWHERE in the window, and also to hold down Alt and the right-click to easily resize the window. (Why do we need huge window edges MS?) These features I really miss on [...]]]></description>
			<content:encoded><![CDATA[<p>My absolute favourite feature of KDE on linux is the ability to move a window by holding down the Alt button and left-clicking ANYWHERE in the window, and also to hold down Alt and the right-click to easily resize the window. (Why do we need huge window edges MS?)</p>
<p>These features I really miss on windows, but I finally found a small program that makes that possible on windows. It has the awesome name of <a href="http://corz.org/windows/software/accessories/KDE-resizing-moving-for-XP-or-Vista.php">KDE Mover-Sizer</a> <img src='http://martinhansen.no/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://martinhansen.no/2009/10/22/dragging-and-resizing-windows-easily/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

