<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:posterous="http://posterous.com/help/rss/1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>some stuff</title>
    <link>http://www.mmurthy.com</link>
    <description>Most recent posts at some stuff</description>
    <generator>posterous.com</generator>
    <link xmlns="http://www.w3.org/2005/Atom" href="http://posterous.com/api/sup_update#5abaa2922" type="application/json" rel="http://api.friendfeed.com/2008/03#sup" />
    
    
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/MaheshMurthy" /><feedburner:info uri="maheshmurthy" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://posterous.superfeedr.com/" /><item>
      <pubDate>Sat, 10 Sep 2011 22:44:00 -0700</pubDate>
      <title>Just 5 bash shortcuts</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/EKo7ETOfCLs/just-5-bash-shortcuts</link>
      <guid isPermaLink="false">http://www.mmurthy.com/just-5-bash-shortcuts</guid>
      <description>&lt;p&gt;
	&lt;p&gt;Saw a good blog post on bash short cuts. I won't remember all of them for sure. So, going to get used to just 5 of these.&lt;/p&gt;
&lt;p&gt;Fire up a bash/zsh whatever your favorite shell is and try these.&lt;/p&gt;
&lt;p&gt;Ctrl + k =&amp;gt; Delete from cursor to end of line&lt;/p&gt;
&lt;p&gt;Ctrl + u =&amp;gt; Delete from cursor to beginning of line&lt;/p&gt;
&lt;p&gt;Ctrl + b =&amp;gt; Move the cursor back one character&lt;/p&gt;
&lt;p&gt;Ctrl + f =&amp;gt; Move the cursor forward one character&lt;/p&gt;
&lt;p&gt;Ctrl + t =&amp;gt; swap the character under the cursor and the previous one&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I just did the above a bunch of times. Pretty sure it has gone into my long term memory now :)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Have a good weekend,&lt;br /&gt; Mahesh&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/just-5-bash-shortcuts"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/just-5-bash-shortcuts#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/EKo7ETOfCLs" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/just-5-bash-shortcuts</feedburner:origLink></item>
    <item>
      <pubDate>Tue, 23 Aug 2011 06:09:00 -0700</pubDate>
      <title>css frameworks</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/RTorPmwT4Ok/css-frameworks</link>
      <guid isPermaLink="false">http://www.mmurthy.com/css-frameworks</guid>
      <description>&lt;p&gt;
	&lt;p&gt;For my new project, I was looking for a good css layout to use. I have never been comfortable pulling an entire theme I found online into my project. I find it too messy because I wouldn't know what is going on in those styles and layouts for the most part and I would leave most of it unused. What I used to do is extract some layouts, styles etc. from the theme I like and build on that idea.&lt;/p&gt;
&lt;p&gt;Last week twitter released there collection of css and js which can be easily used as a framework for your site's design. You can check out their blog post &lt;a href="https://dev.twitter.com/blog/bootstrap-twitter"&gt;here&lt;/a&gt; and the code is &lt;a href="https://github.com/twitter/bootstrap"&gt;here&lt;/a&gt;. I was looking into it and through hackernews I found some other similar frameworks like &lt;a href="http://getskeleton.com/"&gt;skeleton&lt;/a&gt;, &lt;a href="http://www.blueprintcss.org/)"&gt;blueprint&lt;/a&gt;, &lt;a href="http://html5boilerplate.com/"&gt;boilerplate&lt;/a&gt;, &lt;a href="http://thatcoolguy.github.com/gridless-boilerplate/"&gt;gridless&lt;/a&gt;,&lt;a href="http://960.gs/"&gt; 960.js&lt;/a&gt;&amp;nbsp;and so on. I ended up going with skeleton because it looked simple, lightweight and easy to use.&lt;/p&gt;
&lt;p&gt;After tinkering with it for few days now, I think any one like me who is not good at these UI things and pretty much hates doing it but have no other option should definitely give it a shot.&lt;/p&gt;
&lt;p&gt;That's it for now. Back to my floats, styles, and clearfix!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Cheers,&lt;/p&gt;
&lt;p&gt;Mahesh Murthy&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/css-frameworks"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/css-frameworks#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/RTorPmwT4Ok" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/css-frameworks</feedburner:origLink></item>
    <item>
      <pubDate>Sun, 07 Aug 2011 21:48:00 -0700</pubDate>
      <title>jquery - Part 3</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/CnKdL-Z8q28/jquery-part-3</link>
      <guid isPermaLink="false">http://www.mmurthy.com/jquery-part-3</guid>
      <description>&lt;p&gt;
	&lt;p&gt;I am continuing with my jquery book after a 3 week break. I was in Boston for 2 weekends and last weekend was busy moving into my new apartment (continuing to be a nomad in chicago).&lt;/p&gt;
&lt;p&gt;Chapter 2 was all about different ways of selecting dom elements and such. Chapter 3 is about selecting and filtering and manipulating dom elements. The blog post on Chapter 2 turned out to be really shabby with horrible formatting and not very clear content. So, trying to make amends this time. Let's see how it goes.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Problem:&amp;nbsp;&lt;/strong&gt;Given the below html, how do you extract the urls from it?&lt;/p&gt;
&lt;div&gt;&lt;div class="data type-html"&gt;
    
      &lt;table class="lines" cellspacing="0" cellpadding="0"&gt;
        &lt;tr&gt;
          &lt;td&gt;
            &lt;pre class="line_numbers"&gt;&lt;span rel="#L1" id="L1"&gt;1&lt;/span&gt;
&lt;span rel="#L2" id="L2"&gt;2&lt;/span&gt;
&lt;span rel="#L3" id="L3"&gt;3&lt;/span&gt;
&lt;span rel="#L4" id="L4"&gt;4&lt;/span&gt;
&lt;/pre&gt;
          &lt;/td&gt;
          &lt;td width="100%"&gt;
            
              
                &lt;div class="highlight"&gt;&lt;pre /&gt;&lt;div class="line" id="LC1"&gt;&lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://mmurthy.com&amp;gt;mahesh&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC2"&gt;&lt;span class="s"&gt;&amp;lt;a href=&amp;quot;&lt;/span&gt;&lt;span class="na"&gt;http:&lt;/span&gt;&lt;span class="err"&gt;//&lt;/span&gt;&lt;span class="na"&gt;thecollegestuff&lt;/span&gt;&lt;span class="err"&gt;.&lt;/span&gt;&lt;span class="na"&gt;com&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Failure 1&lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC3"&gt;&lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://theecofind.com&amp;gt;Failure 2&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC4"&gt;&lt;span class="s"&gt;&amp;lt;a href=&amp;quot;&lt;/span&gt;&lt;span class="na"&gt;http:&lt;/span&gt;&lt;span class="err"&gt;//&lt;/span&gt;&lt;span class="na"&gt;laytime&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Failure 3&lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
              
            
          &lt;/td&gt;
        &lt;/tr&gt;
      &lt;/table&gt;
    
  &lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;: Enter jquery method each(). So, you would do&lt;/p&gt;
