﻿<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title>Punjabi by Nature</title>
	<updated>2010-07-31T06:12:17Z</updated>
	<id>http://tarunanand.com/atom.aspx</id>
	<link href="http://tarunanand.com/atom.aspx" rel="self" type="application/rss+xml" />
	<link href="http://tarunanand.com" rel="alternate" type="application/rss+xml" />
	<generator uri="http://app.onlinequickblog.com/" version="2.0">Quick Blogcast</generator>
	<entry>
		<title>India is not a poor country, its a poorly managed country</title>
		<link rel="alternate" href="http://tarunanand.com/2010/07/25/india-is-not-a-poor-country-its-a-poorly-managed-country.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-07-25:643968ee-a7b7-42cd-9289-de73078addf4</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="India" />
		<updated>2010-07-25T11:20:00Z</updated>
		<published>2010-07-25T11:20:00Z</published>
		<content type="html">I am reading this book called "&lt;a href="http://www.penguinbooksindia.com/category/Non_Fiction/Making_India_Work_9780670083213.aspx" target="_blank"&gt;Making India Work&lt;/a&gt; " by William Nanda Bissell. He is the owner of Fabindia. &lt;br /&gt;
I recommend that you read this book and try their products. I wear the Kurtas almost all the time that are purchased from Fabinidia and Khadi Gramudyog. &lt;br /&gt;
&lt;br /&gt;
In the book, William makes a very telling comment - "India is not a poor country its a poorly managed country" He cites several examples of how India's centralized government is overextended. &lt;br /&gt;
&lt;br /&gt;
I recommend this book to anyone who is interested in this country's future. &lt;br /&gt;
&lt;br /&gt;</content>
	</entry>
	<entry>
		<title>What am I reading?</title>
		<link rel="alternate" href="http://tarunanand.com/2010/07/03/what-am-i-reading.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-07-03:280ccae1-e26f-4dd3-8bed-4145649de1e4</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Mobile" />
		<category term="Reading" />
		<updated>2010-07-03T08:55:00Z</updated>
		<published>2010-07-03T08:55:00Z</published>
		<content type="html">&lt;li&gt;&lt;a href="http://www.visionmobile.com/rsc/researchreports/mobile-megatrends-2010-%28visionmobile%29.pdf"&gt;Mobile Megatrends 2010&lt;/a&gt;: from VisionMobile. &lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.avc.com/a_vc/2010/06/diversification.html?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+AVc+%28A+VC%29"&gt;Diversification&lt;/a&gt;: by Fred Wilson. ” If you want to make higher returns, you must take on higher risk. But you can mitigate that risk by diversification.” &lt;/li&gt;
&lt;p&gt;&lt;a href="http://www.visionmobile.com/rsc/researchreports/mobile-megatrends-2010-%28visionmobile%29.pdf"&gt;&lt;/a&gt; &lt;/p&gt;</content>
	</entry>
	<entry>
		<title>The Great India Pavement Robbery</title>
		<link rel="alternate" href="http://tarunanand.com/2010/06/22/the-great-india-pavement-robbery.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-06-22:31894e2b-47b5-4880-a7e5-ed336d15703e</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Delhi" />
		<updated>2010-06-22T11:06:00Z</updated>
		<published>2010-06-22T11:06:00Z</published>
		<content type="html">Every now and then, you see something in India that defies logic. You see pavements that are built, and rebuilt till kingdom come. However, the roads next to it have craters that will put the ones on moon to shame. Its obvious that the contractors, politicians and everyone in between is conniving to make money. &lt;br /&gt;
&lt;br /&gt;
&lt;img alt="" style="border: 0px solid;" src="http://images.quickblogcast.com/8/6/7/4/7/185363-174768/sidewalk1.jpg?a=59" /&gt;&lt;br /&gt;
&lt;br /&gt;</content>
	</entry>
	<entry>
		<title>Review of Automated Code Review Tools</title>
		<link rel="alternate" href="http://tarunanand.com/2010/06/16/review-of-automated-code-review-tools.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-06-16:b2a76ffa-687b-4c99-bd39-3a6baf650649</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Software" />
		<updated>2010-06-16T13:26:00Z</updated>
		<published>2010-06-16T13:26:00Z</published>
		<content type="html">Pun intended &lt;img src="http://tarunanand.com/emoticons/smile.png" border="0" /&gt;&lt;br /&gt;
