<?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>ÎÜñ&#124;‹ø\/\/ñ [ÐëÞrëçã†ëð]&#039;s Blog &#187; .opensource</title>
	<atom:link href="http://desigeek.com/blog/amit/category/opensource/feed/" rel="self" type="application/rss+xml" />
	<link>http://desigeek.com/blog/amit</link>
	<description>Amit Bahree&#039;s insight into stuff…</description>
	<lastBuildDate>Fri, 27 Jan 2012 15:53:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Hadoop in Azure</title>
		<link>http://desigeek.com/blog/amit/2011/05/22/hadoop-in-azure/</link>
		<comments>http://desigeek.com/blog/amit/2011/05/22/hadoop-in-azure/#comments</comments>
		<pubDate>Sun, 22 May 2011 15:13:19 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.azure]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/2011/05/22/hadoop-in-azure/</guid>
		<description><![CDATA[My dear friend Mario has finally got around to blogging and one of his latest posts shows, it is possible to run Hadoop (which if you are not familiar with, can be thought of as an open source version of Google’s MapReduce) in Azure. You need to setup a typical configuration of nodes (Name Nodes, [...]]]></description>
			<content:encoded><![CDATA[<p>My dear friend <a href="http://blogs.msdn.com/b/mariok/" target="_blank">Mario</a> has finally got around to blogging and one of his <a href="http://blogs.msdn.com/b/mariok/archive/2011/05/11/hadoop-in-azure.aspx" target="_blank">latest posts shows</a>, it is possible to run <a href="http://hadoop.apache.org/" target="_blank">Hadoop</a> (which if you are not familiar with, can be thought of as an open source version of Google’s <a href="http://labs.google.com/papers/mapreduce.html" target="_blank">MapReduce</a>) in Azure. You need to setup a typical configuration of nodes (Name Nodes, Tracker and Slaves). </p>
<p>Sure, there are a number of dependencies some you would expect, others not (e.g. Cygwin – cringe!; but hopefully that will go away with Hadoop 0.22). I wonder what overheard the Cygwin runtime has?</p>
<p>It would be interesting to know if someone is (or planning) to use this at work.</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:8747F07C-CDE8-481f-B0DF-C6CFD074BF67:5c85529c-d7ea-4cf2-b018-a9299f5621fb" class="wlWriterEditableSmartContent"><a href="http://desigeek.com/blog/amit/wp-content/uploads/2011/05/2376.71-8x6.png" title="" rel="thumbnail" rel="lightbox[3538]"><img border="0" src="http://desigeek.com/blog/amit/wp-content/uploads/2011/05/2376.71.png" width="420" height="325" /></a></div>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2011%2F05%2F22%2Fhadoop-in-azure%2F&amp;title=Hadoop%20in%20Azure" id="wpa2a_2"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2011/05/22/hadoop-in-azure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter Trends</title>
		<link>http://desigeek.com/blog/amit/2011/03/04/twitter-trends/</link>
		<comments>http://desigeek.com/blog/amit/2011/03/04/twitter-trends/#comments</comments>
		<pubDate>Fri, 04 Mar 2011 17:32:57 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.code]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3490</guid>
		<description><![CDATA[I was excited to find that Twitter had a JSON (Javascript Object Notation) endpoint for the current trending topics and decided to write a simple consumer which can read this and then spit it out in a simple console. And JSON being so simple and more or less “universal” meant that there are multiple implementations [...]]]></description>
			<content:encoded><![CDATA[<p>I was excited to find that Twitter had a <a href="http://www.json.org/" target="_blank">JSON</a> (Javascript Object Notation) endpoint for the <a href="http://search.twitter.com/trends/current.json" target="_blank">current trending topics</a> and decided to write a simple consumer which can read this and then spit it out in a simple console. And JSON being so simple and more or less “universal” meant that there are multiple implementations for .NET. Of course if you got lots of bandwidth you can roll out your own parser.</p>
<p>I ended up using <a href="http://james.newtonking.com/projects/json-net.aspx" target="_blank">Json.NET</a>, which in addition to being OpenSource is also one of the most robust utilities which makes working with JSON formatted data dead simple.</p>
<p>The code for the console app is quite straightforward. The static function ReadTrends() retrieves the JSON string from twitter which is then consumed and extracted. The only tricky part was using a constant key; the easiest way I could think of doing this was to replace the date-time stamp with a literal and then use that literal.</p>
<p>Of course this will fail if you the function ReadTrends() is called at (or just before midnight) on Dec 31st and the code returns to the main() function in the new year. I don’t think this is something I am going to put in production and am not going to be too worried about this behaviour.</p>
<p>At the time of writing this, the twitter trends (in JSON) are:<br />
<span style="font-family: 'Courier New';"><br />
{&#8220;trends&#8221;:{&#8220;2011-03-04 17:18:01&#8243;:[{"name":"#coisasderetiro","events":null,"query":"#coisasderetiro","promoted_content":null},<br />
{"name":"#tigerblood","events":null,"query":"#tigerblood","promoted_content":null},<br />
{"name":"#blackpeoplemovies","events":null,"query":"#blackpeoplemovies","promoted_content":null},<br />
{"name":"Frying Nemo","events":null,"query":"Frying Nemo","promoted_content":null},<br />
{"name":"Acoustic Aftermath","events":null,"query":"Acoustic Aftermath","promoted_content":null},<br />
{"name":"Blade Runner","events":null,"query":"Blade Runner","promoted_content":null},<br />
{"name":"Fun Race","events":null,"query":"Fun Race","promoted_content":null},<br />
{"name":"Bandra","events":null,"query":"Bandra","promoted_content":null},<br />
{"name":"Mike Huckabee","events":null,"query":"Mike Huckabee","promoted_content":null},<br />
{"name":"Arctic Monkeys","events":null,"query":"Arctic Monkeys","promoted_content":null}]},&#8221;as_of&#8221;:1299259081}</span></p>
<p>And here is the output in the console. I can see Charlie Sheen’s <strong>#tigerblood</strong> is still trending; and wonder what Artic Monkeys are upto – is there new album out or something?</p>
<p><span style="font-family: 'Courier New';"><br />
#coisasderetiro<br />
#tigerblood<br />
#blackpeoplemovies<br />
Frying Nemo<br />
Acoustic Aftermath<br />
Blade Runner<br />
Fun Race<br />
Bandra<br />
Mike Huckabee<br />
Arctic Monkeys<br />
All done. Press any key to continue&#8230;</span></p>
<p>And finally here is the code.</p>
<pre class="brush: csharp; title: ; notranslate">
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Newtonsoft.Json.Linq;
using System.Net;
using System.IO;

namespace TwitterTrends
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                //get the trends
                string temp = ReadTrends();

                //as the key is a datetime stamp (which is constantly moving), need something constant to interrogate.
                //simplest way is to find out the year and then take 19 characters from that which is the datetime stamp
                //replace that with a literal (DESIGEEK.COM in my case) and then use the literal. I don't think I will
                //be trending on Twitter; but if you are worried then you can use something like a GUID.
                //
                // For example at the time of writing this the datetime stamp was: &quot;2011-03-02 14:20:00&quot;
                string theDate = temp.Substring(temp.IndexOf(DateTime.Now.Year.ToString()), 19);
                temp = temp.Replace(theDate, &quot;DESIGEEK.COM&quot;);

                //parse the string for the literal
                JObject trends = JObject.Parse(temp);
                var twitterTrends = from t in trends[&quot;trends&quot;][&quot;DESIGEEK.COM&quot;]
                                    select t.Value&lt;string&gt;(&quot;name&quot;);

                //iterate through
                foreach (var item in twitterTrends)
                {
                    Console.WriteLine(item);
                }

            }
            catch (Exception ex)
            {
                Console.WriteLine(&quot;Following error occured:\n&quot; + ex.ToString());
            }
            Console.WriteLine(&quot;\nAll done. Press any key to continue...&quot;);
            Console.ReadKey();
        }

        private static string ReadTrends()
        {
            //talk to twitter
            WebRequest theRequest = HttpWebRequest.Create(&quot;http://search.twitter.com/trends/current.json&quot;);
            HttpWebResponse theResponse = (HttpWebResponse)theRequest.GetResponse();

            //extract the data
            Stream stream = theResponse.GetResponseStream();
            StreamReader reader = new StreamReader(stream);
            string temp = reader.ReadToEnd();

            //clean up
            reader.Close();
            stream.Close();
            theResponse.Close();

            return temp;
        }
    }
}
</pre>
<a href="http://desigeek.com/blog/amit/category/opensource/feed/" target="_blank"><img src="http://desigeek.com/blog/amit/wp-content/plugins/qr-code-tag/data/qrct-af2739b1878358578ef34eb0dd991d51.png" class="qrctimage" /></a>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2011%2F03%2F04%2Ftwitter-trends%2F&amp;title=Twitter%20Trends" id="wpa2a_4"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2011/03/04/twitter-trends/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Opensource ZigBee stack?</title>
		<link>http://desigeek.com/blog/amit/2011/01/16/opensource-zigbee-stack/</link>
		<comments>http://desigeek.com/blog/amit/2011/01/16/opensource-zigbee-stack/#comments</comments>
		<pubDate>Sun, 16 Jan 2011 17:10:29 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.code]]></category>
		<category><![CDATA[.geek]]></category>
		<category><![CDATA[.mobile]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3460</guid>
		<description><![CDATA[I was planning on getting the Telegesis ETRX2USB and wanted to know if there are any open source (or shareware) open source ZigBee stacks that I can use with that? I also wanted to know if there is any opensource (or not too expensive), network management or network analyser for a ZigBee network? Essentially I want to [...]]]></description>
			<content:encoded><![CDATA[<p>I was planning on getting the <a href="http://www.telegesis.com/products/test_page_2.htm" target="_blank">Telegesis ETRX2USB</a> and wanted to know if there are any open source (or shareware) open source ZigBee stacks that I can use with that?</p>
<p>I also wanted to know if there is any opensource (or not too expensive), network management or network analyser for a ZigBee network? Essentially I want to be able to programatically view network and node information on the ZigBee network (e.g. S/N ratio, signal strength, etc.) &#8211; something similar to <a href="http://www.ember.com/products_zigbee_development_tools_desktop.html" target="_blank">Ember&#8217;s Insight Desktop</a> which <a href="http://www.ember.com/products_insight_desktop_pop.html" target="_blank">shows the details</a> I am interested in. I could not find anything specific and would be interested in getting ideas.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2011%2F01%2F16%2Fopensource-zigbee-stack%2F&amp;title=Opensource%20ZigBee%20stack%3F" id="wpa2a_6"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2011/01/16/opensource-zigbee-stack/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Interesting WordPress Plugins</title>
		<link>http://desigeek.com/blog/amit/2011/01/04/interesting-wordpress-plugins/</link>
		<comments>http://desigeek.com/blog/amit/2011/01/04/interesting-wordpress-plugins/#comments</comments>
		<pubDate>Tue, 04 Jan 2011 21:33:15 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.misc]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3444</guid>
		<description><![CDATA[After upgrading to the latest WordPress (v3.0.4), I also decided to have a look at the various plugins I am running. As part of that I stumbled across Ultimate Collection of WordPress pluginswhich are very interesting. If you run WordPress (and if you don&#8217;t, why not ), I would highly recommend to check them out. [...]]]></description>
			<content:encoded><![CDATA[<p>After upgrading to the latest WordPress (v3.0.4), I also decided to have a look at the various plugins I am running. As part of that I stumbled across <a href="http://wphacks.com/wordpress-plugins/" target="_blank">Ultimate Collection of WordPress plugins</a>which are very interesting. If you run WordPress (and if you don&#8217;t, why not <img src='http://desigeek.com/blog/amit/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ), I would highly recommend to check them out. I already was running some of these and not heard of others which are great.</p>
<p>Here are some of my favourite ones (in no particular order) and those with keen eyes would notice a few of these already.</p>
<ul>
<li> AddToAny: Share/Bookmark/Email Button &#8211; Help people share, bookmark, and email your posts &amp; pages using any service, such as Facebook, Twitter, Google Buzz, Digg, etc.</li>
<li>Akismet &#8211; this is for comment spam control and is used by millions! Excellent!</li>
<li>WP FollowMe &#8211; allows you to add a twitter Follow me badge on your wordpress blog.</li>
<li>Google Analyticator &#8211; name says it all I think.</li>
<li>Google XML Sitemaps &#8211; same as above.</li>
<li>Lightbox 2 &#8211; Used to overlay images on the current page.</li>
<li>My Page Order &#8211; allows you to set the order of pages through a drag and drop interface.</li>
<li>Really Simple CAPTCHA &#8211; CAPTCHA module intended to be called from other plugins; really works too!</li>
<li>Search Everything &#8211; Adds search functionality and includes search highlight, search pages, excerpts, attachments, drafts, comments, tags and custom fields (metadata). It can also exclude specific pages and posts. It does not search password-protected content.</li>
<li>Shockingly Big IE6 Warning &#8211; doesn&#8217;t the name say it all?</li>
<li>Simple Tags &#8211; Excellent plugins, to manage your tags. Includes, suggested Tags, Mass edit tags, Autocompletion, Tag Cloud Widgets, Related Posts, Related Tags, etc</li>
<li>StatPress Reloaded &#8211; real time stats for the blog</li>
<li>SyntaxHighlighter Evolved &#8211; code to your site without having to modify the code at all; you cannot use the Visual editor with this.</li>
<li>TinyMCE Advanced &#8211; Enables advanced features and plugins for the visual editor</li>
<li>Twitter for WordPress &#8211; displays your last few tweets</li>
<li>WP-Cumulus &#8211; Flash based Tag Cloud for WordPress</li>
<li>WP-DBManager &#8211; Excellent plugin, that manages your WordPress including optimize database, repair database, backup database, restore database, etc. I use to exclusively for the automatic scheduling of backing up and optimizing of the database.</li>
<li>WP-SmugMug &#8211; I use <a href="https://secure.smugmug.com/signup.mg?Coupon=QqwiODpDFZIiY" target="_blank">SmugMug for my photos online</a>; this plugin integrates the <a href="https://secure.smugmug.com/signup.mg?Coupon=QqwiODpDFZIiY" target="_blank">SmugMug galleries</a> into the blog.</li>
</ul>
<p>I would highly recommend the above and suggest you play with them. </p>
<p>These plugins I have only recently installed and they seem interesting, but I have not used them enough to have the confidence to highly recommend them &#8211; yet.</p>
<ul>
<li>WordPress Backup (by BTE) &#8211; Backup the upload directory (images), current theme directory, and plugins directory to a zip file. I have only recently installed this plugin, and not used it enough to say how useful it is at this point.</li>
<li>Automatic WordPress Backup &#8211; Automatically upload backups of important parts of your blog to Amazon S3. I am a huge S3 fan, and this seems very promising. Hopefully I can come back in a few days and weeks and blog about it.</li>
</ul>
<p>Finally, when using plugins I would recommend the following:</p>
<ul>
<li>Search and install from these via the &#8220;Plugins&#8221; menu which you see when log into your WordPress dashboard. Don&#8217;t download the code manually and then try and upload it to your site. That is a more painful process.</li>
<li>Try and have a test blog running &#8211; seperately from your main blog where you can test different permutations and configurations. In case something goes wrong, you won&#8217;t have your main blog go down. Of course needless to say, you should keep both your test and main blog on the same version.</li>
<li>It is not a good idea to install all of the plugin&#8217;s all at the same time as you never never <a href="http://desigeek.com/blog/amit/2010/12/25/upgrading-to-wordpress-3-0-3/">which plugin can cause conflict with another</a>. Well, you can install all the plugins at the same time, just activate them one at a time and test that your blog is still running as expected after you have activated each plugin.</li>
<li>Before you upgrade the version of WordPress &#8211; irrespective of how big or small the upgrade is always backup your database and files first. This would allow you to revert back to a &#8220;clean slate&#8221; in case something goes wrong.</li>
</ul>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2011%2F01%2F04%2Finteresting-wordpress-plugins%2F&amp;title=Interesting%20WordPress%20Plugins" id="wpa2a_8"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2011/01/04/interesting-wordpress-plugins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C++ Message queuing options?</title>
		<link>http://desigeek.com/blog/amit/2010/12/29/c-message-queuing-options/</link>
		<comments>http://desigeek.com/blog/amit/2010/12/29/c-message-queuing-options/#comments</comments>
		<pubDate>Wed, 29 Dec 2010 00:04:31 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.architecture]]></category>
		<category><![CDATA[.code]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3439</guid>
		<description><![CDATA[I am thinking of implementing a queue in one of the projects I am working on right now (sorry cannot go into more details until it gets published &#8211; hopefully in a few months). Anywyas, this is in C++ which needs to run on Ubuntu and my queueing experience (with C++ or otherwise) is only [...]]]></description>
			<content:encoded><![CDATA[<p>I am thinking of implementing a queue in one of the projects I am working on right now (sorry cannot go into more details until it gets published &#8211; hopefully in a few months). Anywyas, this is in C++ which needs to run on Ubuntu and my queueing experience (with C++ or otherwise) is only with <a href="http://msdn.microsoft.com/en-us/library/ms711472(VS.85).aspx">MSMQ</a> which is brilliant, but does not help me here as that run only on Windows. I also cannot use something like <a href="http://www.cplusplus.com/reference/stl/queue/" target="_blank">STL Queue</a> as this will need to run across a number of machines and trying to sync between them would a royal pain. In other words, this needs to be distributed and async &#8220;loose&#8221; messaging.  <img src='http://desigeek.com/blog/amit/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>I am already using <a href="http://desigeek.com/blog/amit/2010/11/06/moos/">MOOS</a>, so one option is for me to continue to use that &#8211; however this is for another part of the application and it <em>might</em> be easier for me to use something else (still need to think it through a little more).</p>
<p>These are the requirements (these are must haves!). Also if it makes a difference I am using <a href="http://eclipse.org/cdt/" target="_blank">CDT</a> for this project.</p>
<ul>
<li>Needs to be able to run on Ubuntu 9.04 (and higher)</li>
<li>Needs to be Open Source (cannot be commercial)</li>
<li>Needs to be able to store messages &#8220;offline&#8221;</li>
<li>Needs to be able to run on TCP with minimal dependencies. It would be nice not to have a whole bunch of underlying dependencies.</li>
<li>Preferably be easy to use (as a consumer) &#8211; I don&#8217;t have much time to read through loads of documentation just to get my head around the underlying object model and how to use it.</li>
<li>C++ support (if it was not obvious until now)</li>
</ul>
<p>I did a little research online and came across the following, and wanted to get some feedback:</p>
<ul>
<li><a href="http://activemq.apache.org/" target="_blank">ActiveMQ</a> &#8211; seems like it has good C++ support via <a href="http://activemq.apache.org/cms/" target="_blank">CMS</a> (C++ Messaging Service).</li>
<li><a href="http://aws.amazon.com/sqs/" target="_blank">Amazon SQS</a> &#8211;  not sure how good the C++ support is. If there is no library per se that I can use, then writing things around REST APIs might be more painful. Also I suddenly have a dependency to be able to go to the public internet. Also it is not free (though there is a free 100K messages / month).</li>
<li><a href="Amateurish" target="_blank">MQ4CPP</a> &#8211; seems quite amateurish (kudos to the guy writing it though &#8211; seems like an interesting project to pick up when once has time).</li>
<li><a href="http://www.rabbitmq.com/" target="_blank">RabbitMQ</a> &#8211; I know some guys used this at work (though that was using it in .NET); nothing for C++, but there <a href="http://www.rabbitmq.com/download-ex.html#rabbitmq-c" target="_blank">some C experimental code</a>; overall does not inspire confidence (in the context of C++).</li>
<li>OpenAMQ &#8211; seems quite interesting and also has a <a href="http://www.openamq.org/doc:prog-wireapi" target="_blank">C++ API</a> based on its WireAPI.</li>
<li>Anything else??</li>
</ul>
<p>At face value it seems like this is down to ActiveMQ and OpenAMQ. Just looking at the quick samples between the two ActiveMQ seems like more<a href="http://activemq.apache.org/cms/example.html" target="_blank"> C++ friendly</a> and easier to use <a href="http://www.openamq.org/doc:prog-wireapi" target="_blank">compared to OpenAMQ</a>. Of course this is just the first impression and I could be completely wrong &#8211; it is not like I have had a chance to play with this (yet anyways).</p>
<p>Does anyone have any experience and feedback on this matter? Feel free to comment on this post, or tweet me.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F12%2F29%2Fc-message-queuing-options%2F&amp;title=C%2B%2B%20Message%20queuing%20options%3F" id="wpa2a_10"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/12/29/c-message-queuing-options/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MOOS</title>
		<link>http://desigeek.com/blog/amit/2010/11/06/moos/</link>
		<comments>http://desigeek.com/blog/amit/2010/11/06/moos/#comments</comments>
		<pubDate>Sat, 06 Nov 2010 21:17:03 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.architecture]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3397</guid>
		<description><![CDATA[I don&#8217;t think many people have heard of MOOS (which stands of Mission Oriented Operating Suite); I have been working with it for the past few months as part of my dissertation. And I must admit, the more I play with it, the more impressed I am. It is quite simple and yet powerful. Whilst [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t think many people have heard of <a href="http://www.robots.ox.ac.uk/~mobile/MOOS/wiki/pmwiki.php/Main/Introduction" target="_blank">MOOS</a> (which stands of Mission Oriented Operating Suite); I have been working with it for the past few months as part of my dissertation. And I must admit, the more I play with it, the more impressed I am. It is quite simple and yet powerful.</p>
<p>Whilst MOOS&#8217;s roots are in robotics (<a href="http://www.robots.ox.ac.uk/~mobile/wikisite/pmwiki/pmwiki.php" target="_blank">MRG</a>) and embedded systems, I wonder if I can extend it to use it some of the grid computing scenarios. Maybe implement a pMapReduce or pHadoop? Or perhaps a .NET implementation. Hmm, just need some time. If you need a robust, cross platform communication layer then check out <a href="http://www.robots.ox.ac.uk/~mobile/MOOS/wiki/pmwiki.php/Main/Introduction" target="_blank">MOOS</a>.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F11%2F06%2Fmoos%2F&amp;title=MOOS" id="wpa2a_12"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/11/06/moos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Impressed with Doxygen</title>
		<link>http://desigeek.com/blog/amit/2010/10/30/impressed-with-doxygen/</link>
		<comments>http://desigeek.com/blog/amit/2010/10/30/impressed-with-doxygen/#comments</comments>
		<pubDate>Sat, 30 Oct 2010 11:00:27 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.code]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3392</guid>
		<description><![CDATA[I have recently started using Doxygen in anger and have been quite impressed with it. In addition to the documentation of code that you would expect, one of the most powerful and coolest features is the ability to create various types of diagrams showing various aspects of the application such as collaboration diagrams object and [...]]]></description>
			<content:encoded><![CDATA[<p>I have recently started using Doxygen in anger and have been quite impressed with it. In addition to the documentation of code that you would expect, one of the most powerful and coolest features is the ability to create various types of diagrams showing various aspects of the application such as collaboration diagrams object and call graphs, etc.</p>
<p>The easiest way to configure your application  is to use <a href="http://www.stack.nl/~dimitri/doxygen/doxywizard_usage.html">Doxywizard</a>. On Linux, if you do want the object and call graphs then you would need to choose to enable the DOT option. If you do that you will need to have Message Sequence Charts installed (typically found in /usr/bin/mscgen) and also Graphviz. DOT can typically be found in /usr/bin/dot.</p>
<p>If you are on Windows and use Visual Studio, then there are a few add-ins which will work &#8211; with VS.NET <a href="http://www.atomineerutils.com/products.php">2005, 2008</a> and <a href="http://doxygenbrowseraddin.codeplex.com/">2010</a>; more details <a href="http://doxygenbrowseraddin.codeplex.com/">here</a>.</p>
<p>Below is a simple example of a collaboration diagram taken from <a href="http://www.vtk.org/doc/nightly/html/index.html">VTK project</a>. You can find <a href="http://www.stack.nl/~dimitri/doxygen/results.html">more samples</a>. When you do browse the code, click on the Classes link &#8211; that is where you can see the various diagrams.</p>
<p><img src="http://www.vtk.org/doc/nightly/html/structvtkKdTree_1_1__cellList__coll__graph.png" alt="Sample Collaboration Diagram" width="593" height="475" /></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F10%2F30%2Fimpressed-with-doxygen%2F&amp;title=Impressed%20with%20Doxygen" id="wpa2a_14"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/10/30/impressed-with-doxygen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unlock button in Services is greyed out</title>
		<link>http://desigeek.com/blog/amit/2010/10/23/unlock-button-in-services-is-grayed-out/</link>
		<comments>http://desigeek.com/blog/amit/2010/10/23/unlock-button-in-services-is-grayed-out/#comments</comments>
		<pubDate>Sat, 23 Oct 2010 10:49:57 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3359</guid>
		<description><![CDATA[If you are running Ubuntu and want to modify the services running on the OS using the GUI, the way to do this is via System → Administration → Services. This is all very good, but in my case on one machine the Unlock button on the Services window was greyed out. Sure, I could [...]]]></description>
			<content:encoded><![CDATA[<p>If you are running Ubuntu and want to modify the services running on the OS using the GUI, the way to do this is via System → Administration → Services. This is all very good, but in my case on one machine the Unlock button on the Services window was greyed out. Sure, I could use the shell to modify this, but when this is something I use quite rarely I need to go and look up the exact command and it can get a pain. Plus, that is the whole point of running the GUI?  <img src='http://desigeek.com/blog/amit/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>One easy way to solve this is to to modify the <strong>/etc/PolicyKit/PolicyKit.conf file</strong> and add the following in the end:</p>
<pre dir="ltr">&lt;return result="yes"/&gt;</pre>
<p>You might not have privileges to edit the file and might need to do it as root; you can use the following command for that:</p>
<pre>sudo gedit /etc/PolicyKit/PolicyKit.conf</pre>
<p>Here is the output from my file:</p>
<pre class="brush: xml; title: ; toolbar: true; notranslate">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt; &lt;!-- -*- XML -*- --&gt;

&lt;!DOCTYPE pkconfig PUBLIC &quot;-//freedesktop//DTD PolicyKit Configuration 1.0//EN&quot;

&quot;http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd&quot;&gt;

&lt;!-- See the manual page PolicyKit.conf(5) for file format --&gt;

&lt;config version=&quot;0.1&quot;&gt;
    &lt;match user=&quot;root&quot;&gt;
        &lt;return result=&quot;yes&quot;/&gt;
    &lt;/match&gt;
    &lt;define_admin_auth group=&quot;admin&quot;/&gt;
    &lt;return result=&quot;yes&quot;/&gt;
&lt;/config&gt;
</pre>
<p>One word of caution, this will by pass some of the built-in security and allow any logged on user to get access to the services. If you are the only one using your computer in an environment where someone else won&#8217;t be able to get their hands on it (e.g. at home and not at work or school or college) then you should be OK. But if you are not the sole user of the computer or will be in an environment where others can get their hands on it, then I won&#8217;t recommend you do this.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F10%2F23%2Funlock-button-in-services-is-grayed-out%2F&amp;title=Unlock%20button%20in%20Services%20is%20greyed%20out" id="wpa2a_16"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/10/23/unlock-button-in-services-is-grayed-out/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Deleting folder on Linux</title>
		<link>http://desigeek.com/blog/amit/2010/04/04/deleting-folder-on-linux/</link>
		<comments>http://desigeek.com/blog/amit/2010/04/04/deleting-folder-on-linux/#comments</comments>
		<pubDate>Sun, 04 Apr 2010 18:31:40 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3285</guid>
		<description><![CDATA[If you are a newbie to Ubuntu like me (or any other Unix distro) and you tried deleting a folder which is not empty contains files or subdirectories then you get the annoying error &#8220;Directory not empty&#8221;. To delete such a folder (from a terminal) use the rm -rf command. For example to delete a [...]]]></description>
			<content:encoded><![CDATA[<p>If you are a newbie to Ubuntu like me (or any other Unix distro) and you tried deleting a folder which is not empty contains files or subdirectories then you get the annoying error &#8220;Directory not empty&#8221;.</p>
<p>To delete such a folder (from a terminal) use the rm -rf command. For example to delete a folder called amitbahree run the following:</p>
<pre>rm -rf amitbahree/</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F04%2F04%2Fdeleting-folder-on-linux%2F&amp;title=Deleting%20folder%20on%20Linux" id="wpa2a_18"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/04/04/deleting-folder-on-linux/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Ubuntu on a HTC Touch Pro 2</title>
		<link>http://desigeek.com/blog/amit/2010/03/09/ubuntu-on-a-htc-touch-pro-2/</link>
		<comments>http://desigeek.com/blog/amit/2010/03/09/ubuntu-on-a-htc-touch-pro-2/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 22:44:39 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.geek]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3263</guid>
		<description><![CDATA[Well this is the phone I have maybe some day I will try this &#8211; pretty geeky albeit useless.]]></description>
			<content:encoded><![CDATA[<p>Well this is the phone I have maybe some day I will try this &#8211; pretty geeky albeit useless. <img src='http://desigeek.com/blog/amit/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/qE_rDay9RJ8&amp;hl=en_GB&amp;fs=1&amp;rel=0" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="640" height="385" src="http://www.youtube.com/v/qE_rDay9RJ8&amp;hl=en_GB&amp;fs=1&amp;rel=0" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F03%2F09%2Fubuntu-on-a-htc-touch-pro-2%2F&amp;title=Ubuntu%20on%20a%20HTC%20Touch%20Pro%202" id="wpa2a_20"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/03/09/ubuntu-on-a-htc-touch-pro-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RDP from Ubuntu</title>
		<link>http://desigeek.com/blog/amit/2010/03/07/rdp-from-ubuntu/</link>
		<comments>http://desigeek.com/blog/amit/2010/03/07/rdp-from-ubuntu/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 23:27:30 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3258</guid>
		<description><![CDATA[I did not know until today that there is something called gnome-rdp using which one can RDP to Windows machines from Ubuntu (or any other linux flavour I imagine). Installation is simple on Ubuntu, with it available in Synaptic Package Manager. To start it you can type in gnome-rdp in a console or go to [...]]]></description>
			<content:encoded><![CDATA[<p>I did not know until today that there is something called <a href="http://sourceforge.net/projects/gnome-rdp/" target="_blank">gnome-rdp</a> using which one can RDP to Windows machines from Ubuntu (or any other linux flavour I imagine). Installation is simple on Ubuntu, with it available in Synaptic Package Manager. To start it you can type in gnome-rdp in a console or go to Applications -&gt; Internet -&gt; Gnome-RDP. Once it has started, usage is quite simple &#8211; though you might want to change the remote desktop size and colours. Interestingly this also supports VNC and SSH.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F03%2F07%2Frdp-from-ubuntu%2F&amp;title=RDP%20from%20Ubuntu" id="wpa2a_22"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/03/07/rdp-from-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Finding out which version of Ubuntu you are running</title>
		<link>http://desigeek.com/blog/amit/2010/03/06/finding-out-which-version-of-ubuntu-you-are-running/</link>
		<comments>http://desigeek.com/blog/amit/2010/03/06/finding-out-which-version-of-ubuntu-you-are-running/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 22:17:16 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3256</guid>
		<description><![CDATA[If you ever need to find out which version of Ubuntu you are running (if you have a few machines it is quite easy to forget what is running where), the easiest way is to run the following command in a terminal: cat /etc/issue For example here is the output from the machine I am [...]]]></description>
			<content:encoded><![CDATA[<p>If you ever need to find out which version of Ubuntu you are running (if you have a few machines it is quite easy to forget what is running where), the easiest way is to run the following command in a terminal:</p>
<pre dir="ltr">cat /etc/issue</pre>
<p>For example here is the output from the machine I am on now:</p>
<pre>amit@xps:~$ cat /etc/issue
Ubuntu 9.04 \n \l</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F03%2F06%2Ffinding-out-which-version-of-ubuntu-you-are-running%2F&amp;title=Finding%20out%20which%20version%20of%20Ubuntu%20you%20are%20running" id="wpa2a_24"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/03/06/finding-out-which-version-of-ubuntu-you-are-running/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Printing code and making it look pretty</title>
		<link>http://desigeek.com/blog/amit/2010/03/01/printing-code-and-making-it-look-pretty/</link>
		<comments>http://desigeek.com/blog/amit/2010/03/01/printing-code-and-making-it-look-pretty/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 22:51:25 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.code]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3251</guid>
		<description><![CDATA[If you are on Linux and want to print some code and also make it look pretty then check out a2ps (Any to postscript filter). Of course if you can avoid printing in the first place and saving paper and trees and make it greener that is ideal &#8211; however there are times that is not [...]]]></description>
			<content:encoded><![CDATA[<p>If you are on Linux and want to print some code and also make it look pretty then check out <a href="http://www.gnu.org/software/a2ps/" target="_blank">a2ps</a> (Any to postscript filter). Of course if you can avoid printing in the first place and saving paper and trees and make it greener that is ideal &#8211; however there are times that is not possible. I tried printing from CDT, but the printing options from CDT just looks plain ugly and big fonts and can spread over 10 pages for a simple code file (spanning 293 lines). Sure I can tweak the font in CDT, but that is the only option available &#8211; enter <a href="http://www.gnu.org/software/a2ps/" target="_blank">a2ps</a>. It seems to have more options, but I have not had a chance to play with those.</p>
<p>For example if I wanted a C++ code file called MOOSSniffer.cpp and &#8220;print it&#8221; out as PDF then use the command shown below. Here &#8220;-E&#8221; is the option to make the code look pretty and the &#8220;-P pdf&#8221; is the option for printing to PDF. Next comes the source file (you can also provide multiple files such as *.cpp) and finally the -o option is for the output filename. Of course you will need to install a2ps, which you can do via System -&gt; Admin -&gt; Synaptic Package Manager</p>
<pre><strong><span style="font-size: small;">a2ps -E -P pdf MOOSSniffer.cpp -o MOOSSniffer.pdf</span></strong></pre>
<p>Now, for some reason the resulting PDF could not be opened in Acrobat Reader, but on my Ubuntu machine, I could open it using the &#8220;Document Viewer&#8221; and print it using that. And in case you were curious, the pretty page option came to 3 pages instead of the original 10.</p>
<p>Also no trees were harmed in the making of this post &#8211; my printouts were all to PDF and not real paper &#8211; but in the end I did print out the 3 page version. <img src='http://desigeek.com/blog/amit/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F03%2F01%2Fprinting-code-and-making-it-look-pretty%2F&amp;title=Printing%20code%20and%20making%20it%20look%20pretty" id="wpa2a_26"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/03/01/printing-code-and-making-it-look-pretty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting MOOS linking</title>
		<link>http://desigeek.com/blog/amit/2010/02/28/getting-moos-linking/</link>
		<comments>http://desigeek.com/blog/amit/2010/02/28/getting-moos-linking/#comments</comments>
		<pubDate>Sun, 28 Feb 2010 16:02:29 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3235</guid>
		<description><![CDATA[I started a brand new project in CDT where I was using MOOS and I could not get my simple program to link. While everything looked fine on the surface I just could not get the IDE to link to the MOOS libraries. I know the OS and MOOS itself was not a problem as [...]]]></description>
			<content:encoded><![CDATA[<p>I started a brand new project in <a href="http://www.eclipse.org/cdt/" target="_blank">CDT</a> where I was using <a href="http://www.robots.ox.ac.uk/~mobile/MOOS/wiki/pmwiki.php" target="_blank">MOOS</a> and I could not get my simple program to link. While everything looked fine on the surface I just could not get the IDE to link to the MOOS libraries. I know the OS and MOOS itself was not a problem as I had other projects in the same workspace which did link correctly. The only difference between those and this was that I setup this project from scratch, whilst the others I had not. It took me a while to figure it out, but in the end I had to resort to explicitly add the locations for the libs in the C++ project properties in CDT as shown in the screenshot below.</p>
<p>To get this this, you right click on the Project name in Project Explorer in CDT. In the C++ Linker section then explicitly add the two paths shown in the screenshot. I of course had MOOS installed in the default location (binaries are in /usr/local/bin and libraries in /usr/local/lib). So even if you have added paths to CDT and still getting linking issues, I suggest you add it explicitly to the C++ properties.</p>
<p><a href="http://photos.bahree.com/Computers/Amits-Blog-Pictures/c-settings/798908371_qHEbx-S.png" rel="lightbox[3235]"><img title="C++ Project properties" src="http://photos.bahree.com/Computers/Amits-Blog-Pictures/c-settings/798908371_qHEbx-S.png" alt="C++ Project properties" width="400" height="287" /></a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F02%2F28%2Fgetting-moos-linking%2F&amp;title=Getting%20MOOS%20linking" id="wpa2a_28"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/02/28/getting-moos-linking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Host files on Ubuntu</title>
		<link>http://desigeek.com/blog/amit/2010/02/28/host-files-on-ubuntu/</link>
		<comments>http://desigeek.com/blog/amit/2010/02/28/host-files-on-ubuntu/#comments</comments>
		<pubDate>Sun, 28 Feb 2010 15:12:39 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3233</guid>
		<description><![CDATA[If you are newish to Linux (like me) from Windows, then some of the simple things which come quite naturally to you on Windows is a little embarrassing and challenging. For example, I got a new WHS and wanted to mount the music drive and wanted to create a new host file entry to point to the new WHS. [...]]]></description>
			<content:encoded><![CDATA[<p>If you are newish to Linux (like me) from Windows, then some of the simple things which come quite naturally to you on Windows is a little embarrassing and challenging.</p>
<p>For example, I got a new WHS and wanted to mount the music drive and wanted to create a new host file entry to point to the new WHS. Now on Windows this is quite simple and can be found in YOUR-OS-DRIVE\Windows\system32\drivers\etc\hosts. But on Linux you will find this in \etc\hosts. If you want to edit it you will need to type something like this a shell:</p>
<pre>sudo gedit /etc/hosts</pre>
<p>sudo is required as you need admin privileges to modify the file. gedit is the graphical editor; you can replace that with another editor of your choice.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F02%2F28%2Fhost-files-on-ubuntu%2F&amp;title=Host%20files%20on%20Ubuntu" id="wpa2a_30"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/02/28/host-files-on-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Qt Eclipse Integration</title>
		<link>http://desigeek.com/blog/amit/2010/01/13/qt-eclipse-integration/</link>
		<comments>http://desigeek.com/blog/amit/2010/01/13/qt-eclipse-integration/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 17:14:16 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/2010/01/13/qt-eclipse-integration/</guid>
		<description><![CDATA[If you are working in CDT and Qt then the Qt Eclipse Integration is quite handy and in my opinion much better than using the standalone Qt designer. Installation is pretty straight forward as described here.]]></description>
			<content:encoded><![CDATA[<p>If you are working in CDT and Qt then the <a href="http://qt.nokia.com/developer/eclipse-integration" target="_blank">Qt Eclipse Integration</a> is quite handy and in my opinion much better than using the standalone Qt designer. Installation is pretty straight forward as <a href="http://qt.nokia.com/developer/eclipse-integration/installation-instructions-for-linux-systems" target="_blank">described here</a>.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2010%2F01%2F13%2Fqt-eclipse-integration%2F&amp;title=Qt%20Eclipse%20Integration" id="wpa2a_32"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2010/01/13/qt-eclipse-integration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse CDT Blues</title>
		<link>http://desigeek.com/blog/amit/2009/12/24/eclipse-cdt-blues/</link>
		<comments>http://desigeek.com/blog/amit/2009/12/24/eclipse-cdt-blues/#comments</comments>
		<pubDate>Thu, 24 Dec 2009 14:24:15 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3141</guid>
		<description><![CDATA[Sigh, why is Eclipse CDT to flaky? Well, there might be a slight exaggeration in that but nevertheless, I did not have so many issues with Visual Studio / VC++. I have uploaded this particular log file here if anyone is interested. # A fatal error has been detected by the Java Runtime Environment: # [...]]]></description>
			<content:encoded><![CDATA[<p>Sigh, why is Eclipse CDT to flaky? Well, there might be a slight exaggeration in that but nevertheless, I did not have so many issues with Visual Studio / VC++. <img src='http://desigeek.com/blog/amit/wp-includes/images/smilies/icon_rolleyes.gif' alt=':roll:' class='wp-smiley' /> </p>
<p>I have uploaded this particular <a href="http://desigeek.com/blog/downloads/amit/hs_err_pid20331.log">log file here</a> if anyone is interested.</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># A fatal error has been detected by the Java Runtime Environment:</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">#</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">#  SIGSEGV (0xb) at pc=0xb263d1f7, pid=20331, tid=3085625024</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">#</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># JRE version: 6.0_16-b01</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># Java VM: Java HotSpot(TM) Client VM (14.2-b01 mixed mode, sharing linux-x86 )</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># Problematic frame:</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># C  [libQtGuiCppIntegration.so.4+0x6531f7]  _ZN16QtCppIntegration12QLineControl18removeSelectedTextEv+0&#215;27</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">#</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># An error report file with more information is saved as:</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># /home/amit/hs_err_pid20331.log</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">#</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># If you would like to submit a bug report, please visit:</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">#   http://java.sun.com/webapps/bugreport/crash.jsp</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># The crash happened outside the Java Virtual Machine in native code.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"># See problematic frame for where to report the bug.</div>
<pre># A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0xb263d1f7, pid=20331, tid=3085625024
#
# JRE version: 6.0_16-b01
# Java VM: Java HotSpot(TM) Client VM (14.2-b01 mixed mode, sharing linux-x86 )
# Problematic frame:
# C  [libQtGuiCppIntegration.so.4+0x6531f7]  _ZN16QtCppIntegration12QLineControl18removeSelectedTextEv+0x27
#
# An error report file with more information is saved as:
# /home/amit/hs_err_pid20331.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2009%2F12%2F24%2Feclipse-cdt-blues%2F&amp;title=Eclipse%20CDT%20Blues" id="wpa2a_34"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2009/12/24/eclipse-cdt-blues/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Opening File explorer from a terminal</title>
		<link>http://desigeek.com/blog/amit/2009/12/13/opening-file-explorer-from-a-terminal/</link>
		<comments>http://desigeek.com/blog/amit/2009/12/13/opening-file-explorer-from-a-terminal/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 17:10:41 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/?p=3118</guid>
		<description><![CDATA[In Ubuntu if you want to open File Explorer from a terminal (especially as root) then you need to enter the following command: sudo nautilus If you want this to run as a background process then just add an &#8220;&#38;&#8221; in the end (without the quotes of course).]]></description>
			<content:encoded><![CDATA[<p>In Ubuntu if you want to open File Explorer from a terminal (especially as root) then you need to enter the following command: <strong>sudo nautilus</strong></p>
<p>If you want this to run as a background process then just add an &#8220;&amp;&#8221; in the end (without the quotes of course).</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2009%2F12%2F13%2Fopening-file-explorer-from-a-terminal%2F&amp;title=Opening%20File%20explorer%20from%20a%20terminal" id="wpa2a_36"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2009/12/13/opening-file-explorer-from-a-terminal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Default QT4 path</title>
		<link>http://desigeek.com/blog/amit/2009/12/06/default-qt4-path/</link>
		<comments>http://desigeek.com/blog/amit/2009/12/06/default-qt4-path/#comments</comments>
		<pubDate>Sun, 06 Dec 2009 22:53:43 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/2009/12/06/default-qt4-path/</guid>
		<description><![CDATA[If you wanted to know the default path where QT4 is installed (on Ubuntu) then look in /usr/share/qt4/bin.]]></description>
			<content:encoded><![CDATA[<p>If you wanted to know the default path where QT4 is installed (on Ubuntu) then look in /usr/share/qt4/bin.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2009%2F12%2F06%2Fdefault-qt4-path%2F&amp;title=Default%20QT4%20path" id="wpa2a_38"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2009/12/06/default-qt4-path/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Redirects setup</title>
		<link>http://desigeek.com/blog/amit/2009/12/02/redirects-setup/</link>
		<comments>http://desigeek.com/blog/amit/2009/12/02/redirects-setup/#comments</comments>
		<pubDate>Wed, 02 Dec 2009 23:59:41 +0000</pubDate>
		<dc:creator>Amit Bahree</dc:creator>
				<category><![CDATA[.misc]]></category>
		<category><![CDATA[.opensource]]></category>

		<guid isPermaLink="false">http://desigeek.com/blog/amit/2009/12/02/redirects-setup/</guid>
		<description><![CDATA[After moving the blog to&#160; WordPress, almost all my redirects should work now from the old blog posts to the new one. For example if you click on this old url http://desigeek.com/weblog/amit/archive/2009/10/25/installing-openscenegraph-on-ubuntu.aspx it should redirect you and you see the new and correct url. Overall it was simple to setup via the .htaccess file and [...]]]></description>
			<content:encoded><![CDATA[<p>After moving the blog to&#160; WordPress, almost all my redirects should work now from the old blog posts to the new one. For example if you click on this old url <a title="http://desigeek.com/weblog/amit/archive/2009/10/25/installing-openscenegraph-on-ubuntu.aspx" href="http://desigeek.com/weblog/amit/archive/2009/10/25/installing-openscenegraph-on-ubuntu.aspx">http://desigeek.com/weblog/amit/archive/2009/10/25/installing-openscenegraph-on-ubuntu.aspx</a> it should redirect you and you see the new and correct url.</p>
<p>Overall it was simple to setup via the .htaccess file and some simple regex. The only thing I found the hard way was that I should be using “RedirectMatch” when setting up the regex rule rather than the “Redirect” which is what I was using. You would use Redirect when trying to redirect without any variables.</p>
<p>So, as in my case I wanted to redirect from the old url (of community server) to the new one (of wordpress)</p>
<ul>
<li>Old: <font face="Courier New">http://desigeek.com/weblog/amit/archive/2009/10/25/installing-openscenegraph-on-ubuntu.aspx</font> </li>
<li>New: <font face="Courier New">http://desigeek.com/blog/amit/2009/10/25/installing-openscenegraph-on-ubuntu/</font> </li>
</ul>
<p>So I need to make the following changes: </p>
<ul>
<li>Change the “/weblog” to “/blog” </li>
<li>Get rid of “/archive” </li>
<li>Get red of the “.aspx” extension </li>
</ul>
<p>The following rule helped me achieve this:</p>
<p><font face="Courier New">RedirectMatch 301 /weblog/amit/archive/([0-9][0-9][0-9][0-9])/([0-9][0-9])/([0-9][0-9])/(.*)\.aspx$ http://desigeek.com/blog/amit/$1/$2/$3/$4</font></p>
<p>Of course there are a few more rules I have which I cannot go into details.</p>
<p>Along the way i also discovered a few interesting tools which can help you view the results – one is <a href="http://livehttpheaders.mozdev.org/index.html" target="_blank">LiveHTTPHeaders</a>; another good one is <a href="http://web-sniffer.net/" target="_blank">http://web-sniffer.net/</a>.</p>
<p>If you are new to this, then a few very good tools online. I would suggest start with <a href="http://www.z-oc.com/blog/2009/01/htaccess-redirect-wizardry/" target="_blank">this post from Zo</a> and <a href="http://www.karakas-online.de/EN-Book/regular-expressions.html" target="_blank">this tutorial on regex</a>.</p>
<p>i still have one outstanding issue where if I want to redirect part of the URL and not the complete thing, I am not sure how to do it. For example if I want to redirect the old url above to just the year/month of the post instead if the actual post, not sure how to go about doing it. So I want the url below to map to the the one below that. </p>
<ul>
<li>URL to Map: <font face="Courier New">http://desigeek.com/weblog/amit/archive/2009/10/25/installing-openscenegraph-on-ubuntu.aspx</font> </li>
<li>Should map to: <font face="Courier New">http://desigeek.com/weblog/amit/archive/2009/10/</font> </li>
</ul>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fdesigeek.com%2Fblog%2Famit%2F2009%2F12%2F02%2Fredirects-setup%2F&amp;title=Redirects%20setup" id="wpa2a_40"><img src="http://desigeek.com/blog/amit/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://desigeek.com/blog/amit/2009/12/02/redirects-setup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