&lt;p&gt;&lt;div class="data type-javascript"&gt;
    
      &lt;table class="lines" cellspacing="0" cellpadding="0"&gt;
        &lt;tr&gt;
          &lt;td&gt;
            &lt;pre class="line_numbers"&gt;&lt;span rel="#L1" id="L1"&gt;1&lt;/span&gt;
&lt;span rel="#L2" id="L2"&gt;2&lt;/span&gt;
&lt;span rel="#L3" id="L3"&gt;3&lt;/span&gt;
&lt;/pre&gt;
          &lt;/td&gt;
          &lt;td width="100%"&gt;
            
              
                &lt;div class="highlight"&gt;&lt;pre /&gt;&lt;div class="line" id="LC1"&gt;&lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;href&lt;/span&gt;&lt;span class="p"&gt;]).&lt;/span&gt;&lt;span class="nx"&gt;each&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC2"&gt;&amp;nbsp;&amp;nbsp;&lt;span class="nx"&gt;urls&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;attr&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;href&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC3"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
              
            
          &lt;/td&gt;
        &lt;/tr&gt;
      &lt;/table&gt;
    
  &lt;/div&gt;&lt;/p&gt;
&lt;p&gt;It is pretty self explanatory. You pass in a callback function to each method which is applied to each element of the selected array of anchor elements.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Problem&lt;/strong&gt;: Now from the above html, what if you wanted to select the 3rd link and apply some highlighting to it?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;: You would use the eq(index) method to do that.&lt;/p&gt;
&lt;p&gt;&lt;div class="data type-javascript"&gt;
    
      &lt;table class="lines" cellspacing="0" cellpadding="0"&gt;
        &lt;tr&gt;
          &lt;td&gt;
            &lt;pre class="line_numbers"&gt;&lt;span rel="#L1" id="L1"&gt;1&lt;/span&gt;
&lt;/pre&gt;
          &lt;/td&gt;
          &lt;td width="100%"&gt;
            
              
                &lt;div class="highlight"&gt;&lt;pre /&gt;&lt;div class="line" id="LC1"&gt;&lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;href&lt;/span&gt;&lt;span class="p"&gt;]).&lt;/span&gt;&lt;span class="nx"&gt;eq&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;css&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;background-color&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;#ff0000&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
              
            
          &lt;/td&gt;
        &lt;/tr&gt;
      &lt;/table&gt;
    
  &lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Next, do you know what this is doing?&lt;/p&gt;
&lt;p&gt;$("div")[0].innerHTML?&lt;/p&gt;
&lt;p&gt;It should be easy to guess, you are basically getting all the div elements and selecting the first one's html content. Remember when you do $("div"), it returns a jquery object but innerHTML is applied to a raw dom object. It is [] which converts jquery object into a raw dom object.&lt;/p&gt;
&lt;p&gt;Now, let's say you have a list of dom elements and you want to just extract a subset of the list based on some condition. You can eithe loop through the array and do an if check and select the element or just use the map function like this.&lt;/p&gt;
&lt;p&gt;&lt;div class="data type-javascript"&gt;
    
      &lt;table class="lines" cellspacing="0" cellpadding="0"&gt;
        &lt;tr&gt;
          &lt;td&gt;
            &lt;pre class="line_numbers"&gt;&lt;span rel="#L1" id="L1"&gt;1&lt;/span&gt;