&lt;br /&gt;
Thanks Sapinder. Our verdict goes to StyleCop for striking the best balance between usability, customization and price!&lt;br /&gt;
&lt;br /&gt;
&lt;table style="width: 634pt; border-collapse: collapse;" border="0" cellspacing="0" cellpadding="0" width="845"&gt;
    &lt;colgroup&gt;&lt;col style="width: 60pt;" width="80" /&gt;&lt;col style="width: 65pt;" width="87" /&gt;&lt;col style="width: 89pt;" width="118" /&gt;&lt;col style="width: 81pt;" width="108" /&gt;&lt;col style="width: 95pt;" width="127" /&gt;&lt;col style="width: 63pt;" width="84" /&gt;&lt;col style="width: 61pt;" width="81" /&gt;&lt;col style="width: 120pt;" width="160" /&gt;&lt;/colgroup&gt;
    &lt;tbody&gt;
        &lt;tr style="height: 24.75pt;" height="33"&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 60pt; height: 24.75pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl68"&gt;&lt;strong&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Tool&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 65pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl69"&gt;&lt;strong&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Integration with VS.net&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 89pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl69"&gt;&lt;strong&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Langauge Support&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 81pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl69"&gt;&lt;strong&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Support for Web/Windows&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 95pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl70"&gt;&lt;strong&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;User customization&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 63pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl69"&gt;&lt;strong&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Commercial/Free&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 61pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl69"&gt;&lt;strong&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Source Code available&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 120pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl68"&gt;&lt;strong&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Framework supported&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height: 72.75pt;" height="97"&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; height: 72.75pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;fxcop&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 65pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Yes&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 89pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Analyses managed assemblies(dlls and exes)&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 81pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 95pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl73"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;It provides us with default set of rules, however we can create additional custom rules by using the FxCop SDK&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 63pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Free &lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Not available&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Framework 2.0 or higher&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height: 60.75pt;" height="81"&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; height: 60.75pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;stylecop&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 65pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Yes&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 89pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;It analyzes actual c# code&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 81pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Applicable to any .cs source code file&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 95pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl73"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;It provides us with default set of rules, however developers can implement their own rules&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 63pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Free &lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Available&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Framework 2.0 or higher&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height: 60.75pt;" height="81"&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; height: 60.75pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-size: 13px;"&gt;&lt;span style="font-family: calibri;"&gt;ReSharper&lt;/span&gt;&lt;span style="font-family: arial;" class="font5"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 65pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Yes&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 89pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-size: 13px;"&gt;&lt;span style="font-family: calibri;"&gt;C# 4.0&lt;/span&gt;&lt;span style="font-family: arial;" class="font5"&gt;,VB10,ASP.NET, MVC,XML,XAML, MSBuild and NAnt build scripts&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 81pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 95pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl73"&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 63pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Commercial&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Not available&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height: 48.75pt;" height="65"&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; height: 48.75pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;ndepend&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 65pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Yes&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 89pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Analyses managed assemblies(dlls and exes)&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 81pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 95pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl73"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;It has got hundreds of standard rules, custom rules can also be defined.&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 63pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Commercial&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 61pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Not available&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 120pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;framework 2.0/3.0/3.5&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="height: 36.75pt;" height="49"&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; height: 36.75pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl71"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;code.right&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 65pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Yes&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 89pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Analyses actual source code files(.vb/.cs)&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 81pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 95pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl73"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Provides own SDK to define custom rules&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 63pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Commercial&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 61pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;Not available&lt;/span&gt;&lt;/td&gt;
            &lt;td style="border-bottom-color: #ece9d8; background-color: transparent; border-top-color: #ece9d8; width: 120pt; border-right-color: #ece9d8; border-left-color: #ece9d8;" class="xl72"&gt;&lt;span style="font-family: calibri; font-size: 13px;"&gt;framework 2.0/3.0/3.5&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;</content>
	</entry>
	<entry>
		<title>What am I reading?</title>
		<link rel="alternate" href="http://tarunanand.com/2010/06/12/what-am-i-reading.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-06-12:a991d8dc-596d-426c-b536-de07e9305410</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Reading" />
		<updated>2010-06-12T09:15:00Z</updated>
		<published>2010-06-12T09:15:00Z</published>
		<content type="html">&lt;ul&gt;
    &lt;li&gt;&lt;a href="http://www.nytimes.com/2010/06/08/opinion/08brooks.html?src=me&amp;amp;ref=opinion"&gt;History for Dollars&lt;/a&gt;: by David Brooks.  “Let me stand up for the history, English and art classes, even in the face of today’s economic realities.” &lt;/li&gt;
    &lt;li&gt;Does the Internet make you &lt;a href="http://online.wsj.com/article/SB10001424052748704025304575284973472694334.html"&gt;Smarter&lt;/a&gt; or &lt;a href="http://online.wsj.com/article/SB10001424052748704025304575284981644790098.html"&gt;Dumber&lt;/a&gt;? from the Wall Street Journal. By Clay Shirky and Nicholas Carr, respectively. &lt;/li&gt;
    &lt;li&gt;&lt;a href="http://techcrunch.com/2010/06/03/location-2012/"&gt;Location-based Services in 2012&lt;/a&gt;: by Robert Scoble.”Death of the Information Silos.” &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt; &lt;/p&gt;</content>
	</entry>
	<entry>
		<title>Consider it "done" - Part 1</title>
		<link rel="alternate" href="http://tarunanand.com/2010/06/11/consider-it-done--part-1.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-06-11:451bdda1-7c3a-4553-8b3c-66f865d8e184</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Software" />
		<updated>2010-06-11T06:28:00Z</updated>
		<published>2010-06-11T06:28:00Z</published>
		<content type="html">One of the most frequent issues that arise in software development is that Development/Architect/QA/PM/UserEd reports to Test/PM/Client/Customer that the work is "done". And believe it or not, the response from the other side is "NO" it has x,y,z issues...&lt;br /&gt;
