<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Floating Sun</title>
	<atom:link href="http://floatingsun.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://floatingsun.net</link>
	<description></description>
	<lastBuildDate>Sun, 22 Aug 2010 04:28:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>The San Francisco Taiko Dojo</title>
		<link>http://floatingsun.net/2010/08/21/the-san-francisco-taiko-dojo/</link>
		<comments>http://floatingsun.net/2010/08/21/the-san-francisco-taiko-dojo/#comments</comments>
		<pubDate>Sun, 22 Aug 2010 04:28:24 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Featured]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1570</guid>
		<description><![CDATA[My wife and I had been thinking about learning Taiko, so after some quick Googling, one fine Tuesday we dropped in at the San Francisco Taiko Dojo to &#8220;observe&#8221; the adult beginners class. We only stayed the first hour or so, and it was interesting to say the least. First, there was the intimidating workout: [...]


Related posts:<ol><li><a href='http://floatingsun.net/2008/07/08/test-post-using-scribefire-please-ignore/' rel='bookmark' title='Permanent Link: Test post using ScribeFire (please ignore)'>Test post using ScribeFire (please ignore)</a></li>
<li><a href='http://floatingsun.net/2010/01/26/happy-republic-day/' rel='bookmark' title='Permanent Link: Happy Republic Day'>Happy Republic Day</a></li>
<li><a href='http://floatingsun.net/2006/09/27/history-of-computing/' rel='bookmark' title='Permanent Link: History of Computing'>History of Computing</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>My wife and I had been thinking about learning <a class="zem_slink freebase/en/taiko" title="Taiko" rel="wikipedia" href="http://en.wikipedia.org/wiki/Taiko">Taiko</a>, so after some quick Googling, one fine Tuesday we dropped in at the <a href="http://sftaiko.com">San Francisco Taiko Dojo</a> to &#8220;observe&#8221; the adult beginners class. We only stayed the first hour or so, and it was interesting to say the least. First, there was the intimidating workout: everyone was counting in Japanese; the workout included sets of 60 pushup, situps, scissor kicks and tricep dips! And then there was the class itself &#8212; there seemed to be no &#8220;orientation&#8221; for beginners or a structured way to learn the ropes; everyone there just seemed to know what they were doing; there seemed to be a lot of understood etiquettes &#8212; there was an expected way of doing pretty much everything. Suffice to say that we decided to start classes the following week.</p>
<p>BTW, if don&#8217;t know what Taiko is or have never heard Taiko, I refer you to the <a href="http://en.wikipedia.org/wiki/Taiko">mighty Wikipedia</a> and the <a href="http://www.youtube.com/results?search_query=taiko&amp;aq=f">mightier YouTube</a>:</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/JcAecTJs8q0?fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/JcAecTJs8q0?fs=1" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>I&#8217;m on a temporary hiatus from Taiko right now, but I had an amazing experience the few months I spent with SF Taiko Dojo.</p>
<p>Yes, there are rules and etiquettes. But in a society where anything goes and freedom rules and any kind of &#8220;discipline&#8221; is often frowned upon, SFTD was almost refreshing. In many ways, it was reminiscent of the <a class="zem_slink freebase/en/gurukul" title="Gurukul" rel="wikipedia" href="http://en.wikipedia.org/wiki/Gurukul">Gurukul</a> system in ancient India.</p>
<p>Taiko itself is a wonderful art form. There is something powerful about a Taiko performance. A single drum is an excellent percussion device, but in a group, Taiko takes a life of its own. Like most art forms, you can pick up the basics real quick. But to go deep into Taiko, you need time, patience and a lot of hard work. The veterans at SFTD have been playing for 10-15 years and still learning.</p>
<p>Needless to add, Taiko is also a fantastic full body workout. It is a combination of dance, drumming, music and more. The classes are fun, but you do need serious commitment if you want to become an advanced Taiko player. The folks in the adult beginners class are a merry bunch. Before our first class, I was extremely anxious, trying to memory numerals in Japanese from Wikipedia and worried whether I&#8217;ll be able to keep up with everyone. There was help every step of the way. The class won&#8217;t stop for you, but it will not leave you behind either :)</p>
<p>But the best part of SFTD is the opportunity to learn from <a href="http://en.wikipedia.org/wiki/Seiichi_Tanaka">Sensei Tanaka</a>. His accomplishments in the world of Taiko are well known, so I won&#8217;t enlist them here. What surprised me was the humility and generosity and the energy he brings with him, even after doing this for more than four decades. He could easily delegate the adult beginners class to one of his many advanced students; yet he still routinely teaches the class himself, ever so patient and understanding. Better yet, his expertise in Taiko is matched only by his wistful humor.</p>
<p>So if you are in the Bay Area and are looking for some inspiration, do checkout San Francisco Taiko Dojo.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=7f3f3709-3ee3-4b8b-b5a6-3f55a3c0b003" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2008/07/08/test-post-using-scribefire-please-ignore/' rel='bookmark' title='Permanent Link: Test post using ScribeFire (please ignore)'>Test post using ScribeFire (please ignore)</a></li>
<li><a href='http://floatingsun.net/2010/01/26/happy-republic-day/' rel='bookmark' title='Permanent Link: Happy Republic Day'>Happy Republic Day</a></li>
<li><a href='http://floatingsun.net/2006/09/27/history-of-computing/' rel='bookmark' title='Permanent Link: History of Computing'>History of Computing</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/08/21/the-san-francisco-taiko-dojo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Toying with node.js</title>
		<link>http://floatingsun.net/2010/08/04/toying-with-node-js/</link>
		<comments>http://floatingsun.net/2010/08/04/toying-with-node-js/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 17:58:34 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[node.js]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1512</guid>
		<description><![CDATA[A commenter rightly complained that despite my claims of &#8220;playing around&#8221; with node.js, all I could come up was with the example in the man page. I replied saying that I did intend to post something that I wrote from scratch, and as promised, here is my first toy node.js program: var sys = require('sys'); [...]


Related posts:<ol><li><a href='http://floatingsun.net/2010/07/21/what-is-node-js/' rel='bookmark' title='Permanent Link: What is node.js?'>What is node.js?</a></li>
<li><a href='http://floatingsun.net/2005/08/20/ajax-galore/' rel='bookmark' title='Permanent Link: Ajax galore!'>Ajax galore!</a></li>
<li><a href='http://floatingsun.net/2008/01/08/google-reader-archiving-less/' rel='bookmark' title='Permanent Link: Google Reader archiving less?'>Google Reader archiving less?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>A <a href="http://floatingsun.net/2010/07/21/what-is-node-js/#comment-203696">commenter rightly complained</a> that despite my claims of &#8220;playing around&#8221; with <a class="zem_slink" title="node.js" rel="homepage" href="http://nodejs.org/">node.js</a>, all I could come up was with the example in the man page. I replied saying that I did intend to post something that I wrote from scratch, and as promised, here is my first toy node.js program:</p>
<pre class="brush: jscript;">
var sys = require('sys');
var http = require('http');
var url = require('url');
var path = require('path');

function search() {
  stdin = process.openStdin();
  stdin.setEncoding('utf8');
  stdin.on('data', function(term) {
    term = term.substring(0, term.length - 1);
    var google = http.createClient(80, 'ajax.googleapis.com');
    var search_url = &quot;/ajax/services/search/web?v=1.0&amp;q=&quot; + term;
    var request = google.request('GET', search_url, {
      'host': 'ajax.googleapis.com',
      'Referer': 'http://floatingsun.net',
      'User-Agent': 'NodeJS HTTP client',
      'Accept': '*/*'});
    request.on('response', function(response) {
      response.setEncoding('utf8');
      var body = &quot;&quot;
      response.on('data', function(chunk) {
        body += chunk;
      });
      response.on('end', function() {
        var searchResults = JSON.parse(body);
        var results = searchResults[&quot;responseData&quot;][&quot;results&quot;];
        for (var i = 0; i &lt; results.length; i++) {
          console.log(results[i][&quot;url&quot;]);
        }
      });
    });
    request.end();
  });
}

search();
</pre>
<p>This program (also available <a href="http://gist.github.com/508462">as a gist</a>) reads in search terms on standard input, and does a Google search on those terms, printing the URLs of the search results.</p>
<p>I was quite surprised (and a bit embarrassed) at how long it took me to get this simple program working. For instance, it took me the better part of an hour to realize that when I read something from stdin, it includes the trailing newline (as the user hits &#8216;Enter&#8217;). Earlier, I was using the input as-is for the search term, and that was leading to a 404 error, because the resulting URL was malformed.</p>
<p>Debugging was also harder, as expected. Syntax errors are easily caught by V8, but everything else is still obscure. I&#8217;m sure some of the difficulty is because of my lack of expertise with Javascript. But at one point, I got this error:</p>
<pre>events:12
        throw arguments[1];
                       ^
Error: Parse Error
    at Client.ondata (http:881:22)
    at IOWatcher.callback (net:517:29)
    at node.js:270:9</pre>
<p>I still haven&#8217;t figured out exactly where that error was coming from. Nonetheless, it was an interesting exercise. I&#8217;m looking forward to writing some non-trivial code with node.js now.</p>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2010/07/21/what-is-node-js/' rel='bookmark' title='Permanent Link: What is node.js?'>What is node.js?</a></li>
<li><a href='http://floatingsun.net/2005/08/20/ajax-galore/' rel='bookmark' title='Permanent Link: Ajax galore!'>Ajax galore!</a></li>
<li><a href='http://floatingsun.net/2008/01/08/google-reader-archiving-less/' rel='bookmark' title='Permanent Link: Google Reader archiving less?'>Google Reader archiving less?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/08/04/toying-with-node-js/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Some thoughts on dbShards</title>
		<link>http://floatingsun.net/2010/08/03/some-thoughts-on-dbshards/</link>
		<comments>http://floatingsun.net/2010/08/03/some-thoughts-on-dbshards/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 06:20:52 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Scalability]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1408</guid>
		<description><![CDATA[﻿﻿﻿I heard about dbShards via two recent blog posts &#8212; one by Curt Monash and the other by Todd Hoff. It seemed like an interesting product, so I spent some time digging around on their website. As the name suggests, dbShards is all about sharding. Sharding, also known as partitioning, is the process of distributing a [...]


Related posts:<ol><li><a href='http://floatingsun.net/2010/07/21/what-is-node-js/' rel='bookmark' title='Permanent Link: What is node.js?'>What is node.js?</a></li>
<li><a href='http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/' rel='bookmark' title='Permanent Link: Thoughts on the Rupee symbol'>Thoughts on the Rupee symbol</a></li>
<li><a href='http://floatingsun.net/2010/08/04/toying-with-node-js/' rel='bookmark' title='Permanent Link: Toying with node.js'>Toying with node.js</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>﻿﻿﻿I heard about <a href="http://www.codefutures.com/dbshards/">dbShards</a> via two recent blog posts &#8212; <a href="http://www.dbms2.com/2010/07/28/dbshards/">one by Curt Monash</a> and the <a href="http://highscalability.com/blog/2010/6/23/product-dbshards-share-nothing-shard-everything.html">other by Todd Hoff</a>. It seemed like an interesting product, so I spent some time digging around on their website.</p>
<div class="wp-caption alignnone" style="width: 260px"><a href="http://www.codefutures.com/dbshards/"><img title="dbShards" src="http://www.codefutures.com/img/dbshards-shardit.gif" alt="dbShards" width="250" height="231" /></a><p class="wp-caption-text">dbShards</p></div>
<p>As the name suggests, dbShards is all about <strong><a class="zem_slink freebase/guid/9202a8c04000641f8000000009434762" title="Shard (database architecture)" rel="wikipedia" href="http://en.wikipedia.org/wiki/Shard_%28database_architecture%29">sharding</a></strong>. Sharding, also known as <strong>partitioning</strong>, is the process of distributing a given dataset into smaller chunks based some policy. AFAIK, the term &#8220;shard&#8221; was popularized recently by Google even though the concept of partitioning is at least a few decades old. Most distributed data management systems implement some form of sharding by necessity, since the entire data set will not fit in memory on a single node (if it would, you should not be using a distributed system). And therein lies the USP of dbShards &#8212; <em>it brings sharding (and with it, performance and scalability) to commodity, single-node databases such as <a class="zem_slink freebase/en/mysql" title="MySQL" rel="homepage" href="http://www.mysql.com">MySQL</a> and <a class="zem_slink freebase/en/postgresql" title="PostgreSQL" rel="homepage" href="http://www.postgresql.org/">Postgres</a>.</em></p>
<p>So how does it work? Well, dbShards acts as a <strong>transparent layer</strong> sitting in front of multiple nodes running MySQL, lets say. Transparent, because they want to work with legacy code, meaning no or minimal client side modifications. Inserting new data is pretty simple: dbShards using a &#8220;sharding key&#8221; to route an incoming tuple to the appropriate destination. Queries are a bit more complex, and here the website is skimpy on details. Monash&#8217;s post mentions that join performance is good when sharding keys are the same &#8212; this is not a surprise. I&#8217;m not interested in what other kinds of query optimizations are in place. When data is partitioned, you really need a sophisticated query planner and optimizer that can minimize data movement and aggregation, and push down as much computation as possible to individual nodes.</p>
<p>I found the page on <a href="http://www.codefutures.com/dbshards-replicate/">replication</a> intriguing. I&#8217;m guessing when they say &#8220;reliable replication&#8221;, they mean &#8220;consistent replication&#8221; in more common parlance (alternative, that dbShards supports strong consistency, as opposed to eventual or lazy consistency). This particular bit in the first paragraph caught my eye: <em>&#8220;deliver high performance yet reliable multi-threaded replication for High Availability (HA)&#8221;. </em>I&#8217;m not sure how to read this. Are they implying that multi-threaded replication is typically not performant? And usually you do NOT want threading for high availability, because a single thread can still take the entire process down. The actual mechanism for replication seems like a straightforward application of the <strong>replicated state machine </strong>approach.</p>
<p>But making a replicated state machine based system scale requires very careful engineering, otherwise it is easy to hit performance bottlenecks. I&#8217;d be very interested in knowing a bit more about the transaction model in dbShards and how it performs on larger systems (tens to hundreds of nodes).</p>
<p>The pricing model is also quite interesting. I think it is the first vendor I know of that is pricing on CPU and not storage (their pricing is $5,000 per year per server). I think this is indicative of the target customer segment as well &#8212; I would imagine dbShards works well with a few TBs of data on machines with a lot of CPU and memory.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=c1e361c2-753e-4b30-be5f-0b54c66f003e" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2010/07/21/what-is-node-js/' rel='bookmark' title='Permanent Link: What is node.js?'>What is node.js?</a></li>
<li><a href='http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/' rel='bookmark' title='Permanent Link: Thoughts on the Rupee symbol'>Thoughts on the Rupee symbol</a></li>
<li><a href='http://floatingsun.net/2010/08/04/toying-with-node-js/' rel='bookmark' title='Permanent Link: Toying with node.js'>Toying with node.js</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/08/03/some-thoughts-on-dbshards/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Udaan and Whitespace</title>
		<link>http://floatingsun.net/2010/08/03/udaan-and-whitespace/</link>
		<comments>http://floatingsun.net/2010/08/03/udaan-and-whitespace/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 00:51:19 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Amit Trivedi]]></category>
		<category><![CDATA[Udaan]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1422</guid>
		<description><![CDATA[There are movies, and then there are movies. Udaan is one of those rare movies where it seems like the crew had an intense clarity about the movie they wanted to make, and that is exactly what they did. They did not make it for the money, they did not make it to please a [...]


Related posts:<ol><li><a href='http://floatingsun.net/2005/05/03/movies-h2g2-kfh/' rel='bookmark' title='Permanent Link: Movies: H2G2, KFH'>Movies: H2G2, KFH</a></li>
<li><a href='http://floatingsun.net/2006/02/07/the-good-the-bad-and-the-ugly/' rel='bookmark' title='Permanent Link: The Good, The Bad and The Ugly'>The Good, The Bad and The Ugly</a></li>
<li><a href='http://floatingsun.net/2004/06/19/what-are-movies-for/' rel='bookmark' title='Permanent Link: What are movies for?'>What are movies for?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>There are movies, and then there are movies.</p>
<p><img title="Udaan" src="http://upload.wikimedia.org/wikipedia/en/7/71/Udaan_Movie_Poster.jpg" alt="Udaan Poster" width="244" height="352" /></p>
<p><a href="http://en.wikipedia.org/wiki/Udaan_(2010_film)">Udaan</a> is one of those rare movies where it seems like the crew had an intense clarity about the movie they wanted to make, and that is exactly what they did. They did not make it for the money, they did not make it to please a broad audience, they did not make it to please the critics &#8212; they made it, because that was what they wanted to show.</p>
<p>I&#8217;m not going to talk about the story or the characters much, just Google those things if you are interested. Instead, I want to talk about an analogy.</p>
<p>Any good designer knows the <a href="http://www.smashingmagazine.com/2007/01/12/white-space-and-simplicity-an-overview/">importance of whitespace</a>, whether in <a href="http://www.alistapart.com/articles/whitespace">layout</a> or typography. Architects have long understood that negative or empty space is just as (or perhaps more) important as filled space. Watching Udaan was a good reminder that good moments in a movie need their space as well.</p>
<p>I didn&#8217;t feel rushed as I saw the movie; it felt a bit slow at times, but there was no hurry to get to the end. There are several scenes that are made poignant by the lack of dialog. The same goes for the music. <a class="zem_slink freebase/en/amit_trivedi" title="Amit Trivedi" rel="imdb" href="http://www.imdb.com/name/nm3032664/">Amit Trivedi</a> has done an outstanding job with the background score as well as the soundtrack. The lyrics (by Amitabh Bhattacharya) are fabulous and are fittingly given their space in the songs &#8212; Amit makes sure that the music recedes and does not overwhelm so you can pay attention to the words. But when the voices take a break, the music that fills in the gaps is just as good.</p>
<p>As my wife observed, &#8220;this movie has craft.&#8221;</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=db1052a6-81fb-4da0-853d-c5d32414ce8f" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2005/05/03/movies-h2g2-kfh/' rel='bookmark' title='Permanent Link: Movies: H2G2, KFH'>Movies: H2G2, KFH</a></li>
<li><a href='http://floatingsun.net/2006/02/07/the-good-the-bad-and-the-ugly/' rel='bookmark' title='Permanent Link: The Good, The Bad and The Ugly'>The Good, The Bad and The Ugly</a></li>
<li><a href='http://floatingsun.net/2004/06/19/what-are-movies-for/' rel='bookmark' title='Permanent Link: What are movies for?'>What are movies for?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/08/03/udaan-and-whitespace/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to buy a new car</title>
		<link>http://floatingsun.net/2010/07/27/how-to-buy-a-new-car/</link>
		<comments>http://floatingsun.net/2010/07/27/how-to-buy-a-new-car/#comments</comments>
		<pubDate>Wed, 28 Jul 2010 06:16:31 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[CarsDirect]]></category>
		<category><![CDATA[Toyota]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1397</guid>
		<description><![CDATA[A few weeks ago we were in the market for a new car. Now, I like to think of myself as a cautious buyer: I like to do my research, I&#8217;m not much of an impulse shopper and I&#8217;m generally suspicious of sales people. A new car is a significant investment; naturally I felt extra [...]


Related posts:<ol><li><a href='http://floatingsun.net/2006/05/22/ibnlive-decision-on-quota-is-final-arjun/' rel='bookmark' title='Permanent Link: IBNLive : Decision on quota is final: Arjun'>IBNLive : Decision on quota is final: Arjun</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago we were in the market for a new car. Now, I like to think of myself as a cautious buyer: I like to do my research, I&#8217;m not much of an impulse shopper and I&#8217;m generally suspicious of sales people. A new car is a significant investment; naturally I felt extra prudent. Of course, all my friends kept wondering why I was making such a big deal: you go into a dealership, pick up the car, do the paperwork and walk out, as simple as that. I say good for them! But I sleep more peacefully knowing that I had my bases covered.</p>
<div class="wp-caption alignnone" style="width: 510px"><img title="Toy Car" src="http://farm4.static.flickr.com/3043/2375022709_c79913b0bb.jpg" alt="" width="500" height="316" /><p class="wp-caption-text">Courtesy http://www.flickr.com/photos/ericrobinson/</p></div>
<p>A quick Google search on <a href="http://www.google.com/search?sourceid=chrome&amp;ie=UTF-8&amp;q=how+to+buy+a+new+car">&#8220;how to buy a new car&#8221;</a> led me straight to the very comprehensive <a href="http://www.carbuyingtips.com/">CarBuyingTips.com</a>. It is probably a great resource for many people. But after spending a few hours clicking through the numerous links on there, I almost felt exhausted. There was way too much (redundant) information, perhaps badly organized and overall just not very easy to consume. As they say, hindsight is 20/20. So, with the experience of having just purchased a new vehicle, here is my attempt at a concise, <strong>five step guide</strong> to buying a new car.</p>
<ol>
<li><strong>Figure out what you want:</strong> You should know exactly what make and model you want, down to the last detail &#8212; this includes the interior color, upholstery and exterior color, as well as any other options and accessories. The more precise you are in what you want, the better off you will be. My first impression while researching new cars was that I could get whatever configuration I wanted &#8212; if the dealership doesn&#8217;t have it in stock, they&#8217;ll simply order it in. Unfortunately, most dealers will only work with what stock they have. So checking for availability is critical. Go ahead and schedule those test drives, but let the dealers know upfront that you are not looking to buy just yet. The dealers will ask for your contact information though, so be prepare for a barrage of emails and phone calls from them, until you&#8217;ve made your purchase.</li>
<li><strong>Get the numbers: </strong>Once you have identified the configuration you want, find your car on <a href="http://edmunds.com">Edmunds.com</a>. Edmunds will give you the <strong>invoice price</strong> of your car. Go ahead and add all the options and select the colors to get a final estimated invoice price. The more informed you are, the better your chances are when negotiating with dealers and making an informed decision.</li>
<li><strong>Get a quote from <a class="zem_slink freebase/en/carsdirect" title="CarsDirect" rel="homepage" href="http://www.carsdirect.com">CarsDirect</a>: </strong>Buying a car online these days is not only possible, but highly recommended. You save the hassle of driving to dealerships, wasting time over the phone etc. Start your hunt for the best price by getting a quote from <a href="http://carsdirect.com">carsdirect.com</a>. They partner with local dealerships and have very competitive pricing. My experience with CarsDirect was fantastic and I&#8217;d have definitely bought a car from them had a local dealer not given me a much better deal.</li>
<li><strong>Get quotes from local dealers: </strong>Open a spreadsheet, fire up your browser and start calling your local dealerships. Ask for the new car sales department and let them know exactly what configuration you are looking for. Ask them for price and availability. <strong>Always ask for out-of-the-door price</strong>, including taxes and rebates. This way there will be fewer surprises on the final bill. Make a point to let them know that you are talking to other dealers. Jot down the dealers quote in the spreadsheet (add the CarsDirect quote here as well). This process can take some time because you may not be able to reach them in the first attempt and there might be some back and forth while they get back to you with details. I recommend setting aside 2 slots of 2 hrs each for these phone calls.</li>
<li><strong>Decide and Buy: </strong>Once you have all competing quotes, you can make your decision. The final decision will probably depend not just on the price, but other factors such as availability, location of the dealership, your experience with the dealership etc. If you finance your car, most car companies typically have their own financing arm which usually provides great APRs. If not, talk to your bank. For the final paperwork, you should make a visit to the dealership. Be sure to read the fine print and know exactly what service (if any) the dealer will provide above and beyond the warranty and services provided by the manufacturer.</li>
</ol>
<p>That&#8217;s pretty much it! I read a lot of horror stories online about swindling and cheating in dealerships. My personal experience with at least the <a class="zem_slink freebase/en/toyota_motor_corporation" title="Toyota" rel="homepage" href="http://www.toyota.co.jp/en/">Toyota</a> dealers in the <a class="zem_slink freebase/en/sf_bay_area" title="San Francisco Bay Area" rel="geolocation" href="http://maps.google.com/maps?ll=37.75,-122.283333333&amp;spn=1.0,1.0&amp;q=37.75,-122.283333333 (San%20Francisco%20Bay%20Area)&amp;t=h">Bay Area</a> was pretty good. Most of them were very straightforward and to the point. They did not want to waste their time or mine, and did not try to pressurize or hoodwink me into a bad deal. You might also find <a href="http://www.edmunds.com/advice/buying/articles/78386/article.html">this guide</a> useful.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=f919b165-320c-4568-b492-5de8443a304b" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2006/05/22/ibnlive-decision-on-quota-is-final-arjun/' rel='bookmark' title='Permanent Link: IBNLive : Decision on quota is final: Arjun'>IBNLive : Decision on quota is final: Arjun</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/07/27/how-to-buy-a-new-car/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What is node.js?</title>
		<link>http://floatingsun.net/2010/07/21/what-is-node-js/</link>
		<comments>http://floatingsun.net/2010/07/21/what-is-node-js/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 19:39:07 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1394</guid>
		<description><![CDATA[Image via Wikipedia If you follow the world of Javascript and/or high-performance networking, you have probably heard of node.js. If you already grok Node, then this post is not for you; move along. If, however, you are a bit confused as to exactly what Node.js is and how it works, then you should read on. [...]


Related posts:<ol><li><a href='http://floatingsun.net/2010/08/04/toying-with-node-js/' rel='bookmark' title='Permanent Link: Toying with node.js'>Toying with node.js</a></li>
<li><a href='http://floatingsun.net/2010/08/03/some-thoughts-on-dbshards/' rel='bookmark' title='Permanent Link: Some thoughts on dbShards'>Some thoughts on dbShards</a></li>
<li><a href='http://floatingsun.net/2007/06/25/browsers-are-the-new-cross-platform-gui-tookit/' rel='bookmark' title='Permanent Link: Browsers are the new cross platform GUI tookit'>Browsers are the new cross platform GUI tookit</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignright" style="width: 310px;">
<dt class="wp-caption-dt"><a href="http://commons.wikipedia.org/wiki/File:NodeJS.png"><img title="The logo of the Node.js Project from the offic..." src="http://upload.wikimedia.org/wikipedia/commons/thumb/6/67/NodeJS.png/300px-NodeJS.png" alt="The logo of the Node.js Project from the offic..." width="300" height="79" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image via <a href="http://commons.wikipedia.org/wiki/File:NodeJS.png">Wikipedia</a></dd>
</dl>
</div>
</div>
<p>If you follow the world of Javascript and/or high-performance networking, you have probably heard of <a href="http://nodejs.org"><span style="color: #000000;">node.js</span></a>. If you already grok Node, then this post is not for you; move along. If, however, you are a bit confused as to exactly what Node.js is and how it works, then you should read on.</p>
<p>The node.js website doesn&#8217;t mince words in describing the software: &#8220;Evented I/O for <a href="http://code.google.com/p/v8/">V8 JavaScript</a>.&#8221; While that statement is precise and captures the essence of node.js succinctly, at first glance it did not tell me much about node.js. I did what anyone interested in node.js should do: downloaded the source and started playing around with it.</p>
<p>So what exactly is node.js? Well, first and foremost it is a <strong>Javascript runtime</strong>. Think of your web browser; how does it run Javascript? It implements a Javascript runtime and supports APIs that make sense in the browser such as DOM manipulation etc. Javascript as a language itself is fairly browser agnostic. So node.js is yet another runtime for Javascript, implemented primarily in C++.</p>
<p>Because node.js focuses on networking, it does not support the standard APIs available in a browser. Instead, it provides a different set of APIs (with <a href="http://nodejs.org/api.html"><span style="color: #000000;">fantastic documentation</span></a>). Thus, for instance, HTTP support is built into node.js &#8212; it is not an external library.</p>
<p>The other salient feature of node.js is that it is <strong>event driven</strong>. If you are familiar with <a class="zem_slink" title="Event-driven programming" rel="wikipedia" href="http://en.wikipedia.org/wiki/Event-driven_programming">event driven programming</a> (ala <a class="zem_slink" title="Twisted (software)" rel="homepage" href="http://twistedmatrix.com/">Python Twisted</a>, Ruby&#8217;s Event Machine, the event loop in Qt etc), you know what I&#8217;m talking about. The key difference though is that unlike all these systems, you never explicitly invoke a blocking call to start the event loop &#8212; node.js automatically enters the event loop as soon as it has finished loaded the program. A corollary is that you can only write event driven programs in node.js, no other programming models are supported. Another consequence of this design choice is that node.js is single-threaded. To exploit CPU parallelism, you need to run multiple node.js instances. Of course, there are several node.js modules and projects already available to address this very issue.</p>
<p>To implement a runtime for Javascript, node.js first needs to parse the input Javascript. node.js <strong>leverages Google&#8217;s V8 Javascript engine</strong> to do this. V8 takes care of interpreting the Javascript so node.js need not worry about syntactical issues; it only need to implement the appropriate hooks and callbacks for V8.</p>
<p>node.js claims to be extremely memory efficient and scalable. This is possible because node.js <strong>does not expose any blocking APIs</strong>. As a result, the program is completely callback driven. Of course, any kind of I/O (disk or network) will eventually block. node.js <strong>does all blocking I/O in an internal thread pool</strong> &#8212; thus even though the application executes in a single thread, internally there are multiple threads that node.js manages.</p>
<p>Overall, node.js is very refreshing. The community seems great and there is a lot of buzz around the project right now, with some big companies like Yahoo starting to use experiment with node.js. node.js is also driving the &#8220;server side Javascript&#8221; movement. For instance, <a href="http://joyent.com">Joyent&#8217;s</a> <a href="http://smart.joyent.com/docs/">Smart</a> platform allows you to write your server code in Javascript, which they can then execute on their hosted platforms.</p>
<p>Finally, no blog post about node.js is complete without an example of node.js code. Here is a simple web server:</p>
<div><script src="http://gist.github.com/485001.js"></script></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=73a2a9a5-fb46-4a7c-83d4-406ce74fd7f3" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2010/08/04/toying-with-node-js/' rel='bookmark' title='Permanent Link: Toying with node.js'>Toying with node.js</a></li>
<li><a href='http://floatingsun.net/2010/08/03/some-thoughts-on-dbshards/' rel='bookmark' title='Permanent Link: Some thoughts on dbShards'>Some thoughts on dbShards</a></li>
<li><a href='http://floatingsun.net/2007/06/25/browsers-are-the-new-cross-platform-gui-tookit/' rel='bookmark' title='Permanent Link: Browsers are the new cross platform GUI tookit'>Browsers are the new cross platform GUI tookit</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/07/21/what-is-node-js/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>SIGCOMM goes to Delhi</title>
		<link>http://floatingsun.net/2010/07/13/sigcomm-goes-to-delhi/</link>
		<comments>http://floatingsun.net/2010/07/13/sigcomm-goes-to-delhi/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 06:36:47 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Research]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1395</guid>
		<description><![CDATA[For those of you who don&#8217;t know, SIGCOMM is the one of the most prestigious conferences in the networking community. SIGCOMM is the ACM Special Interest Group on Data Communications. Unlike SOSP and OSDI which alternate every year, SIGCOMM is an annual event showcasing the very best in networking research from around the world. I [...]


Related posts:<ol><li><a href='http://floatingsun.net/2006/06/22/on-blind-reviews/' rel='bookmark' title='Permanent Link: On blind reviews'>On blind reviews</a></li>
<li><a href='http://floatingsun.net/2006/09/28/democom-conferences-demofall-2006/' rel='bookmark' title='Permanent Link: DEMO.com Conferences > Demofall 2006'>DEMO.com Conferences > Demofall 2006</a></li>
<li><a href='http://floatingsun.net/2004/08/25/india-here-i-come/' rel='bookmark' title='Permanent Link: India, here I come!'>India, here I come!</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>For those of you who don&#8217;t know, <a href="http://www.sigcomm.org">SIGCOMM</a> is the one of the most prestigious conferences in the networking community. SIGCOMM is the ACM Special Interest Group on Data Communications. Unlike<a href="http://sosp.org"> SOSP</a> and OSDI which alternate every year, SIGCOMM is an annual event showcasing the very best in networking research from around the world.</p>
<p>I was quite thrilled when I found out that SIGCOMM 2010 is going to be in Delhi this year!! While some of these conferences are known to pick &#8220;exotic&#8221; venues, it is also an encouraging nod from the academic community. This is probably the first top-tier systems/networking conference to be held in India and I hope the local universities in and around Delhi will take advantage of this opportunity.</p>
<p>It is shaping up to be an exciting year for Delhi, with the <a href="http://www.cwgdelhi2010.org/">Commonwealth Games</a> coming up soon after SIGCOMM. A glance at the <a href="http://conferences.sigcomm.org/sigcomm/2010/organization.php">organizing committee</a> for this year suggests that Geoff Voelker might have been involved in pushing for this venue :)</p>
<p>I personally am not very fond of Delhi, however. Out of curiosity, I looked over the <a href="http://conferences.sigcomm.org/sigcomm/2010/local.php">local information page</a> on the SIGCOMM 2010 web site and found myself both agreeing with and a bit disappointed at some of the tips listed on that page:</p>
<ul>
<li>Keep your wallet/passports in an inner pocket of a jacket or shirt. Avoid keeping it in the rear pocket, especially while moving around in crowded places or in public transport like buses or Delhi Metro.</li>
<li>Never follow the advice of taxi or cab drivers regarding your stay and travel in the city. Always take assistance from &#8220;May I Help You&#8221; counter and other assistance cell of the government like Delhi Tourism, DTC, etc.</li>
<li>Don&#8217;t travel alone late nights, especially female travelers. If you are getting late, take proper private cab or arrange a pick up</li>
</ul>
<p>I do hope all visitors to SIGCOMM have a fantastic stay and that more and more conferences choose India.</p>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2006/06/22/on-blind-reviews/' rel='bookmark' title='Permanent Link: On blind reviews'>On blind reviews</a></li>
<li><a href='http://floatingsun.net/2006/09/28/democom-conferences-demofall-2006/' rel='bookmark' title='Permanent Link: DEMO.com Conferences > Demofall 2006'>DEMO.com Conferences > Demofall 2006</a></li>
<li><a href='http://floatingsun.net/2004/08/25/india-here-i-come/' rel='bookmark' title='Permanent Link: India, here I come!'>India, here I come!</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/07/13/sigcomm-goes-to-delhi/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Using Google Webfonts with Thematic</title>
		<link>http://floatingsun.net/2010/07/07/using-google-webfonts-with-thematic/</link>
		<comments>http://floatingsun.net/2010/07/07/using-google-webfonts-with-thematic/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 01:59:00 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1391</guid>
		<description><![CDATA[A few weeks ago Google launched their Web Fonts Directory. All the fonts in the directory can be added to any web page with a few simple lines of Javascript; they can subsequently be used in CSS stylesheets just like regular fonts. Those with a keen eye for detail might have noticed some changes in [...]


Related posts:<ol><li><a href='http://floatingsun.net/2009/03/04/thematic-the-final-word-in-wordpress-themes/' rel='bookmark' title='Permanent Link: Thematic: the final word in WordPress themes'>Thematic: the final word in WordPress themes</a></li>
<li><a href='http://floatingsun.net/2009/01/18/amarok-ate-your-stats/' rel='bookmark' title='Permanent Link: Amarok ate your stats?'>Amarok ate your stats?</a></li>
<li><a href='http://floatingsun.net/2006/03/01/wp-dokuwiki-02/' rel='bookmark' title='Permanent Link: WP-Dokuwiki 0.2'>WP-Dokuwiki 0.2</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago Google launched their <a href="http://code.google.com/webfonts">Web Fonts Directory</a>. All the fonts in the directory can be added to any web page with a few simple lines of Javascript; they can subsequently be used in CSS stylesheets just like regular fonts. Those with a keen eye for detail might have noticed some changes in the fonts around here. Now you know where they are from.</p>
<p>Here&#8217;s a simple snippet to add Webfonts support to your Thematic child themes. Just add it to the functions.php:</p>
<script src="http://gist.github.com/467550.js"></script>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2009/03/04/thematic-the-final-word-in-wordpress-themes/' rel='bookmark' title='Permanent Link: Thematic: the final word in WordPress themes'>Thematic: the final word in WordPress themes</a></li>
<li><a href='http://floatingsun.net/2009/01/18/amarok-ate-your-stats/' rel='bookmark' title='Permanent Link: Amarok ate your stats?'>Amarok ate your stats?</a></li>
<li><a href='http://floatingsun.net/2006/03/01/wp-dokuwiki-02/' rel='bookmark' title='Permanent Link: WP-Dokuwiki 0.2'>WP-Dokuwiki 0.2</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/07/07/using-google-webfonts-with-thematic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rupee symbol finalists</title>
		<link>http://floatingsun.net/2010/06/30/rupee-symbol-finalists/</link>
		<comments>http://floatingsun.net/2010/06/30/rupee-symbol-finalists/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 07:21:33 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1363</guid>
		<description><![CDATA[The ToI reported a few days ago that there are five finalists for the Indian Rupee symbol: I had previously written about the Rupee symbol here. The ToI seems to suggest that #4 is the likely candidate. According to the article, the symbol should have been decided by now, but I haven&#8217;t found any information [...]


Related posts:<ol><li><a href='http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/' rel='bookmark' title='Permanent Link: Thoughts on the Rupee symbol'>Thoughts on the Rupee symbol</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>The ToI <a href="http://timesofindia.indiatimes.com/India/Cabinet-decides-on-rupee-sign-today-/articleshow/6084121.cms">reported a few days ago</a> that there are five finalists for the <a class="zem_slink freebase/guid/9202a8c04000641f8000000000276351" title="Indian rupee" rel="wikipedia" href="http://en.wikipedia.org/wiki/Indian_rupee">Indian Rupee</a> symbol:</p>
<p><img title="Rupee symbol finalists" src="http://www.pluggd.in/wp-content/uploads/2010/06/Indian-Rupee-Symbol.jpg" alt="Rupee symbol finalists" width="217" height="359" /></p>
<p>I had previously written about the Rupee symbol <a href="http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/">here</a>. The ToI seems to suggest that #4 is the likely candidate. According to the article, the symbol should have been decided by now, but I haven&#8217;t found any information to that effect. Does anyone know the final outcome? I can&#8217;t say I like any of the finalists that much, but I guess out of the five #4 is probably one of the better ones.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=6f30cb83-85e7-43b9-b518-1d09e7aecdbb" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/' rel='bookmark' title='Permanent Link: Thoughts on the Rupee symbol'>Thoughts on the Rupee symbol</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/06/30/rupee-symbol-finalists/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Ads that suck: Tax Masters</title>
		<link>http://floatingsun.net/2010/06/23/ads-that-suck-tax-masters/</link>
		<comments>http://floatingsun.net/2010/06/23/ads-that-suck-tax-masters/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 04:35:08 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Humor]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1279</guid>
		<description><![CDATA[My wife often jokes that the ads here in the US are extremely complimentary &#8212; half of them entice you towards more and more (junk) food; the rest sell you medications that seem to create more problems than they solve. In honor of the remarkably consistent bad ads on television, I&#8217;m starting an &#8220;ads that [...]


Related posts:<ol><li><a href='http://floatingsun.net/2009/02/11/how-is-tv-viewership-measured/' rel='bookmark' title='Permanent Link: How is TV viewership measured?'>How is TV viewership measured?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><a href="http://surabhisaraf.net">My wife</a> often jokes that the ads here in the US are extremely complimentary &#8212; half of them entice you towards more and more (junk) food; the rest sell you medications that seem to create more problems than they solve. In honor of the remarkably consistent bad ads on television, I&#8217;m starting an &#8220;ads that suck&#8221; series. To kick-off the series, I present to you, the Tax Masters commercial:</p>
<p><object width="500" height="306"><param name="movie" value="http://www.youtube.com/v/Y4jAq1tsXoA&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/Y4jAq1tsXoA&#038;fs=1" type="application/x-shockwave-flash" width="500" height="306" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Some observations:</p>
<ul>
<li>If you have not filed your tax return for years, the IRS <strong>should </strong>be coming after you and auditing you! The IRS <strong>should </strong>relentlessly pursue you for your unpaid taxes.</li>
<li>I&#8217;m sure there are a lot of folks out there who are hurting and are not able to pay their taxes for legitimate reasons. But the ad does not convey that at all. It almost sounds like &#8220;Hey, I&#8217;m going to tell you how you can get away from the IRS and not pay your taxes&#8221;</li>
<li>Everyone knows how targeted television advertising is. For instance, if you watch <a class="zem_slink freebase/en/comedy_central" title="Comedy Central" rel="homepage" href="http://www.comedycentral.com/">Comedy Central</a>, you&#8217;ll see a lot of ads around dating websites, calling services for singles etc. I see the the TaxMasters ad on <a class="zem_slink freebase/en/cnn" title="CNN" rel="homepage" href="http://www.cnn.com/">CNN</a> <em>all the time.</em> Wonder what that says about CNN&#8217;s audience.</li>
<li>This ad sucks because it doesn&#8217;t really engage the audience, the value proposition is not clear to me at least and there is absolutely no creativity.</li>
<li>But I gotta hand it to TaxMasters &#8212; I was pleasantly surprised to discover <a href="http://www.txmstr.com/blog/">their blog</a> and their sense of humor.</li>
</ul>
<p>More to come.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=fc0f90c2-0dd7-4194-be9c-3c9566c05742" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2009/02/11/how-is-tv-viewership-measured/' rel='bookmark' title='Permanent Link: How is TV viewership measured?'>How is TV viewership measured?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/06/23/ads-that-suck-tax-masters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thoughts on the Rupee symbol</title>
		<link>http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/</link>
		<comments>http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/#comments</comments>
		<pubDate>Wed, 19 May 2010 18:57:26 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[india]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1116</guid>
		<description><![CDATA[This post has been sitting around in my &#8220;drafts&#8221; for more than a year now. I just figured I would get it out of the way &#8212; better late than never. In March 2009, the Indian government (specifically, the Finance Ministry) announced a contest to design a symbol for the Indian Rupee. Sometime in April, [...]


Related posts:<ol><li><a href='http://floatingsun.net/2010/06/30/rupee-symbol-finalists/' rel='bookmark' title='Permanent Link: Rupee symbol finalists'>Rupee symbol finalists</a></li>
<li><a href='http://floatingsun.net/2005/09/28/conscientious-bollywood/' rel='bookmark' title='Permanent Link: Conscientious Bollywood'>Conscientious Bollywood</a></li>
<li><a href='http://floatingsun.net/2010/08/03/some-thoughts-on-dbshards/' rel='bookmark' title='Permanent Link: Some thoughts on dbShards'>Some thoughts on dbShards</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>This post has been sitting around in my &#8220;drafts&#8221; for more than a year now. I just figured I would get it out of the way &#8212; better late than never.</p>
<p>In March 2009, the Indian government (specifically, the Finance Ministry) <a href="http://timesofindia.indiatimes.com/india/A-contest-to-find-a-sign-for-Indian-rupee-/articleshow/4230464.cms">announced a contest to design</a> a symbol for the Indian Rupee. Sometime in April, the Ministry put out a press release listing all the eligible applicants; there were around 2300 eligible candidates it seems.</p>
<p>At some point after that, images of a few of the designs started surfacing:</p>
<div class="wp-caption alignnone" style="width: 610px"><img title="Rupee Symbols" src="http://qfichennai.files.wordpress.com/2009/04/320.jpg" alt="Rupee Symbols" width="600" height="389" /><p class="wp-caption-text">Rupee Symbols</p></div>
<p>As is the case with most Indian Government websites, the Financial Ministry <a href="http://www.finmin.nic.in/">website</a> is a disaster. There is very little useful information there, there is no way to search for information. Case in point &#8212; I was not able to find any information about the design contest on their website. The image above is the result of a Google search.</p>
<p>Couple of thoughts on the designs above (note that I do not know if these are even actual candidates. I&#8217;m assuming they are):</p>
<ul>
<li>It isn&#8217;t entirely clear to me why we need a symbol in the first place. Sure, writing &#8216;$&#8217; is probably nicer than writing &#8216;USD&#8217;, but &#8216;Rs&#8217; isn&#8217;t all that bad.</li>
<li>Any symbol for a currency should be really simple to draw. Simple. You should be able to draw it by hand in a few strokes. How many of the above designs do you find that simple?</li>
<li>Even if we pick a symbol, for it to actually start getting used, it has to be readily available on all computing platforms. Does Unicode have a provision for adding new symbols?</li>
</ul>
<p>In December 2009, the Economic Times <a href="http://economictimes.indiatimes.com/markets/forex/Contest-to-finalise-Rupee-symbol-down-to-final-five/articleshow/5350545.cms">reported</a> that the Ministry had shortlisted five finalists. Really? Wow. Again, no information to be found from the Ministry itself. It would have been pretty amazing (and easy to set up) if the Ministry had set up a public poll and asked Indian citizens which symbol they liked best.</p>
<p>Does anyone know what happened to the Indian rupee symbol design contest? I couldn&#8217;t find anything on Google after December 2009.</p>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2010/06/30/rupee-symbol-finalists/' rel='bookmark' title='Permanent Link: Rupee symbol finalists'>Rupee symbol finalists</a></li>
<li><a href='http://floatingsun.net/2005/09/28/conscientious-bollywood/' rel='bookmark' title='Permanent Link: Conscientious Bollywood'>Conscientious Bollywood</a></li>
<li><a href='http://floatingsun.net/2010/08/03/some-thoughts-on-dbshards/' rel='bookmark' title='Permanent Link: Some thoughts on dbShards'>Some thoughts on dbShards</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>How the mouse moves</title>
		<link>http://floatingsun.net/2010/05/12/how-the-mouse-moves/</link>
		<comments>http://floatingsun.net/2010/05/12/how-the-mouse-moves/#comments</comments>
		<pubDate>Thu, 13 May 2010 06:20:14 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1270</guid>
		<description><![CDATA[Random interesting find of the day: IOGraphica. Here&#8217;s mine for about 7 hours at work: Such a simple app, but such a fascinating output. An easy way to create computer generated art! Couple of observations: I have a dual-monitor setup at work. I use the left monitor for email for browsing and the right monitor [...]


Related posts:<ol><li><a href='http://floatingsun.net/2009/03/05/how-to-simulate-compizs-screenshot-plugin-in-kde4/' rel='bookmark' title='Permanent Link: How to simulate Compiz&#8217;s screenshot plugin in KDE4'>How to simulate Compiz&#8217;s screenshot plugin in KDE4</a></li>
<li><a href='http://floatingsun.net/2006/08/07/andrew-morton-moves-to-google/' rel='bookmark' title='Permanent Link: Andrew Morton moves to Google'>Andrew Morton moves to Google</a></li>
<li><a href='http://floatingsun.net/2005/01/12/apples-new-toys/' rel='bookmark' title='Permanent Link: Apple&#8217;s new toys'>Apple&#8217;s new toys</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Random interesting find of the day: <a href="http://iographica.com">IOGraphica</a>. Here&#8217;s mine for about 7 hours at work:</p>
<p><a href="http://floatingsun.net/wordpress/wp-content/uploads/2010/05/IOGraphica-7.3-hours-from-10-50-to-18-11.png"><img class="alignnone size-large wp-image-1271" title="IOGraphica - 7.3 hours (from 10-50 to 18-11)" src="http://floatingsun.net/wordpress/wp-content/uploads/2010/05/IOGraphica-7.3-hours-from-10-50-to-18-11-1024x320.png" alt="" width="819" height="256" /></a></p>
<p>Such a simple app, but such a fascinating output. An easy way to create <a class="zem_slink freebase/en/digital_art" title="Digital art" rel="wikipedia" href="http://en.wikipedia.org/wiki/Digital_art">computer generated art</a>! Couple of observations:</p>
<ul>
<li>I have a dual-monitor setup at work. I use the left monitor for email for browsing and the right monitor for code. The mouse patterns clearly reflect this usage pattern. I tend to rest the mouse roughly equally on the both the monitors.</li>
<li>I was very intrigued by the fact that most of the mouse motions are very smooth. Most curves almost look parabolic. There are very few jerks and jittery lines. Once again, nature seems poetic even in the most chaotic and random actions.</li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=a4a4358f-ea3e-45c6-86d7-67930cf2467d" alt="" /><span class="zem-script more-info"> </span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2009/03/05/how-to-simulate-compizs-screenshot-plugin-in-kde4/' rel='bookmark' title='Permanent Link: How to simulate Compiz&#8217;s screenshot plugin in KDE4'>How to simulate Compiz&#8217;s screenshot plugin in KDE4</a></li>
<li><a href='http://floatingsun.net/2006/08/07/andrew-morton-moves-to-google/' rel='bookmark' title='Permanent Link: Andrew Morton moves to Google'>Andrew Morton moves to Google</a></li>
<li><a href='http://floatingsun.net/2005/01/12/apples-new-toys/' rel='bookmark' title='Permanent Link: Apple&#8217;s new toys'>Apple&#8217;s new toys</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/05/12/how-the-mouse-moves/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Throw away mailing lists</title>
		<link>http://floatingsun.net/2010/04/29/throw-away-mailing-lists/</link>
		<comments>http://floatingsun.net/2010/04/29/throw-away-mailing-lists/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 23:51:08 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[Mailing list]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1266</guid>
		<description><![CDATA[Have you ever found yourself in a situation where you are on a mailing list and you want to send an email to all but 2 members on that list? A common case here is planning a surprise for someone on that list. In general, I find myself on (long) email threads containing a different [...]


Related posts:<ol><li><a href='http://floatingsun.net/2005/07/16/faking-from-address/' rel='bookmark' title='Permanent Link: Faking from address'>Faking from address</a></li>
<li><a href='http://floatingsun.net/2006/07/12/unsung-heroes-of-the-floss-world/' rel='bookmark' title='Permanent Link: Unsung heroes of the FLOSS world'>Unsung heroes of the FLOSS world</a></li>
<li><a href='http://floatingsun.net/2007/11/20/a-tale-of-status-messages/' rel='bookmark' title='Permanent Link: A tale of status messages'>A tale of status messages</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Have you ever found yourself in a situation where you are on a mailing list and you want to send an email to all but 2 members on that list? A common case here is planning a surprise for someone on that list.</p>
<div class="wp-caption alignnone" style="width: 234px"><img class=" " src="http://www.sxc.hu/pic/m/a/an/annaomline/227307_e-mail_me_.jpg" alt="" width="224" height="300" /><p class="wp-caption-text">Photo by http://www.anna-om-line.com/</p></div>
<p>In general, I find myself on (long) email threads containing a different subset of people for different occasions (birthdays, anniversaries etc) several times a year. The email threads quickly become long and unwieldy. People keep adding other people as the thread progresses, and the only way the new adds can figure out whats going on is looking at the content of future emails. There is no way for anyone to go back and read all the discussion so far.</p>
<p>That got me thinking, wouldn&#8217;t it be great to have a service that provide <strong>throw away <a class="zem_slink freebase/en/mailing_list" title="Mailing list" rel="wikipedia" href="http://en.wikipedia.org/wiki/Mailing_list">mailing lists</a>?</strong> Hear me out. Here&#8217;s how the service would work:</p>
<ul>
<li>To start a new mailing list, I simply send an email to newlist@mycoolservice.com. In the email, I also include a list of email addresses I want to seed the list with.</li>
<li>The service sends me back the address of a newly created throw away list. This could be of the form <strong>some-random-number@googlegroups.com.</strong></li>
<li>For all practical purposes, this is exactly like any other mailing list (or <a class="zem_slink freebase/en/google_groups" title="Google Groups" rel="homepage" href="http://groups.google.com/">Google Group</a>). We can add more members, search the messages etc.</li>
<li>Start your discussion and let the thoughts flow.</li>
<li>&#8230;</li>
<li>At some point, the purpose behind the list will cease to exist (successful surprise, for instance). Needless to add, further discussions on the topic will also cease.</li>
<li>You forget you even created this mailing list. After the mailing list has been idle for some time (say two weeks), the service automatically deletes the mailing list. Any future messages to that address will bounce back saying that the list has been deleted, please contact the administrator.</li>
</ul>
<p>Does anyone else think this could be useful?</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=f5a06448-8694-438d-a196-bdabcab7916c" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2005/07/16/faking-from-address/' rel='bookmark' title='Permanent Link: Faking from address'>Faking from address</a></li>
<li><a href='http://floatingsun.net/2006/07/12/unsung-heroes-of-the-floss-world/' rel='bookmark' title='Permanent Link: Unsung heroes of the FLOSS world'>Unsung heroes of the FLOSS world</a></li>
<li><a href='http://floatingsun.net/2007/11/20/a-tale-of-status-messages/' rel='bookmark' title='Permanent Link: A tale of status messages'>A tale of status messages</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/04/29/throw-away-mailing-lists/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Government Requests</title>
		<link>http://floatingsun.net/2010/04/21/google-government-requests/</link>
		<comments>http://floatingsun.net/2010/04/21/google-government-requests/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 00:45:47 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1264</guid>
		<description><![CDATA[Have you looked at this yet? www.google.com/governmentrequests/ First, I&#8217;m really happy to see Google at least trying to become more transparent. Second, I was very intrigued to see that India is in the top 3! Just in the last 6 months of 2009 India made over 1000 data requests to Google and upwards of 140 [...]


Related posts:<ol><li><a href='http://floatingsun.net/2004/05/01/business-networking/' rel='bookmark' title='Permanent Link: Business networking'>Business networking</a></li>
<li><a href='http://floatingsun.net/2005/09/23/how-google-killed-urchin/' rel='bookmark' title='Permanent Link: How Google killed Urchin'>How Google killed Urchin</a></li>
<li><a href='http://floatingsun.net/2006/09/06/google-analytics-the-deep-web/' rel='bookmark' title='Permanent Link: Google Analytics &#8212; the deep web'>Google Analytics &#8212; the deep web</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Have you looked at this yet? <a href="http://www.google.com/governmentrequests/">www.google.com/governmentrequests/</a></p>
<p>First, I&#8217;m really happy to see <a class="zem_slink freebase/en/google" title="Google" rel="homepage" href="http://google.com">Google</a> at least trying to become more transparent. Second, I was very intrigued to see that <strong><a class="zem_slink freebase/en/india" title="India" rel="wikipedia" href="http://en.wikipedia.org/wiki/India">India</a> is in the top 3!</strong> Just in the last 6 months of 2009 India made over 1000 data requests to Google and upwards of 140 removal requests. Here&#8217;s the current breakdown:</p>
<ul>
<li>1061 data requests</li>
<li>142 removal requests
<ul>
<li>77.5% of removal requests fully or partially complied with.</li>
</ul>
<ul>
<li>2 Blogger</li>
<li>1 Book Search (court order)</li>
<li>2 Geo (except Street View)</li>
<li>119 orkut</li>
<li>1 SMS Channels</li>
<li>2 Web Search</li>
<li>15 YouTube</li>
</ul>
</li>
</ul>
<p>Thankfully, bulk of the removal requests (119 out of 142) are for <a class="zem_slink freebase/en/orkut" title="Orkut" rel="homepage" href="http://www.orkut.com">Orkut</a> and given the spammy state of Orkut, I&#8217;m not really surprised. I&#8217;m more interested in the data requests, but right now that (possibly inaccurate) number is all Google can tell us.</p>
<p>Here&#8217;s another weird thing, Brazil made 291 removal requests of which 119 were for Orkut. India also made 119. Co-incidence? Perhaps. Or may be it was a common set of bad URLs that both countries ended up getting rid of. Of course, more than 75% of Orkut users are either from Brazil or from India, so there&#8217;s definitely some connection here.</p>
<p>All in all, another interesting data source.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=139bfa11-3f59-400c-8161-6f8a11248cff" alt="" /><span class="zem-script more-info"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2004/05/01/business-networking/' rel='bookmark' title='Permanent Link: Business networking'>Business networking</a></li>
<li><a href='http://floatingsun.net/2005/09/23/how-google-killed-urchin/' rel='bookmark' title='Permanent Link: How Google killed Urchin'>How Google killed Urchin</a></li>
<li><a href='http://floatingsun.net/2006/09/06/google-analytics-the-deep-web/' rel='bookmark' title='Permanent Link: Google Analytics &#8212; the deep web'>Google Analytics &#8212; the deep web</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/04/21/google-government-requests/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Groovy Gurus</title>
		<link>http://floatingsun.net/2010/04/08/groovy-gurus/</link>
		<comments>http://floatingsun.net/2010/04/08/groovy-gurus/#comments</comments>
		<pubDate>Fri, 09 Apr 2010 00:09:42 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1261</guid>
		<description><![CDATA[From the introductory post: Groovy Gurus is a bunch of gastronomically inclined city dwellers (and then some) who&#8217;ve chosen to spend a couple of Thursdays each month &#8211; the 2nd and 4th to be precise &#8211; dining at a yet-undiscovered venue (at least for the purposes of the Thursday dinners), picked by a rotating designatory [...]


Related posts:<ol><li><a href='http://floatingsun.net/2005/09/06/forrest-tuesday/' rel='bookmark' title='Permanent Link: Forrest Tuesday'>Forrest Tuesday</a></li>
<li><a href='http://floatingsun.net/2004/09/28/what-is-with-sororities/' rel='bookmark' title='Permanent Link: What is with sororities?'>What is with sororities?</a></li>
<li><a href='http://floatingsun.net/2005/07/29/monsoon-mayhem/' rel='bookmark' title='Permanent Link: Monsoon mayhem'>Monsoon mayhem</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>From the <a href="http://groovy-gurus.posterous.com/groovy-gurus-the-kick-off">introductory post</a>:</p>
<blockquote><p>Groovy Gurus is a bunch of gastronomically inclined city dwellers (and then some) who&#8217;ve chosen to spend a couple of Thursdays each month &#8211; the 2nd and 4th to be precise &#8211; dining at a yet-undiscovered venue (at least for the purposes of the Thursday dinners), picked by a rotating designatory in the group. <a class="zem_slink" title="San Francisco" rel="geolocation" href="http://maps.google.com/maps?ll=37.7793,-122.4192&amp;spn=0.1,0.1&amp;q=37.7793,-122.4192 (San%20Francisco)&amp;t=h">San Francisco</a> has such a wide range of cuisines served up by restaurants that often reflect the unique character of their neighborhoods that it would be an opportunity lost to not give the lot of them a try.</p></blockquote>
<p>Tonight is the third GG meetup. Follow our journey on <a href="http://groovy-gurus.posterous.com/">Groovy Gurus</a>.</p>
<p>Meanwhile, here are some of the other names we thought of before settling on Groovy Gurus:</p>
<ul>
<li>Tangy Tuesday</li>
<li>Water, no ice</li>
<li>Masala Chai</li>
<li>Tuesday Tarkari</li>
<li>Mangal Munch</li>
<li>The Fortnight Bite</li>
<li>स्वाद की बहार, महीने में दो बार</li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2005/09/06/forrest-tuesday/' rel='bookmark' title='Permanent Link: Forrest Tuesday'>Forrest Tuesday</a></li>
<li><a href='http://floatingsun.net/2004/09/28/what-is-with-sororities/' rel='bookmark' title='Permanent Link: What is with sororities?'>What is with sororities?</a></li>
<li><a href='http://floatingsun.net/2005/07/29/monsoon-mayhem/' rel='bookmark' title='Permanent Link: Monsoon mayhem'>Monsoon mayhem</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/04/08/groovy-gurus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>India Census 2011</title>
		<link>http://floatingsun.net/2010/04/04/india-census-2011/</link>
		<comments>http://floatingsun.net/2010/04/04/india-census-2011/#comments</comments>
		<pubDate>Mon, 05 Apr 2010 06:17:27 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1255</guid>
		<description><![CDATA[Amidst all the chatter, billboards, news coverage and ads about the 2010 census here in the US, I heard a stories on the radio about the upcoming census in India next year. Since I didn&#8217;t know much about the census process in India and since this particular census seemed particularly newsworthy, I decided to learn [...]


Related posts:<ol><li><a href='http://floatingsun.net/2006/07/17/india-blocks-blogs/' rel='bookmark' title='Permanent Link: India blocks blogs?'>India blocks blogs?</a></li>
<li><a href='http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/' rel='bookmark' title='Permanent Link: Thoughts on the Rupee symbol'>Thoughts on the Rupee symbol</a></li>
<li><a href='http://floatingsun.net/2006/07/11/bombay-blasts/' rel='bookmark' title='Permanent Link: Bombay blasts'>Bombay blasts</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Amidst all the chatter, billboards, news coverage and ads about the 2010 census here in the US, I heard a stories on the radio about the upcoming census in India next year. Since I didn&#8217;t know much about the census process in India and since this particular census seemed particularly newsworthy, I decided to learn more about it. Here&#8217;s what I found.</p>
<p>First, I was a bit surprised and disappointed that the top hit for a Google search for <a href="http://www.google.com/search?hl=en&amp;source=hp&amp;q=india+census+2011&amp;aq=f&amp;aqi=g10&amp;aql=&amp;oq=&amp;gs_rfai=">&#8220;india census 2011&#8243; </a> does not point to an Indian government website for the census. Instead, most of the top hits are from various news stories. An interesting aside here &#8212; check out the <a href="http://www.google.co.in/search?hl=en&amp;source=hp&amp;q=india+census+2011&amp;meta=&amp;aq=f&amp;aqi=g4g-m5&amp;aql=&amp;oq=&amp;gs_rfai=">same search carried on google.co.in</a>; the results are quite different. In fact, I found it quite interesting that the censusindia.gov website is the top hit for the US search, but not in the India search.</p>
<p>Second, the <a href="http://censusindia.gov.in/">census website</a> is pretty shabby. Forget about SEO, typography, accessibility &#8212; the folks who are building these websites are still living in 1999. Someone needs to tell them about good web design. Design and usability issues apart, the content itself is lacking in many places; even incorrect in some places. Consider <a href="http://censusindia.gov.in/eval/2011.html">this page</a>:</p>
<p><a href="http://floatingsun.net/wordpress/wp-content/uploads/2010/04/Screen-shot-2010-04-04-at-9.33.50-PM.png"><img class="alignnone size-full wp-image-1256" title="India Census 2011" src="http://floatingsun.net/wordpress/wp-content/uploads/2010/04/Screen-shot-2010-04-04-at-9.33.50-PM.png" alt="" width="316" height="131" /></a></p>
<ul>
<li>the breadcrumb style navigation is only for appearances &#8212; the links don&#8217;t really work</li>
<li>It says &#8220;Census 2001&#8243;!!!!</li>
<li>the &lt;title&gt; anchor says &#8220;Evolution of Data Processing&#8221;. There&#8217;s no indication of the title on the page itself. Instead, it says &#8220;Preparation for the 2011 census.&#8221;</li>
<li>Best viewed in 1024&#215;768? Wow.</li>
<li>None of the foreign language links at the bottom of the page work. It would be trivial to link to a Google-translated page.</li>
<li>The header image or text don&#8217;t link to the Census home page. This is really basic stuff. I wonder if any of the developers building the website have actually used it.</li>
<li>Most of the links on the Census home page are &#8220;under construction.&#8221;</li>
</ul>
<p>Anyways, I don&#8217;t want to waste this post on nitpicking. After all, the issues at stake here are considerably more serious than web design. Without further ado, here are the key facts:</p>
<ul>
<li>This is the 15th census. The first one took place in 1872.</li>
<li>I couldn&#8217;t get any information about how the previous censuses were conducted, but this time around the Indian Government is aiming to record each and every one of the 1.2 billion individuals. Thats a really lofty goal.</li>
<li>This Census is also being used to piggy back another significant project: the construction of a National Public Registry (NPR). The NPR will contain some key stats about everyone in India. The NPR will also be used to generate biometric IDs for all Indians at some point.</li>
<li>For the first time in Census history, some NGOs will be involved in the training phase.</li>
<li>A lot of geo-spatialization technologies are in play. The only article I could find was <a href="http://www.gisdevelopment.net/magazine/global/2010/march/42-Census-2011-will-be-a-GIS-based-DSS_C-Chandramouli.htm">this</a>.</li>
<li>Another first: this Census will be collecting some data on basic sanitation, drinking water etc.</li>
<li>The 2001 census employed roughly 2 million &#8220;enumerators&#8221; (data collection personnel). This census will undoubtedly require more.</li>
</ul>
<p>The <a href="http://censusindia.gov.in/2011-Common/FAQ-Public.html">FAQ</a> has several interesting nuggets:</p>
<blockquote><p>The information collected about individuals is kept absolutely confidential. In fact this information is not accessible even to Courts of law.</p>
<p>Once this database has been created, biometrics such as photograph, 10 fingerprints and probably Iris information will be added for all persons aged 15 years and above.</p>
<p>The issue of Cards will be done in Coastal Villages to start with. After this the coastal Towns will be covered and so on till the entire country is covered.</p>
<p>35 questions relating to Building material, Use of Houses, Drinking water, Availability and type of latrines, Electricity, possession of assets etc. will be canvassed.</p></blockquote>
<p>Like I said earlier, these are lofty goals and this is a massive effort. But there&#8217;s so little information out there. I have a lot of questions and concerns. For one, the construction of the NPR poses a huge privacy risk. How is the Government going to ensure that corrupt officials don&#8217;t sell out the data to whoever pays the right price? What kind of audit policies and procedures are in place such that a neutral third-party can attest to the integrity of the entire process? Who all within the government will be able to look up my data? If the Government is going to store the biometric data as well, aren&#8217;t they constructing a gold-mine of identity-theft ammunition?</p>
<p>Digging around for more information, I found <a href="http://unstats.un.org/unsd/demographic/meetings/wshops/Thailand_15Sept08/docs/Session05_11_17CountryPresentations/India%20census%20data%20processing.ppt">this fascination presentation</a> (linked off of the United Nations Statistics Division). The PPT claims that it was prepared by someone from within the Census organization, but I can&#8217;t vouch for its authenticity.</p>
<div id="__ss_3637211" style="width: 425px;"><strong><a title="India Census Data Processing" href="http://www.slideshare.net/diwakergupta/india-census-data-processing">India Census Data Processing</a></strong><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=indiacensusdataprocessing-100405003331-phpapp01&amp;rel=0&amp;stripped_title=india-census-data-processing" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="355" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=indiacensusdataprocessing-100405003331-phpapp01&amp;rel=0&amp;stripped_title=india-census-data-processing" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<div style="padding: 5px 0 12px;">View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/diwakergupta">diwakergupta</a>.</div>
</div>
<p>I really hope that a lot more information on the technology behind the Census comes out in the coming months. The news channels in India should take some time out from reporting on tabloid/gossip issues and focus some energy on something that will impact every single Indian.</p>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2006/07/17/india-blocks-blogs/' rel='bookmark' title='Permanent Link: India blocks blogs?'>India blocks blogs?</a></li>
<li><a href='http://floatingsun.net/2010/05/19/thoughts-on-the-rupee-symbol/' rel='bookmark' title='Permanent Link: Thoughts on the Rupee symbol'>Thoughts on the Rupee symbol</a></li>
<li><a href='http://floatingsun.net/2006/07/11/bombay-blasts/' rel='bookmark' title='Permanent Link: Bombay blasts'>Bombay blasts</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/04/04/india-census-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Big Data Analytics</title>
		<link>http://floatingsun.net/2010/03/31/big-data-analytics/</link>
		<comments>http://floatingsun.net/2010/03/31/big-data-analytics/#comments</comments>
		<pubDate>Thu, 01 Apr 2010 06:49:01 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Aster]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1251</guid>
		<description><![CDATA[DISCLAIMER: As with all other material on this blog, these are my thoughts and do NOT reflect the opinions of my employer. I really like the tagline on our logo: big data. fast insights. But leaving the marketing aside, what does it mean really? What is all the hoopla about big data analytics? The way [...]


Related posts:<ol><li><a href='http://floatingsun.net/2006/09/06/google-analytics-the-deep-web/' rel='bookmark' title='Permanent Link: Google Analytics &#8212; the deep web'>Google Analytics &#8212; the deep web</a></li>
<li><a href='http://floatingsun.net/2005/11/29/interesting-analytics/' rel='bookmark' title='Permanent Link: Interesting Analytics'>Interesting Analytics</a></li>
<li><a href='http://floatingsun.net/2009/10/04/big-data-summit/' rel='bookmark' title='Permanent Link: Big Data Summit'>Big Data Summit</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><strong>DISCLAIMER: </strong>As with all other material on this blog, these are my thoughts and do NOT reflect the opinions of my employer.</p>
<p>I really like the tagline on <a href="http://www.asterdata.com">our logo</a>: <strong>big data. fast insights.</strong></p>
<p>But leaving the marketing aside, what does it mean really? What is all the hoopla about big data analytics?</p>
<p>The way I look at things, a few key observations here are:</p>
<ol>
<li>Data is increasing. This is almost self-evident, so I won&#8217;t bother with presenting any evidence.</li>
<li>Data is driving businesses more than ever. Whether it is search, advertising, insurance, finance, health care, governance &#8212; data is becoming an integral part of more and more business processes.</li>
<li>Finally, data movement is <em>slow</em>. And I mean really really slow, compared to our processing and memory speeds. Once you go into the range of hundreds of terabytes of petabytes of data, you really don&#8217;t want to keep moving around that data into isolated silos for doing analytics.</li>
</ol>
<p>Clearly, none of these observations is particularly new or insightful. However, I do think some of the implications of these observations are quite powerful and were new at least for me. For instance, (3) implies that once you have accumulated a lot of data in one place (imagine hundreds of TB or more), it is extremely difficult and time consuming to move that data around. This, in turn, means that more often than not, data is likely to reside in a single place.</p>
<p>Traditionally, it was not uncommon to have a large <a class="zem_slink" title="Data warehouse" rel="wikipedia" href="http://en.wikipedia.org/wiki/Data_warehouse">data warehouse</a> that would be the repository of all data. Then smaller data sets could be carved out from this master data set (also known as data marts) as required. This approach is becoming increasingly unfeasible. Carving out 100TB data marts from a 1PB data warehouse is simply not going to scale.</p>
<p>At the same time, it is clear that a one-size-fits-all approach to data storage and analysis is not practical either. Some data sets naturally lend themselves to a relational data model, while others might be more suited to unstructured processing (<a class="zem_slink" title="Hadoop" rel="homepage" href="http://hadoop.apache.org/">Hadoop</a>) or document oriented processing (<a class="zem_slink" title="CouchDB" rel="homepage" href="http://couchdb.apache.org/">CouchDB</a> or MarkLogic) or graph analysis (<a class="zem_slink" title="Neo4j" rel="homepage" href="http://neo4j.org/">Neo4J</a>) and so on. Forcing a single model or access mechanism down all customers&#8217; throat is not tenable.</p>
<p>So what would the ideal platform for big data analytics look like? One that allows you to store and access data in various ways, <em>seamlessly.</em></p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/b6b415f3-3d35-44e6-bdce-2d79bd55680d/"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=b6b415f3-3d35-44e6-bdce-2d79bd55680d" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2006/09/06/google-analytics-the-deep-web/' rel='bookmark' title='Permanent Link: Google Analytics &#8212; the deep web'>Google Analytics &#8212; the deep web</a></li>
<li><a href='http://floatingsun.net/2005/11/29/interesting-analytics/' rel='bookmark' title='Permanent Link: Interesting Analytics'>Interesting Analytics</a></li>
<li><a href='http://floatingsun.net/2009/10/04/big-data-summit/' rel='bookmark' title='Permanent Link: Big Data Summit'>Big Data Summit</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/03/31/big-data-analytics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My experiences with Apple: A poem</title>
		<link>http://floatingsun.net/2010/03/17/my-experiences-with-apple-a-poem/</link>
		<comments>http://floatingsun.net/2010/03/17/my-experiences-with-apple-a-poem/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 07:45:42 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Humor]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1201</guid>
		<description><![CDATA[I&#8217;m a Linux guy; Windows was never my thing honey Apple seemed interesting, but required too much money I have ideological problems with Apple too, What with all the DRM and hardware lock-in they do. But people are crazy about Apple, and I used to wonder why, I had a dream: to own Apple products [...]


Related posts:<ol><li><a href='http://floatingsun.net/2004/11/18/to-apple-or-not-to-apple/' rel='bookmark' title='Permanent Link: To Apple or not to Apple'>To Apple or not to Apple</a></li>
<li><a href='http://floatingsun.net/2008/07/18/big-brother-apple/' rel='bookmark' title='Permanent Link: Big Brother Apple'>Big Brother Apple</a></li>
<li><a href='http://floatingsun.net/2009/12/15/horse-drawn-carriage/' rel='bookmark' title='Permanent Link: Horse Drawn Carriage'>Horse Drawn Carriage</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div class="wp-caption alignnone" style="width: 132px"><a href="http://en.wikipedia.org/wiki/Image:Apple-logo.png"><img title="Apple Inc." src="http://upload.wikimedia.org/wikipedia/en/a/ab/Apple-logo.png" alt="Apple Inc." width="122" height="149" /></a><p class="wp-caption-text">Image via Wikipedia</p></div>
</div>
<p>I&#8217;m a <a class="zem_slink" title="Linux" rel="wikipedia" href="http://en.wikipedia.org/wiki/Linux">Linux</a> guy; Windows was never my thing honey<br />
Apple seemed interesting, but required too much money</p>
<p>I have ideological problems with Apple too,<br />
What with all the DRM and hardware lock-in they do.</p>
<p>But people are crazy about Apple, and I used to wonder why,<br />
I had a dream: to own Apple products that I didn&#8217;t have to buy.</p>
<p>A few months back my wife gifted me an <a class="zem_slink" title="iPhone 3G" rel="homepage" href="http://www.apple.com/iphone">iPhone</a>, bro!<br />
And then at work I got the new Macbook Pro!!</p>
<p>Thus suddenly I was an Apple user,<br />
Sure, some people called me a sore loser.</p>
<p>Allow me to share my early experiences,<br />
Some accolades and some grievances.</p>
<p>I&#8217;ll try to keep a neutral tone,<br />
Shall focus on the Mac and not the iPhone.</p>
<p>Integration, integration, integration!<br />
The attention to detail gives a wonderful sensation.</p>
<p>User experience is the key,<br />
Excellent design is for all to see.</p>
<p>They&#8217;ve taken care of the enterprises,<br />
Exchange support, Google integration &#8212; no surprises.</p>
<p>It&#8217;s by far the best laptop I&#8217;ve ever used,<br />
The hardware is slick, the software is smooth.</p>
<div class="zemanta-img zemanta-action-dragged" style="margin: 1em; display: block;">
<div class="wp-caption alignnone" style="width: 106px"><a href="http://www.crunchbase.com/product/itunes"><img class="  " title="Image representing iTunes as depicted in Crunc..." src="http://www.crunchbase.com/assets/images/resized/0006/3174/63174v1-max-250x250.png" alt="Image representing iTunes as depicted in Crunc..." width="96" height="96" /></a><p class="wp-caption-text">Image via CrunchBase</p></div>
</div>
<p>But boy do I hate iTunes,<br />
It&#8217;s so broken it should be called Looney Tunes.</p>
<p>Try connecting multiple iPhones to the same device,<br />
Or plug your iPhone in another laptop (poor advice).</p>
<p>Sync is threatening, sounds like a bully.<br />
&#8220;I shall sync or destroy&#8221;, that just sounds silly.</p>
<p>The Terminal app should aspire higher,<br />
No 256-color support leaves much to desire.</p>
<p>Keyboard shortcuts are hard to find,<br />
Change them? you must be out of your mind!</p>
<p>&#8220;Features&#8221; like &#8220;Spaces&#8221; are overrated,<br />
More like awaited, belated and deflated.</p>
<p>I prefer <a class="zem_slink" title="iTerm" rel="homepage" href="http://iterm.sourceforge.net/">iTerm</a> over Terminal and <a class="zem_slink" title="Adium" rel="homepage" href="http://www.adiumx.com/">Adium</a> for chat,<br />
Chrome over Safari, and this over that.</p>
<p>I&#8217;m certainly not blown away,<br />
But a Mac is convenient, I have to say.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/255d1f37-a768-4eed-8db0-19339e016430/"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=255d1f37-a768-4eed-8db0-19339e016430" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2004/11/18/to-apple-or-not-to-apple/' rel='bookmark' title='Permanent Link: To Apple or not to Apple'>To Apple or not to Apple</a></li>
<li><a href='http://floatingsun.net/2008/07/18/big-brother-apple/' rel='bookmark' title='Permanent Link: Big Brother Apple'>Big Brother Apple</a></li>
<li><a href='http://floatingsun.net/2009/12/15/horse-drawn-carriage/' rel='bookmark' title='Permanent Link: Horse Drawn Carriage'>Horse Drawn Carriage</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/03/17/my-experiences-with-apple-a-poem/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Waf: a pleasant build system</title>
		<link>http://floatingsun.net/2010/03/01/waf-a-pleasant-build-system/</link>
		<comments>http://floatingsun.net/2010/03/01/waf-a-pleasant-build-system/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 07:36:32 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Make]]></category>
		<category><![CDATA[SCons]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1187</guid>
		<description><![CDATA[A good software project must have a good build system. Unless you have a small code base consisting entirely of dynamic, scripted languages, you probably need to &#8220;build&#8221; your code before you can use it. Until around an year ago, the only build tool that I used and was familiar with was GNU Make. Make [...]


Related posts:<ol><li><a href='http://floatingsun.net/2009/12/24/goolego-googles-software-building-blocks/' rel='bookmark' title='Permanent Link: gooLego: Google&#8217;s software building blocks'>gooLego: Google&#8217;s software building blocks</a></li>
<li><a href='http://floatingsun.net/2006/02/02/darcs-status/' rel='bookmark' title='Permanent Link: darcs status?'>darcs status?</a></li>
<li><a href='http://floatingsun.net/2008/07/14/experiences-with-google-app-engine/' rel='bookmark' title='Permanent Link: Experiences with Google App Engine'>Experiences with Google App Engine</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>A good software project must have a good build system. Unless you have a small code base consisting entirely of dynamic, scripted languages, you probably need to &#8220;build&#8221; your code before you can use it. Until around an year ago, the only build tool that I used and was familiar with was <a href="http://www.gnu.org/software/make/">GNU Make</a>. Make and the autotools family of tools have served the developer community well the past few decades.</p>
<p>But the Make model is rife with problems. Here are a few of them:</p>
<ul>
<li>Make requires the use of its own <a class="zem_slink freebase/en/domain-specific_programming_language" title="Domain-specific language" rel="wikipedia" href="http://en.wikipedia.org/wiki/Domain-specific_language">domain specific language</a> &#8212; this is, in general, not a good idea. Have you looked at any sizable project&#8217;s <a class="zem_slink freebase/en/make" title="Make (software)" rel="wikipedia" href="http://en.wikipedia.org/wiki/Make_%28software%29">Makefile</a> lately? Its hard to understand, and harder to modify.</li>
<li>In the same vein, autoconf/automake are notoriously hard to use. Bear in mind that these tools are supposed to make your life easier.</li>
<li>Makefile are so hard to write and extend that several popular build systems today are essentially Makefile generators. A good example is <a class="zem_slink freebase/en/cmake" title="CMake" rel="homepage" href="http://www.cmake.org/">CMake</a>.</li>
<li>Make relies heavily on file timestamps to detect changes.</li>
<li>Make is slow.</li>
<li>Makefile are not modular. Recursive Make is especially evil.</li>
<li>&#8230;</li>
</ul>
<p>I recently began work on a new pet project. As is usually the case, I spent a lot more time figuring out what tools and libraries I would use for my project, than in actually writing any code for the project :) Part of the investigation was to survey the state of the art in build systems. At work, we started using <a class="zem_slink freebase/en/scons" title="SCons" rel="homepage" href="http://www.scons.org/">SCons</a> for most of our build, which was already a huge improvement over Make. But SCons has its own set of issues.</p>
<p>One of the nicest features in SCons is that build files are regular <a class="zem_slink freebase/guid/9202a8c04000641f800000000002f83f" title="Python (programming language)" rel="homepage" href="http://www.python.org/">Python</a> files. This provides enormous flexibility and immediate familiarity. Unfortunately, the SCons documentation leaves much to be desired. I still don&#8217;t quite understand the execution model of SCons very well. For instance, I know how to extend SCons to support cross-compilation for multiple platforms. However, I don&#8217;t really understand why those modifications work &#8212; there&#8217;s quite a bit of black magic that goes on behind the scenes. As a concrete example, there are several magic variables such ﻿﻿﻿_LIBDIRFLAGS that have strange powers.</p>
<div class="wp-caption alignnone" style="width: 65px"><a href="http://code.google.com/p/waf/  "><img title="Waf" src="http://code.google.com/p/waf/logo?logo_id=1238250832" alt="Waf" width="55" height="55" /></a><p class="wp-caption-text">Waf</p></div>
<p>After some more looking around, I discovered <a href="http://code.google.com/p/waf/">Waf</a>. And now that I&#8217;ve played around with it a little bit, I&#8217;m happy to say that it is the most pleasant build system I&#8217;ve ever used. Things I really like about Waf:</p>
<ul>
<li>The execution model <em>just makes sense</em> to me. You typically build a project in phases: there&#8217;s a configure phase, to sort out dependencies, tools etc; there&#8217;s the actual build phase; and then there&#8217;s the install phase. It is not uncommon to have a &#8216;dist&#8217; step as well, to prepare the source for distribution. Waf understands these operations as first class entities. There is a very strong notion of workflow built into Waf.</li>
<li>Comprehensive documentation. Check out the <a href="http://freehackers.org/~tnagy/wafbook/index.html">Waf book</a> and the <a href="http://code.google.com/p/waf/w/list">wiki</a>.</li>
<li>Waf has a very strong task model. There is a much stronger notion of dependencies (powered by content hashes, not timestamps). Waf also enforces that all generated code lands up in a separate &#8220;build&#8221; directory, so your source tree always remains clean.</li>
<li>Using waf is a breeze &#8212; there are no big dependencies, no packages to install, no bloated software to include with your code. Just a single 80kb script.</li>
<li>Progress indication and colored output is built in, not an after thought. Like SCons, Waf build files are regular Python files.</li>
<li>Waf is fast. Faster than SCons.</li>
</ul>
<p>Of course, Waf is not perfect. Coming from a Make/SCons world, I sorely miss the ability to build specific targets. Yes there are ways to achieve this in Waf, but they are all clumsy. The <a href="http://freehackers.org/~tnagy/wafdoc/index.html">API documentation</a> (and the source itself) are a bit hard to parse.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=3173a045-3af4-49ff-a33d-4984a5c08a22" alt="" /><span class="zem-script more-info pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2009/12/24/goolego-googles-software-building-blocks/' rel='bookmark' title='Permanent Link: gooLego: Google&#8217;s software building blocks'>gooLego: Google&#8217;s software building blocks</a></li>
<li><a href='http://floatingsun.net/2006/02/02/darcs-status/' rel='bookmark' title='Permanent Link: darcs status?'>darcs status?</a></li>
<li><a href='http://floatingsun.net/2008/07/14/experiences-with-google-app-engine/' rel='bookmark' title='Permanent Link: Experiences with Google App Engine'>Experiences with Google App Engine</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/03/01/waf-a-pleasant-build-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tools I use: tmux</title>
		<link>http://floatingsun.net/2010/02/16/tools-i-use-tmux/</link>
		<comments>http://floatingsun.net/2010/02/16/tools-i-use-tmux/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 00:17:19 +0000</pubDate>
		<dc:creator>Diwaker Gupta</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[screen]]></category>
		<category><![CDATA[tmux]]></category>

		<guid isPermaLink="false">http://floatingsun.net/?p=1184</guid>
		<description><![CDATA[Readers of this blog will know that I&#8217;m a big fan of GNU screen. While screen is a great tool, it hasn&#8217;t seen any major development or feature addition in quite some time. The code base is pretty old, there are some ancient bugs that still linger, and support for modern terminals (such as 256 [...]


Related posts:<ol><li><a href='http://floatingsun.net/2006/03/21/tools-i-use-screen/' rel='bookmark' title='Permanent Link: Tools I use: screen'>Tools I use: screen</a></li>
<li><a href='http://floatingsun.net/2005/03/09/center-screen-on-current-line/' rel='bookmark' title='Permanent Link: Center screen on current line'>Center screen on current line</a></li>
<li><a href='http://floatingsun.net/2006/02/02/darcs-status/' rel='bookmark' title='Permanent Link: darcs status?'>darcs status?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Readers of this blog will know that I&#8217;m a <a href="http://floatingsun.net/2006/03/21/tools-i-use-screen/">big fan</a> of <a href="http://www.gnu.org/software/screen/">GNU screen</a>. While screen is a great tool, it hasn&#8217;t seen any major development or feature addition in quite some time. The code base is pretty old, there are some ancient bugs that still linger, and support for modern terminals (such as 256 colors by default) is not quite up to speed. I recently discovered <a href="https://launchpad.net/byobu">byobu</a> and was extremely happy with it &#8212; it completely overhauled my screen user experience. You can read all about byobu <a href="http://blog.dustinkirkland.com/search/label/Byobu">here</a>.</p>
<p>I thought I had attained screen nirvana&#8230; until I found <a href="http://tmux.sourceforge.net/">tmux</a> (<em>hat tip <a href="http://xed.ch">xed</a>)</em>. So what exactly is tmux?</p>
<blockquote><p>tmux is intended to be a modern, BSD-licensed alternative to programs such as GNU screen. Major features include:</p>
<ul>
<li>A powerful, consistent, well-documented and easily scriptable command interface.</li>
<li>A window may be split horizontally and vertically into panes.</li>
<li>Panes can be freely moved and resized, or arranged into one of four preset layouts.</li>
<li>Support for UTF-8 and 256-colour terminals.</li>
<li>Copy and paste with multiple buffers.</li>
<li>Interactive menus to select windows, sessions or clients.</li>
<li>Change the current window by searching for text in the target.</li>
<li>Terminal locking, manually or after a timeout.</li>
<li>A clean, easily extended, BSD-licensed codebase, under active development.</li>
</ul>
</blockquote>
<p>And how is tmux better than screen? Thats question #1 in the <a href="http://tmux.cvs.sourceforge.net/viewvc/*checkout*/tmux/tmux/FAQ">FAQ</a>:</p>
<blockquote>
<div id="_mcePaste">tmux offers several advantages over screen:</div>
<div id="_mcePaste">- a clearly-defined client-server model: windows are independent entities which may be attached simultaneously to multiple sessions and viewed from multiple clients (terminals), as well as moved freely between sessions within the same tmux server;</div>
<div id="_mcePaste">- a consistent, well-documented command interface, with the same syntax whether used interactively, as a key binding, or from the shell;</div>
<div id="_mcePaste">- easily scriptable from the shell;</div>
<div id="_mcePaste">- multiple paste buffers;</div>
<div id="_mcePaste">- choice of vi or emacs key layouts;</div>
<div id="_mcePaste">- an option to limit the window size;</div>
<div id="_mcePaste">- a more usable status line syntax, with the ability to display the first line of output of a specific command;</div>
<div id="_mcePaste">- a cleaner, modern, easily extended, BSD-licensed codebase.</div>
<div></div>
<div>There are still a few features screen includes that tmux omits:</div>
<div id="_mcePaste">- builtin serial and telnet support; this is bloat and is unlikely to be added to tmux;</div>
<div id="_mcePaste">- wider platform support, for example IRIX and HP-UX, and for odd terminals.</div>
</blockquote>
<div>I&#8217;ve been using tmux exclusively for the last couple of weeks and I really like it so far. For once, I can actually understand the configuration file :) But there are a few things that I miss from screen:</div>
<div>
<ul>
<li>I found the screen way of scrolling in a buffer and copying text much easier to use than tmux&#8217;s. Unless I&#8217;m missing something, the only way to scroll a buffer in tmux and copy some text is by using vi-like keyboard commands. While this is doable, it is not always quick or convenient.</li>
<li>byobu made it really easy to add various status indicators. Wish I had something similar for tmux.</li>
</ul>
</div>


<p>Related posts:<ol><li><a href='http://floatingsun.net/2006/03/21/tools-i-use-screen/' rel='bookmark' title='Permanent Link: Tools I use: screen'>Tools I use: screen</a></li>
<li><a href='http://floatingsun.net/2005/03/09/center-screen-on-current-line/' rel='bookmark' title='Permanent Link: Center screen on current line'>Center screen on current line</a></li>
<li><a href='http://floatingsun.net/2006/02/02/darcs-status/' rel='bookmark' title='Permanent Link: darcs status?'>darcs status?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://floatingsun.net/2010/02/16/tools-i-use-tmux/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 6.789 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-09-02 18:16:48 -->