&lt;span rel="#L2" id="L2"&gt;2&lt;/span&gt;
&lt;span rel="#L3" id="L3"&gt;3&lt;/span&gt;
&lt;span rel="#L4" id="L4"&gt;4&lt;/span&gt;
&lt;span rel="#L5" id="L5"&gt;5&lt;/span&gt;
&lt;/pre&gt;
          &lt;/td&gt;
          &lt;td width="100%"&gt;
            
              
                &lt;div class="highlight"&gt;&lt;pre /&gt;&lt;div class="line" id="LC1"&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;arr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;map&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;LI&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;item&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;){&lt;/span&gt; &lt;span class="k"&gt;while&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC2"&gt;&lt;span class="p"&gt;});&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC3"&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC4"&gt;&lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;item&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;html&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="line" id="LC5"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
              
            
          &lt;/td&gt;
        &lt;/tr&gt;
      &lt;/table&gt;
    
  &lt;/div&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;slice&lt;/strong&gt;: If you are from the ruby world, you will probably know the slice method on an array. However, the functionality of jquery slice method is completely different. It basically performs a specified operation on a subset of elements. For example:&lt;/p&gt;
&lt;p&gt;$("p").slice(1,3).wrap("&amp;lt;i&amp;gt;&amp;lt;/i&amp;gt;")&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;That was a quick and easy chapter I must say. It helps to have those simple chapters when you are coming back from a 3 week break :P Hope you got something out of the post today (assuming you made it all the way to here)! I will be back next weekend with Chapter 4.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Namaskar!&lt;/p&gt;
&lt;p&gt;Mahesh Murthy&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/jquery-part-3"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/jquery-part-3#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/CnKdL-Z8q28" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/jquery-part-3</feedburner:origLink></item>
    <item>
      <pubDate>Sat, 06 Aug 2011 08:06:00 -0700</pubDate>
      <title>Good UI read</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/E_-2b6C0F8g/good-ui-read</link>
      <guid isPermaLink="false">http://www.mmurthy.com/good-ui-read</guid>
      <description>&lt;p&gt;
	&lt;p&gt;Just bookmarking for future reference. Feel free to read it if you want to hone your UI skills :P&lt;/p&gt;
&lt;p&gt;&lt;a href="http://designingfortheweb.co.uk/book"&gt;http://designingfortheweb.co.uk/book&lt;/a&gt;&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/good-ui-read"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/good-ui-read#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/E_-2b6C0F8g" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/good-ui-read</feedburner:origLink></item>
    <item>
      <pubDate>Wed, 03 Aug 2011 19:03:00 -0700</pubDate>
      <title>Part 2 - India</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/EDGJBgjgrsI/part-2-india</link>
      <guid isPermaLink="false">http://www.mmurthy.com/part-2-india</guid>
      <description>&lt;p&gt;
	&lt;p&gt;
&lt;p&gt;Continuing where I last left off in the previous post, I finished reading the section about India yesterday. Unlike what I wrote towards the end of my last post, the author does seem positive about things in India. Of course, the book is about scrappy entrepreuners and how they are building companies amidst third world challenges. So, how can she be so negative right? The things which she dislikes about India are not anything new. It is the same old corruption, pollution, traffic, terrible infrastructure and so on. Things are definitely getting better from my point of view and that's what she writes in the book based on interviews with various people.&lt;/p&gt;
&lt;p&gt;Amidst hundreds of copycat startups in India (copycat startups are those which basically pop up right after a company in Silicon Valley is mentioned on say Techcrunch. It is fascinating how little time it takes them to put up application which is exact replica of those silicon valley startups), she talks about few companies which are making a real difference, which are solving India's problems. Funny how all of those she talks about revolve around SMS (btw, I work for a company whose core product is SMS marketing. Signal FTW!).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;One of them is RedBus which I had heard when I was in India. It is a service you use to book bus tickets in India. It is hugely popular I hear.&lt;/p&gt;
&lt;p&gt;Another one I personally used when I was in India was JustDial. Unlike US where you can just google or yelp for restaurants, bars or whatever, it is not easy to find anything online. That's where JustDial comes in. You want a plumber, call them. You want the address to some restaurant, want some recommendation, just dial. They are basically the human search engine. Eventually they will become less important as online presence of services improve but they are doing a great job right now.&lt;/p&gt;
&lt;p&gt;Eko India Financial Services is another one she talks about. I have never used this but I had heard this concept in Economist a while ago. This is basically a service you use to transfer money between people through SMS. So, if I have to pay you Rs.1000, I just text a registered pin and the amount and your phone number and you will be credited that amount. And guess where you can go get your money? Nop, not any banks. It is in that store on the corner of the street! Lot of people in India can't open a bank account because them don't meet the eligibility requirements (I have no idea about the requirements). So, this is how money changes hands. The technology is not all that complex but I think this is brilliant.&lt;/p&gt;
&lt;p&gt;The one other interesting I thought was this company VNL which puts up solar powered towers in remote villages to give them cell phone connectivity. Solar is the key here because there is hardly power in those places. What a fantastic way to connect them to the rest of the country.&lt;/p&gt;
&lt;p&gt;It is no secret that 2 things India has got it right so far is mobile infrastructure (it is so cheap and easy compared to all the developed countries I have traveled to atleast) and the information technology (Outsourcing). According to her, product companies are slowly starting and is a good sign. Overall, I think she has done a great job of covering India.&lt;/p&gt;
&lt;div&gt;I just finished reading the entire book, next were Brazil, Indonesia, Rwanda. It is interesting to how things and issues are so different among different developing countries. To some it up, it was a good read.&lt;/div&gt;
&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/part-2-india"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/part-2-india#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/EDGJBgjgrsI" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/part-2-india</feedburner:origLink></item>
    <item>
      <pubDate>Thu, 28 Jul 2011 11:44:00 -0700</pubDate>
      <title>Brilliant, Crazy, Cocky</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/Btu3ZpYb1cA/brilliant-crazy-cocky</link>
      <guid isPermaLink="false">http://www.mmurthy.com/brilliant-crazy-cocky</guid>
      <description>&lt;p&gt;
	&lt;p&gt;
&lt;p&gt;I am reading this book called &lt;a href="http://www.amazon.com/gp/product/0470580097"&gt;Brilliant, Crazy, Cocky ...&lt;/a&gt;&amp;nbsp;by Sarah Lacy of Techcrunch for the past couple days. It's a great read if you are interested in knowing about the economy of developing countries, how the entrepreneurs there think and act and how they are different from developed countries (mainly USA and silicon valley in particular), the history and evolution of the technological companies there.&lt;/p&gt;
&lt;p&gt;I just finished reading the chapters on Israel and China. I didn't know much about Israel's tech scene, so it was kind of good. The chapter on China was really surprising. From outside, you would think of China as this communist country where people don't have any freedom and all the tech companies out there are pure copycats of Silicon Valley. From what I read, there are lot more companies who are solving China's problem. Another thing which was interesting to know is Entrepreuners there are going after more customers, more users (basically landgrab) vs quality and differentiation. One thing which helps is to have good infrastructure and China has and is continuing to build it. If you want to know how things work in China from inside, this book is a good read.&lt;/p&gt;
&lt;p&gt;I just started reading the chapter about India and I can already sense the author not too happy with things there. I am looking forward to reading the rest because I am from India and pretty sure I can relate to some things and completely disagree with lot of her viewpoints. Will keep you posted!&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Mahesh Murthy&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/brilliant-crazy-cocky"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/brilliant-crazy-cocky#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/Btu3ZpYb1cA" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/brilliant-crazy-cocky</feedburner:origLink></item>
    <item>
      <pubDate>Tue, 26 Jul 2011 20:24:43 -0700</pubDate>
      <title>Code Retreat</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/caCF_9GF_eg/code-retreat</link>
      <guid isPermaLink="false">http://www.mmurthy.com/code-retreat</guid>
      <description>&lt;p&gt;
	&lt;p&gt;I was at an Obtiva sponsored code retreat today (Thanks &lt;a href="http://johnpwood.net"&gt;John&lt;/a&gt; for letting me know about it). It is basically a day long event where you are given a problem and you implement a solution in any language. You do it by pairing with other programmers. Each session lasts 45 minutes after which you discard the code and restart again by pairing with another programmer. So, you are implementing a solution over and over again but with different programmers and in different languages. It really was a fantastic experience. We worked on implementing &lt;a href="http://en.wikipedia.org/wiki/Conway's_Game_of_Life"&gt;Conway's Game of Life&lt;/a&gt;. You can read more about Code Retreat &lt;a href="http://coderetreat.com/"&gt;here&lt;/a&gt;. If you come across anything like it, I highly encourage you to attend it.&lt;/p&gt;
&lt;p&gt;One of the big things I learned was TDD is not as hard/annoying as I thought it is. I always lose patience and just implement my code and then write tests for it. But really once you put in a little extra effort and switch to TDD mode, you will gain a lot out of it. I am by no means saying I am a hard core TDD guy now and I don't want to be one of those. In some cases, you just have to ditch it and go do your own thing. But for lot of cases, it really helps you design your system better and build a better, stable, easily testable, maintable piece of software.&lt;/p&gt;
&lt;p&gt;That was the lesson of the day.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br /&gt;Mahesh&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/code-retreat"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/code-retreat#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/caCF_9GF_eg" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/code-retreat</feedburner:origLink></item>
    <item>
      <pubDate>Sun, 10 Jul 2011 17:26:00 -0700</pubDate>
      <title>Selecting Elements</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/PQ1Vs7GA-f0/selecting-elements</link>
      <guid isPermaLink="false">http://www.mmurthy.com/selecting-elements</guid>
      <description>&lt;p&gt;
	&lt;p&gt;[Update: All the html and formatting turned into a total cluster fuck once I saved it. I am too lazy to fix it now. I will figure this out for next week :P]&lt;/p&gt;
&lt;p&gt;Last week I started learning jQuery and had decided to do one chapter a week. So, here is the second installment. This week is all about selecting elements in the dom. Last week I just read through the entire chapter and then started blogging and it didn't really turn out great. This week I am writing as I read. We'll see how this goes. The pattern for this post is going to be in the form of a series of Problems and Solutions. You can test your jquery skills by coming up with a solution without looking at the answer. So, &lt;span style="font-size: small;"&gt;here&lt;/span&gt; we go.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Problem:&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: medium;"&gt;&lt;a href="/category"&gt;Category&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt; &amp;lt;ul id="nav"&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style=""&gt; &lt;/span&gt;&amp;lt;li&amp;gt;&lt;a href="#anchor1"&gt;Anchor 1&lt;/a&gt;&amp;lt;/li&amp;gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style=""&gt; &lt;/span&gt;&amp;lt;li&amp;gt;&lt;a href="#anchor2"&gt;Anchor 2&lt;/a&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style=""&gt; &lt;/span&gt;&amp;lt;li&amp;gt;&amp;lt;span&amp;gt;&lt;a href="#anchor3"&gt;Anchor 3&lt;/a&gt;&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-size: medium;"&gt;&amp;lt;/ul&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;Given this html, select the anchor elements within each list item.&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Solution:&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;jQuery('#nav li &amp;gt; a')&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;strong&gt;Problem:&amp;nbsp;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&amp;lt;div id="content"&amp;gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style=""&gt; &lt;/span&gt;&amp;lt;h1&amp;gt;Main title&amp;lt;/h1&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style=""&gt; &lt;/span&gt;&amp;lt;h2&amp;gt;Section title&amp;lt;/h2&amp;gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style=""&gt; &lt;/span&gt;&amp;lt;p&amp;gt;Some content...&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style=""&gt; &lt;/span&gt;&amp;lt;h2&amp;gt;Section title&amp;lt;/h2&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style=""&gt; &lt;/span&gt;&amp;lt;p&amp;gt;More content...&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;Given the above html, select all h2 which come right after h1.&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;strong&gt;Solution&lt;/strong&gt;: jQuery('h1 + h2') - I have to say this is non intuitive.&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="p1" style=""&gt;&lt;span style="font-size: medium;"&gt;&lt;strong&gt;Problem:&amp;nbsp;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&amp;lt;ol&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&amp;lt;li&amp;gt;First item&amp;lt;/li&amp;gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&amp;lt;li&amp;gt;Second item&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt; &amp;lt;li&amp;gt;Third item&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt; &amp;lt;li&amp;gt;Fourth item&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&amp;lt;/ol&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;From above, select the 3rd &amp;lt;li&amp;gt;. Bonus, select &amp;lt;li&amp;gt; at even indices.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Solution&lt;/strong&gt;: jQuery('ol li:first')&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Bonus&lt;/strong&gt;: jQuery('ol li:even')&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;&lt;span style="font-size: small;"&gt;Problem:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;input type="text" /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;input type="password" /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;input type="button"&amp;gt;Enter&amp;lt;/input&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif; font-size: 13px;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1" style=""&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;input type="text" /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: small;"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;Select elements of type "text"&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span style="font-size: medium;"&gt;&lt;strong&gt;Solution&lt;/strong&gt;: jQuery(':text')&lt;/span&gt;&lt;/p&gt;
&lt;p class="p1"&gt;Those were very basic ways in which you can select elements in a dom. Once things get complicated, the best thing to use is the filter method.&lt;/p&gt;
&lt;p&gt;Ex:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;li style="width:100px"&amp;gt;First item&amp;lt;/li&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;li style="width:200px"&amp;gt;Second item&amp;lt;/li&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;li style="width:300px"&amp;gt;Third item&amp;lt;/li&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;li style="width:400px"&amp;gt;Fourth item&amp;lt;/li&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p /&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Let's say you want to select li whose width is between 150 and 350. Here is what you would do:&lt;/p&gt;
&lt;p&gt;jQuery('li').filter(function() {&lt;/p&gt;
&lt;p&gt;width = jQuery(this).width();&lt;/p&gt;
&lt;p&gt;return width &amp;gt; 150 &amp;amp;&amp;amp; width &amp;lt; 350;&lt;/p&gt;
&lt;p&gt;});&lt;/p&gt;
&lt;p&gt;filter basically applies the function to every element returned by the selector (in this case jQuery('div)) and returns a new list whose elements match the function.&lt;/p&gt;
&lt;p&gt;Now, let's say you want to use this in multiple places. There is a slick way to create a new custom filter that selects div with the width between 150 and 350 and use it wherever you want. So, to do that,&lt;/p&gt;
&lt;p&gt;jQuery.expr[':'].customWidth = function(elem, index, match) {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;width = jQuery(elem).width();&lt;/p&gt;
&lt;p&gt;return width &amp;gt; 150 &amp;amp;&amp;amp; width &amp;lt; 350;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;};&lt;/p&gt;
&lt;p&gt;Now, once you have defined that, you can use it like you use inbuilt filters like :text, :radio etc.&lt;/p&gt;
&lt;p&gt;So,&lt;/p&gt;
&lt;p&gt;jQuery('li:customWidth') should return 2 elements whose width is 200 and 300.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;That's it for the day. I think I will remember lot more from this week because I was writing, playing with it as I was reading. See you next week with third chapter!&amp;nbsp;&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/selecting-elements"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/selecting-elements#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/PQ1Vs7GA-f0" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/selecting-elements</feedburner:origLink></item>
    <item>
      <pubDate>Wed, 06 Jul 2011 22:08:00 -0700</pubDate>
      <title>Plus!</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/sSv1Y6NPhyw/plus</link>
      <guid isPermaLink="false">http://www.mmurthy.com/plus</guid>
      <description>&lt;p&gt;
	&lt;p&gt;I was scratching my head thinking about what to write today and then I saw a tweet from &lt;a href="http://www.signalhq.com/about-us/team/jeff-judge"&gt;Jeff&lt;/a&gt;&amp;nbsp;that google plus is now open to everyone with a google account. The entire blogosphere for the past week has been flooded with Google plus, so was time to check it out.&lt;/p&gt;
&lt;p&gt;Overall I like it and I am pretty sure I will use it regularly going forward.&lt;/p&gt;
&lt;p&gt;Things I liked are:&lt;/p&gt;
&lt;p&gt;- Circles: Facebook has groups you can create but it has all this bullshit like open group, secret group and so on. Circles is just group. Nice and simple. It is almost like secret group except that no one other than you knows what group your friends are in and the stream/feed activity just shows up on their wall seamlessly based on what they can see/not see. Majority of people probably don't care for this but I am not very "social", I don't like to post everything to everyone. So, circles really comes in handy for me.&lt;/p&gt;
&lt;p&gt;- Hangout: Finally I can hangout with my family and do video chatting. There was no good way to do 3 way video chat and now that problem is solved!&lt;/p&gt;
&lt;p&gt;- UI: Pretty slick. They have done a neat job on the look and feel.&lt;/p&gt;
&lt;p&gt;Things I didn't like are:&lt;/p&gt;
&lt;p&gt;- Facebook does a really good job of showing lot of posts in a page. I can see may be 4 or 5 posts before having to scroll down in plus. And there are too many things on the plus page. Wish I could just hide lot of those little widgets lying around.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;That was my initial reaction playing around for 20 mins with it.&lt;/p&gt;
&lt;p&gt;See you tomorrow!&lt;/p&gt;
&lt;p&gt;Mahesh&lt;/p&gt;
&lt;p&gt;ps: I have 9 circles already :-)&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/plus"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/plus#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/sSv1Y6NPhyw" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/plus</feedburner:origLink></item>
    <item>
      <pubDate>Tue, 05 Jul 2011 20:38:00 -0700</pubDate>
      <title>3 vim tips of the day</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/Ghl3NFCjIts/3-vim-tips-of-the-day</link>
      <guid isPermaLink="false">http://www.mmurthy.com/3-vim-tips-of-the-day</guid>
      <description>&lt;p&gt;
	&lt;p&gt;Three vim commands I learned and have started using from today:&lt;/p&gt;
&lt;p&gt;1. Marker: m&amp;lt;char&amp;gt; and `&amp;lt;char&amp;gt; to mark a line and jump back to it from anywhere else.&lt;/p&gt;
&lt;p&gt;Ex: Open a file in vim and then go to some line and type mt. Go to some other line and then type `t and you are back to the line which you had marked before. It comes in handy sometimes when I am jumping back and forth between methods in a file.&lt;/p&gt;
&lt;p&gt;2. retab: This is courtesy of &lt;a href="http://johnpwood.net/"&gt;John&lt;/a&gt;&amp;nbsp;today in the chat room. It converts all tabs into spaces.&lt;/p&gt;
&lt;p&gt;3. bwipeout: Sometimes I have so many files in my buffer that I end up closing the entire vim session and starting up again. That kinda sucks. Well, now I know I can just do a :ls and :bwipeout and specify bunch of files which I want to remove from my buffer.&lt;/p&gt;
&lt;p&gt;Ex: Open a bunch of files in vim and do :ls. You will see a list of files in your buffer. :bwipeout &amp;lt;file1&amp;gt; &amp;lt;file2&amp;gt; etc to delete those files.&lt;/p&gt;
&lt;p&gt;Every time I see blog posts and articles listing all the cool vim commands, it gets overwhelming for me and I don't end up picking up any. So, I will just add commands slowly one by one to my repository.&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/3-vim-tips-of-the-day"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/3-vim-tips-of-the-day#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/Ghl3NFCjIts" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/3-vim-tips-of-the-day</feedburner:origLink></item>
    <item>
      <pubDate>Sun, 03 Jul 2011 21:41:00 -0700</pubDate>
      <title>jquery</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/S1eYFXx8t28/jquery</link>
      <guid isPermaLink="false">http://www.mmurthy.com/jquery</guid>
      <description>&lt;p&gt;
	&lt;p&gt;I am not a big fan of doing anything related to UI when I am writing a piece of software. Whenever I have to do some html, javascript work I spend half my energy convincing myself I have to do it before even seeing how easy/hard it is. Atleast at work, html part is taken care of by our &lt;a href="http://www.signalhq.com/about-us/team/drew-myler"&gt;UI expert&lt;/a&gt;. So, that leaves javascript. For javascript, we use jquery mostly and I can get around and understand the code and do small things. However, I still don't have a good handle on it. So, I decided to finally open my jquery cookbook which was languishing in my ebook folder for over a year now and start reading it.&lt;/p&gt;
&lt;p&gt;Just so I don't lose interest half way through the book, I decided I will just do one chapter a week. So, expect a blog post on jquery once a week (Initially I thought I should go all out, blog everyday about it but just at the right time, the cells in my cerebral cortex activated and sent a pulse with the packets containing the history of how I work and that sealed the deal. So, once a week it is).&lt;/p&gt;
&lt;p&gt;Anyway, this is what I learned/revised/refreshed from first chapter of jquery today.&lt;/p&gt;
&lt;p&gt;1. jQuery is a library which makes interaction between html dom and javascript easy. It is like a wrapper. When you perform any action against dom element(s), your response object is always wrapped with a set of jquery methods. It's a very simple concept. What makes it powerful is that the wrapper has a rich set of methods you can use to manipulate dom elements in different ways and it is extensible. i.e, you can write plugins to add stuff to the wrapper.&lt;/p&gt;
&lt;p&gt;2. Avoiding un- necessary DOM traversing is a critical part of page performance enhancements. When- ever possible, reuse or cache a set of selected DOM elements.&lt;/p&gt;
&lt;p&gt;3. Do you know the difference between window.onload and jquery(document).ready? I have used both of them so many times but had never bothered to know what exactly the difference is.&lt;/p&gt;
&lt;p&gt;&lt;span style=""&gt; &lt;/span&gt;window.onload in your javascript basically blocks until the entire contents of the page is loaded. That includes all dom elements and assets. However, jquery(document).ready executes right after dom elements are loaded. Make a difference in total page load times.&lt;/p&gt;
&lt;p&gt;The first chapter went over how the&lt;a href="http://docs.jquery.com/Main_Page"&gt; jQuery APIs are organized&lt;/a&gt;&amp;nbsp;and different ways to fetch, filter, manipulate dom elements. May be next week I will come up with a project and then really use those functions so that it sticks in my mind. We'll see.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;That's it for today. Happy Independence day to my American friends!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;div&gt;Cheers,&lt;/div&gt;
&lt;div&gt;Mahesh Murthy&lt;/div&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/jquery"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/jquery#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/S1eYFXx8t28" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/jquery</feedburner:origLink></item>
    <item>
      <pubDate>Sat, 02 Jul 2011 23:23:00 -0700</pubDate>
      <title>Restart</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/j4tT_eQ7n34/restart</link>
      <guid isPermaLink="false">http://www.mmurthy.com/restart</guid>
      <description>&lt;p&gt;
	&lt;p&gt;This blog has been collecting dust for 6 months now. Time for some vacuum cleaning!&amp;nbsp;I have been meaning to restart blogging since I have come back from my &lt;a href="http://whereismahesh.com"&gt;adventure&lt;/a&gt;&amp;nbsp;but somehow hasn't happened. Anyway, this is my nth attempt at getting back to regular blogging. If I can't think of anything to blog, I will blog some random garbage. That is the plan this time around :P&lt;/p&gt;
&lt;p&gt;Today, I was searching for something in rails and came across a couple of handy array extension methods in active_support. Thought I will write it here so that I will remember it next time I need something like this and also if you didn't know about it, now you know!&lt;/p&gt;
&lt;p&gt;The extension I am talking about is &lt;a href="https://github.com/rails/rails/blob/2-3-stable/activesupport/lib/active_support/core_ext/array/grouping.rb"&gt;grouping.rb&lt;/a&gt;. There are two methods there:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. in_groups_of&lt;/strong&gt;&lt;/p&gt;
&lt;div&gt;&amp;nbsp; # &amp;nbsp; %w(1 2 3).in_groups_of(2, '&amp;amp;nbsp;') {|group| p group}&lt;/div&gt;
&lt;div&gt;&amp;nbsp; # &amp;nbsp; ["1", "2"]&lt;/div&gt;
&lt;div&gt;&amp;nbsp; # &amp;nbsp; ["3", "&amp;amp;nbsp;"]&lt;/div&gt;
&lt;p /&gt;
&lt;div&gt;&lt;strong&gt;2. in_groups&lt;/strong&gt;&lt;/div&gt;
&lt;p /&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp; # &amp;nbsp; %w(1 2 3 4 5 6 7).in_groups(3, '&amp;amp;nbsp;') {|group| p group}&lt;/div&gt;
&lt;div&gt;&amp;nbsp; # &amp;nbsp; ["1", "2", "3"]&lt;/div&gt;
&lt;div&gt;&amp;nbsp; # &amp;nbsp; ["4", "5", "&amp;amp;nbsp;"]&lt;/div&gt;
&lt;div&gt;&amp;nbsp; # &amp;nbsp; ["6", "7", "&amp;amp;nbsp;"]&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Take a look at the &lt;a href="https://github.com/rails/rails/blob/2-3-stable/activesupport/lib/active_support/core_ext/array/grouping.rb"&gt;implementation&lt;/a&gt;, it is pretty straightforward. It is just a wrapper around ruby array slice method with some simple math to fill the gaps. That was the lesson of the day!&lt;/p&gt;
&lt;div&gt;Adios,&lt;/div&gt;
&lt;div&gt;Mahesh Murthy&lt;/div&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/restart"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/restart#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/j4tT_eQ7n34" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/restart</feedburner:origLink></item>
    <item>
      <pubDate>Tue, 14 Dec 2010 23:18:00 -0800</pubDate>
      <title>Distraction</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/4PzvXVZEimw/distraction</link>
      <guid isPermaLink="false">http://www.mmurthy.com/distraction</guid>
      <description>&lt;p&gt;
	&lt;p&gt;For the past two weeks, I have been working from home in India. I don't like working from home usually but this is an exception because it is nice to hang out with the family and eat breakfast/lunch/dinner all on time.&lt;/p&gt;
&lt;p&gt;An interesting thing I have noticed over the past couple weeks is the amount of distraction when I am working. It has reduced drastically. Since most of USA is sleeping when I am working here, there is hardly any traffic through any &amp;lt;channels&amp;gt; (insert twitter, email etc). I get up in the morning and read through all the tweets collected, all the emails collected over 7 - 8 hours. That is basically compressing one day's tiny distractions into a 30 - 45 minutes slot. Of course, there are some drawbacks like missing time critical emails and such. Thankfully I haven't had that situation come up yet.&lt;/p&gt;
&lt;p&gt;One could argue that you can just turn off all the things for few hours everyday but seriously, how many people do that? If you have tried in and succeeded, I would love to hear from you :) I have tried so many times and have failed. Now that I have seen how much difference it makes, I think I am going to try something similar when I come back to Chicago.&lt;/p&gt;
&lt;p&gt;The other thing I have started doing is experimenting with my work schedule. Instead of just sitting from morning to evening, I have been trying to work in chunks. I get up at around 6:30 and just jump right into work for 2 - 3 hours. It doesn't work every day but when it does, it is amazing. You get into that zone which feels so good. Then, sometimes I take a break for couple hours midday to run some errands or just watch tv or a long lunch break. Sometimes, I go out at 5, have some chat, chill and come back and work a little more. I am pretty sure it has improved my productivity although I don't know how to quantify it. The biggest drawback to this schedule is, my mom complaining that I am working all day. I am just experimenting because it is easy to do it all now when the other side of the world is sleeping and wouldn't be much of an inconvenience.&lt;/p&gt;
&lt;p&gt;If you have been practicing unconventional ways of working, please let me know, I would love to try. Also, I know for family people, lot of it is dictated my kids and what not. But I am curious ....&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/distraction"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/distraction#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/4PzvXVZEimw" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/distraction</feedburner:origLink></item>
    <item>
      <pubDate>Sun, 21 Nov 2010 10:21:00 -0800</pubDate>
      <title>Digital Nomad</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/TmWNSDFdwrc/digital-nomad</link>
      <guid isPermaLink="false">http://www.mmurthy.com/digital-nomad</guid>
      <description>&lt;p&gt;
	&lt;p&gt;It's been pretty crazy for the past few weeks with packing, moving and stuff. Most of you probably know but if not, I am going to be living off my backpack for a while from now! I will be traveling the world and working remotely. Yeah, pretty kicked about it. I still plan to blog here with some random stuff once in a while but for all my travel related experiences and updates, I setup a new blog at &lt;a href="http://whereismahesh.com" title="whereismahesh.com" target="_blank"&gt;whereismahesh.com&lt;/a&gt;. Taking off in 6 days! Super excited ...&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/digital-nomad"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/digital-nomad#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/TmWNSDFdwrc" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/digital-nomad</feedburner:origLink></item>
    <item>
      <pubDate>Wed, 20 Oct 2010 07:28:34 -0700</pubDate>
      <title>75 minutes</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/L3w1bQ5fTHw/75-minutes</link>
      <guid isPermaLink="false">http://www.mmurthy.com/75-minutes</guid>
      <description>&lt;p&gt;
	&lt;p&gt;I wanted to blog sitting in the bus through my new posterous setup :P. Couldn&amp;#39;t come up with a better topic. So, thought I will rant a bit about my last night&amp;#39;s 75 wasted minutes.&lt;/p&gt; &lt;p&gt;So, US state department wants me to fill a form before I schedule an appointment for my visa stamping in India. You know the estimated time for filling it. 75 mins! I can live with it if the information I was giving was all new. But no, every single detail I filled in is already in the Government system! Dammit! Why can&amp;#39;t you guys just take it from there and save 75*no. Of people around the world entering US. And the most annoying part (which my lawyer had warned) was that the form timesout, every 20 mins and all you info will be lost! So, better keep saving. Oh, just saving doesn&amp;#39;t do anything. You have to save it as some exe file to your disk and upload to their system everytime you resume filling.&lt;/p&gt; &lt;p&gt;Oh well, that&amp;#39;s Government systems for you, you might say. So true, the problem is universal I say!&lt;/p&gt; &lt;p&gt;Anyway, just wanted to blog something. I finished it and my stop is still not here. Hope this blog reaches you because my RSS setup was screwed up and you all missed my last post. Thanks @timoax for confirming!&lt;br /&gt;&lt;/p&gt; &lt;p&gt;See ya!&lt;br /&gt; Mahesh Murthy&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/75-minutes"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/75-minutes#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/L3w1bQ5fTHw" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/75-minutes</feedburner:origLink></item>
    <item>
      <pubDate>Mon, 11 Oct 2010 22:28:00 -0700</pubDate>
      <title>Strong and Slick</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/ZGZYMaBjdgM/strong-and-slick</link>
      <guid isPermaLink="false">http://www.mmurthy.com/strong-and-slick</guid>
      <description>&lt;p&gt;
	&lt;p&gt;It's been months since I wrote anything here. Now that summer is over and I have mostly settled at my new job at &lt;a href="http://www.signalhq.com"&gt;Signal&lt;/a&gt;, I don't have any excuse to not blog :-) Well, let's just say it was a lie. I am a slacker, that is the real reason.&lt;/p&gt;