&lt;br /&gt;
I often discuss this in our team meetings - what do you consider "done". The definition varies depending on your role. Let me start with development.&lt;br /&gt;
&lt;br /&gt;
Development - The job of a developer is to think "deeply" about the system from a development point of view, they have to think laterally and not just be bound by the specs/design. Their role is to ensure that all their creative abilities are focused on writing world class code that meets the expectations of other roles. &lt;br /&gt;
&lt;br /&gt;
For a developer to consider it "done" - the following checklist is what comes to my mind &lt;br /&gt;
&lt;br /&gt;
(1) Are the requirements clear? Have they been documented in an email/doc/spreadsheet/piece of paper? &lt;br /&gt;
(2) Is the design clear/documented? In small teams, the developer might do the design, but its best to do this on an email/doc/spreadsheet/piece of paper. Reason: The cost of writing in ABC is &amp;lt;&amp;lt;&amp;lt; cost of writing in C, C++, C#. &lt;br /&gt;
(3) Are the coding standards/guidelines clear? If not, please ask the architect or PM. Typically there should be sample code with brief but precise instructions on how to code.&lt;br /&gt;
(4) Now, you are set to code. But wait - before you code - make sure you do an estimate. The estimates must be day wise. Anything longer than a day must be broken down. This enables you to review your goals on a daily basis and also helps you present the correct picture in the daily scrum calls/meetings if you have one. &lt;br /&gt;
(5) Now, you are really really set to code using your favourite language/IDE. &lt;br /&gt;
(6) Star coding, think, repeat... till you get the code done. Keep thinking about corner cases, scenarios in which code will break. If you dont have time, just mark it as @TODO in the comment so that you can come back and do it later. Think about performance from Day 1. &lt;br /&gt;
(7) Do unit testing. For e.g. if your system is to support 3 browsers, then please check on the one that is most used. If you have written a piece of code without UI (like a logic module) test with most common values. Throw in a corner case test for good measure.&lt;br /&gt;
(8) Make sure all your code is checked in correctly. If you use a tool for automated build, then make a build or force a build. &lt;br /&gt;
(9) Do unit testing again on the build on the server and NOT your development machine (neither your friends &lt;img src="http://tarunanand.com/emoticons/smile.png" border="0" /&gt; ) If something is broken, repeat Steps 5-9&lt;br /&gt;
(10) Send a release note to all concerned about the &lt;br /&gt;
(a) files checked in&lt;br /&gt;
(b) features/bug fixes in the release &lt;br /&gt;
&lt;br /&gt;
Ok.. have a cup of your choicest beverage and relax! Consider it done...</content>
	</entry>
	<entry>
		<title>What am I reading?</title>
		<link rel="alternate" href="http://tarunanand.com/2010/06/03/what-am-i-reading.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-06-03:8982eb90-56fd-492d-949b-146d66048091</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Reading" />
		<updated>2010-06-03T06:25:00Z</updated>
		<published>2010-06-03T06:25:00Z</published>
		<content type="html">&lt;li&gt;&lt;a href="http://www.readwriteweb.com/archives/the_coming_data_explosion.php"&gt;The Coming Data Explosion&lt;/a&gt;: by Richard MacManus. “We don’t know yet which computing or Internet companies will be most successful over the next 5-10 years, but one thing is for sure. They’ll have to know how to process and make sense of massive quantities of data flowing through the Web - and do it in real-time.” &lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.wired.com/magazine/2010/05/process_pixar"&gt;How Pixar Works&lt;/a&gt;: from Wired on the making of Toy Story 3. “At Pixar, a staff of writers, directors, animators, and technicians move from project to project. As a result, the studio has built a team of moviemakers who know and trust one another in ways unimaginable on most sets.” &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.800ceoread.com/2010/06/01/the-shallows-interview-with-nicholas-carr/"&gt;Interview with Nicholas Carr&lt;/a&gt;: from 800-CEO-Read, on Carr’s new book “The Shallows: What the Internet Is Doing to Our Brains.” Says Carr: “Because the Web is displacing many other information and communications media and becoming what I call a universal medium, it’s having much farther reaching intellectual consequences than earlier media did.” &lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.thehindubusinessline.com/2010/05/31/stories/2010053150300900.htm"&gt;Is India in a Coma?&lt;/a&gt; by Mohan Murti in TheHindu “Europeans believe that Indian leaders in politics and business are so blissfully blinded by the new, sometimes ill-gotten, wealth and deceit that they are living in defiance, insolence and denial to comprehend that the day will come, sooner than later, when the have-nots would hit the streets.” &lt;/li&gt;</content>
	</entry>
	<entry>
		<title>What am I reading?</title>
		<link rel="alternate" href="http://tarunanand.com/2010/05/24/what-am-i-reading.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-05-24:0142b200-e478-4130-b433-faf8a4b8a26b</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Reading" />
		<updated>2010-05-24T07:15:00Z</updated>
		<published>2010-05-24T07:15:00Z</published>
		<content type="html">&lt;a href="http://radar.oreilly.com/2010/05/mobile-operating-systems-and-b.html"&gt;Mobile OSes and Browsers&lt;/a&gt;: by Jason Grigsby. “From two operating systems to many. From many browsers to one. We have two core mobile technologies headed in opposite directions.”&lt;br /&gt;
&lt;br /&gt;
&lt;span id="ctl00_ContentPlaceHolder1_lblDetailNews1"&gt;&lt;a href="http://www.nytimes.com/2010/05/14/world/asia/14delhi.html?hp"&gt;India’s Delhi Metro&lt;/a&gt;: from the The New York Times. “&lt;/span&gt;India’s romance with the village, which &lt;span class="meta-per"&gt;Mahatma Gandhi&lt;/span&gt; believed was the most suitable environment for human development, is partly to blame for the decrepitude of Indian cities.”</content>
	</entry>
	<entry>
		<title>Automated Code Review Tool</title>
		<link rel="alternate" href="http://tarunanand.com/2010/05/05/automated-code-review-tool.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-05-05:610daebd-d85e-479e-8b52-479e16de7f26</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Software" />
		<updated>2010-05-05T16:19:00Z</updated>
		<published>2010-05-05T16:19:00Z</published>
		<content type="html">I am on the prowl for good automated code review tools. Developers are notorious for not following the coding guidelines that are set out for the team and doing manual code reviews tends to get boring especially at the syntactical/rule level.&lt;br /&gt;
