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

<channel>
	<title>Desi Penguin’s Blog &#187; Review</title>
	<atom:link href="http://desipenguin.com/techblog/category/review/feed/" rel="self" type="application/rss+xml" />
	<link>http://desipenguin.com/techblog</link>
	<description>Open source, Tech Tips, Reviews, Tutorials and more …</description>
	<lastBuildDate>Tue, 29 Jun 2010 16:38:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Installing Lucid Lynx</title>
		<link>http://desipenguin.com/techblog/2010/06/29/installing-lucid-lynx/</link>
		<comments>http://desipenguin.com/techblog/2010/06/29/installing-lucid-lynx/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 16:38:10 +0000</pubDate>
		<dc:creator>Mandar Vaze</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[GParted]]></category>
		<category><![CDATA[Wubi (Ubuntu installer)]]></category>

		<guid isPermaLink="false">http://desipenguin.com/techblog/?p=362</guid>
		<description><![CDATA[Installing Lucid Lynx wasn't a piece of cake I had come to expect from Ubuntu]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/jeffpro/4569458133/"><img class="alignleft" style="margin: 10px 5px; border: 5px solid black;" title="Lucid Lynx" src="http://farm4.static.flickr.com/3447/4569458133_2e3ba14251_t.jpg" alt="Lucid Lynx" width="100" height="100" /></a></p>
<p>For what its worth, <a class="zem_slink" title="List of Ubuntu releases" rel="wikipedia" href="http://en.wikipedia.org/wiki/List_of_Ubuntu_releases">Lucid Lynx</a> didn&#8217;t generate positive initial buzz, and for the first time since Ubuntu 5.04, I didn&#8217;t download and install latest version of Ubuntu. I had read comments that there are problems with latest version (that too LTS &#8211; Long Term support) of Ubuntu, so I decided to hold back.</p>
<p>Then couple days ago, I got hold of an ISO someone had downloaded, and installed successfully. (They came to me asking about why ssh wouldn&#8217;t work for them &#8211; As you might already know, Desktop edition doesn&#8217;t ship ssh server by default. It was matter of minutes to download ssh via apt-get, and they were up and running &#8211; and now to your regularly scheduled program) So I decided to give it a shot. Soon I realized, my decision to hold off was correct.</p>
<h3>Attempt to boot from LiveCD</h3>
<p>First of all, it took really long time for LiveCD to boot. I mean it did show the GUI splash screen quite quickly, but then for a really long time, it kept showing Ubuntu, and a progress bar (as dots/circles) None of the terminals were accessible via Alt+Fn.</p>
<h3>Unable to recognize the existing Partitions</h3>
<p>When it did boot, it was unable to recognize the partition table. Further troubleshooting showed that &#8220;Disk Utility&#8221; program under System-&gt;Administrator was able to read the partition table correctly, and identified the partitions correctly, but <a class="zem_slink" title="GParted" rel="homepage" href="http://gparted.sourceforge.net/">GParted</a> (and embedded Partition Manager for the installer) could not. They showed entire disk as available. But a picture is worth a thousand words. See <a href="http://img688.imageshack.us/f/screenshotiz.png/" target="_blank">this</a> image (I&#8217;ve not captured this, several others are facing the same problem) .</p>
<p>To be fair, this issue is well documented in Release notes <a href="https://wiki.ubuntu.com/LucidLynx/ReleaseNotes#Partition%20alignment%20changes%20may%20break%20some%20systems" target="_blank">here</a>. But it still doesn&#8217;t change the fact that there was no way to preserve existing partitions and install Lucid on existing empty partition.</p>
<p>Some link of the internet asked to uninstall &#8220;dmraid&#8221; package, but it didn&#8217;t help. I didn&#8217;t have RAID anyway.<br />
Next, back to the person who had successfully installed it from the same ISO. Turns out he installed it via <a class="zem_slink" title="Wubi (Ubuntu installer)" rel="homepage" href="http://wubi-installer.org/">Wubi</a>. So I decided to try that.</p>
<h3>Wubi woes</h3>
<p>Now I ran into &#8220;permission denied&#8221; issue. After copying the files in target folder from CD, it would exit. Unhiding AppData folder didn&#8217;t help. Finally I downloaded wubi.exe, and copied an ISO and Wubi.exe in same newly created empty folder. This seemed to have worked &#8211; but make sure that if you want Wubi to use local ISO &#8211; Disable the internet or better still, remove the ethernet cable (as I did) else Wubi will go out and try to download the entire image before it starts installing.</p>
<p>This time it went much further &#8211; installed Ubntu successfully (or so I thought) and provided me a choice to reboot now, or later. After I reboot, I selected Ubuntu from Windows Boot loader list. It &#8220;continued&#8221; the installation, but at he stage where it gets time from network time server, it was stuck in a loop &#8220;No root partition defined&#8221; there were no option other than OK. Interestingly, the installation progress bar showed 272% (Yes more than 100%)</p>
<h3>Finally &#8230; Success (sort of)</h3>
<p>Luckily I didn&#8217;t have a precious data, and machine was my secondary  machine, so I could afford to repartition the entire disk. That is what I  did. I already had brand new ISO, This time I booted from USB drive, so  that I didn&#8217;t have to worry about bad CD. I selected to repartition the  disk from the Lucid Installer. Rest of the install went very smooth.</p>
<h3>Conclusion</h3>
<p>It is really sad that all three issues (permission denied, unable to  recognize partition table, and no root partition defined) are widely  reported. Only the first one (permission denied) has a work around that  worked.</p>
<p><span style="color: #999999;">Image courtesy : <a href="http://www.flickr.com/photos/jeffpro/" target="_blank">jeffpro57</a></span></p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Enhanced by Zemanta" href="http://www.zemanta.com/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/zemified_a.png?x-id=51cd6145-813f-4a78-8bb5-685501fbefb2" alt="Enhanced by Zemanta" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
]]></content:encoded>
			<wfw:commentRss>http://desipenguin.com/techblog/2010/06/29/installing-lucid-lynx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why SharpDevelop is better IDE ?</title>
		<link>http://desipenguin.com/techblog/2009/07/10/why-sharpdevelop-is-better-ide/</link>
		<comments>http://desipenguin.com/techblog/2009/07/10/why-sharpdevelop-is-better-ide/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 16:51:26 +0000</pubDate>
		<dc:creator>Mandar Vaze</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[.NET Framework]]></category>
		<category><![CDATA[Languages]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://desipenguin.com/techblog/?p=316</guid>
		<description><![CDATA[



Image via Wikipedia



In my first post about IronPython, I documented how installing IronPython Studio was painful (Needed Visual Studio shell, which in itself was confusing). When I started with IronPython I did not know about any other IDE, hence I went ahead with IronPython Studio. But later I came to know about SharpDevelop.
My initial problem [...]]]></description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignleft" style="width: 266px;">
<dt class="wp-caption-dt"><a href="http://en.wikipedia.org/wiki/Image:SharpDevelop.png"><img title="SharpDevelop" src="http://upload.wikimedia.org/wikipedia/en/thumb/b/b6/SharpDevelop.png/300px-SharpDevelop.png" alt="SharpDevelop" width="256" height="177" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image via <a href="http://en.wikipedia.org/wiki/Image:SharpDevelop.png">Wikipedia</a></dd>
</dl>
</div>
</div>
<p>In my <a href="http://desipenguin.com/techblog/2009/06/23/ironpython/" target="_blank">first post</a> about <a class="zem_slink" title="IronPython" rel="homepage" href="http://www.codeplex.com/IronPython">IronPython</a>, I documented how installing IronPython Studio was painful (Needed Visual Studio shell, which in itself was confusing). When I started with IronPython I did not know about any other IDE, hence I went ahead with IronPython Studio. But later I came to know about <a class="zem_slink" title="SharpDevelop" rel="homepage" href="http://sharpdevelop.com/">SharpDevelop</a>.</p>
<p>My initial problem with SharpDevelop was that it needed .NET 3.5 SP1 at the minimum. I had just gone through the painful exercise of downloading and installing the prerequisites for IronPython Studio. So I was in no mood of downloading another big chunk before I can start my IronPython Development. But once I got past my initial development cycle, I wanted to give Sharp Develop a try.</p>
<p>After using both the ID interchangeably, I finally settled on SharpDevelop as my choice for IronPython Development</p>
<h3><span id="more-316"></span></h3>
<h3>Why SharpDevelop ?</h3>
<blockquote><p><strong>#develop (short for SharpDevelop) is a free IDE for C#, VB.NET and Boo projects</strong> on Microsoft&#8217;s .NET platform</p></blockquote>
<p>To begin with it is completely free and open source. We like Open Source.  But IronPython Studio is also Free and Open Source. But it needs Visual Studio shell from MS.  There is nothing wrong with that, I think it is a design philosophy. IronPython Studio was probably built with the sole purpose of supporting IronPython IDE. So the developers must have assumed that anyone doing development on MS platform would typically use Visual Studio. Since MS has a free version of Visual Studio, cost is non-issue. That is why IronPython Studio is available in two modes : integrated mode and isolated mode.  Assuming that existence of Visual Studio shell helps in reducing the download size. While IronPython Studio was less than 1MB, Sharp Develop on the other hand is whopping 18 MB.</p>
<p>On the other hand, SharpDevelop was built from ground up with the goal of providing a completely open source alternative to Visual Studio. As the name suggests, probably very first language it supported was C#, and then added support for VB.NET and Boo (and IronPython as of 3.0) one by one.</p>
<h3>Support for Visual Studio Solution files</h3>
<p>While SharpDevelop aims to be complete alternative for Visual Studio, I think they realize that in real world there are bound to be projects which already have .sln files. So it is important to support .sln files. IronPython Studio on the other hand insists on creating its own .pysln files.</p>
<p>While .pysln may be OK for Standalone IronPython Development, SharpDevelop approach of supporting solution files will be useful when one tries to use IronPython code with other .NET languages like VB.Net and C# (To be fair both use .pyproj project files, which can be open interchangeably in any IDE &#8211; But IronPython Studio insisted on creating its own .pysln file when it opened .pyproj)</p>
<p>While I have not used integrated mode of IronPython Studio, SharpDevelop inherently supports multiple .NET languages. It also has feature to convert VB.net code into IronPython. Now how cool is that ?</p>
<h3>Third party tools</h3>
<p>One of the menu items in SharpDevelop is titled &#8220;Quality Tools&#8221;. I liked the fact that an IDE cares enough about the quality to integrate various third party tools. It has built in option for Profiler, <a class="zem_slink" title="StyleCop" rel="wikipedia" href="http://en.wikipedia.org/wiki/StyleCop">StyleCop</a>, <a class="zem_slink" title="FxCop" rel="wikipedia" href="http://en.wikipedia.org/wiki/FxCop">FxCop</a>, as well as <a class="zem_slink" title="NUnit" rel="homepage" href="http://www.nunit.com/">NUnit</a>.  Some of these tools require a third party DLL to work, but that is fair enough.</p>
<p>SharpDevelop also recognized that <a class="zem_slink" title="TortoiseSVN" rel="homepage" href="http://tortoisesvn.tigris.org">TortoiseSVN</a> was installed and supported Subversion operations from within the IDE. On the other hand,  free Visual Studio plugin for SVN &#8211; <a class="zem_slink" title="AnkhSVN" rel="homepage" href="http://ankhsvn.net/">AnkhSVN</a> &#8211; doesn&#8217;t work with free (Express) version of Visual Studio.</p>
<p>So does that mean SharpDevelop is the ultimate IDE for IronPython development ? Not quite. There are certain things that didn&#8217;t quite work for me.</p>
<h3>Code completion missing ?</h3>
<p>Since most of my development has been on *nix platform, I haven&#8217;t used much of IDEs. I used Eclipse once is a while for some Java Development, but always felt it to be slow. For pure Python development, I prefer <a class="zem_slink" title="ActiveState Komodo" rel="homepage" href="http://www.activestate.com/komodo/">Komodo free IDE</a> on both Ubuntu as well as Windows.  I have also tried Eclipse 3.5 with built-in support for Dynamic languages for Python development on Ubuntu. But none of these provided the auto completion (or intellisense as sometimes it is referred) feature for python/ironpython. I read on one of the blogs that SharpDevelop 3.1 supports code completion for IronPython, but for some reason I was not able to get it working for me (Please let me know in comments, if you know of any configuration that may be required for this)</p>
<h3>Folding doesn&#8217;t quite work</h3>
<p>Another big feature I missed (as compated to Komodo free version) was how folding worked. SharpDevelop support folding only for the code inside a class. Most of code is outside of any of the classess &#8211; so I get no folding. Komodo on the other hand support folding for as small as if block.</p>
<h3>Closing Remarks</h3>
<p>In coming days, I need to integrate my code with VB.Net application. I plan to use SharpDevelop for the entire development. If my colleagues can&#8217;t figure out that I am not using Visual Studio, I may suggest the rest of the development team to also try SharpDevelop (and save some buck for the organization &#8211; that would be pretty big saving)</p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 460px; width: 1px; height: 1px;">in comments</div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/41035723-ab8c-4afa-a80a-aa40c8e97aae/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_c.png?x-id=41035723-ab8c-4afa-a80a-aa40c8e97aae" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
]]></content:encoded>
			<wfw:commentRss>http://desipenguin.com/techblog/2009/07/10/why-sharpdevelop-is-better-ide/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>IronPython</title>
		<link>http://desipenguin.com/techblog/2009/06/23/ironpython/</link>
		<comments>http://desipenguin.com/techblog/2009/06/23/ironpython/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 17:11:23 +0000</pubDate>
		<dc:creator>Mandar Vaze</dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[Development Tools]]></category>
		<category><![CDATA[IronPython]]></category>
		<category><![CDATA[Microsoft Visual Studio]]></category>

		<guid isPermaLink="false">http://desipenguin.com/techblog/?p=288</guid>
		<description><![CDATA[



Image by Michael Foord via Flickr



After working on initial prototype using pylons, on ubuntu, my employer needed a standalone application (on windows) So I was looking for ways to reuse my python code to avoid double work.  had only heard about iron python but beyond that I did not know anything more.
A bit of research [...]]]></description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignleft" style="width: 138px;">
<dt class="wp-caption-dt"><a href="http://www.flickr.com/photos/13483019@N00/3225539390"><img title="IronPython in Action" src="http://farm4.static.flickr.com/3428/3225539390_e512d00174_m.jpg" alt="IronPython in Action" width="128" height="160" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image by <a href="http://www.flickr.com/photos/13483019@N00/3225539390">Michael Foord</a> via Flickr</dd>
</dl>
</div>
</div>
<p>After working on initial prototype using <a class="zem_slink" title="Pylons (web framework)" rel="homepage" href="http://www.pylonshq.com/">pylons</a>, on ubuntu, my employer needed a standalone application (on windows) So I was looking for ways to reuse my python code to avoid double work.  had only heard about iron python but beyond that I did not know anything more.</p>
<p>A bit of research later, I downloaded IronPython from <a href="http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython" target="_blank">here</a> and<a href="http://www.codeplex.com/IronPythonStudio" target="_blank"> IronPython Studio</a>. I was quite thrilled to find out that Microsoft, has created this shell, which allows developers to integrate new languages with Visual Studio Shell.</p>
<h2>Installing IronPython Studio</h2>
<p>Installing IronPython was very straight forward. Considering it is one of the Python implementation itself, you don&#8217;t have to have standard python installed. (But I did, more on that later)</p>
<p>Setting up IronPython Studio wasn&#8217;t so straight forward.  I had to download standalone version of Visual Studio shell. But the problem, and it is well documented, is that installing the redistributable package in itself is not the complete step, as you would believe from the website. I confirmed that the package was installed, and stil IronPython Studio would complain, and refuse to proceed. It turns out that you need to install the Visual Studio environment, which is inside this directory structure you just created.</p>
<div id="attachment_290" class="wp-caption aligncenter" style="width: 613px"><img class="size-full wp-image-290" title="Visual Studio Redistributable Package " src="http://desipenguin.com/techblog/wp-content/uploads/2009/06/VS2K8-Isolated.JPG" alt="This is NOT enough" width="603" height="97" /><p class="wp-caption-text">This is NOT enough</p></div>
<div id="attachment_291" class="wp-caption aligncenter" style="width: 612px"><img class="size-full wp-image-291" title="Visual Studio Shell 2008" src="http://desipenguin.com/techblog/wp-content/uploads/2009/06/VS-Shell2K8.JPG" alt="This is what IronPython Studio needs" width="602" height="97" /><p class="wp-caption-text">This is what IronPython Studio needs</p></div>
<p>Once I installed Visual Studio Shell, IronPython Studio installed easily.  Using IronPython has been nice experience in just a few hours I have been using it. The Code completion isn&#8217;t upto my liking yet, but it is helpful at times.</p>
<h2>Using Standard Python Libraries</h2>
<p>Since my original code was written on linux, it used only the standard python modules. In a manner of speaking, it was &#8220;pure&#8221; python code. Since <em>IronPython is </em><span id="ctl00_ctl00_MasterContent_Content_wikiSourceLabel"><em>an implementation of the Python programming language running under .NET</em>, it was obivious that my code may not work as is. But I&#8217;m glad that I did not have to make too many changes to get it working under IronPython. </span></p>
<p><span>As is well documented in IronPython Tutorial, it is not very difficult to use standard python libraries with IronPython (with a few exceptions &#8211; more about this a little later) To get IronPython to use Standard Python Modules,  one needs to</span> add  the following two lines to <em>C:\IronPython-2.0.1\Lib\site.py</em> :</p>
<pre>import sys
sys.path.append(r"C:\Python25\Lib")</pre>
<p>While this works for most part, it doesn&#8217;t help if you are using Python extensions written in C. More about my specific problems  in another post. But there is an open source project <a href="http://code.google.com/p/ironclad/" target="_blank">IronClad</a> to deal specifically with this issue. In the meantime, you can check  <a href="http://ironpython.codeplex.com/Wiki/View.aspx?title=Differences" target="_blank">the differences between IronPython and CPython</a></p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 289px; width: 1px; height: 1px;">http://www.codeplex.com/IronPythonStudio</div>
<p><strong>Related articles</strong></p>
<ul>
<li><a href="http://blogs.msdn.com/hugunin/archive/2009/04/14/ironpython-in-action.aspx"> IronPython in Action </a> (blogs.msdn.com)</li>
<li><a href="http://www.mehmetalierturk.com/2009/05/04/why-python/"> Why Python? </a> (mehmetalierturk.com)</li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/d57dd1e2-9cff-474f-9b2e-8f575bf5d8b3/"><img class="zemanta-pixie-img" style="border: medium none ; float: right;" src="http://img.zemanta.com/reblog_b.png?x-id=d57dd1e2-9cff-474f-9b2e-8f575bf5d8b3" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
]]></content:encoded>
			<wfw:commentRss>http://desipenguin.com/techblog/2009/06/23/ironpython/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automate repetitive tasks using AHK</title>
		<link>http://desipenguin.com/techblog/2009/02/26/automate-repetitive-tasks-using-ahk/</link>
		<comments>http://desipenguin.com/techblog/2009/02/26/automate-repetitive-tasks-using-ahk/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 01:46:08 +0000</pubDate>
		<dc:creator>Mandar Vaze</dc:creator>
				<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[ActiveWords]]></category>
		<category><![CDATA[AutoHotKey]]></category>
		<category><![CDATA[Short message service]]></category>

		<guid isPermaLink="false">http://desipenguin.com/techblog/?p=252</guid>
		<description><![CDATA[Convert SMS lingo to Full Text using AutoHotKey]]></description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignright" style="width: 212px;">