&lt;p&gt;Anyway, just want to write something here. If you haven't noticed (if you are reading from within a rss reader), I moved out of Wordpress. My blog is now on &lt;a href="http://posterous.com"&gt;Posterous&lt;/a&gt;. They have made it real easy to import all the content from WP to their system (except all the formatting of my old blogs is screwed up .. grr). Somehow, the simplicity of it attracted me to it. Now I can blog through email which I want to really try out.&lt;/p&gt;
&lt;p&gt;The other big change is I got out of my old hosting provider hostmonster. It just started to get on my nervers with all the restrictions they started enforcing. Can't run cron jobs, can't run any process for more than 10 mins (my vim, screen session everything used to get killed after 10 idle mins). Plus all my sites were loading real slow and my customers started complaining (one customer who is actually my friend!).&lt;/p&gt;
&lt;p&gt;Now I am on &lt;a href="http://linode.com"&gt;linode&lt;/a&gt;. It is a VPS, 3 times more expensive than hostmonster but I have so much freedom to do whatever the hell I want, I am loving it. They are definitely cheaper than all the other options out there for the configuration. I have 2 rails sites and 4 blogs running. Now, only if I could monetize something, it would have been nice :P&lt;/p&gt;
&lt;p&gt;Oops, forgot that the title of the post was strong and slick&lt;/p&gt;
&lt;p&gt;Strong == Linode Server&lt;/p&gt;
&lt;p&gt;Slick == Posterous&lt;/p&gt;
&lt;p&gt;On that note, signing off for the night.&lt;/p&gt;
&lt;p&gt;Adios!&lt;/p&gt;
&lt;p&gt;Mahesh Murthy&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/strong-and-slick"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/strong-and-slick#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/ZGZYMaBjdgM" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/strong-and-slick</feedburner:origLink></item>
    <item>
      <pubDate>Thu, 10 Jun 2010 08:42:00 -0700</pubDate>
      <title>theecofind</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/R1sObpFlTRA/88</link>
      <guid isPermaLink="false">http://www.mmurthy.com/archives/88</guid>
      <description>&lt;p&gt;
	&lt;p&gt;hey all,&lt;/p&gt;