&lt;br /&gt;
FxCop and StyleCop are used in .NET world and Lint from C is the mother of all of them.&lt;br /&gt;
&lt;br /&gt;
Please leave your comments/suggestions...&lt;br /&gt;
&lt;br /&gt;
Tarun</content>
	</entry>
	<entry>
		<title>What am I reading?</title>
		<link rel="alternate" href="http://tarunanand.com/2010/05/01/what-am-i-reading.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-05-01:0c0d8c38-857a-4608-b99a-02fce0cbfa6d</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Reading" />
		<updated>2010-05-01T11:16:00Z</updated>
		<published>2010-05-01T11:16:00Z</published>
		<content type="html">&lt;li&gt;&lt;a href="http://www.mckinsey.com/mgi/publications/india_urbanization/index.asp"&gt;Mckinsey’s report on the future of India’s cities&lt;/a&gt;: “India’s lack of effective policies to manage its rapid and large-scale urbanization could jeopardize the nation’s growth trajectory. But if India pursues a new operating model for its cities, it could add as much as 1 to 1.5 percent to annual GDP growth, bringing the economy near to the double-digit growth to which the government aspires.” &lt;/li&gt;
&lt;p&gt; &lt;/p&gt;
&lt;li&gt;&lt;a href="http://mobileopportunity.blogspot.com/2010/04/lessons-from-fall-of-palm.html"&gt;Lessons from the fall of Palm&lt;/a&gt;: Michael Mace writes about “the five lessons I think we should all take away from Palm’s struggles.” &lt;/li&gt;</content>
	</entry>
	<entry>
		<title>Javascript UserAgent sniffing</title>
		<link rel="alternate" href="http://tarunanand.com/2010/04/26/javascript-useragent-sniffing.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-04-26:8064936f-03a1-4cc5-87f7-db8bf7cb8bfb</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Software" />
		<updated>2010-04-26T03:17:00Z</updated>
		<published>2010-04-26T03:17:00Z</published>
		<content type="html">Javascript is pretty powerful programming language.. (Following note is attributed to tapper)&lt;br /&gt;
&lt;br /&gt;
&lt;p&gt;The problem is that people learn Javascript as well, a Script language, not a proper programming language… which is a shame because Javascript itself is probably one of the most comfortable languages I know. And because they don’t see it as a proper programming language they just hack their code until it works… for now.&lt;/p&gt;
&lt;p&gt;The worst abomination onto JS is probably browser sniffing: It’s a pretty simple technique that’s easy to understand which is probably why beginners tend to use it, however it’s also a technique that a) requires a lot of testing, b) requires a lot of updates and c) goes completely bonkers when new browsers are released.&lt;/p&gt;
&lt;p&gt;What browser sniffing (a.k.a. useragant sniffing) does is “ask” the browser about itself and then taking appropriate measures. Seems simple, right?&lt;/p&gt;
&lt;p&gt;Well if it is so simple, then what would happen if you ask a browser if it is a “Mozilla”… Surprise! Pretty much all major browsers (including Internet Explorer) claim to be Mozilla. So let’s ask about MSIE to make sure which Mozillas are actually Internet Explorer. Oops, Opera and a few others report that too. OK, then how about finding out which ones are really Mozilla by looking for “Gecko”. Oh, Safari says it’s “like Gecko”. If you want an almost complete list, have a a look &lt;a href="http://www.zytrax.com/tech/web/browser_ids.htm"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;You see: it doesn’t work and it’s really a shame that people still use this first-grader technique if there’s a much easier alternative: Method sniffing.&lt;/p&gt;
&lt;p&gt;In Javascript, every function or method that does not exist has the value “undefined”. So if you want to use something that you are afraid isn’t available everywhere, you just ask if the browser supports it directly, instead of asking for the browser and then assuming that a certain browser supports this or that.&lt;/p&gt;
&lt;p&gt;For example, lets say we want to use the addEventListener method and as a fallback the attachEvent method, then we simply create a wrapper function:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new; font-weight: bold;"&gt;function wrapperAddEventListener(obj,type,callback){&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: courier new; font-weight: bold;"&gt;if(obj.addEventListener!=undefined) obj.addEventListener(type,callback,false);&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: courier new; font-weight: bold;"&gt;else if(obj.attachEvent!=undefined) obj.attachEvent(“on”+type,callback);&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: courier new; font-weight: bold;"&gt;else alert(“Sorry, your browser is not supported”);&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: courier new; font-weight: bold;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;And that’s it.&lt;/p&gt;
&lt;br /&gt;</content>
	</entry>
	<entry>
		<title>Code Smell</title>
		<link rel="alternate" href="http://tarunanand.com/2010/04/25/code-smell.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-04-25:6950ac7d-fac3-4914-9dfd-52e155071b9d</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Software" />
		<updated>2010-04-25T01:33:00Z</updated>
		<published>2010-04-25T01:33:00Z</published>
		<content type="html">Wikipedia defines Code Smell &lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Reproduced here...&lt;/em&gt;&lt;br /&gt;
