<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns: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" version="2.0">

<channel>
	<title>ArunRocks</title>
	
	<link>http://www.arunrocks.com/blog</link>
	<description>Representing Anti-Monotonistic Tendencies</description>
	<pubDate>Mon, 02 Nov 2009 12:06:22 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<thespringbox:skin xmlns:thespringbox="http://www.thespringbox.com/dtds/thespringbox-1.0.dtd">http://feeds.feedburner.com/Arunrocks?format=skin</thespringbox:skin><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/Arunrocks" type="application/rss+xml" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">Arunrocks</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>This is It: Remembering the Performer Extraordinaire</title>
		<link>http://www.arunrocks.com/blog/archives/2009/11/02/this-is-it-remembering-the-performer-extraordinaire/</link>
		<comments>http://www.arunrocks.com/blog/archives/2009/11/02/this-is-it-remembering-the-performer-extraordinaire/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 12:02:21 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[Movies]]></category>

		<category><![CDATA[Reviews]]></category>

		<category><![CDATA[jackson]]></category>

		<category><![CDATA[micheal jackson]]></category>

		<category><![CDATA[mj]]></category>

		<category><![CDATA[this is it]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=155</guid>
		<description><![CDATA[     <link rel="alternate" type="application/atom+xml" title="ArunRocks Category: Movies" href="http://www.arunrocks.com/blog/archives/category/reviews/movies/feed/" />
     <link rel="alternate" type="application/atom+xml" title="ArunRocks Category: Reviews" href="http://www.arunrocks.com/blog/archives/category/reviews/feed/" />
How do you exactly remember Michael Jackson? A pale faced ageing popstar with bad plastic surgery artifacts? His controversial child molestation charges cases settled out of court? Or his unnaturally feminine voice?

For a normal kid who grew up in the eighties, Michael Jackson was a part of growing up. MJ - the legend - was [...]]]></description>
			<content:encoded><![CDATA[<p>How do you exactly remember Michael Jackson? A pale faced ageing popstar with bad plastic surgery artifacts? His controversial child molestation charges cases settled out of court? Or his unnaturally feminine voice?</p>
<p><img src="/blog/wp-content/photos/this_is_it.jpg" align="right"/><br />
For a normal kid who grew up in the eighties, Michael Jackson was a part of growing up. MJ - the legend - was a larger-than-life icon. We spent hours trying to copy his moves and create that illusion of &#8216;Break Dance&#8217;, a style of dance that Michael defined and redefined continually. Some of us were pretty good. There was a Michael Jackson imitator in every school or college dancing competition. There were many who could manage a close imitation (<a href="http://en.wikipedia.org/wiki/Prabhu_Deva">Prabhu Deva</a> for instance) but never truly &#8216;perfect&#8217;. To know what&#8217;s perfection, one had to rent out a copy of Michael Jackson&#8217;s videos. And then watch the jaw-dropping performance for the hundredth time.</p>
<p>Yes, MJ has had more than his share of controversies. The multi-millioniare King of Pop residing in the amusement-park like estate of Neverland Ranch was easy to be hated. Media loved to lampoon every excess of his. But when MJ stepped on stage, when the arc lights shone, something extraordinary happened. When he made his spectacular entry there were goosebumps on every person in the audience. When he moved, the laws of physics would not apply. When he sang, he could dive into pathos and immediately hit a howling yell with remarkable ease. He was in every sense of the term, a performer extraordinaire.</p>
<p>Two days back, in a small packed screening of perhaps a hundred people, I saw one of the most moving homage to this incredible artist. It was aptly called &#8216;This is It&#8217;. Rather than a boring documentary with interviews and flashbacks, the film directly took you to the auditions for MJ&#8217;s final tour of the same name. In the next few minutes, you are taken through the gruelling preparations Michael had for what could possibly have been a stage performance never experienced before.</p>
<p>To appreciate the genius of his performances, you need to look no further than the immense amount of improvisation and perfection in every performance of Michael. He doesn&#8217;t mime his old soundtracks. He doesn&#8217;t even sing to a recorded soundtrack. Everything which happens in an MJ&#8217;s show is being performed Live. Yes, today&#8217;s teen popstars who can barely mime their performances on stage surely have it easy, don&#8217;t they?</p>
<p>As we watch the rehearsals of several iconic hits like &#8216;Billy Jean&#8217;, &#8216;Thriller&#8217; and &#8216;Beat It&#8217;, you don&#8217;t feel for a minute that you are watching an ageing fifty year-old. He effortlessly performs his trademark moves that, despite millions of imitators (including the very talented and cherry-picked stage extras), only Michael could convincingly perform. When he sings, he doesn&#8217;t gasp for breath or lose his tempo. He, in fact, single-handedly resurrects his hit numbers performing frighteningly close to what how did when he was a teenager.</p>
<p>As you watch these songs, you cannot help wondering the immense capacity of MJ to entertain his audience. He can stir a range of human emotions be it Romance, Empathy, Frustration or Terror in the deepest possible way through his songs. His audience escape to a world that&#8217;s very uniquely Michael&#8217;s creation. A surreal world inhabited by gangsters, zombies, and panthers in locales varying from Egyptian deserts to lush tropical rain-forests.</p>
<p>Michael was not just an exceptional artist but an extraordinary human being. In the rehearsals, he treats every artist on crew with respect and humility. He has been credited with supporting more charities than any other artist - 39 charitable organizations - either with monetary donations through sponsorships of their projects or participation in their activities. </p>
<p>His songs broke all boundaries of culture or race. His songs like &#8216;Heal the World&#8217; leaves a lump in one&#8217;s throat and stirs your heart everytime you hear them. For millions of fans, there will be more pop crooners or dazzling dancers, but there will be only one King of Pop. And he will be missed - Forever. </p>
<p>Yes&#8230;. This is IT!</p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F11%2F02%2Fthis-is-it-remembering-the-performer-extraordinaire%2F&#038;title=This+is+It%3A+Remembering+the+Performer+Extraordinaire" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F11%2F02%2Fthis-is-it-remembering-the-performer-extraordinaire%2F&#038;title=This+is+It%3A+Remembering+the+Performer+Extraordinaire" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F11%2F02%2Fthis-is-it-remembering-the-performer-extraordinaire%2F&#038;t=This+is+It%3A+Remembering+the+Performer+Extraordinaire" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F11%2F02%2Fthis-is-it-remembering-the-performer-extraordinaire%2F&#038;T=This+is+It%3A+Remembering+the+Performer+Extraordinaire" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F11%2F02%2Fthis-is-it-remembering-the-performer-extraordinaire%2F&#038;title=This+is+It%3A+Remembering+the+Performer+Extraordinaire" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F11%2F02%2Fthis-is-it-remembering-the-performer-extraordinaire%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F11%2F02%2Fthis-is-it-remembering-the-performer-extraordinaire%2F&#038;title=This+is+It%3A+Remembering+the+Performer+Extraordinaire" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2009/11/02/this-is-it-remembering-the-performer-extraordinaire/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PyCon India Talk 2009: Game Programming in Pyglet</title>
		<link>http://www.arunrocks.com/blog/archives/2009/09/27/pycon-india-talk-2009-game-programming-in-pyglet/</link>
		<comments>http://www.arunrocks.com/blog/archives/2009/09/27/pycon-india-talk-2009-game-programming-in-pyglet/#comments</comments>
		<pubDate>Sun, 27 Sep 2009 13:07:59 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[Gaming]]></category>

		<category><![CDATA[General]]></category>

		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=154</guid>
		<description><![CDATA[Thanks to everyone who enjoyed and commented on my talk today titled &#8216;Accelerate Your Game Development with Pyglet&#8217;. I am happy to see so much enthusiasm within the python community for game development. This was my first lightning talk (and the first one for the day as well) and though, I slightly overshot the timelimit, [...]]]></description>
			<content:encoded><![CDATA[<p>Thanks to everyone who enjoyed and commented on my talk today titled &#8216;Accelerate Your Game Development with Pyglet&#8217;. I am happy to see so much enthusiasm within the python community for game development. This was my first lightning talk (and the first one for the day as well) and though, I slightly overshot the timelimit, it was a great experience.</p>
<p>The talk was about creating a simple casual game using Pyglet called &#8216;FruitCatch&#8217;. The source code is really small and very readable. I also compared Pyglet with Pygame and why I prefer Pyglet (in certain situations:)). The demo showed the working game in the end.</p>
<p>You can download the <a href="http://www.arunrocks.com/downloads/pyconindia2009/fruitcatch-0.1.tar.gz">game source code</a> and <a href="http://www.arunrocks.com/downloads/pyconindia2009/Accelerate%20Your%20Game Development%20with%20Pyglet.pdf">presentation slides</a> here. I&#8217;ve shared this with the organisers as well, so it will be put up at the http://in.pycon.org/ site as well</p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F27%2Fpycon-india-talk-2009-game-programming-in-pyglet%2F&#038;title=PyCon+India+Talk+2009%3A+Game+Programming+in+Pyglet" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F27%2Fpycon-india-talk-2009-game-programming-in-pyglet%2F&#038;title=PyCon+India+Talk+2009%3A+Game+Programming+in+Pyglet" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F27%2Fpycon-india-talk-2009-game-programming-in-pyglet%2F&#038;t=PyCon+India+Talk+2009%3A+Game+Programming+in+Pyglet" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F27%2Fpycon-india-talk-2009-game-programming-in-pyglet%2F&#038;T=PyCon+India+Talk+2009%3A+Game+Programming+in+Pyglet" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F27%2Fpycon-india-talk-2009-game-programming-in-pyglet%2F&#038;title=PyCon+India+Talk+2009%3A+Game+Programming+in+Pyglet" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F27%2Fpycon-india-talk-2009-game-programming-in-pyglet%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F27%2Fpycon-india-talk-2009-game-programming-in-pyglet%2F&#038;title=PyCon+India+Talk+2009%3A+Game+Programming+in+Pyglet" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2009/09/27/pycon-india-talk-2009-game-programming-in-pyglet/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Weekend Gains</title>
		<link>http://www.arunrocks.com/blog/archives/2009/09/14/weekend-gains/</link>
		<comments>http://www.arunrocks.com/blog/archives/2009/09/14/weekend-gains/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 12:41:08 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[Technical]]></category>

		<category><![CDATA[ubuntu]]></category>

		<category><![CDATA[arch linux]]></category>

		<category><![CDATA[fedora]]></category>

		<category><![CDATA[free dos]]></category>

		<category><![CDATA[hard disk]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[multiboot]]></category>

		<category><![CDATA[puppy linux]]></category>

		<category><![CDATA[ram]]></category>

		<category><![CDATA[weekend]]></category>

		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=152</guid>
		<description><![CDATA[This weekend I was pretty productive. Among other things, I was able to perform a much needed upgrade for my laptop after my hard disk crashed and to bring it at par to the prevailing standards, as well. I bought a 320 GB hard disk (up from 100 GB) and added a RAM module bringing [...]]]></description>
			<content:encoded><![CDATA[<p>This weekend I was pretty productive. Among other things, I was able to perform a much needed upgrade for my laptop after my hard disk crashed and to bring it at par to the prevailing standards, as well. I bought a 320 GB hard disk (up from 100 GB) and added a RAM module bringing the total RAM to 2.5 GB (up from 1 GB). So it&#8217;s a Big Deal <img src='http://www.arunrocks.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>While purchasing the hard disk, I was sure that I don&#8217;t need it to fill it up with lots of data (like movies or songs). I would rather use my external hard disk for that. I had planned to use majority of the space for Linuxes (is that the correct plural form?). Why not Windows, you may ask. Especially with the snazzy Windows 7 being already available for Beta?</p>
<p>Well the reasons are quite simple. Firstly, too many viruses and malware. Especially, if you have removable storage like <a href="http://blogs.ad.infosys.com/users/arunv_ravindran/tag/thumb%20drive">pendrives</a> or CDs. Next, it&#8217;s not very stable. Though Windows XP is a comparatively stable member of the Windows family, I have had more than my share of screen freezes and blue screens. This causes bad sectors and reduces the life of your hard disk. Next, most of the apps I use are open source anyways - Firefox, Open Office, GIMP, Inkscape, Emacs, Foxit etc. Then why not run the same in a better OS like Linux? Lastly, distributions like Ubuntu have become really user-friendly. Vidya and many others who use my laptop really don&#8217;t find it difficult or inconvenient to use.</p>
<p>Well, you must have noticed the plural form of Linux I&#8217;d used. This weekend I installed the following OSes and they are all working fine:</p>
<ul>
<li><a href="http://www.ubuntu.com/">Ubuntu</a> (Jaunty): Perfect for most multimedia and productivity apps</li>
<li><a href="http://fedoraproject.org/">Fedora 11</a>: For trying out Java apps and other <a href="http://en.wikipedia.org/wiki/Enterprise_application_integration">enterprisey</a> stuff</li>
<li><a href="http://www.archlinux.org/">Arch Linux</a>: An ideal hacker&#8217;s OS</li>
<li><a href="http://www.microsoft.com/windows/windows-xp/default.aspx">Windows XP</a>: For the necessary evils like movie playback</li>
<li><a href="http://www.freedos.org/">FreeDOS</a>: This is the good ol&#8217; DOS. For classic DOS games and simple low level programming</li>
</ul>
<p>I am planning to add a couple of more varied distributions. I am currently thinking of adding Puppy Linux and Rescue CD. Any suggestions?</p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F14%2Fweekend-gains%2F&#038;title=Weekend+Gains" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F14%2Fweekend-gains%2F&#038;title=Weekend+Gains" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F14%2Fweekend-gains%2F&#038;t=Weekend+Gains" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F14%2Fweekend-gains%2F&#038;T=Weekend+Gains" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F14%2Fweekend-gains%2F&#038;title=Weekend+Gains" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F14%2Fweekend-gains%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F09%2F14%2Fweekend-gains%2F&#038;title=Weekend+Gains" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2009/09/14/weekend-gains/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Office Diff: An Open Source Diff for Office 2007 or 2003 documents</title>
		<link>http://www.arunrocks.com/blog/archives/2009/07/21/office-diff-open-source/</link>
		<comments>http://www.arunrocks.com/blog/archives/2009/07/21/office-diff-open-source/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 05:57:37 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[2003]]></category>

		<category><![CDATA[2007]]></category>

		<category><![CDATA[diff]]></category>

		<category><![CDATA[office]]></category>

		<category><![CDATA[open source]]></category>

		<category><![CDATA[productivity]]></category>

		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=151</guid>
		<description><![CDATA[This Saturday, I started working on something that many of my colleagues had complained about a long time ago. They work on reports all the time and most of these reports have small changes in each version. They are only interested in seeing what changed rather than read the entire report.
You might suggest a lot [...]]]></description>
			<content:encoded><![CDATA[<p>This Saturday, I started working on something that many of my colleagues had complained about a long time ago. They work on reports all the time and most of these reports have small changes in each version. They are only interested in seeing what changed rather than read the entire report.</p>
<p>You might suggest a lot of &#8216;diff&#8217; tools which can do the job in either Word or Textpad. The issue was that they were working with Excel spreadsheets rather than text files and I couldn&#8217;t find any free or open source solution for them. So I ended up creating a new tool called Office Diff. Interestingly, it handles not just Excel, but also all the Office 2007 and 2003 file formats plus PDF and HTML formats as well. It features an intuitive GUI interface and is completely written in Python.</p>
<p>The next best thing was to open source it. I am using the BSD licence. I found sourceforge a good choice because they support Bazaar, my version control of choice at the moment.</p>
<p>Please visit <a href="http://officediff.sourceforge.net/">Office Diff</a> homepage for screenshots and check out the first release. </p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F07%2F21%2Foffice-diff-open-source%2F&#038;title=Office+Diff%3A+An+Open+Source+Diff+for+Office+2007+or+2003+documents" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F07%2F21%2Foffice-diff-open-source%2F&#038;title=Office+Diff%3A+An+Open+Source+Diff+for+Office+2007+or+2003+documents" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F07%2F21%2Foffice-diff-open-source%2F&#038;t=Office+Diff%3A+An+Open+Source+Diff+for+Office+2007+or+2003+documents" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F07%2F21%2Foffice-diff-open-source%2F&#038;T=Office+Diff%3A+An+Open+Source+Diff+for+Office+2007+or+2003+documents" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F07%2F21%2Foffice-diff-open-source%2F&#038;title=Office+Diff%3A+An+Open+Source+Diff+for+Office+2007+or+2003+documents" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F07%2F21%2Foffice-diff-open-source%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F07%2F21%2Foffice-diff-open-source%2F&#038;title=Office+Diff%3A+An+Open+Source+Diff+for+Office+2007+or+2003+documents" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2009/07/21/office-diff-open-source/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Don’t Worry About Zipping Office 2007 Documents</title>
		<link>http://www.arunrocks.com/blog/archives/2009/05/12/dont-worry-about-zipping-office-2007-documents/</link>
		<comments>http://www.arunrocks.com/blog/archives/2009/05/12/dont-worry-about-zipping-office-2007-documents/#comments</comments>
		<pubDate>Tue, 12 May 2009 08:04:44 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[office]]></category>

		<category><![CDATA[productivity]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=147</guid>
		<description><![CDATA[Old habits die hard. Whenever we have to send huge attachments; the wise ones used to say &#8216;Don&#8217;t clog their mailbox, zip it and send it&#8217;. Everyone religiously used to follow the rule and every word document, presentation or excel sheet was zipped before sending. The zipped file would be a good 40% smaller. The [...]]]></description>
			<content:encoded><![CDATA[<p>Old habits die hard. Whenever we have to send huge attachments; the wise ones used to say &#8216;Don&#8217;t clog their mailbox, zip it and send it&#8217;. Everyone religiously used to follow the rule and every word document, presentation or excel sheet was zipped before sending. The zipped file would be a good 40% smaller. The mails would reach faster and everyone would be happy in the process.</p>
<p>Fast forward to 2009, most people now use Office 2007. The new Office is vastly more &#8230;.well&#8230;new and the preferred file formats all have changed. There is a x at the end of the all filenames so we have .docx, .pptx and .xlsx floating all over the place (how do you pronounce these anyways?!). The documents are still religiously sent as zipped files. Except there is no 40% reduction. Actually it isn&#8217;t even 10%. Why?</p>
<p>Because you cannot zip a file that&#8217;s already zipped. Yep&#8230;. <a href="http://office.microsoft.com/en-us/help/HA100069351033.aspx">all the new office documents are already zipped anyways</a>. You can even open them using Winzip by simply renaming their extensions to .zip.</p>
<p>So folks, next time you mail someone, don&#8217;t bother to zip it. There is only the added annoyance of the recipient having to unzip before opening the file. </p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F05%2F12%2Fdont-worry-about-zipping-office-2007-documents%2F&#038;title=Don%26%238217%3Bt+Worry+About+Zipping+Office+2007+Documents" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F05%2F12%2Fdont-worry-about-zipping-office-2007-documents%2F&#038;title=Don%26%238217%3Bt+Worry+About+Zipping+Office+2007+Documents" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F05%2F12%2Fdont-worry-about-zipping-office-2007-documents%2F&#038;t=Don%26%238217%3Bt+Worry+About+Zipping+Office+2007+Documents" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F05%2F12%2Fdont-worry-about-zipping-office-2007-documents%2F&#038;T=Don%26%238217%3Bt+Worry+About+Zipping+Office+2007+Documents" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F05%2F12%2Fdont-worry-about-zipping-office-2007-documents%2F&#038;title=Don%26%238217%3Bt+Worry+About+Zipping+Office+2007+Documents" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F05%2F12%2Fdont-worry-about-zipping-office-2007-documents%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F05%2F12%2Fdont-worry-about-zipping-office-2007-documents%2F&#038;title=Don%26%238217%3Bt+Worry+About+Zipping+Office+2007+Documents" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2009/05/12/dont-worry-about-zipping-office-2007-documents/feed/</wfw:commentRss>
		</item>
		<item>
		<title>20 Truism for Project Management</title>
		<link>http://www.arunrocks.com/blog/archives/2009/03/10/20-truism-for-project-management/</link>
		<comments>http://www.arunrocks.com/blog/archives/2009/03/10/20-truism-for-project-management/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 05:55:02 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[humour]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=142</guid>
		<description><![CDATA[Tony Collins has compiled a list of Project Management facts which might very well be the &#8216;Mythical Man-Month&#8217; for the new era. It explains why so many IT projects fail so aptly that I had to reproduce it here:


Projects with realistic budgets and timetables don&#8217;t get approved


Activity in the early stages should be dedicated to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.computerweekly.com/blogs/tony_collins/2009/02/top-tips-for-project-managers.html">Tony Collins</a> has compiled a list of Project Management facts which might very well be the &#8216;Mythical Man-Month&#8217; for the new era. It explains why so many IT projects fail so aptly that I had to reproduce it here:</p>
<ol>
<li>
<p>Projects with realistic budgets and timetables don&#8217;t get approved</p>
</li>
<li>
<p>Activity in the early stages should be dedicated to finding the correct questions</p>
</li>
<li>
<p>The more desperate the situation the more optimistic the progress report</p>
</li>
<li>
<p>A user is somebody who rejects the system because it&#8217;s what he asked for</p>
</li>
<li>
<p>The difference between project success and failure is a good PR company </p>
</li>
<li>
<p>Nothing is impossible for the person who doesn&#8217;t have to do it</p>
</li>
<li>
<p>Every failing, overly ambitious project, has at its heart a series of successful small ones trying to escape</p>
</li>
<li>
<p>A freeze on change melts whenever heat is applied</p>
</li>
<li>
<p>There&#8217;s never enough time to do it right first time</p>
</li>
<li>
<p>You understood what I said, not what I meant</p>
</li>
<li>
<p>If you don&#8217;t know where you&#8217;re going, just talk about specifics</p>
</li>
<li>
<p>If at first you don&#8217;t succeed, rename the project</p>
</li>
<li>
<p>Everyone wants a strong project manager - until they get him</p>
</li>
<li>
<p>Only idiots own up to what they really know (thank you to President Nixon)</p>
</li>
<li>
<p>The worst project managers sleep at night</p>
</li>
<li>
<p>A failing project has benefits which are always spoken of in the future tense</p>
</li>
<li>
<p>Projects don&#8217;t fail in the end; they fail at conception</p>
</li>
<li>
<p>Visions are usually treatable</p>
</li>
<li>
<p>Overly ambitious projects can never fail if they have a beginning, middle and no end</p>
</li>
<li>
<p>In government we never punish error, only its disclosure</p>
</li>
<li>
<p>The most difficult way is, in the long run, the easiest</p>
</li>
<li>
<p>A realist is one who&#8217;s presciently disappointed in the future</p>
</li>
</ol>
<p>I am pretty sure most of us can relate to these <img src='http://www.arunrocks.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F03%2F10%2F20-truism-for-project-management%2F&#038;title=20+Truism+for+Project+Management" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F03%2F10%2F20-truism-for-project-management%2F&#038;title=20+Truism+for+Project+Management" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F03%2F10%2F20-truism-for-project-management%2F&#038;t=20+Truism+for+Project+Management" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F03%2F10%2F20-truism-for-project-management%2F&#038;T=20+Truism+for+Project+Management" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F03%2F10%2F20-truism-for-project-management%2F&#038;title=20+Truism+for+Project+Management" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F03%2F10%2F20-truism-for-project-management%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F03%2F10%2F20-truism-for-project-management%2F&#038;title=20+Truism+for+Project+Management" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2009/03/10/20-truism-for-project-management/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Decoding Google’s First Tweet in Python</title>
		<link>http://www.arunrocks.com/blog/archives/2009/02/28/decoding-googles-first-tweet-in-python/</link>
		<comments>http://www.arunrocks.com/blog/archives/2009/02/28/decoding-googles-first-tweet-in-python/#comments</comments>
		<pubDate>Sat, 28 Feb 2009 09:10:29 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Python]]></category>

		<category><![CDATA[Technical]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=140</guid>
		<description><![CDATA[Most of you must have read the news that Google finally jumped into the Twitter Bandwagon. In their trademark style, they have chosen to announce this in a cryptic way. Their first tweet was essentially this:

I&#8217;m 01100110 01100101 01100101 01101100 01101001 01101110 01100111 00100000 01101100 01110101 01100011 01101011 01111001 00001010

I will explain in this post [...]]]></description>
			<content:encoded><![CDATA[<p>Most of you must have read the news that <a href="http://thenextweb.com/2009/02/26/googles-tweet-official-twitter-account/" title="The news about google's tweet">Google finally jumped into the Twitter Bandwagon</a>. In their trademark style, they have chosen to announce this in a cryptic way. Their <a href="http://twitter.com/google/status/1251523388" title="Link to Google Twitter account">first tweet</a> was essentially this:</p>
<blockquote>
<p>I&#8217;m 01100110 01100101 01100101 01101100 01101001 01101110 01100111 00100000 01101100 01110101 01100011 01101011 01111001 00001010</p>
</blockquote>
<p>I will explain in this post how to crack this simple code with the help of some Python one-liners (Google&#8217;s favourite language). If you are a Google aspirant (who isn&#8217;t? <img src='http://www.arunrocks.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ), this might help you clear the interview. So pay attention.</p>
<p>To most people it is immediately obvious that it is a text encoded in binary. Since each binary word is 8 characters long, it is most probably written in the extended 8-bit ASCII code. In fact, it is and you can read this with a simple <a href="http://www.cdrummond.qc.ca/cegep/informat/Professeurs/Alain/files/ascii.htm" title="ASCII chart">ASCII chart</a>.</p>
<p>But they have made it slightly difficult for you by writing in binary. Since most charts would provide you a lookup from decimal or hexadecimal numbers to ASCII representations only. So how do you convert from binary to decimal? It&#8217;s quite simple:</p>
<div>
<textarea name="code" class="python:nogutter" cols="60" rows="10">
    decimal = lambda s: sum(int(j) * pow(2,i) for i,j in enumerate(reversed(s)))
    </textarea>
</div>
<p>This line defines a function <code>decimal</code> which works in a manner similar to how we would manually convert binary numbers into decimal. Each position is multiplied by increasing powers of two from the right. Then, these numbers are added together. for e.g. &#8216;1010&#8242; will be 1 * 8 + 0 * 4 + 1 * 2 + 0 * 1 = 10.</p>
<p>Next, we split the binary part of the tweet string and apply the <code>decimal</code> function on each part</p>
<div>
<textarea name="code" class="python:nogutter" cols="60" rows="10">
    tweet = "01100110 01100101 01100101 01101100 01101001 01101110 01100111 00100000 01101100 01110101 01100011 01101011 01111001 00001010"
    print ''.join(chr(decimal(s)) for s in tweet.split())
    </textarea>
</div>
<p>The result is something that you might have already guessed seeing the first 2 words:</p>
<blockquote>
<p>&#8220;I&#8217;m feeling lucky\n&#8221;</p>
</blockquote>
<p>Hope you learnt some interesting python constructs. If there are other ways of decoding this in Python, please comment below.</p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F02%2F28%2Fdecoding-googles-first-tweet-in-python%2F&#038;title=Decoding+Google%26%238217%3Bs+First+Tweet+in+Python" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F02%2F28%2Fdecoding-googles-first-tweet-in-python%2F&#038;title=Decoding+Google%26%238217%3Bs+First+Tweet+in+Python" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F02%2F28%2Fdecoding-googles-first-tweet-in-python%2F&#038;t=Decoding+Google%26%238217%3Bs+First+Tweet+in+Python" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F02%2F28%2Fdecoding-googles-first-tweet-in-python%2F&#038;T=Decoding+Google%26%238217%3Bs+First+Tweet+in+Python" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F02%2F28%2Fdecoding-googles-first-tweet-in-python%2F&#038;title=Decoding+Google%26%238217%3Bs+First+Tweet+in+Python" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F02%2F28%2Fdecoding-googles-first-tweet-in-python%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2009%2F02%2F28%2Fdecoding-googles-first-tweet-in-python%2F&#038;title=Decoding+Google%26%238217%3Bs+First+Tweet+in+Python" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2009/02/28/decoding-googles-first-tweet-in-python/feed/</wfw:commentRss>
		</item>
		<item>
		<title>What’s the Difference between Cloud Computing &amp; SaaS?</title>
		<link>http://www.arunrocks.com/blog/archives/2008/12/07/whats-the-difference-between-cloud-computing-saas/</link>
		<comments>http://www.arunrocks.com/blog/archives/2008/12/07/whats-the-difference-between-cloud-computing-saas/#comments</comments>
		<pubDate>Sun, 07 Dec 2008 04:29:24 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=138</guid>
		<description><![CDATA[Q. What&#8217;s the Difference between Cloud Computing &#38; SaaS?
A. It is the same as the difference between TV and Cable TV. TV is a technology. However, Cable TV is a business model using this technology.
Cloud Computing refers to an architecture where web applications can scale easily to any number of users. Software as a Service [...]]]></description>
			<content:encoded><![CDATA[<p>Q. What&#8217;s the Difference between Cloud Computing &amp; SaaS?</p>
<p>A. It is the same as the difference between TV and Cable TV. TV is a technology. However, Cable TV is a business model using this technology.</p>
<p>Cloud Computing refers to an architecture where web applications can scale easily to any number of users. Software as a Service (SaaS) is a business model where computing software is provided in a &#8216;pay as you use&#8217; model. SaaS is often built using Cloud Computing. But all Cloud Computing apps don&#8217;t use the SaaS model.</p>
<p>Therefore Cloud Computing != SaaS</p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F12%2F07%2Fwhats-the-difference-between-cloud-computing-saas%2F&#038;title=What%26%238217%3Bs+the+Difference+between+Cloud+Computing+%26%23038%3B+SaaS%3F" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F12%2F07%2Fwhats-the-difference-between-cloud-computing-saas%2F&#038;title=What%26%238217%3Bs+the+Difference+between+Cloud+Computing+%26%23038%3B+SaaS%3F" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F12%2F07%2Fwhats-the-difference-between-cloud-computing-saas%2F&#038;t=What%26%238217%3Bs+the+Difference+between+Cloud+Computing+%26%23038%3B+SaaS%3F" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F12%2F07%2Fwhats-the-difference-between-cloud-computing-saas%2F&#038;T=What%26%238217%3Bs+the+Difference+between+Cloud+Computing+%26%23038%3B+SaaS%3F" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F12%2F07%2Fwhats-the-difference-between-cloud-computing-saas%2F&#038;title=What%26%238217%3Bs+the+Difference+between+Cloud+Computing+%26%23038%3B+SaaS%3F" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F12%2F07%2Fwhats-the-difference-between-cloud-computing-saas%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F12%2F07%2Fwhats-the-difference-between-cloud-computing-saas%2F&#038;title=What%26%238217%3Bs+the+Difference+between+Cloud+Computing+%26%23038%3B+SaaS%3F" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2008/12/07/whats-the-difference-between-cloud-computing-saas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Man in the Mirror</title>
		<link>http://www.arunrocks.com/blog/archives/2008/11/22/man-in-the-mirror/</link>
		<comments>http://www.arunrocks.com/blog/archives/2008/11/22/man-in-the-mirror/#comments</comments>
		<pubDate>Sat, 22 Nov 2008 05:48:10 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=137</guid>
		<description><![CDATA[Have to even seen yourself briefly other than in your own reflection? Have you ever wondered if there are other people who are identical to you in appearance but nowhere related to you? There is a word for it - Doppelgänger. As per Wikipedia:

&#8230;They are generally regarded as harbingers of bad luck.
  In some [...]]]></description>
			<content:encoded><![CDATA[<p>Have to even seen yourself briefly other than in your own reflection? Have you ever wondered if there are other people who are identical to you in appearance but nowhere related to you? There is a word for it - <a href="http://en.wikipedia.org/wiki/Doppelgänger">Doppelgänger</a>. As per Wikipedia:</p>
<blockquote>
<p>&#8230;They are generally regarded as harbingers of bad luck.<br />
  In some traditions, a doppelgänger seen by a person&#8217;s<br />
  friends or relatives portends illness or danger, while<br />
  seeing one&#8217;s own doppelgänger is an omen of death. In<br />
  Norse mythology, a vardøger is a ghostly double who<br />
  precedes a living person and is seen performing their<br />
  actions in advance.</p>
</blockquote>
<p>There also a Malayalam movie called <a href="http://www.cinemaofmalayalam.net/padmarajan.html">Aparan</a> based on this concept. It is the first film of the actor Jayaram by the acclaimed Director/Writer Padmarajan. In the film, the doppelgänger truly upturns the protagonist&#8217;s life. However, there are no double role gimmicks employed. The presentation is very sensitive and gripping.</p>
<p>In this era of cloning, any part of your body - split hair or even saliva can be used to create an entire replica of yours. Gene therapy may soon make this a reality. Will your clone bring you bad luck as some Hollywood movies predict? Most likely, because most people wouldn&#8217;t enjoy the company of someone with exactly the same nature as yours. Even worse he or she will covet the same things you would covet. This could mean you will be competing with your clone in many spheres of your life for e.g. dating. And the winner would be, most probably, based on chance because your skills/qualities are evenly matched. A little frustrating isn&#8217;t it?</p>
<p>Whoever said Imitation is the most sincere form of Flattery, most certainly didn&#8217;t think of clones!</p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F22%2Fman-in-the-mirror%2F&#038;title=Man+in+the+Mirror" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F22%2Fman-in-the-mirror%2F&#038;title=Man+in+the+Mirror" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F22%2Fman-in-the-mirror%2F&#038;t=Man+in+the+Mirror" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F22%2Fman-in-the-mirror%2F&#038;T=Man+in+the+Mirror" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F22%2Fman-in-the-mirror%2F&#038;title=Man+in+the+Mirror" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F22%2Fman-in-the-mirror%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F22%2Fman-in-the-mirror%2F&#038;title=Man+in+the+Mirror" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2008/11/22/man-in-the-mirror/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Forget Pages with Autopagerize</title>
		<link>http://www.arunrocks.com/blog/archives/2008/11/17/forget-pages-with-autopagerize/</link>
		<comments>http://www.arunrocks.com/blog/archives/2008/11/17/forget-pages-with-autopagerize/#comments</comments>
		<pubDate>Sun, 16 Nov 2008 18:49:57 +0000</pubDate>
		<dc:creator>Arun bhai</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Technical]]></category>

		<category><![CDATA[firefox]]></category>

		<category><![CDATA[greasemonkey]]></category>

		<category><![CDATA[productivity]]></category>

		<guid isPermaLink="false">http://www.arunrocks.com/blog/?p=136</guid>
		<description><![CDATA[Reddit had a heated debate about the AJAX paging pattern. The debate sidetracked into the benefits of Paging. Nobody seemed to mention the excellent greasemonkey script Autopagerize which is proof that the concept works brilliantly. I find it one of the most indispensable Greasemonkey scripts available today.
The idea is simple. Assume you are reading a [...]]]></description>
			<content:encoded><![CDATA[<p>Reddit had a heated debate about the <a href="http://looksgoodworkswell.blogspot.com/2005/06/death-to-paging-rico-livegrid-released.html">AJAX paging pattern</a>. The debate sidetracked into the benefits of Paging. Nobody seemed to mention the excellent greasemonkey script <a href="http://userscripts.org/scripts/show/8551">Autopagerize</a> which is proof that the concept works brilliantly. I find it one of the most indispensable Greasemonkey scripts available today.</p>
<p>The idea is simple. Assume you are reading a blog in blogspot.com. When you scroll towards the end of the blog, Autopagerize realizes that you are really interested in reading more blog posts. In other words, soon you would click on &#8216;Older Entries&#8217; links. This would have caused a fresh page to load. How terribly annoying! Instead, Autopagerize will silently load the older posts in the background and seamlessly add them to the end of the page. By the time you finish reading the second page, the third page will be added to the end and so on and so forth. This results in a smooth and breezy browsing experience, which has to be experienced to be believed.</p>
<h3>Installing Autopagerize</h3>
<p><a href="http://userscripts.org/scripts/show/8551">Autopagerize</a> uses greasemonkey plugin and hence works only if you have Firefox installed. The steps are quite simple:</p>
<ol>
<li>Install <a href="https://addons.mozilla.org/en-US/firefox/addon/748">Greasemonkey</a></li>
<li>Go to <a href="http://userscripts.org/scripts/show/8551">Autopagerize script</a> page and click on &#8216;Install this Script&#8217; button</li>
<li>Visit any of the supported sites e.g. <a href="http://stackoverflow.com/questions/tagged/python">stackoverflow.com</a> or a blog like <a href="http://userscripts.org/scripts/show/8551">simblog</a></li>
<li>If the page supports Autopagerize, a green square will appear at the top right of the page. Scroll to the end and it will momentarily turn blue to indicate that the next page is loading in the background.</li>
</ol>
<p><img src="/blog/wp-content/photos/autopager/00-autopagerize.png" alt="Autopagerize in action" /></p>
<h3>How does Autopagerize work?</h3>
<p>Autopagerize works on all kinds of sites which have pages. But how does it manage to understand the structure of them all? The answer is the community maintained SITEINFO database which is the result of hundreds of hours of effort.</p>
<p>Autopagerize is turned on for a particular site if its URL matches the <strong>url</strong> property. Once the page is loaded, it searches for the next link based on the xpath provided by <strong>nextLink</strong> property. The next page&#8217;s content is identified by the <strong>pageElement</strong> property. Anything which is not part of this content is discarded. This content is then appended to the existing page either by appending as a sibling to the existing <strong>pageElement</strong> or if <strong>insertBefore</strong> is defined, it is inserted before the element identified by  <strong>insertBefore</strong> property. </p>
<h3>How to Add any Website to Autopagerize?</h3>
<p><em>Note: This is not for the faint of heart. It involves opening and working with some code (to the extend of editing some regular expressions).</em></p>
<p>So you would like extend the Autopagerize experience to more and more sites? Don&#8217;t worry, you have come to the right place. For this section you would need to install the excellent Firebug plugin. Firebug&#8217;s javascript console is the best interactive XPath debugger I am aware of.</p>
<p><span id="more-136"></span></p>
<p>First, ensure that Firebug console is activated for your site. Visit the page you would like to Autopagerize say <a href="http://www.adobetutorialz.com/articles/2751/1/Professional-Web-Layout-for-Business-Solutions">http://www.adobetutorialz.com/articles/2751/1/Professional-Web-Layout-for-Business-Solutions</a>. Click on the firebug icon and enable the Console by checking the first check box (as shown in the figure). Click on Enable. Now the page gets refreshed and the Console appears.</p>
<p><img src="/blog/wp-content/photos/autopager/01-firebug-console.png" alt="Firebug Console" /></p>
<p>Next, go to the Firefox menu item: Tools -> Greasemonkey -> Manage User Scripts. Select Autopagerize from the list and click on Edit button below. </p>
<p><img src="/blog/wp-content/photos/autopager/02-greasemonkey-dialog.png" alt="Greasemonkey Option" /></p>
<p>Turn on debugging by changing line 26 (could be different for you) to <code>var DEBUG = 1</code>. However I could make debugging work only after adding the following 3 lines further down, say after line 85.</p>
<pre><code>if(unsafeWindow.console){
   var GM_log = unsafeWindow.console.log;
}
</code></pre>
<p>Scroll to the line that starts with <code>var SITEINFO = [</code>, which is around line 40. Copy and uncomment the 6 lines of sample code provided by the author as shown in the figure.</p>
<p><img src="/blog/wp-content/photos/autopager/03-emacs-screen.png" alt="Editing code in Emacs" /></p>
<p>Now, give the appropriate XPATH values to the property variables &#8220;pageElement&#8221; and &#8220;nextLink&#8221;. The &#8220;url&#8221; variable is a simple regular expression and an example link for the fourth variable (this variable is purely for documentation). Save this file and refresh your page. If the XPATH values are correctly found the Autopagerize green square icon will appear on the page, else there will be some error on your Firebug console like:</p>
<pre><code>nextLink not found
</code></pre>
<h3>Debugging Autopagerize or Shit, Nothing Happens!</h3>
<p>As you might have guessed, the last step I mentioned earlier is not so easy. This is where Firebug can help you. Before you start read some <a href="http://www.w3schools.com/Xpath/">XPATH tutorials</a> on the net to familiarize yourself with the XPATH syntax. </p>
<p>One killer feature in Firebug is selecting any element of a page and copying the XPath value of that element. On the Firebug window click on Firebug&#8217;s Inspect button and mousing over the page to outline that page element (see fig). </p>
<p><img src="/blog/wp-content/photos/autopager/04-inspect.png" alt="Firebug Inspect" /></p>
<p>Click on the page element you are interested in and the details of the element appear on the firebug window. Right clicking on any item in the breadcrumb at the very top, you will see a Copy XPath option (see fig). </p>
<p><img src="/blog/wp-content/photos/autopager/05-copy-xpath.png" alt="Copying XPATH" /></p>
<p>Now go to the console tab of Firebug and test the XPath by using the $x function. Paste the XPath as an argument to this function and you should get an HTMLElement as the result (see fig).</p>
<p><img src="/blog/wp-content/photos/autopager/06-firebug.png" alt="Paste to Console" /></p>
<p>You will need to find variables: &#8220;pageElement&#8221; and &#8220;nextLink&#8221; this way. This is not an exact science and involves a lot of trial and error. Here are some tips I found after several hours of testing:</p>
<ol>
<li><strong>Escaping</strong> - You will need to add a backslash &#8216;\&#8217; before each special character like &#8216;/&#8217; or &#8220;. This is not required in the Firebug console, however.</li>
<li><strong>Single Quotes</strong> - It is best to use single-quotes as the outer-most quotes in the Firebug console</li>
<li><strong>Firebug gives Absolute Paths</strong> - You will find that Firebug gives XPaths based on the position of a child element, which is likely to break even if the smallest change is made to the page. Try to avoid relying on positions.</li>
<li><strong>Use attributes</strong> - The best XPaths use the classname property or id property of an element or its parent.</li>
<li><strong>No Array Results</strong> - The XPath must always return a unique element. If an array of elements are returned, it will not work.</li>
<li><strong>Watch the Console</strong> - After you enable debugging the console provides useful error messages. This helps in identifying the problem.</li>
<li><strong>Read Examples</strong> - It is always best to check the huge <a href="http://wedata.net/databases/AutoPagerize/items.json">SITEINFO database</a> to understand how other users have tackled similar or tricky sites.</li>
</ol>
<p>For the site we were using as an example, the following code should work:</p>
<div>
<textarea name="code" class="JScript:nogutter" cols="60" rows="10">
   {
      pageElement: "\/\/table[contains(@class,\"ViewArticlePanel\")]",
      url: "^http:\/\/www\\.adobetutorialz\\.com\/articles",
      nextLink: "\/\/div[@class=\"ArticleNavigation\"]\/a[contains(text(),\"Next »\")]",
      exampleUrl: "http://www.adobetutorialz.com/articles/2751/1/Professional-Web-Layout-for-Business-Solutions"
    },

    </textarea>
</div>
<p>Hope this gives you enough information on Autopagerize and improves your browsing experience!</p>
<div class="socm_link">
<p class="bookm_links"> Bookmark this to      <a href="http://del.icio.us/post?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F17%2Fforget-pages-with-autopagerize%2F&#038;title=Forget+Pages+with+Autopagerize" id="socialm_del.icio.us" title="Submit this post to del.icio.us">del.icio.us</a> |       <a href="http://digg.com/submit?phase=2&#038;url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F17%2Fforget-pages-with-autopagerize%2F&#038;title=Forget+Pages+with+Autopagerize" id="socialm_Digg" title="Submit this post to Digg">Digg</a> |       <a href="http://furl.net/storeIt.jsp?u=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F17%2Fforget-pages-with-autopagerize%2F&#038;t=Forget+Pages+with+Autopagerize" id="socialm_Furl" title="Submit this post to Furl">Furl</a> |       <a href=" http://www.netscape.com/submit/?U=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F17%2Fforget-pages-with-autopagerize%2F&#038;T=Forget+Pages+with+Autopagerize" id="socialm_Netscape" title="Submit this post to Netscape">Netscape</a> |       <a href="  http://www.google.com/bookmarks/mark?op=edit&#038;bkmk=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F17%2Fforget-pages-with-autopagerize%2F&#038;title=Forget+Pages+with+Autopagerize" id="socialm_Google Bookmarks" title="Submit this post to Google Bookmarks">Google Bookmarks</a> |       <a href="http://www.technorati.com/faves?add=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F17%2Fforget-pages-with-autopagerize%2F" id="socialm_Technorati" title="Submit this post to Technorati">Technorati</a> |       <a href="http://reddit.com/submit?url=http%3A%2F%2Fwww.arunrocks.com%2Fblog%2Farchives%2F2008%2F11%2F17%2Fforget-pages-with-autopagerize%2F&#038;title=Forget+Pages+with+Autopagerize" id="socialm_reddit" title="Submit this post to reddit">reddit</a> |  </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.arunrocks.com/blog/archives/2008/11/17/forget-pages-with-autopagerize/feed/</wfw:commentRss>
		</item>
	</channel>
</rss><!-- Dynamic Page Served (once) in 0.372 seconds --><!-- Cached page served by WP-Cache --><!-- Compression = gzip -->