&lt;p&gt;Checkout my brand new website &lt;a href="http://theecofind.com"&gt;theecofind.com&lt;/a&gt;. It is an aggregator of all eco friendly products. I have been on the "green" bandwagon lately and thought I should contribute somehow to that movement. So, here it is!&lt;/p&gt;
&lt;p&gt;From the technical perspective, it is just a rails app, backed my mysql and I use sphinx for search. As always, one of the plan is to try out new technologies. I have good usecase for using neo4j this time. I am looking forward to doing that! Also, I am getting tired of my hosting provider and the stupid restrictions and might make the move to heroku. That seems to be THE place for hosting rails apps nowadays.&lt;/p&gt;
&lt;p&gt;I have also been reading a bit about SEO and marketing lately. See, my last &lt;a href="http://thecollegestuff.com"&gt;site&lt;/a&gt; bombed because I am so awful at marketing. I totally think it was a good idea but of course my market was half way across the world :P Anyway, that is a topic for another blog post altogether. Time to change the strategy a little bit this time! I am also in touch with some vendors who are willing to list their products on my site. That's a good start isn't it?!&lt;/p&gt;
&lt;p&gt;Feel free to give me feedback, tips, suggestions anything. I would love to hear it. I have a list of features in my backlog. Hope to crank them out all. oh, I should go add a "spread the word" link :P Watch out for more updates!&lt;/p&gt;
&lt;p&gt;Cheers,&lt;/p&gt;
&lt;p&gt;Mahesh Murthy&lt;/p&gt;
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/archives/88"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/archives/88#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/R1sObpFlTRA" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/archives/88</feedburner:origLink></item>
    <item>
      <pubDate>Sun, 10 Jan 2010 01:12:14 -0800</pubDate>
      <title>Nexus one for existing customers</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/MWqASisjmxo/84</link>
      <guid isPermaLink="false">http://www.mmurthy.com/archives/84</guid>
      <description>&lt;p&gt;
	If you are an existing t-mobile customer and are planning to get a nexus one, you probably know by now that you have to pay $279 and not $179 (which is for new customers only). I just can not understand the reasoning behind this. Anyway, since my contract has expired, I thought I can just get on a new plan with a new account if required and get the phone for $179. Guess what, you can't even do that. After researching on various forums and piecing together, I got my nexus one for just 20 bucks more instead of shelling out 100 bucks!