<dt class="wp-caption-dt"><a href="http://commons.wikipedia.org/wiki/Image:SMS_test.jpg"><img title="SMS message received on a Motorola RAZR wirele..." src="http://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/SMS_test.jpg/202px-SMS_test.jpg" alt="SMS message received on a Motorola RAZR wirele..." width="202" height="224" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image via <a href="http://commons.wikipedia.org/wiki/Image:SMS_test.jpg">Wikipedia</a></dd>
</dl>
</div>
</div>
<p>I have been a big supporter of automation where possible. I was reading about how &#8220;<a class="zem_slink" title="ActiveWords" rel="homepage" href="http://www.activewords.com/">ActiveWords</a>&#8221; was the best piece of software, and that is when I became aware of <a title="AHK" href="http://www.autohotkey.com">AutoHotKey</a>, or AHK as it is fondly called. I learned more about AHK on <a title="LH" href="(http://lifehacker.com/search/Autohotkey/">LifeHacker</a></p>
<p>Considering that I came to AHK looking for ActiveWords replacement, it is no wonder that I use Hotstrings feature extensively. It would not be wrong if I said that is probably the only feature of AHK I use. So let me explain How I use AHK to automate lot of repeatative tasks, mostly related to typing same set of words lot of times.</p>
<p>It would not be out of place to here to mention <a href="http://lifehacker.com/search/texter/">texter</a>,  AHK based tool developed by LH team.</p>
<h3>Expand Acronymns</h3>
<p>I have created Hotstrings for regularly used acronyms. When I type them, AHK will automagically expand them. This has a huge benefit that I am free to use the acronyms when I type, but my readers aren&#8217;t left wondering about what it means. Some of the commonly used ones are YMMV, AFAIK, BTW etc.</p>
<h3><a class="zem_slink" title="Short message service" rel="wikipedia" href="http://en.wikipedia.org/wiki/Short_message_service">SMS</a> style typing:</h3>
<p>SMS is used extensively in India, so I&#8217;ve seen new professionals &#8211; fresh out of college &#8211; are used to new SMS-lingo. But in professional communication, it is a complete no-no. AH to the rescue, add your SMS word to your Hotstrings list and let AH complete it. I personally don&#8217;t SMS or IM as much, but I have seen people use &#8216;ur&#8217; a lot, when they mean your.</p>
<h3>Pleasantries:</h3>
<p>I also have Hotstrings for likes of Regards, Thanks etc.</p>
<h3>Frequently used names :</h3>
<p>I have Hotstrings like bg=Bill, lt=Linus, esr=Eric etc. I work a lot with my counterparts in Japan where you address people using -san. So it helps to have HotStrings like gt=Takei-san.</p>
<h3>Authentications :</h3>
<p>I&#8217;m too paranoid to allow the browser to remember my username and password, so this is my next best thing. For company internal websites, I need to enter something like domain\username. I&#8217;ve created a hotstring like d\u. This is replaced by domain\username by AHK</p>
<h3><em>Are there any negatives of AHK ?</em></h3>
<p>Well, these aren&#8217;t the <em>cons </em>in true sense of the word, but there are some practical problems I face. After extended use of AHK Hotstrings, one may see following side effects :</p>
<ul>
<li> May forget correct spellings</li>
<li> Feel like crippled without AHK on guest PC</li>
</ul>
<p>Do let me know in comments how you use AHK or texter in your daily lives to automate the repetitive tasks.</p>
<p><span style="color: #999999;">Note : Originally posted on the <a href="http://mandarvaze.wordpress.com/2007/10/31/automate-repetitive-tasks-using-ahk/" target="_blank">Kaizen Blog</a> on October 31st, 2007</span></p>
<p><strong>Can&#8217;t use AHK ? because </strong><strong> you are  on Linux ?  Don&#8217;t worry, come back to check the review of similar tool on Linx</strong></p>
<h6 class="zemanta-related-title" style="font-size: 1em;">Related articles by Zemanta</h6>
<ul class="zemanta-article-ul">
<li class="zemanta-article-ul-li"><a href="http://www.textually.org/textually/archives/2009/02/022763.htm">Indians prefer phone calls to SMS</a> (textually.org)</li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Zemified by Zemanta" href="http://reblog.zemanta.com/zemified/41ee9919-367c-478d-8eab-9734df4acf80/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_b.png?x-id=41ee9919-367c-478d-8eab-9734df4acf80" alt="Reblog this post [with Zemanta]" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://desipenguin.com/techblog/2009/02/26/automate-repetitive-tasks-using-ahk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rainlendar : Desktop Calendar on Linux</title>
		<link>http://desipenguin.com/techblog/2009/02/18/rainlendar-desktop-calendar-on-linux/</link>
		<comments>http://desipenguin.com/techblog/2009/02/18/rainlendar-desktop-calendar-on-linux/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 14:13:44 +0000</pubDate>
		<dc:creator>Mandar Vaze</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[active desktop]]></category>
		<category><![CDATA[Clearlooks]]></category>
		<category><![CDATA[cross platform]]></category>
		<category><![CDATA[Google Calendar]]></category>
		<category><![CDATA[ICalendar]]></category>

		<guid isPermaLink="false">http://desipenguin.com/techblog/?p=224</guid>
		<description><![CDATA[When I was using Windows XP, I had Webshots manage my Wallpaper. One of the features of Webshots was to display the calendar on the Desktop. Additionally, I also displayed my to-do list (and a short phone list) on my desktop using Windows&#8217; Active Desktop Feature. Read about it here and here
When I moved to [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_244" class="wp-caption alignright" style="width: 240px"><img class="size-full wp-image-244" title="Rainlendar Desktop Calendar" src="http://desipenguin.com/techblog/wp-content/uploads/2009/02/calendar.png" alt="Rainlendar Desktop Calendar" width="230" height="230" /><p class="wp-caption-text">Rainlendar Desktop Calendar</p></div>
<p>When I was using Windows XP, I had Webshots manage my Wallpaper. One of the features of Webshots was to display the calendar on the Desktop. Additionally, I also displayed my to-do list (and a short phone list) on my desktop using Windows&#8217; <a class="zem_slink" title="Active Desktop" rel="wikipedia" href="http://en.wikipedia.org/wiki/Active_Desktop">Active Desktop</a> Feature. Read about it <a href="http://desipenguin.com/techblog/2009/01/05/productive-use-of-active-desktop/" target="_blank">here</a> and <a href="http://desipenguin.com/techblog/2009/01/07/productive-use-of-active-desktop-more-ideas/" target="_blank">here</a></p>
<p>When I moved to Linux (Ubuntu specifically) I needed similar functionality.  I came across kdesktopweb, but I use gnome, so it was not an option. I also looked at conky, but doesn&#8217;t look as polished, as Windows&#8217; equivalent. Enter <a href="http://www.rainlendar.net/cms/index.php" target="_blank">Rainlendar</a></p>
<p><span id="more-224"></span></p>
<p>As the Website mentions, Rainlendar is a customizable desktop calendar. It works on Windows, Linux as well as Mac OS X.  For Linux, it supports Debian/Ubuntu natively as .deb files, other <a class="zem_slink" title="Linux distribution" rel="wikipedia" href="http://en.wikipedia.org/wiki/Linux_distribution">distro</a> will need to use tar.gz files.</p>
<h3>Installation</h3>
<p>Installing Rainlendar is pretty straight forward  (Isn&#8217;t everything on Linux these days ? <img src='http://desipenguin.com/techblog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ) I downloaded the .deb file. Firefox is smart enough to determine that this is installation file, and invoked the installer. It needed two more packages (tofromdos and patch) Depending on your setup it may need more or less additional packages. On Debian based system like Ubuntu, this is least of the concern, If you have an active internet connection, the additional packages wille be downloaded and installed for you.</p>
<p>After the installation is complete, you will see an additional entry titled <em>Rainlendar2</em> under Applications-&gt;Office.</p>
<h3>Calendar</h3>
<p>Rainlendar displays a monthly calendar. It also has an option to show multiple months at-a-glance, as well as an yearly calendar showing all the twelve months of current calendar year.  It is configured with a Default Calendar, but you can add more calendars like personal, business (you can name them anything). The fee version supports only <a class="zem_slink" title="ICalendar" rel="wikipedia" href="http://en.wikipedia.org/wiki/ICalendar">iCalendar</a> file format, that too for local files. Pro version supports more rich calendaring functionality like sharing the calendar, as well as support for <a class="zem_slink" title="Google Calendar" rel="homepage" href="http://google.com/calendar">Google Calendar</a>.</p>
<p>Right clicking on the calendar brings up a menu. Here you can do operations like choosing which windows to display. It shows monthly calendar, an empty to do list and events list by default.Since I did not have any appointments set at the time, I turned off the Events Window.  If you have multiple calendars, you can choose which calendars to display on the desktop. Similarly you can also choose to view previous/next months or any specific month of the current calendar year.</p>
<div id="attachment_246" class="wp-caption alignleft" style="width: 345px"><img class="size-full wp-image-246" title="Rainlendar To Do List" src="http://desipenguin.com/techblog/wp-content/uploads/2009/02/todo1.png" alt="Rainlendar To Do List" width="335" height="150" /><p class="wp-caption-text">Rainlendar To Do List</p></div>
<h3>Events and To do</h3>
<p>Adding new events and tasks was as simple as clicking on the TODO or EVENTS Window. You get a dialog box that allows you to fill in the details. One caveat, if you created an task for a future date, it won&#8217;t appear in your to-do list. e.g. I need to send status report every weekend, so I created a recurring task for this. But it did not appear in my to-do list till Friday.</p>
<h3>Skinning</h3>
<p>Rainlendar ships with two skins. Shadow4 which is the default skin and Chromophore.  You can change the skins by Right Click-&gt;Options-&gt;Skins tab. Shadow4 has lot of Widgets like Weather <a class="zem_slink" title="RSS" rel="wikipedia" href="http://en.wikipedia.org/wiki/RSS">RSS</a>, TV to name a few. It also has an option to display the contents of a text file. This could be very useful to display things like Plan of the Week, but this feature appears unstable. Rainlendar crashed several times, when Files Widget was enabled. Once I removed the Files Widget, it appears to be stable.</p>
<p>Other Skin Chromophore is much more simpler. Here you can choose the color of the Rainlendar displays. The Brown color gels well with default Brown theme of Ubuntu. Since I have switched to <a class="zem_slink" title="Clearlooks" rel="wikipedia" href="http://en.wikipedia.org/wiki/Clearlooks">Clearlooks</a>, and blue wallpaper, I chose the Blue theme for Chromophore.</p>
<p>To sum it up,  one can say that Rainlendar is  a decent replacement for Desktop Calendar, and To-Do list on the desktop.</p>
<h6 class="zemanta-related-title" style="font-size: 1em;">Related articles by Zemanta</h6>
<ul class="zemanta-article-ul">
<li class="zemanta-article-ul-li"><a href="http://www.rainlendar.net/cms/index.php?option=com_rny_features&amp;Itemid=35" target="_blank">Rainlendar Features</a> (rainlendar.com)</li>
<li class="zemanta-article-ul-li"><a href="http://www.macworld.com/article/137136/2008/12/digitalreminders.html?lsrc=rss_main" target="_blank">Keep on track with digital reminders</a> (macworld.com)</li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Zemified by Zemanta" href="http://reblog.zemanta.com/zemified/402cfb0d-fec7-4548-ad66-2ff194cc1c81/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_b.png?x-id=402cfb0d-fec7-4548-ad66-2ff194cc1c81" alt="Reblog this post [with Zemanta]" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://desipenguin.com/techblog/2009/02/18/rainlendar-desktop-calendar-on-linux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
