<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-17912943</id><updated>2010-01-08T14:12:20.646+05:30</updated><title type='text'>CG's Ramblings</title><subtitle type='html'></subtitle><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default?start-index=26&amp;max-results=25'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://chaitanyagupta.com/blog/atom.xml'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>48</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-17912943.post-1393017482277777394</id><published>2010-01-07T20:13:00.000+05:30</published><updated>2010-01-07T20:13:35.275+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>An unplanned but pleasant barefoot run</title><content type='html'>Just as I started my run at the Tau Devi Lal Biodiversity Park in Gurgaon today morning, I felt a slight pain from my left knee down to the foot. It got worse as the run continued. After 2 kms, I was putting a lot more pressure on my right foot than my left. By the time I completed the 3rd km, there was a good bit of limping in my running.&lt;br /&gt;&lt;br /&gt;That's when I decided to call off the run (was planning to do 8K today). Before leaving though, I thought I would go around the park's 1K loop once more -- and this time just walk and not run. A few metres of walking, and I got a silly idea -- why not walk barefoot?&lt;br /&gt;&lt;br /&gt;I had been thinking about trying out barefoot/minimalist footwear running for sometime now. Christopher McDougall more or less indicts Nike and their heel-cushioning shoes in his book &lt;a href="http://www.amazon.com/Born-Run-Christopher-McDougall/dp/0739383728"&gt;Born to Run&lt;/a&gt; for the injuries that plague long distance runners today. Plus, &lt;a href="http://discovermagazine.com/2006/may/tramps-like-us"&gt;recent studies&lt;/a&gt; seem to suggest that our bodies are designed to run (with natural cushioning provided by the balls of the feet -- and they don't need any shoes for help). Only, I hadn't planned on doing this before the Mumbai marathon.&lt;br /&gt;&lt;br /&gt;Still, here I was, unable to run, and with an inkling to walk barefoot. So, I removed my shoes and socks, held them in my hands, and started walking. And the ground was... ouch! Those damn pebbles on the track were hurting the delicate soles of my feet. I moved on to the grass to save myself from this pain. A few hundred metres later, another idea -- run! But what about those damn pebbles? And what about the pain that made me abort the original run?&lt;br /&gt;&lt;br /&gt;I was near a part of the track where pebbles were not any problem. And I decided to take a risk with the run -- but with the running shoes in my hands instead of over my feet! I completed the loop, felt good. Completed another, and another. There was just a hint of the pain I was feeling earlier, but it wasn't even annoying anymore. I didn't have such high hopes, but this was turning out better than expected. I couldn't run barefoot all this time though, because, well, there were spots where there were just too many pebbles and not much grass to run on. And damn they do hurt the feet!&lt;br /&gt;&lt;br /&gt;Still, in the end, I ended up doing a total of 3K with this mixture of barefoot run/walk [wanted to do more, but it was getting a little late for office ;-)]. It felt good. So what's next? As far as the Mumbai marathon goes -- take a bit of rest to nurture my aching (while running with shoes) left leg, and do some light training next week before D-Day on 17th. Once that is done with, I will dump my Adidas running shoes (for sometime atleast) and buy a pair of Nike Free's, or, maybe buy those thin green-soled sneakers we used to wear on Saturdays (white-uniform mornings, if you went to that sort of school). Going completely barefoot on the roads is not a very exciting prospect -- just think about the pebbles!&lt;br /&gt;&lt;br /&gt;It will be interesting to see how that experience turns out to be -- if the advocates of barefoot running (and detractors of modern running shoes) are right, most of the pains or injuries I've had in the last one year are because of my shoes. If they are right, I will be seeing even more exciting running times ahead!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-1393017482277777394?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/1393017482277777394/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=1393017482277777394' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/1393017482277777394'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/1393017482277777394'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2010/01/unplanned-but-pleasant-barefoot-run.html' title='An unplanned but pleasant barefoot run'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-6585351051714984445</id><published>2009-11-14T02:13:00.004+05:30</published><updated>2009-11-14T03:27:20.810+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='half-marathon'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Delhi half-marathon: 2:19:02</title><content type='html'>&lt;div style="text-align: left;"&gt;Its been a few days since the race, and I have been procrastinating over writing about it ever since. Here it is finally -- I finished the 21K in 2:19:02, nearly 10 minutes faster than what I did in Mumbai earlier in the year, something I had not at all expected before the start -- I was only hoping to finish it under 2:30 hours, just as I had done in Mumbai!&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a style="float: left; padding: 0px 10px 0px 0px;" href="http://www.flickr.com/photos/chaitanyagupta/4071448500/" title="Getting tired? by chaitanyagupta, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2430/4071448500_eb917e8b98_m.jpg" width="180" height="240" alt="Getting tired?" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;As it turned out, I had a pretty terrific start by my standards. And the morning weather was perfect for running. Saw the frontrunners (Merga et al) coming back as I was nearing the 6K mark -- and those folks were on their 14th K! 10K was done in 1:03:05 -- the fastest 10K I've done till date. Once I realized that, I knew that a sub-2:20 was always on the cards. Who knew, maybe even a 2:15! (but that was not to be this time) Reckon I was able to keep up this pace right uptil the 16K mark. I probably did slow down a bit during the next two kms, but then I really hit the wall on 18K. Start feeling very exhausted, and it was tempting to just walk the last 3K. But, thankfully, I was able to give it my all and keep running -- albeit a little slowly -- in the last leg too :) As I neared the finish line, saw the clock ticking at 2:19 and counting -- I had managed to do it! Crossed the finish in just under 2:20 (my gross time was 2:19:56).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here's a breakdown of my split and total times for the race:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Split@7.5K -- 47:13&lt;/div&gt;&lt;div&gt;Split@10K -- 1:03:05&lt;/div&gt;&lt;div&gt;Split@19.35K -- 2:05:35&lt;/div&gt;&lt;div&gt;Split@20K -- 2:10:47&lt;/div&gt;&lt;div&gt;Net time (21.097K) -- 2:19:02 (individual start till finish time)&lt;/div&gt;&lt;div&gt;Gross time -- 2:19:56 (race start time till finish time)&lt;/div&gt;&lt;div&gt;Overall rank -- 1695&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a style="float: right; padding: 0px 0px 0px 10px;" href="http://www.flickr.com/photos/chaitanyagupta/4071448510/" title="A pose for the cameras by chaitanyagupta, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2655/4071448510_5917abdb82_m.jpg" width="180" height="240" alt="A pose for the cameras" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;I had never realized I could do this time -- in fact all my training runs were pointing to a 2:30+ 21K run! Felt a bit giddy after the race, but it was only for a few minutes. A nice Iodex massage (that was a great thing to do -- have volunteers massage your feet and legs after the race -- Mumbai are you listening?) and a banana and an apple later, I was feeling as good as ever.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Next up is Running and Living marathon and a half in Gurgaon on December 6th, where I'll be running the 21K again, and then the half in Mumbai in January. Hope that fitness and timings keep improving, over the next couple of months, at least.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-6585351051714984445?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/6585351051714984445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=6585351051714984445' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/6585351051714984445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/6585351051714984445'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/11/delhi-half-marathon-21902.html' title='Delhi half-marathon: 2:19:02'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-8648284474586689995</id><published>2009-10-30T14:27:00.003+05:30</published><updated>2009-10-30T14:41:34.287+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='half-marathon'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>#4028</title><content type='html'>4028 -- that's my running number for the Delhi half-marathon, to be held this Sunday. Second ever half-marathon I'll run in. Due to lack of sufficient training, a &lt;a href="http://chaitanyagupta.com/blog/2009/07/running-goal-delhi-half-marathon-under.html"&gt;sub 2 hour&lt;/a&gt; time is not even remotely possible, but I should be able to run within 2 hours 30 minutes again. Weather during mornings is great for running (thanks to the onset of winter), and the route -- through the heart of Delhi -- also seems darn good. Looking forward to a great day of running.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-8648284474586689995?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/8648284474586689995/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=8648284474586689995' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8648284474586689995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8648284474586689995'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/10/4028.html' title='#4028'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-5159691900207760852</id><published>2009-08-22T00:36:00.011+05:30</published><updated>2009-08-22T01:31:07.431+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='command-line'/><category scheme='http://www.blogger.com/atom/ns#' term='thunderbird'/><title type='text'>An easier way to compose Thunderbird mail from the command line</title><content type='html'>For sometime, I had wished for an easier way to attach the output of diff to a new Thunderbird mail than the following:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;code&gt;diff -u file1 file2 &gt;/tmp/mypatch&lt;/code&gt;&lt;/li&gt;&lt;li&gt;Switch to Thunderbird&lt;/li&gt;&lt;li&gt;Click the "Write" icon&lt;/li&gt;&lt;li&gt;Click the "Attach" icon in the compose mail window&lt;/li&gt;&lt;li&gt;Browse to the file&lt;/li&gt;&lt;li&gt;Click the "Open" button to finally attach the file&lt;/li&gt;&lt;/ol&gt;Turns out, TB's compose mail window &lt;a href="http://kb.mozillazine.org/Command_line_arguments_%28Thunderbird%29"&gt;can be created from the command-line&lt;/a&gt; by passing the -compose option to &lt;code&gt;thunderbird&lt;/code&gt;. However, passing the mail parameters like "to", "subject", "attachment", etc. via this command is quite ugly:&lt;pre&gt;&lt;code&gt;thunderbird -compose "to='john@example.com',subject='dinner',body='How about dinner tonight?',attachment='file:///tmp/food.doc'"&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;To get over this mess, and sort out my original problem with the attachments, I wrote a small script called &lt;span style="font-style: italic;"&gt;tb-compose&lt;/span&gt;:&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://github.com/chaitanyagupta/misc-utils/blob/master/tb-compose"&gt;http://github.com/chaitanyagupta/misc-utils/blob/master/tb-compose&lt;/a&gt;&lt;/blockquote&gt;Example usage:&lt;pre&gt;&lt;code&gt;tb-compose --to john@example.com --subject dinner --body "How about dinner tonight?" --attachment /tmp/food.doc&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Moreover, if &lt;code&gt;-&lt;/code&gt; is passed as a value for &lt;code&gt;--attachment&lt;/code&gt;, the contents of standard input are attached to the mail.&lt;pre&gt;&lt;code&gt;diff -u file1 file2 | tb-compose --attachment -&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;And if &lt;code&gt;--attachment-name&lt;/code&gt; is used when stdin is being attached, the given name is used as the name for the attached file.&lt;pre&gt;&lt;code&gt;diff -u file1 file2 | tb-compose --attachment - --attachment-name mypatch&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Makes my life a little easier :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-5159691900207760852?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/5159691900207760852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=5159691900207760852' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/5159691900207760852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/5159691900207760852'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/08/easier-way-to-compose-thunderbird-mail.html' title='An easier way to compose Thunderbird mail from the command line'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-6705060074973580880</id><published>2009-08-21T23:54:00.005+05:30</published><updated>2009-08-22T00:34:13.267+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='git'/><title type='text'>A couple of hooks to make life easy with git submodules</title><content type='html'>While using git at work for the last few weeks, I noticed a couple of issues with the usage of git-submodules.&lt;ol&gt;&lt;li&gt;Submodules updated in commits when not intended to be -- more or less due to over-enthusiastic usage of &lt;code&gt;git commit -a&lt;/code&gt;.&lt;/li&gt;&lt;li&gt;Failure to run git-submodule update after a git-merge (git-pull) or git-checkout.&lt;/li&gt;&lt;/ol&gt;To help with these issues, I wrote a couple of git hooks. They can be pulled from my &lt;span style="font-style: italic;"&gt;gitutils&lt;/span&gt; repository on github:&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://github.com/chaitanyagupta/gitutils/tree"&gt;http://github.com/chaitanyagupta/gitutils/tree&lt;/a&gt;&lt;/blockquote&gt;Three git-hooks can be found in the submodule-hooks/ directory: &lt;code&gt;pre-commit&lt;/code&gt;, &lt;code&gt;post-merge&lt;/code&gt; and &lt;code&gt;post-checkout&lt;/code&gt; (&lt;code&gt;post-merge-checkout&lt;/code&gt; provides the latter two).&lt;br /&gt;&lt;br /&gt;&lt;code&gt;pre-commit&lt;/code&gt; checks if any submodules have been updated in the index and are about to be committed. If so, it asks user for confirmation to go ahead with the commit.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;post-merge-checkout&lt;/code&gt; checks if any submodules have been modified in the working tree (i.e. their git-status is "modified" under "Changed but not updated") after a branch checkout or merge. If that is the case, it asks the user if they want to run &lt;code&gt;git submodule update&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;Hope someone will find them useful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-6705060074973580880?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/6705060074973580880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=6705060074973580880' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/6705060074973580880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/6705060074973580880'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/08/couple-of-hooks-to-make-life-easy-with.html' title='A couple of hooks to make life easy with git submodules'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-4062761758603950847</id><published>2009-07-25T09:45:00.005+05:30</published><updated>2009-07-25T10:13:06.175+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='terror'/><category scheme='http://www.blogger.com/atom/ns#' term='26/11'/><category scheme='http://www.blogger.com/atom/ns#' term='mumbai'/><title type='text'>Dispatches -- Terror in Mumbai (must watch)</title><content type='html'>See the video &lt;a href="http://www.liveleak.com/view?i=1e4_1246490858"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The story of 26/11 is told in the words of the victims and the terrorists (contains footage of police interviewing Kasab and terrorists' conversations over the phone). Apparently this was shown for the first time only a few weeks ago, on British TV -- Channel 4. I think everyone of us needs to see it.&lt;br /&gt;&lt;br /&gt;Somehow, the fact that the terrorists (and their handlers) spoke the same languages as we do made it all the more scary. They were not just words anymore - they were talking about killing people, as if it was just another day job. You realized how well the controllers had brainwashed the gunmen.&lt;br /&gt;&lt;br /&gt;I jumped up after I heard the gunshots from Nariman house (when the controller got annoyed with his gunman for hesitating to kill the hostages). That bastard held the line -- he wanted to hear the gunshots that would kill the hostages -- those terrorists were effectively being remote controlled from Pakistan.&lt;br /&gt;&lt;br /&gt;Just like any poor young boy would be, one terrorist was in awe of his surroundings at the Taj. He hesitated from setting the hotel on fire -- but he had no problems killing those innocent people.&lt;br /&gt;&lt;br /&gt;So sad, and infuriating.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-4062761758603950847?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/4062761758603950847/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=4062761758603950847' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/4062761758603950847'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/4062761758603950847'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/07/dispatches-terror-in-mumbai-must-watch.html' title='Dispatches -- Terror in Mumbai (must watch)'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-8068091097938373156</id><published>2009-07-16T00:16:00.003+05:30</published><updated>2009-07-16T00:45:51.639+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='marathon'/><category scheme='http://www.blogger.com/atom/ns#' term='half-marathon'/><title type='text'>Running goal: Delhi half-marathon under two hours</title><content type='html'>Almost immediately after the Mumbai marathon in January, running lay abandoned. It had become too difficult to go out running, and thanks to lack of any exercise, the paunch has come back to its glorious heights.&lt;br /&gt;&lt;br /&gt;Well, time to pick up the running shoes again, 'cause its just three and a half months left to the Delhi half-marathon, which, apparently &lt;a href="http://www.tanvirkazmi.com/2009/07/airtel-delhi-half-marathon-2009-coming.html"&gt;will be held on 1st of November&lt;/a&gt; (info thanks to Tanvir Kazmi, who's been doing awesome work on promoting running online). So what's the target? As the title says, under two hours. Given that I ran my first ever half-marathon this year itself, and that too &lt;a href="http://www.chaitanyagupta.com/blog/2009/01/mumbai-marathon-2009-results.html"&gt;just under two and a half hours&lt;/a&gt;, its a nearly impossible task. But I will give it my best shot -- atleast I should be able to shed some pounds. By the way, I did get around to running a couple of times a few days back, but have relapsed into laziness since then. Hopefully, this post will give me some impetus to start again.&lt;br /&gt;&lt;br /&gt;After the Delhi half-marathon, I'll be running the half in Mumbai again next year (registrations for the Mumbai marathon are &lt;a href="http://mumbaimarathon.indiatimes.com/"&gt;already open&lt;/a&gt;, btw, and the places fill out very quick; so if you are planning to run, register now!). This year was great fun, hopefully next year will be too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-8068091097938373156?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/8068091097938373156/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=8068091097938373156' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8068091097938373156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8068091097938373156'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/07/running-goal-delhi-half-marathon-under.html' title='Running goal: Delhi half-marathon under two hours'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-6137588141782955474</id><published>2009-05-16T18:13:00.004+05:30</published><updated>2009-05-16T18:36:32.340+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='sawstop'/><title type='text'>SawStop put to the ultimate test</title><content type='html'>Three years back I &lt;a href="http://www.chaitanyagupta.com/blog/2006/02/what-stopped-sawstop.html"&gt;blogged about SawStop&lt;/a&gt;, and wondered what was preventing it from gaining mass market adoption. I don't know how well it is doing commercially today, but I came across another video which demonstrates just how good this product is — and also highlights how much faith the designer has in his invention. See for yourself, he's willing to put his finger through a table saw to prove his point!&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object height="340" width="560"&gt;&lt;param name="movie" value="http://www.youtube.com/v/E3mzhvMgrLE&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/E3mzhvMgrLE&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="340" width="560"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Makes me think about that perennial question for programmers: How willing will you be to fly in a plane you wrote the software for?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-6137588141782955474?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/6137588141782955474/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=6137588141782955474' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/6137588141782955474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/6137588141782955474'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/05/sawstop-put-to-ultimate-test.html' title='SawStop put to the ultimate test'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-4438458414304373238</id><published>2009-04-30T15:01:00.001+05:30</published><updated>2009-04-30T15:03:28.512+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='directi'/><title type='text'>Second innings</title><content type='html'>Started a new job this Monday. At &lt;a href="http://www.directi.com"&gt;Directi&lt;/a&gt;, Gurgaon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-4438458414304373238?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/4438458414304373238/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=4438458414304373238' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/4438458414304373238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/4438458414304373238'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/04/second-innings.html' title='Second innings'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-7939165973074403571</id><published>2009-04-25T17:08:00.002+05:30</published><updated>2009-04-25T17:09:57.041+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><category scheme='http://www.blogger.com/atom/ns#' term='window managers'/><category scheme='http://www.blogger.com/atom/ns#' term='x11'/><title type='text'>Lisp news: cl-twit, chronicity and a window manager I discovered recently</title><content type='html'>I released a couple of CL libraries/apps in the last two months:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="/lisp/cl-twit/"&gt;cl-twit&lt;/a&gt; — A twitter client for Common Lisp, and&lt;/li&gt;&lt;li&gt;&lt;a href="/lisp/chronicity/"&gt;chronicity&lt;/a&gt; — A natural language date and time parser for CL&lt;/li&gt;&lt;/ol&gt;Hopefully someone will find these useful.&lt;br /&gt;&lt;br /&gt;Another thing I chanced upon in the last few weeks is &lt;a href="http://www.nongnu.org/stumpwm/"&gt;Stumpwm&lt;/a&gt;; a tiling, keyboard driven X11 window manager written entirely in &amp;lt;gasp&amp;gt;Common Lisp&amp;lt;/gasp&amp;gt;. From the Stumpwm website:&lt;br /&gt;&lt;blockquote&gt;Stumpwm attempts to be customizable yet visually minimal. There are no window decorations, no icons, and no buttons. It does have various hooks to attach your personal customizations, and variables to tweak.&lt;/blockquote&gt;Intended as a successor to &lt;a href="http://www.nongnu.org/ratpoison/"&gt;Ratpoison&lt;/a&gt;, one of the key ideas behind Stumpwm is to control everything from the keyboard i.e. mouseless window management (&lt;em&gt;Rat Poison&lt;/em&gt; &amp;mdash; get it?). Its radically different from what I am used to up till now, but its an intriguing way of doing things, and I will give it a shot (after all, I wasn't an Emacs fan to begin with, either). There's a Stumpwm &lt;a href="http://ia341212.us.archive.org/2/items/TheStumpWMExperience/TheStumpWMExperience.ogg"&gt;screencast&lt;/a&gt;, if you are interested. Also, Bill Clementson &lt;a href="http://bc.tech.coop/blog/080429.html"&gt;shows&lt;/a&gt; why Stumpwm is to window managers as Emacs is to editors (hint: Lisp!).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-7939165973074403571?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/7939165973074403571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=7939165973074403571' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7939165973074403571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7939165973074403571'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/04/lisp-news-cl-twit-chronicity-and-window.html' title='Lisp news: cl-twit, chronicity and a window manager I discovered recently'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-7385766095786091316</id><published>2009-01-20T18:07:00.006+05:30</published><updated>2009-01-27T14:35:47.222+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='marathon'/><category scheme='http://www.blogger.com/atom/ns#' term='half-marathon'/><title type='text'>Mumbai Marathon 2009: Results</title><content type='html'>&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;Update:&lt;/span&gt;&lt;/span&gt; Updated the links to ChampionChip site. The old links don't work anymore. Also updated my net finish time and rank.&lt;br /&gt;&lt;br /&gt;Chip timer results for the Mumbai marathon 2009 are out. See yours at ChampionChip UAE:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.championchipuae.com/results/results.php?id=26"&gt;Half marathon&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.championchipuae.com/results/results.php?id=27"&gt;Full marathon&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;As for me, I finished on rank &lt;strike&gt;967&lt;/strike&gt; 961 for the half-marathon, with a gross time* of 2:37:32. Since I started the race around &lt;strike&gt;7&lt;/strike&gt; 9 minutes after the official start time, the net time** &lt;strike&gt;should be around 2:30&lt;/strike&gt; was 2:28:35. That's what the &lt;span style="font-style: italic;"&gt;soft&lt;/span&gt; target for my first race was (the real, &lt;span style="font-style: italic;"&gt;hard&lt;/span&gt; target being just to finish the damn race). So I am satisfied with the result. (But, as I would cover in another blog post, things could have been better...)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Notes&lt;span style="font-style: italic;"&gt;:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;* Gross time: the time period beginning from the start of the race (i.e. when the elite runners cross the start line) till the time you cross the finish line. This is considered your "official" time for a race.&lt;br /&gt;** Net time: the time period beginning from the instant you cross the starting line till you cross the finish line. This is your actual time for the race.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-7385766095786091316?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/7385766095786091316/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=7385766095786091316' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7385766095786091316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7385766095786091316'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/01/mumbai-marathon-2009-results.html' title='Mumbai Marathon 2009: Results'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-1628865735629903506</id><published>2009-01-12T02:18:00.004+05:30</published><updated>2009-01-12T02:52:17.167+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='epoll'/><category scheme='http://www.blogger.com/atom/ns#' term='c'/><title type='text'>A good tutorial on epoll</title><content type='html'>For the last few days, I have been toying around with the idea of using &lt;a href="http://linux.die.net/man/4/epoll"&gt;epoll&lt;/a&gt; to write "high-performance" TCP-based servers. While the man pages are helpful, they aren't exactly very useful to get you started. And "tutorials" have been hard to find. Not having any prior knowledge of select() or poll(), it has been tough to grok epoll.&lt;br /&gt;&lt;br /&gt;Today, though, I stumbled upon a tutorial (or rather, a section from the book &lt;span style="font-style: italic;"&gt;Linux System Programming&lt;/span&gt; by Robert Love) which I think is very useful for epoll newbies:&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://www.devshed.com/c/a/BrainDump/Linux-Files-and-the-Event-Poll-Interface/"&gt;The Event Poll Interface&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;a href="http://www.amazon.com/Linux-System-Programming-Talking-Directly/dp/0596009585/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1231708028&amp;amp;sr=1-1"&gt;Here&lt;/a&gt;'s an Amazon link to the book.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-1628865735629903506?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/1628865735629903506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=1628865735629903506' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/1628865735629903506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/1628865735629903506'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/01/good-tutorial-on-epoll.html' title='A good tutorial on epoll'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-2063699187706169062</id><published>2009-01-09T02:46:00.004+05:30</published><updated>2009-01-09T02:57:05.225+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='investments'/><category scheme='http://www.blogger.com/atom/ns#' term='mutual funds'/><title type='text'>Investments</title><content type='html'>So I bought a pair of Adidas running shoes worth Rs 4899 earlier this week. Add to this Rs 4000 worth of non-refundable air fare to travel to Mumbai, and I have already invested nearly 9000 bucks on the upcoming half-marathon. Such big investments make it impossible for the &lt;span style="font-style: italic;"&gt;baniya&lt;/span&gt; in me to back out of the race now. (Plus, after nearly three months of training, I am fairly confident of finishing the race. How quickly I finish though, is a different matter altogether...)&lt;br /&gt;&lt;br /&gt;Talking of investments, one kind of investment you will need to start thinking about soon is the one you will need to make under section 80C to reduce your tax liability. Although, in these troubled times, I don't know how many people will go with &lt;acronym title="Equity Linked Savings Scheme"&gt;ELSS&lt;/acronym&gt;s, here's a small piece of advice if you are thinking about ICICI Prudential: be sure to find out whether you are investing in a one-time payment scheme or a recurring payment scheme.&lt;br /&gt;&lt;br /&gt;In the latter case, you will have to &lt;span style="font-style: italic;"&gt;repay&lt;/span&gt; the amount for at least the next two years (three years in total, which is the lock-in period for an ELSS). I was burnt badly by this issue last year — I had made a huge investment with ICICI Prudential the year before, and then invested in different mutual funds (including ICICI Pru) last year too. Only later on did I realize that I had bought recurring payment policies both the times (the concerned managers never informed me that this was the case). So this year I will have to invest more than Rs 1 lakh in ELSS (which is the maximum amount on which you can save tax under 80C).&lt;br /&gt;&lt;br /&gt;Remember, ICICI Prudential is an insurance company first and then an investment house. Their managers sneakily made me buy two insurance policies with huge premiums, zero sum assured on maturity and completely subject to market risks. It is much better to invest with real mutual funds (like SBI or HDFC MF), which have a one-time payment policy &lt;span style="font-style: italic;"&gt;as default&lt;/span&gt; and where there's no attempt to sell you insurance.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-2063699187706169062?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/2063699187706169062/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=2063699187706169062' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/2063699187706169062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/2063699187706169062'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/01/investments_09.html' title='Investments'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-8645710224107562042</id><published>2009-01-06T15:05:00.005+05:30</published><updated>2009-01-06T15:50:32.978+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='emulators'/><category scheme='http://www.blogger.com/atom/ns#' term='ie'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Re: When you need IE</title><content type='html'>In my last post today, I asked:&lt;br /&gt;&lt;blockquote&gt;How do you get rid of Windows when important websites (for you) work only with IE?&lt;/blockquote&gt;Here's the answer, if you are using Linux: &lt;a href="http://www.codeweavers.com/products/cxlinux/"&gt;CrossOver&lt;/a&gt; from CodeWeavers (there's an OS X version too). I just installed IE on Ubuntu and tried a couple of websites which I knew didn't work well with Firefox. Preliminary conclusion is that they work perfectly fine on the newly-installed IE. Hurray! So I don't need to install Windows, yet.&lt;br /&gt;&lt;br /&gt;Note that CrossOver Linux is not free software; it is a proprietary version of &lt;a href="http://www.winehq.org/"&gt;Wine&lt;/a&gt;, the well-known Windows Emulator (not!) for Linux, BSD and OS X. So you have to shell out a few bucks (around 40 USD) to buy the "Standard" version ("Professional" one costs more). Although it can run a lot of Windows apps on Linux, even if it was only for this reason (ability to run IE), I think its worth the cost.&lt;br /&gt;&lt;br /&gt;I didn't have to buy CrossOver, however. :) I downloaded it for free in late October when CodeWeavers gave it away with their &lt;a href="http://lameduck.codeweavers.com/"&gt;Lame Duck Presidential Challenge&lt;/a&gt;. Then I forgot all about it, until now. (I also downloaded CrossOver Games that day — Steam works well with it, so I've heard. Maybe I'll play some real games again.)&lt;br /&gt;&lt;br /&gt;If you really don't want to spend the money, you could try Wine itself. But I haven't used it, so I can't say whether it works as well as CrossOver.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-8645710224107562042?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/8645710224107562042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=8645710224107562042' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8645710224107562042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8645710224107562042'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/01/re-when-you-need-ie.html' title='Re: When you need IE'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-6764267355947000190</id><published>2009-01-06T12:08:00.003+05:30</published><updated>2009-01-06T12:18:19.363+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ie'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>When you need IE</title><content type='html'>So now that I hardly ever play games, I believed I would never need to install Windows again. Silly me.&lt;br /&gt;&lt;br /&gt;How do you get rid of Windows when important websites (for you) work only with IE?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-6764267355947000190?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/6764267355947000190/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=6764267355947000190' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/6764267355947000190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/6764267355947000190'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/01/when-you-need-ie.html' title='When you need IE'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-5800188159967400802</id><published>2009-01-01T05:01:00.003+05:30</published><updated>2009-01-01T09:58:11.909+05:30</updated><title type='text'>So what happened to the Zune?</title><content type='html'>This new (or rather, end of) year story just made my day: &lt;em&gt;every&lt;/em&gt; first generation 30 GB Zune reportedly freezing after midnight of 30th December or, starting 31st December, 2008. (See one forum thread &lt;a href="http://www.zuneboards.com/forums/static/zunefail-reddit.html?vbseourl=gen-1/38132-help-frozen-zune-30s.html"&gt;here&lt;/a&gt;, or a Google trends graph for "zune freeze" &lt;a href="http://www.google.com/trends/hottrends?q=zune+freeze&amp;date=2008-12-31&amp;sa=X"&gt;here&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;So, what was the issue? Apparently, &lt;a href="http://www.pcworld.com/article/156240/microsoft_says_leap_year_bug_caused_zune_failures.html"&gt;someone forgot to take care of leap years&lt;/a&gt; in their code. I would _hate_ to be that someone right now.&lt;br /&gt;&lt;br /&gt;This reminds me of my first new year at &lt;acronym title="Cleartrip"&gt;CT&lt;/acronym&gt;: more than one date handling bug in our code caused weird things to happen around the turn of the year. Thankfully, our failures were nowhere as epic as this one.&lt;sup&gt;&lt;a href="#fn1"&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;br /&gt;&lt;br /&gt;I wonder how long us programmers will keeping tripping at each happy new year's.&lt;br /&gt;&lt;br /&gt;&lt;div id="fn1"&gt;&lt;sup&gt;1&lt;/sup&gt; The most any business guy reported was that some flight/fare was not showing up correctly, and no one apart from a couple of devs even knew what had happened (that was before we became heavy on processes, and JIRA was no longer a joke).&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Update:&lt;/em&gt; Apparently the piece of source code that caused this problem has been identified and is out on the internets. So what did it? Well, seems like a date routine from Freescale was the culprit. See &lt;a href="http://www.zuneboards.com/forums/zune-news/38143-cause-zune-30-leapyear-problem-isolated.html"&gt;this&lt;/a&gt; forum post for the gory details.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-5800188159967400802?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/5800188159967400802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=5800188159967400802' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/5800188159967400802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/5800188159967400802'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2009/01/so-what-happened-to-zune.html' title='So what happened to the Zune?'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-2530952306808689001</id><published>2008-12-25T10:24:00.008+05:30</published><updated>2008-12-27T12:01:41.378+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='trip'/><category scheme='http://www.blogger.com/atom/ns#' term='pictures'/><title type='text'>Kullu Manali: A photostory</title><content type='html'>Something new for the diminshingly small population of readers of this blog: a collection of pictures and short anecdotes from my recent trip to Kullu-Manali. Head over to the flickr set to view and read:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://flickr.com/photos/chaitanyagupta/sets/72157611251346012/"&gt;http://flickr.com/photos/chaitanyagupta/sets/72157611251346012/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-2530952306808689001?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/2530952306808689001/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=2530952306808689001' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/2530952306808689001'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/2530952306808689001'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/12/kullu-manali-photostory.html' title='Kullu Manali: A photostory'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-8677076636027990616</id><published>2008-11-22T13:57:00.007+05:30</published><updated>2008-11-22T16:05:28.589+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='half-marathon'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Saturday Long Run: 14 km, 1 hour 44 minutes</title><content type='html'>&lt;div style="border-bottom: 1px dashed;"&gt;"Well, humour me."&lt;br /&gt;&lt;br /&gt;Maybe that's what I would have said six months ago.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;For me, the hardest part of these long runs is not the pounding that the legs get (my runs are quite slow); rather, its the extreme patience with which the mind is tested. When you are running circles around a 400 metre track&lt;sup&gt;&lt;a href="#runfn1"&gt;1&lt;/a&gt;&lt;/sup&gt;, the mind gets exhausted just waiting for... the run to finish!&lt;br /&gt;&lt;br /&gt;So of course I try all sorts of tricks to keep it busy (e.g. conjure up my greatest fantasies and see them waiting at the finish). I guess listening to music would also help, though I have been too lazy to get my iPod fixed (as usual). But whatever, with each passing week, that dream of crossing the finish line in Mumbai this January comes ever closer to reality. Guess I should be booking my ticket soon...&lt;br /&gt;&lt;br /&gt;&lt;div id="runfn1"&gt;&lt;sup&gt;1&lt;/sup&gt; A run of 14 km means 35 laps around a 400m track. Such boredom. Fellow Jalandharis, any interesting places you can suggest to me for running? I do it at the Guru Gobind Singh stadium right now.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-8677076636027990616?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/8677076636027990616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=8677076636027990616' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8677076636027990616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8677076636027990616'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/11/saturday-long-run-14-km-1-hour-44.html' title='Saturday Long Run: 14 km, 1 hour 44 minutes'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-7149333340891662318</id><published>2008-11-09T12:24:00.004+05:30</published><updated>2008-11-09T12:31:30.941+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='orkut'/><category scheme='http://www.blogger.com/atom/ns#' term='luck'/><title type='text'>Today's Orkut fortune</title><content type='html'>&lt;blockquote&gt;Your luck has been completely changed today&lt;/blockquote&gt;No change in my luck can I see till now. Still around half a day left though &amp;mdash; let's see if any (complete) change happens or not. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-7149333340891662318?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/7149333340891662318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=7149333340891662318' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7149333340891662318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7149333340891662318'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/11/todays-orkut-fortune.html' title='Today&apos;s Orkut fortune'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-4222884262819372712</id><published>2008-10-05T13:47:00.006+05:30</published><updated>2008-10-06T00:19:23.563+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='cleartrip'/><title type='text'>New beginnings</title><content type='html'>After two incredible years, my adventure in Mumbai has finally ended. Tuesday, September 30th, was my last day of work at &lt;a href="http://www.cleartrip.com/"&gt;Cleartrip&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Am relaxing back at home now, but things are in a pretty fluxy(!!) state at this point of time. Apart from a few things (like continuity of CL hacking), almost everything changes now &amp;#8212; city, work (of which there is none), laptop (no Mac to show off now), routine (fitness mania, don't forget the &lt;a href="/blog/2008/09/6140.html"&gt;half-marathon&lt;/a&gt;), &lt;em&gt;khaana (ghar kaa!)&lt;/em&gt;, &lt;em&gt;kharcha&lt;/em&gt;, et al. &lt;br /&gt;&lt;br /&gt;Coming days should clear some air on where I am headed towards in the very short term. It will be interesting to see how things shape up...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-4222884262819372712?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/4222884262819372712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=4222884262819372712' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/4222884262819372712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/4222884262819372712'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/10/new-beginnings.html' title='New beginnings'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-5067523322251916713</id><published>2008-09-23T21:29:00.001+05:30</published><updated>2008-09-23T21:30:18.864+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='trains'/><category scheme='http://www.blogger.com/atom/ns#' term='cleartrip'/><title type='text'>Shiny new thing</title><content type='html'>Something to do with &lt;a href="http://www.cleartrip.com/trains"&gt;trains&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-5067523322251916713?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/5067523322251916713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=5067523322251916713' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/5067523322251916713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/5067523322251916713'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/09/shiny-new-thing.html' title='Shiny new thing'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-3058044723189807250</id><published>2008-09-20T17:43:00.005+05:30</published><updated>2008-09-20T18:06:35.952+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='fitness'/><category scheme='http://www.blogger.com/atom/ns#' term='half-marathon'/><title type='text'>6140</title><content type='html'>That's my running number for the &lt;a href="http://mumbaimarathon.indiatimes.com/"&gt;Mumbai Marathon 2009&lt;/a&gt;, to be held on January 18th. I will be participating in the half-marathon. &lt;br /&gt;&lt;br /&gt;Now, what? I hear you say. Half-marathon???&lt;br /&gt;&lt;br /&gt;Yes.&lt;br /&gt;&lt;br /&gt;In the first week of July this year, desperate to get into shape, and running out of ideas on how to get there, I had this strange thought of maybe running the half-marathon in Mumbai. There was enough time, and practicing for a 21 kilometer race would definitely result in a good bit of kilogram shedding. &lt;br /&gt;&lt;br /&gt;So I decided to check up a bit more about the event, and what was the &lt;a href="http://mumbaimarathon.indiatimes.com/impdates.html"&gt;very first thing&lt;/a&gt; that I discovered?&lt;br /&gt;&lt;br /&gt;Online registrations opened the very next day!&lt;br /&gt;&lt;br /&gt;Now &lt;em&gt;that&lt;/em&gt; was something, and being a generally impulsive person, I decided to go for it.&lt;br /&gt;&lt;br /&gt;Not much practicing has happened since then (rather a good bit of flab accumulation has been taking place). But I got my confirmation mail today (alongwith the running number), so I am all fired up all over again. This is my most ambitious shot at good health and fitness till date. Hopefully, I will be upto the challenge when the day comes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-3058044723189807250?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/3058044723189807250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=3058044723189807250' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/3058044723189807250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/3058044723189807250'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/09/6140.html' title='6140'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-7250602929847886724</id><published>2008-09-16T16:36:00.003+05:30</published><updated>2008-09-16T18:28:24.791+05:30</updated><title type='text'>Pain</title><content type='html'>I have been trying to make a train reservation online for the last three hours. Couldn't. Just couldn't.&lt;br /&gt;&lt;br /&gt;Here's the problem: half the time, IRCTC doesn't work. During the other half, ICICI gives me a "Your session has expired" message after entering a gazillion different passwords and grid numbers.&lt;br /&gt;&lt;br /&gt;And the cycle repeats itself. I can't even go back to the train search results and book from there. I have to enter fill the damn search form again, and again, and again.&lt;br /&gt;&lt;br /&gt;Hopefully, the future will be bright someday...&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Update:&lt;/i&gt; Found the solution to ICICI's "Your session has expired message" problem. If you are using Firefox, restart your browser and try again. It should work fine now. Don't know if it works that way with other browsers, though. Thanks to &lt;a href="http://nandz.blogspot.com/"&gt;Saurabh&lt;/a&gt; for pointing this out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-7250602929847886724?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/7250602929847886724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=7250602929847886724' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7250602929847886724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7250602929847886724'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/09/pain.html' title='Pain'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-8870659307356667236</id><published>2008-09-14T04:36:00.009+05:30</published><updated>2008-09-14T05:36:58.493+05:30</updated><title type='text'>Uptime</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.chaitanyagupta.com/blog/uploaded_images/uptime-758574.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://www.chaitanyagupta.com/blog/uploaded_images/uptime-758574.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Over a weekend.&lt;br /&gt;&lt;br /&gt;Maybe I should get a life.&lt;br /&gt;&lt;br /&gt;(And the last half-hour was wasted on 1. wondering whether to post this or not; 2. thinking up a punchline, taking the screen grab, and publishing the damn thing.)&lt;br /&gt;&lt;br /&gt;&lt;em&gt;(And an hour after posting it, I am still editing this post. I should probably also stop thinking so much.)&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-8870659307356667236?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/8870659307356667236/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=8870659307356667236' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8870659307356667236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/8870659307356667236'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/09/uptime.html' title='Uptime'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17912943.post-7974401381616225981</id><published>2008-09-06T13:52:00.000+05:30</published><updated>2008-09-09T21:53:54.139+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><category scheme='http://www.blogger.com/atom/ns#' term='bzip2'/><category scheme='http://www.blogger.com/atom/ns#' term='cl'/><title type='text'>Announce: cl-bzip2 0.1.0</title><content type='html'>Last Saturday I released version 0.1.0 of cl-bzip2. The project is hosted at common-lisp.net. Its homepage is &lt;a href="http://common-lisp.net/project/cl-bzip2/"&gt;http://common-lisp.net/project/cl-bzip2/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;cl-bzip2 provides Common Lisp bindings (via &lt;a href="http://common-lisp.net/project/cffi/"&gt;CFFI&lt;/a&gt;) for libbzip2 — the C library for &lt;a href="http://www.bzip.org/"&gt;bzip2&lt;/a&gt; compression/decompression. It provides an easy to use Lisp inteface for the same:&lt;br /&gt;&lt;pre&gt;&lt;code style="font-size: 0.9em;"&gt;&lt;br /&gt;;;; Compression&lt;br /&gt;;;; No values are returned if execution was successful&lt;br /&gt;CL-USER&gt; (bzip2:compress #p"test.txt" #p"test.txt.bz2")&lt;br /&gt;; No value&lt;br /&gt;&lt;br /&gt;;;; Decompression&lt;br /&gt;CL-USER&gt; (bzip2:decompress #p"test.txt.bz2" #p"test.txt")&lt;br /&gt;; No value&lt;br /&gt;&lt;br /&gt;;;; Using binary streams&lt;br /&gt;CL-USER&gt; (with-open-file (in "test.txt"&lt;br /&gt;                            :direction :input&lt;br /&gt;                            :element-type '(unsigned-byte 8))&lt;br /&gt;          (with-open-file (out "test.txt.bz2"&lt;br /&gt;                               :direction :output&lt;br /&gt;                               :element-type '(unsigned-byte 8))&lt;br /&gt;            (bzip2:compress in out)))&lt;br /&gt;; No value&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Hope someone finds it useful. If you have any suggestions for the Lisp API, please let me know (or drop in a mail to the &lt;a href="http://common-lisp.net/cgi-bin/mailman/listinfo/cl-bzip2-devel"&gt;mailing list&lt;/a&gt;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17912943-7974401381616225981?l=www.chaitanyagupta.com%2Fblog%2Findex.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/7974401381616225981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=17912943&amp;postID=7974401381616225981' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7974401381616225981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17912943/posts/default/7974401381616225981'/><link rel='alternate' type='text/html' href='http://www.chaitanyagupta.com/blog/2008/09/announce-cl-bzip2-010.html' title='Announce: cl-bzip2 0.1.0'/><author><name>Chaitanya Gupta</name><uri>http://www.blogger.com/profile/00387714191982678224</uri><email>icehotcg@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='13571466046662962093'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry></feed>