So, what I did was, I called&amp;nbsp; tmobile and told them I want to cancel the account and go to another network for 3 months and come back as a new customer. That way I save 100 bucks. I was ok waiting for 3 months to get my hands on that phone. I am excited about that phone but not THAT desperate. It is after all just a phone. But guess what, tmobile was like, it anyway costs 35 bucks or so to activate when I come back as a new customer, so they agreed to give me $45 credit. So, I really put in only 20 bucks more and got the phone! Isn't that cool? :) Let's see when google will ship it to me.

If you are an existing customer, try that and see if it works for you as well or if there is any other workaround, I will be curious to know! Well, not really, I already got mine ;)

Cheers,
Mahesh Murthy!
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/archives/84"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/archives/84#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/MWqASisjmxo" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/archives/84</feedburner:origLink></item>
    <item>
      <pubDate>Sat, 31 Oct 2009 03:20:03 -0700</pubDate>
      <title>Beyond my understanding!</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/dH-EUkDS0RE/81</link>
      <guid isPermaLink="false">http://www.mmurthy.com/archives/81</guid>
      <description>&lt;p&gt;
	I had a bug in my application where the calculation was a little off from expected. After putting debug statements, I narrowed it down to an interesting behaviour in ruby. Fire up irb and try it out yourself!

  &lt;pre&gt;irb(main):001:0&amp;gt; (6.725*60*24).to_i