&lt;p&gt;In &lt;a href="/wiki/Computer_programming" title="Computer programming"&gt;&lt;span style="color: #002bb8;"&gt;computer programming&lt;/span&gt;&lt;/a&gt;, &lt;b&gt;code smell&lt;/b&gt; is any &lt;a href="/wiki/Symptom" title="Symptom"&gt;&lt;span style="color: #002bb8;"&gt;symptom&lt;/span&gt;&lt;/a&gt; in the &lt;a href="/wiki/Source_code" title="Source code"&gt;&lt;span style="color: #002bb8;"&gt;source code&lt;/span&gt;&lt;/a&gt; of a &lt;a href="/wiki/Computer_program" title="Computer program"&gt;&lt;span style="color: #002bb8;"&gt;program&lt;/span&gt;&lt;/a&gt; that possibly indicates a deeper problem.&lt;/p&gt;
&lt;p&gt;Often the deeper problem hinted by a code smell can be uncovered when the code is subjected to a short &lt;a href="/wiki/Feedback" title="Feedback"&gt;&lt;span style="color: #002bb8;"&gt;feedback cycle&lt;/span&gt;&lt;/a&gt; where it is &lt;a href="/wiki/Refactoring" class="mw-redirect" title="Refactoring"&gt;&lt;span style="color: #002bb8;"&gt;refactored&lt;/span&gt;&lt;/a&gt; in small, controlled steps, and the resulting design is examined to see if there are any further code smells that indicate the need of more refactoring. From the point of view of a programmer charged with performing refactoring, code smells are heuristics to indicate when to refactor, and what specific refactoring techniques to use. Thus, a code smell is a driver for refactoring.&lt;/p&gt;
&lt;p&gt;The term appears to have been coined by &lt;a href="/wiki/Kent_Beck" title="Kent Beck"&gt;&lt;span style="color: #002bb8;"&gt;Kent Beck&lt;/span&gt;&lt;/a&gt; on &lt;a href="/wiki/WardsWiki" class="mw-redirect" title="WardsWiki"&gt;&lt;span style="color: #002bb8;"&gt;WardsWiki&lt;/span&gt;&lt;/a&gt; in the late 1990s. Usage of the term increased after it was featured in &lt;i&gt;Refactoring. Improving the Design of Existing Code&lt;/i&gt;.&lt;sup id="cite_ref-0" class="reference"&gt;&lt;a href="#cite_note-0"&gt;&lt;span style="color: #002bb8; font-size: 13px;"&gt;[1]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;p&gt;Determining what is and is not a code smell is often a subjective judgment, and will often vary by language, developer and development methodology. There are tools, such as &lt;a href="/wiki/Checkstyle" title="Checkstyle"&gt;&lt;span style="color: #002bb8;"&gt;Checkstyle&lt;/span&gt;&lt;/a&gt;, &lt;a href="/wiki/PMD_(software)" title="PMD (software)"&gt;&lt;span style="color: #002bb8;"&gt;PMD&lt;/span&gt;&lt;/a&gt; and &lt;a href="/wiki/FindBugs" title="FindBugs"&gt;&lt;span style="color: #002bb8;"&gt;FindBugs&lt;/span&gt;&lt;/a&gt; for &lt;a href="/wiki/Java_(programming_language)" title="Java (programming language)"&gt;&lt;span style="color: #002bb8;"&gt;Java&lt;/span&gt;&lt;/a&gt;, to automatically check for certain kinds of code smells.&lt;br /&gt;
&lt;br /&gt;
&lt;span id="Common_code_smells" class="mw-headline"&gt;Common code smells&lt;/span&gt; &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;i&gt;&lt;a href="/wiki/Duplicate_code" title="Duplicate code"&gt;&lt;span style="color: #002bb8;"&gt;Duplicate code&lt;/span&gt;&lt;/a&gt;&lt;/i&gt;: identical or very similar code exists in more than one location. &lt;/li&gt;
    &lt;li&gt;&lt;i&gt;Large method&lt;/i&gt;: a &lt;a href="/wiki/Method_(computer_science)" title="Method (computer science)"&gt;&lt;span style="color: #002bb8;"&gt;method&lt;/span&gt;&lt;/a&gt;, function, or procedure that has grown too large. &lt;/li&gt;
    &lt;li&gt;&lt;i&gt;Large class&lt;/i&gt;: a &lt;a href="/wiki/Class_(computer_science)" title="Class (computer science)"&gt;&lt;span style="color: #002bb8;"&gt;class&lt;/span&gt;&lt;/a&gt; that has grown too large. See &lt;a href="/wiki/God_object" title="God object"&gt;&lt;span style="color: #002bb8;"&gt;God object&lt;/span&gt;&lt;/a&gt;. &lt;/li&gt;
    &lt;li&gt;&lt;i&gt;Feature envy&lt;/i&gt;: a class that uses methods of another class excessively. &lt;/li&gt;
    &lt;li&gt;&lt;i&gt;Inappropriate intimacy&lt;/i&gt;: a class that has dependencies on implementation details of another class. &lt;/li&gt;
    &lt;li&gt;&lt;i&gt;Refused bequest&lt;/i&gt;: a class that &lt;a href="/wiki/Method_overriding_(programming)" class="mw-redirect" title="Method overriding (programming)"&gt;&lt;span style="color: #002bb8;"&gt;overrides&lt;/span&gt;&lt;/a&gt; a method of a base class in such a way that the contract of the base class is not honored by the derived class. See &lt;a href="/wiki/Liskov_substitution_principle" title="Liskov substitution principle"&gt;&lt;span style="color: #002bb8;"&gt;Liskov substitution principle&lt;/span&gt;&lt;/a&gt;. &lt;/li&gt;
    &lt;li&gt;&lt;i&gt;Lazy class&lt;/i&gt;: a class that does too little. &lt;/li&gt;
    &lt;li&gt;&lt;i&gt;Contrived complexity&lt;/i&gt;: forced usage of overly complicated &lt;a href="/wiki/Design_pattern_(computer_science)" title="Design pattern (computer science)"&gt;&lt;span style="color: #002bb8;"&gt;design patterns&lt;/span&gt;&lt;/a&gt; where simpler design would suffice. &lt;/li&gt;
    &lt;li&gt;&lt;i&gt;Excessively long identifiers&lt;/i&gt;: in particular, the use of &lt;a href="/wiki/Naming_convention_(programming)" title="Naming convention (programming)"&gt;&lt;span style="color: #002bb8;"&gt;naming conventions&lt;/span&gt;&lt;/a&gt; to provide disambiguation that should be implicit in the &lt;a href="/wiki/Software_architecture" title="Software architecture"&gt;&lt;span style="color: #002bb8;"&gt;software architecture&lt;/span&gt;&lt;/a&gt;. &lt;/li&gt;