=&amp;gt; 9684
irb(main):002:0&amp;gt; (6.725*24*60).to_i
=&amp;gt; 9683
wtf?&lt;/pre&gt;

	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/archives/81"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/archives/81#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/dH-EUkDS0RE" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/archives/81</feedburner:origLink></item>
    <item>
      <pubDate>Sun, 13 Sep 2009 16:09:22 -0700</pubDate>
      <title>Annoying rails date validation</title>
      <link>http://feedproxy.google.com/~r/MaheshMurthy/~3/TgHqZlatgGM/73</link>
      <guid isPermaLink="false">http://www.mmurthy.com/archives/73</guid>
      <description>&lt;p&gt;
	I spent a good amount of time breaking my head over why a date field wasn't getting set in one of the model after retrieving it's value from a form. It turns out that if you pass a random string and not an actual date, rails will silently assign a nil to that field without complaining.

For example, I have a class Fact with date fields called from and to. Notice what is happening.

&lt;code&gt;
&lt;div style=""&gt;Loading development environment (Rails 2.3.3)&lt;/div&gt;
&lt;div style=""&gt;&amp;gt;&amp;gt; fact = Fact.new&lt;/div&gt;
&lt;div style=""&gt;=&amp;gt; #&amp;lt;Fact id: nil, from: nil, to: nil, timeToCount: nil, val: nil, remarks: nil, cp_detail_id: nil, created_at: nil, updated_at: nil&amp;gt;&lt;/div&gt;
&lt;div style=""&gt;&amp;gt;&amp;gt; fact.from = "foo"&lt;/div&gt;
&lt;div style=""&gt;=&amp;gt; "foo"&lt;/div&gt;
&lt;div style=""&gt;&amp;gt;&amp;gt; fact&lt;/div&gt;
&lt;div style=""&gt;=&amp;gt; #&amp;lt;Fact id: nil, from: nil, to: nil, timeToCount: nil, val: nil, remarks: nil, cp_detail_id: nil, created_at: nil, updated_at: nil&amp;gt;&lt;/div&gt;
&lt;div style=""&gt;&amp;gt;&amp;gt; fact.from = DateTime.now&lt;/div&gt;
&lt;div style=""&gt;=&amp;gt; Sun, 13 Sep 2009 09:53:29 -0600&lt;/div&gt;
&lt;div style=""&gt;&amp;gt;&amp;gt; fact&lt;/div&gt;
&lt;div style=""&gt;=&amp;gt; #&amp;lt;Fact id: nil, from: "2009-09-13 09:53:29", to: nil, timeToCount: nil, val: nil, remarks: nil, cp_detail_id: nil, created_at: nil, updated_at: nil&amp;gt;&lt;/div&gt;
script/console

Loading development environment (Rails 2.3.3)

&amp;gt;&amp;gt; fact = Fact.new

=&amp;gt; #&amp;lt;Fact id: nil, &lt;strong&gt;from: nil&lt;/strong&gt;, to: nil, timeToCount: nil, val: nil, remarks: nil, cp_detail_id: nil, created_at: nil, updated_at: nil&amp;gt;

&amp;gt;&amp;gt; fact.from = "foo"

=&amp;gt; "foo"

&amp;gt;&amp;gt; fact

=&amp;gt; #&amp;lt;Fact id: nil, &lt;strong&gt;from: nil&lt;/strong&gt;, to: nil, timeToCount: nil, val: nil, remarks: nil, cp_detail_id: nil, created_at: nil, updated_at: nil&amp;gt;

&amp;gt;&amp;gt; fact.from = DateTime.now

=&amp;gt; Sun, 13 Sep 2009 09:53:29 -0600

&amp;gt;&amp;gt; fact

=&amp;gt; #&amp;lt;Fact id: nil, &lt;strong&gt;from: "2009-09-13 09:53:29"&lt;/strong&gt;, to: nil, timeToCount: nil, val: nil, remarks: nil, cp_detail_id: nil, created_at: nil, updated_at: nil&amp;gt;

&lt;/code&gt;

When I assign a value foo, it doesn't complain but just assigns a nil. &amp;nbsp;Only if it had complained, I could have saved so much of my brain cells and time. Sigh ...

Now, you might ask why am I assigning a foo instead of date. Well, I am still developing and was just putting random values to get the form to work &amp;nbsp;:P

Anyway, I hope it will help some nOOb like me someday.

Have a good week,
Mahesh Murthy
	
&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mmurthy.com/archives/73"&gt;Permalink&lt;/a&gt; 

	| &lt;a href="http://www.mmurthy.com/archives/73#comment"&gt;Leave a comment&amp;nbsp;&amp;nbsp;&amp;raquo;&lt;/a&gt;

&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/MaheshMurthy/~4/TgHqZlatgGM" height="1" width="1"/&gt;</description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/756924/mahesh.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/4SIS8GIxhauJ</posterous:profileUrl>
        <posterous:firstName>Mahesh</posterous:firstName>
        <posterous:lastName>Murthy</posterous:lastName>
        <posterous:nickName>mahesh</posterous:nickName>
        <posterous:displayName>Mahesh Murthy</posterous:displayName>
      </posterous:author>
    <feedburner:origLink>http://www.mmurthy.com/archives/73</feedburner:origLink></item>
  </channel>
</rss>