&lt;/ul&gt;
&lt;p &gt;&lt;/p&gt;</content>
	</entry>
	<entry>
		<title>Rural India</title>
		<link rel="alternate" href="http://tarunanand.com/2010/04/14/rural-india.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-04-14:8a7c485b-0db6-4317-8ccd-f3995a7badd2</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="India" />
		<category term="Entrepeneurship" />
		<updated>2010-04-14T09:45:00Z</updated>
		<published>2010-04-14T09:45:00Z</published>
		<content type="html">&lt;p&gt;Key statistics for Rural India (Tarun's Note - Thanks to Ashish Sinha)&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Rural India constitutes 69% of India’s population.&lt;/li&gt;
    &lt;li&gt;86% of Rural population earns less than $2 per day (most of Indian BoP households earn $67 per month).&lt;/li&gt;
    &lt;li&gt;There are more phones than Radio in Rural India (100million subscriber base).&lt;br /&gt;
    &lt;a href="http://www.pluggd.in/wp-content/uploads/2009/11/ruralindia.jpg"&gt;&lt;img width="351" height="233" style="border: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="rural india" alt="rural india" src="http://www.pluggd.in/wp-content/uploads/2009/11/ruralindia_thumb.jpg" /&gt;&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;Only 0.29 per cent of the male population has reached the graduation level (0.04% for women) and 6.% of the rural males arc educated up to the middle level.&lt;/li&gt;
    &lt;li&gt;70 % of the disabled in India lives in rural areas&lt;/li&gt;
    &lt;li&gt;Safe Drinking Water – 67% of rural households in Jharkhand did not have access to safe drinking water;&lt;/li&gt;
    &lt;li&gt;More than 90 percent of rural households in Chhattisgarh, Jharkhand, Orissa and Madhya Pradesh did not have access to toilets within their premises&lt;/li&gt;
    &lt;li&gt;Connectivity – In 2006: 13% in rural India had to travel &amp;gt; 30minutes; 2008: just 2%!&lt;/li&gt;
    &lt;li&gt;When it comes to connectivity, Rural Indian BOP segment has grown more than urban in last year&lt;/li&gt;
    &lt;li&gt;Nearly 50% of the villages in the country do not have all weather roads, making physical communication to these villages highly expensive.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Do you see opportunities here?&lt;/p&gt;</content>
	</entry>
	<entry>
		<title>What non programmers think about programming languages ?</title>
		<link rel="alternate" href="http://tarunanand.com/2010/04/06/what-non-programmers-think-about-programming-languages-.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-04-06:be94a8b1-93b0-4037-adeb-052b5cd142ff</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Software" />
		<updated>2010-04-06T10:14:00Z</updated>
		<published>2010-04-06T10:14:00Z</published>
		<content type="html">&lt;div class="post" id="post_12570820"&gt;
&lt;div class="posterous_bookmarklet_entry"&gt;&lt;blockquote class="posterous_long_quote"&gt;
&lt;p&gt;Python: Snake&lt;/p&gt;
&lt;p&gt;C: Vitamin&lt;/p&gt;
&lt;p&gt;Fortran: Public Transportation&lt;/p&gt;
&lt;p&gt;Perl: Jewelry&lt;/p&gt;
&lt;p&gt;SQL: IM acryonym for "That's cool"&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class="posterous_quote_citation"&gt; &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;!-- /#posts --&gt;&lt;!-- /.main --&gt;</content>
	</entry>
	<entry>
		<title>What am I reading</title>
		<link rel="alternate" href="http://tarunanand.com/2010/04/03/what-am-i-reading.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-04-03:1cc9746e-2c14-4ec8-9168-41c2388e24c6</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Reading" />
		<updated>2010-04-03T05:00:00Z</updated>
		<published>2010-04-03T05:00:00Z</published>
		<content type="html">&lt;span class="h1_subhead"&gt;&lt;a href="http://www.forbes.com/2010/03/29/alibaba-tata-motors-technology-virtualization10-petterle.html?partner=alerts"&gt;Developing countries and non-linear Innovation&lt;/a&gt;: from Forbes. “&lt;/span&gt;In developing nations, where investment is scarce and markets are smaller, we don’t have the luxury of innovating at every turn.”&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.beyondvc.com/2010/04/the-ongoing-data-revolution.html"&gt;The ongoing data revolution&lt;/a&gt;: by Ed Sim. “The question is who will create the next great back-end technologies and new web services that drive a whole new conversation and new way of thinking about what we do with the data that is around everywhere.”</content>
	</entry>
	<entry>
		<title>Letter to Navvye Anand's teacher</title>
		<link rel="alternate" href="http://tarunanand.com/2010/03/28/letter-to-navvye-anands-teacher.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-03-28:7dba4c9f-b00e-4d39-bfcc-247dc21f769f</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Personal" />
		<updated>2010-03-28T12:32:00Z</updated>
		<published>2010-03-28T12:32:00Z</published>
		<content type="html">&lt;EM&gt;Our son Navvye Anand begins a very important journey of his life. He starts school on March 29, 2010. As a teacher you can influence and mould the lives of the next generation. As a father and a citizen of this beautiful country my request is to: &lt;BR&gt;&lt;/EM&gt;&lt;BR&gt;&lt;BR&gt;Teach him to extend courtesy's for small things from opening doors to thanking the taxi driver who drops him home. It seems that courtesies are an endangered species and fast becoming extinct. &lt;BR&gt;&lt;BR&gt;Teach him to enjoy flora and fauna in all its forms including the strays outside his home (which he does already) and the sparrows and parrots&amp;nbsp;who no longer visit Delhi but can be brought back with care. &lt;BR&gt;&lt;BR&gt;Teach him that he should obey the law of the land not because someone is watching but because we are the watchdogs of the country ourselves. &lt;BR&gt;&lt;BR&gt;Teach him to respect his elders, peers and younger ones alike, coz you can only get respect when you give it yourself. &lt;BR&gt;&lt;BR&gt;&lt;BR&gt;Please let him experiment and make mistakes. Our country badly needs entrepreneurs and the best entrepreneurs are ones who make mistakes early and learn from it. &lt;BR&gt;&lt;BR&gt;Let him learn a lot of eclectic disciplines from music, poetry, crafts, debates, physics, chemistry, math, english... because school is the best place for learning a breadth of disciplines.&amp;nbsp;&lt;BR&gt;&lt;BR&gt;A few years back, I went with a delegation to meet President Kalam and he said that "give me a child for the first seven years of his life and then you can have him for the rest of his life". The values that are&amp;nbsp;inculcated&amp;nbsp;in those seven years&amp;nbsp;will stay with him for life. So, after the first three and a half years,&amp;nbsp;we pass the baton to you.&amp;nbsp;&amp;nbsp;We hope that when he graduates from school he is ready for life. &lt;BR&gt;&lt;BR&gt;Anands&lt;BR&gt;&lt;BR&gt;</content>
	</entry>
	<entry>
		<title>Lincoln's letter to his son's teacher</title>
		<link rel="alternate" href="http://tarunanand.com/2010/03/28/lincolns-letter-to-his-sons-teacher.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-03-28:cdd85d6c-cb4a-479f-9444-8bbf792a6194</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Personal" />
		<updated>2010-03-28T12:19:00Z</updated>
		<published>2010-03-28T12:19:00Z</published>
		<content type="html">This letter was supposedly written by Abraham Lincoln. However, many people have refuted this claim including eminent historians.&lt;BR&gt;The text is worth a read, however, and the letter that I will write cannot be refuted as not being written by me &lt;img src="http://tarunanand.com/emoticons/smile.png" border="0" /&gt;&lt;BR&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;He will have to learn, I know,&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;that all men are not just,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;all men are not true.&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;But teach him also that&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;for every scoundrel there is a hero;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;that for every selfish Politician,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;there is a dedicated leader…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him for every enemy there is a friend,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;Steer him away from envy,&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;if you can,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;teach him the secret of&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;quiet laughter.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;Let him learn early that&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;the bullies are the easiest to lick…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him, if you can,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;the wonder of books…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;But also give him quiet time&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;to ponder the eternal mystery of birds in the sky,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;bees in the sun,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;and the flowers on a green hillside.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;In the school teach him&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;it is far honourable to fail&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;than to cheat…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him to have faith&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;in his own ideas,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;even if everyone tells him&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;they are wrong…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him to be gentle&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;with gentle people,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;and tough with the tough.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;Try to give my son&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;the strength not to follow the crowd&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;when everyone is getting on the band wagon…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him to listen to all men…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;but teach him also to filter&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;all he hears on a screen of truth,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;and take only the good&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;that comes through.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;Teach him if you can,&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;how to laugh when he is sad…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him there is no shame in tears,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him to scoff at cynics&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;and to beware of too much sweetness…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him to sell his brawn&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;and brain to the highest bidders&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;but never to put a price-tag&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;on his heart and soul.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;Teach him to close his ears&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;to a howling mob&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;and to stand and fight&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;if he thinks he’s right.&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Treat him gently,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;but do not cuddle him,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;because only the test&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;of fire makes fine steel.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;Let him have the courage&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;to be impatient…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;let him have the patience to be brave.&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;Teach him always&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;to have sublime faith in himself,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;because then he will have&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;sublime faith in mankind.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;This is a big order,&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; BACKGROUND: black 0px 50%; COLOR: white; FONT-SIZE: 10pt"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN&gt;but see what you can do…&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;He is such a fine little fellow,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;my son!&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Verdana; COLOR: white; FONT-SIZE: 10pt"&gt; &lt;/SPAN&gt;&lt;/P&gt;</content>
	</entry>
	<entry>
		<title>Great code....</title>
		<link rel="alternate" href="http://tarunanand.com/2010/03/12/great-code.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-03-12:e5d8c806-5457-42de-bc6f-f89189eef060</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Software" />
		<updated>2010-03-12T08:21:00Z</updated>
		<published>2010-03-12T08:21:00Z</published>
		<content type="html">Everyone knows and enjoys reading a great piece of software when they see it. I recall Dave Cutler and the core group at NT has written code that is a joy to read. So have several other people, I am sure.&lt;br&gt;&lt;br&gt;Here is one such example I ran into the other day... &lt;br&gt;&lt;br&gt;Go ahead and read it... even if you dont understand .NET but understand programming you will still enjoy reading it.&lt;br&gt;&lt;br&gt;http://twitterizer.googlecode.com/files/twitterizer2-beta1.1-source.zip &lt;br&gt;&lt;br&gt;and the parent location is (just in case the above one is obsolete by the time you read it)&lt;br&gt;&lt;br&gt;http://code.google.com/p/twitterizer/ &lt;br&gt;&lt;br&gt;Feel free to comment on what were the new and interesting things you saw in this code.&lt;br&gt;&lt;br&gt;Tarun&lt;br&gt;</content>
	</entry>
	<entry>
		<title>A new story...</title>
		<link rel="alternate" href="http://tarunanand.com/2010/02/18/a-new-story.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-02-18:13cb5a08-f7a0-4a9d-ac39-1a94effd32a8</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Personal" />
		<updated>2010-02-18T14:25:00Z</updated>
		<published>2010-02-18T14:25:00Z</published>
		<content type="html">Once upon a time there was a big shark fish that ate all the small fish. It ate an elephant too. Then a crocodile came and hit the shark fish with a bow arrow but it did not die, then it hit her with a sword and it died. Then prince charming came and cut the shark fish to let the elephant out. He kissed the elephant and it became Cindrella. On seeing this Hanuman ji said to Prince Charming - "Very good".&amp;nbsp;&amp;nbsp;&amp;nbsp; Author - Navvye Anand</content>
	</entry>
	<entry>
		<title>Sounds of silence</title>
		<link rel="alternate" href="http://tarunanand.com/2010/02/07/sounds-of-silence.aspx?ref=rss" />
		<id>tag:tarunanand.com,2010-02-07:e3f81183-5a84-4a7c-beac-f01dc20a67c7</id>
		<author>
			<name>Tarun</name>
		</author>
		<category term="Software" />
		<updated>2010-02-07T10:34:00Z</updated>
		<published>2010-02-07T10:34:00Z</published>
		<content type="html">&lt;STRONG&gt;Hello Darkness, smile old friend....&lt;BR&gt;I have come to talk to you again...&lt;BR&gt;&lt;BR&gt;Simon &amp;amp; Garfunkel..&lt;BR&gt;&lt;/STRONG&gt;&lt;BR&gt;&lt;EM&gt;Because most aircraft accidents happen during takeoffs and landings—the most hectic and coordination-intensive parts of any flight—the industry has imposed a rule called the &lt;STRONG&gt;“sterile cockpit”. &lt;/STRONG&gt;Anytime the aircraft is below 10,000 feet—whether on the way up or the way down—no conversation is permitted, except what’s directly relevant for flying. At 11,000 feet, you can talk about football, your kids, or the loathsome passengers. But not at 9,500 feet.&lt;BR&gt;&lt;/EM&gt;&lt;BR&gt;&lt;EM&gt;In an organization, the IT group jointly agreed on a sterile cockpit for their software project. The group had embraced a substantial goal—to reduce new product development time from three years to nine months. In previous projects with tight deadlines, the work environment had become increasingly stressful, and as workers got behind schedule, they’d tend to start interrupting their colleagues for quick help. Managers would wander by regularly to be “statused” on the project. As a result, people were interrupted more and more, and work weeks expanded to 60 and 70 hours as people started showing up on the weekend, hoping to get some work done when they could focus.&lt;/EM&gt; 
&lt;P&gt;&lt;EM&gt;The IT group decided to try an experiment—they established “quiet hours” on Tuesday, Thursday, and Friday mornings before noon. The goal was to give coders a sterile cockpit, allowing them to tackle more complex bits of coding without being derailed by periodic interruptions. Even the socially insensitive responded well to the change in the Path. One engineer, previously among the worst interrupters, said, “I always used to worry about my own quiet time and how to get more of it, but this experiment made me think about how I’m impacting others.”&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;In the end, the group managed to meet its stringent nine-month development goal. And the division VP attributed the success to the sterile cockpit quiet hours: “I do not think we could’ve made the deadline without it,” he said. “This is a new benchmark.”&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;In these disparate environments—cockpits and hospitals and IT workgroups—the right behaviors did not evolve naturally. Nurses weren’t “naturally” given enough space to work without distraction, and programmers weren’t “naturally” left alone to focus on coding. Instead, leaders had to reshape the environment consciously. With some simple tweaks to the environment, suddenly the right behaviors emerged. It wasn’t the people who changed, it was the situation. What looks like a people problem is often a situation problem.&lt;/EM&gt;&lt;/P&gt;</content>
	</entry>
</feed>