<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2698530851855759250</id><updated>2012-02-10T15:12:23.640-08:00</updated><category term='Mobile'/><category term='Windows Phone 7'/><category term='Sharing Programss'/><category term='Vista'/><category term='Technical'/><category term='Home Office'/><category term='wp7'/><category term='WCF'/><category term='AI'/><category term='free'/><category term='Troubleshooting'/><category term='Sharing installation'/><category term='launch'/><category term='Ubuntu'/><category term='Sharing Programs'/><category term='common installation'/><category term='Game Programming'/><category term='Android'/><category term='Tic Tac Toe'/><category term='Computers and Internet'/><category term='Programming'/><category term='.NET'/><category term='free windows phone 7'/><category term='Windows 7'/><title type='text'>My Programming Journey</title><subtitle type='html'>My journey through software programming, learnings and projects.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-2528122927406409774</id><published>2011-08-30T08:59:00.001-07:00</published><updated>2011-08-30T09:23:28.623-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>How to Fix: IIS 7.0 - HTTP Error 404.17 - Not Found - Static File Handler Error</title><content type='html'>&lt;p&gt;I faced this issue when I deployed my WCF service created in .NET 3.5 VS 2010 on IIS 7.5 in Windows 7.&lt;/p&gt; &lt;p&gt;The WCF service was working fine inside VS2010 in debug mode using the development web service (Cassini). However when I deployed the same service to IIS 7.5 with app pool configured to .NET 2.0 Integrated mode, the app was not working and giving the following error message&lt;/p&gt; &lt;p&gt;“HTTP Error 404.17 - Not Found&lt;br&gt;The requested content appears to be script and will not be served by the static file handler.”&lt;/p&gt; &lt;p&gt;Fiddling around with handler mappings, aspnet_regiis did not help. The actually issue as it turns out that there is a WCF component that must be installed using “Turn on/off windows features” to enable WCF services. The component you are looking for is called “Windows Communication Foundation HTTP Activation” as shown in the screen shot below. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-TyryhOY7RDU/Tl0I-ZgjlYI/AAAAAAAAEGk/0zQVvWMVfSE/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-I__EE0Oq4jg/Tl0I-vJ4erI/AAAAAAAAEGo/UMFGblM29fk/image_thumb%25255B1%25255D.png?imgmax=800" width="377" height="302"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Once I installed this and restarted my IIS, the service came up without any more glitches. Hope this helps.&lt;/p&gt; &lt;p&gt;EDIT: Note that you may have to run aspnet_regiis -iru to reconfigure the handler mappings, otherwise you may get the error “Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'”. For more info check this link &lt;a title="http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/39571e42-aca7-469d-8c68-aa59c2da4fcc/" href="http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/39571e42-aca7-469d-8c68-aa59c2da4fcc/"&gt;http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/39571e42-aca7-469d-8c68-aa59c2da4fcc/&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Shreedhar&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-2528122927406409774?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/2528122927406409774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=2528122927406409774' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/2528122927406409774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/2528122927406409774'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2011/08/how-to-fix-iis-70-http-error-40417-not.html' title='How to Fix: IIS 7.0 - HTTP Error 404.17 - Not Found - Static File Handler Error'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/-I__EE0Oq4jg/Tl0I-vJ4erI/AAAAAAAAEGo/UMFGblM29fk/s72-c/image_thumb%25255B1%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-3911149070614099736</id><published>2010-10-07T08:05:00.000-07:00</published><updated>2010-10-07T08:10:43.696-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='launch'/><category scheme='http://www.blogger.com/atom/ns#' term='free windows phone 7'/><category scheme='http://www.blogger.com/atom/ns#' term='wp7'/><category scheme='http://www.blogger.com/atom/ns#' term='free'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows Phone 7'/><title type='text'>My lame attempt to win a free windows phone 7 device</title><content type='html'>&lt;a title="wp7_signature_banner_lg.jpg" href="http://www.msdnevents.com/wp7devlaunch/"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 352px; DISPLAY: block; HEIGHT: 42px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5525320689152161890" border="0" alt="wp7_signature_banner_lg.jpg" src="http://3.bp.blogspot.com/_moQurlX0u44/TK3h5HMH-GI/AAAAAAAADBs/VQZ2kTR-Jjw/s400/wp7_signature_banner_lg.jpg" /&gt;&lt;/a&gt; I added this windows phone 7 banner to win a free windows phone 7 device during launch. If you don't know already, check this post by &lt;a href="http://www.hanselman.com/blog/WINAFREEPhoneWithLikeNOEffortAndAttendTheWindowsPhone7DeveloperLaunch.aspx"&gt;hanselman&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Now that I have actually added, it also kind of looks cool on my blog&lt;br /&gt;&lt;br /&gt;Hey MS folks, did you crawls my blog? :)&lt;br /&gt;&lt;br /&gt;Shreedhar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-3911149070614099736?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/3911149070614099736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=3911149070614099736' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/3911149070614099736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/3911149070614099736'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2010/10/my-lame-attempt-to-win-free-windows.html' title='My lame attempt to win a free windows phone 7 device'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_moQurlX0u44/TK3h5HMH-GI/AAAAAAAADBs/VQZ2kTR-Jjw/s72-c/wp7_signature_banner_lg.jpg' height='72' width='72'/><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-5609155679316352992</id><published>2010-02-14T21:38:00.001-08:00</published><updated>2010-02-14T21:40:28.020-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Computers and Internet'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>How to setup priority between multiple nic’s (network cards) in Win 7</title><content type='html'>&lt;p&gt;My Win 7 computer has two nic’s (network cards). Until now I had a single broadband provider which I was sharing through my router among other computers on my network. Since my internet usage grew, I decided you get another broadband service just for my primary PC and the old connection can be shared by my brothers on the network.&lt;/p&gt;  &lt;p&gt;So I connected the new broadband which is of higher capacity to my second network card. The first network card still connected to my old router so that I can share files and play games with other computers. My plan was to route all the internet traffic through the new connection and only local LAN access to old nic. But I could not find a easily available way to do this on Win 7 (I still have RC).&lt;/p&gt;  &lt;p&gt;Whenever I tried to browse internet, Win 7 would automatically default to first nic and use the old broadband. Only way to use the new broadband was to either disable the first nic or remove the cable. However when I did that I lost the ability to share files with other computers on my LAN. I tried to configure old router so that it blocks all Internet access from my PC. It kind of worked, but most of the time my browser would show &amp;quot;Not connected to internet” kind of message instead of trying the other connection.&lt;/p&gt;  &lt;p&gt;After spending sometime googling and binging I found out that there is something called “Metric” assigned to each NIC which dictates its priority. It is just an integer value that you assign to your TCP IP v4/v6 properties of each NIC. Lower “Metric” value means higher priority and Win 7 will try that connection first. So I set the Metric of nic that connected to old network as 2 and for new connection I set it to 1. After this change things just worked fine. All my internet traffic goes through new connection and I can still share files and play games through my first nic connected to old router.&lt;/p&gt;  &lt;p&gt;Below are some screen shot explaining where to find this “Metric” setting&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Go to Control Panel &amp;gt; Network Sharing Center&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_moQurlX0u44/S3jdpuszNtI/AAAAAAAACLE/3-o7GVa9s_o/s1600-h/image%5B6%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="image" border="0" alt="image" align="left" src="http://lh5.ggpht.com/_moQurlX0u44/S3jdroNS0NI/AAAAAAAACLI/tWRiQUqNVr0/image_thumb%5B4%5D.png?imgmax=800" width="644" height="336" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;As you can see I have two networks here. “Airtel Network” on “Local Area Connection” and “BSNL Network” on “Local Area Connection 2”. My goal was to route all internet traffic through “Airtel network”&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Click on the “Local Area Connection” link against the network whose Metric you want to change. This will bring up the following dialog&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_moQurlX0u44/S3jdsqB-6_I/AAAAAAAACLM/UdgPj-ZRUno/s1600-h/image%5B10%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_moQurlX0u44/S3jdtbNb-LI/AAAAAAAACLQ/MrRYHLucn4w/image_thumb%5B6%5D.png?imgmax=800" width="396" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Click on the “Properties” button here which will bring up the connection properties window&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_moQurlX0u44/S3jduk2j7_I/AAAAAAAACLU/2YMXGzdvnN8/s1600-h/image%5B18%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_moQurlX0u44/S3jdv7H1yXI/AAAAAAAACLY/iLV0kXS0TSE/image_thumb%5B10%5D.png?imgmax=800" width="385" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Double click on “Internet Protocol 4 (TCP/IPv4)” to bring its properties window. (you may want to carry out the same steps on TCP/IPv6 also)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_moQurlX0u44/S3jdw5Wq_hI/AAAAAAAACLc/XfXRYTXLwt8/s1600-h/image%5B26%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_moQurlX0u44/S3jdyuO7_RI/AAAAAAAACLg/S528znGp9dE/image_thumb%5B14%5D.png?imgmax=800" width="435" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Click on the “Advanced…” button here, this is where you will find the “Metric” setting&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_moQurlX0u44/S3jdz8cGGnI/AAAAAAAACLk/oW3ZaO0PTgs/s1600-h/image%5B31%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="image" border="0" alt="image" align="left" src="http://lh6.ggpht.com/_moQurlX0u44/S3jd1DQRfyI/AAAAAAAACLo/2Jc7WudzFz8/image_thumb%5B17%5D.png?imgmax=800" width="406" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;By default the “Automatic metric” will be checked. Go ahead and uncheck this setting, this will enable the “Interface metric” textbox. Here you can specify the Metric value. Remember, lower the metric, higher will be its priority. Here I have set its priority to 1. Go ahead and specify the same value to TCP/IPv6 on this nic and click OK till all the dialog boxes are dismissed.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Once the first nic is done, do the same for second nic but specify a different Metric value, I have set that to 2. Now all Internet access will be made through the nic which was a higher priority (lower metric value).&lt;/p&gt;  &lt;p&gt;One more thing, make sure both of your nic’s are on different network. for example one network will be on 198.168.1.xxx while the other will be on 192.168.2.xxx&lt;/p&gt;  &lt;p&gt;Hope this helps.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-5609155679316352992?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/5609155679316352992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=5609155679316352992' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/5609155679316352992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/5609155679316352992'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2010/02/how-to-setup-priority-between-multiple.html' title='How to setup priority between multiple nic’s (network cards) in Win 7'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_moQurlX0u44/S3jdroNS0NI/AAAAAAAACLI/tWRiQUqNVr0/s72-c/image_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-8051003208859170870</id><published>2010-01-25T02:32:00.001-08:00</published><updated>2010-01-25T02:32:48.666-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Computers and Internet'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='Home Office'/><title type='text'>Update on my Home Setup</title><content type='html'>&lt;p&gt;Since I have started my own company I spent a considerable amount of time and money in setting up the home office. First thing was the power issue. We had a huge power problem, very unpredictable and unreliable. I had to setup a proper backup system. I bought the Su-Kam inverter 800Va for INR 16K which keeps all my computers working for at least 3 hours including the tube light in the computer room. It has been working very well since I installed it last month. The only hiccup is, whenever the inverter switches from online to ups mode (in the event of a power cut), the BSNL modem looses the internet connectivity. It takes a couple of minutes for it to re-connect. As long as my computers don’t restart, I can live with it.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_moQurlX0u44/S11zOjdUH-I/AAAAAAAAB60/jNiNV14urOI/s1600-h/My%20Atom%20Computer%20001%5B6%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="My Atom Computer 001" border="0" alt="My Atom Computer 001" align="right" src="http://lh4.ggpht.com/_moQurlX0u44/S11zQA1KGBI/AAAAAAAAB64/n9-aB8gujQo/My%20Atom%20Computer%20001_thumb%5B4%5D.jpg?imgmax=800" width="375" height="225" /&gt;&lt;/a&gt;I also got rid of my old computers and CRT monitors and bought a new Atom based computer which I use as a thin client and connect to a virtual machine running on my main computer using remote desktop. Works pretty well and consumes very less power. I can keep it running all night to download files and worry little about my power bills. This entire system cost me INR 17K which includes Atom 1.6 processor + motherboard, 2GB ram, 250 Sata hard disk, 19” Dell TFT screen along with nice micro ATX cabinet, keyboard and mouse. It is running Windows 7 RC and play all movies (including HD) very well. The only side effect has been that we (myself and my brothers) are now spending more and more time playing Quake 2 multiplayer :). Good that it does not support newer games. Here is a picture of this computer&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_moQurlX0u44/S11zSNhS4WI/AAAAAAAAB68/Ay_wuUA169s/s1600-h/My%20New%20Core%20i7%20Processor%20%26%20Motherboard%20002%5B8%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="My New Core i7 Processor &amp;amp; Motherboard 002" border="0" alt="My New Core i7 Processor &amp;amp; Motherboard 002" align="left" src="http://lh5.ggpht.com/_moQurlX0u44/S11zTsCt2LI/AAAAAAAAB7A/44g0fcmDLOU/My%20New%20Core%20i7%20Processor%20%26%20Motherboard%20002_thumb%5B6%5D.jpg?imgmax=800" width="405" height="251" /&gt;&lt;/a&gt;I have also purchased Core i7 860 processor along with Intel DB55WG mother board. The package arrived just a while ago. Yet to decide on how I will use this new stuff. I might scavenge out parts from my main computer and build a fresh one around new processor. This is going to give me a lot of speed boost and power cost saving. Or I might build a totally new system and bring additional components for it. My only worry if I build another powerful machine is that we might start playing all my games collection in multiplayer mode. But hey, we need to chill out sometime :) so what the hell. &lt;/p&gt;  &lt;p&gt;When this package arrived, my 3year old picked it up and was very happy thinking I had bought a new cake and was wondering whose birthday it was :). She doesn’t know yet that her dad just bought more work.&lt;/p&gt;  &lt;p&gt;- Shreedhar&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-8051003208859170870?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/8051003208859170870/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=8051003208859170870' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/8051003208859170870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/8051003208859170870'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2010/01/update-on-my-home-setup.html' title='Update on my Home Setup'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_moQurlX0u44/S11zQA1KGBI/AAAAAAAAB64/n9-aB8gujQo/s72-c/My%20Atom%20Computer%20001_thumb%5B4%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-897669836060273246</id><published>2009-10-27T06:39:00.000-07:00</published><updated>2009-10-27T06:47:27.464-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sharing installation'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='Sharing Programs'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><category scheme='http://www.blogger.com/atom/ns#' term='common installation'/><title type='text'>It works!</title><content type='html'>This is a follow up posts to my previous post "&lt;a href="http://techtraveller.blogspot.com/2009/10/trying-to-save-some-space.html"&gt;Trying to save some space&lt;/a&gt;". Surprisingly I was able to install share the installed programs from both Vista and Win 7 RC (both 64 bit) successfully. I had created three partitions on my disk one for Vista, one for Win 7 and another with 100GB for programs.&lt;br /&gt;&lt;br /&gt;So far I have installed most of the programs that I use like Acrobat reader, Winamp, power iso, Visual studio 2010 beta 2, office 2007 SP2 and may more on E drive. The only problem is that you have to install the apps twice, once from within Vista and one more time from within Win 7, so that all DLL's and other stuff are registered correctly. Once it is done, It works flawlessly from both OS.&lt;br /&gt;&lt;br /&gt;I have not yet come accross any issues with the apps that I use regualry, but will sure to update the post if I come across any such bugs.&lt;br /&gt;&lt;br /&gt;Thanks&lt;br /&gt;Shreedhar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-897669836060273246?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/897669836060273246/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=897669836060273246' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/897669836060273246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/897669836060273246'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/10/it-works.html' title='It works!'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-2625865464928412356</id><published>2009-10-18T21:05:00.000-07:00</published><updated>2009-10-18T21:16:26.435-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sharing installation'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><category scheme='http://www.blogger.com/atom/ns#' term='Sharing Programss'/><category scheme='http://www.blogger.com/atom/ns#' term='common installation'/><title type='text'>Trying to save some space</title><content type='html'>As I have mentioned in my previous post, I have quadraple boot system with Vista, Windows 7 RC, Ubuntu and Suse, I constantly find myself try to save disk space as much as possible.&lt;br /&gt;&lt;br /&gt;Specially since my new camera Sony W180 which captures images at 10 MP, I am running out of disk space. I am thinking of how can I get more free space of what I already have.&lt;br /&gt;&lt;br /&gt;Today I was watiching the Windows Defender scan my full system and noticed that it spent most of its time in scanning my MSDN and Windows instalaltions, once for Vista and once for Windows 7. And I am thinking, can I not install a single copy of visual studio, office etc and share it from Vista and Windows 7? I tried googling and binging around for a while but did not come across anything similar.&lt;br /&gt;&lt;br /&gt;So today (because it is an Deepawali holiday for me) I am going to try it. Basically here is the plan. Disconnect my both Sata drive (so they are left unharmed just in case). Connect my old 256GB pata drive back. Will create three partitions on this drive, 1 for vista, 1 for windows 7 and another common partition. I will boot into each OS and install my required programs like Vistual studio express, SQL server, Office, Adobe on to the common partition (overwriting the installation when I am installing it from second os). Then I am going to check if it works. I am it should work flawlessly from both the OS. The settings, MRU list etc all should just work fine. If they do, well I have saved aroung 50GB for myself :)&lt;br /&gt;&lt;br /&gt;Will do an update post once I am done with it.&lt;br /&gt;Shreedhar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-2625865464928412356?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/2625865464928412356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=2625865464928412356' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/2625865464928412356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/2625865464928412356'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/10/trying-to-save-some-space.html' title='Trying to save some space'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-6758791152947549617</id><published>2009-07-31T22:13:00.000-07:00</published><updated>2009-07-31T23:21:10.331-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>My Home Computer and Network Setup</title><content type='html'>I keep doing changes to my setup at home and thought it would be nice to jot about my current setup.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Hardware&lt;/span&gt;&lt;br /&gt;My main desktop computer is a Core 2 Due Quad Q6600 2.4 GHz self assembled PC with 5 GB DDR2 800 ram, Asus P5K deluxe motherboard with 1.5 TB sata disk (1TB + 0.5 TB) ,  22" LCD screen and 5.1 Creative sound speakers.&lt;br /&gt;&lt;br /&gt;A Netgear WGR614V9 wireless router with 4 LAN switch for my home network and connects to BSNL broadband Internet using SmartAX MT882 ADSL modem.&lt;br /&gt;&lt;br /&gt;I also have a Thinkpad laptop T61 provided by my employer for my official work. There is also a Celeron 266 MHz desktop computer and a legacy i386 computer which I rarely use these days. The i386 has its own black &amp;amp; white monitor and it still work fine. It is currently running Dos 6.22, but I have tested some old version of Redhat on it (version 5 or so).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Software&lt;/span&gt;&lt;br /&gt;My main pc is now a quadruple boot between Ubuntu 9.04, Suse 11.0, Windows Vista and Windows 7 RC. Why? I don't know, just for the heck of it I guess! I primarily use Ubuntu and Windows 7.&lt;br /&gt;&lt;br /&gt;I have also setup multiple virtual machines using virtual box for myself and my brothers (&lt;a href="http://jayeshvk.spaces.live.com/"&gt;Jayesh&lt;/a&gt; &amp;amp; Mahesh). It is on these VM's that I do my primary development. Again why? because I can take my VM's with me, easy to backup, my brother can work independent of me and can test all of his downloaded software/keygen/cracks without affecting the others (his VM is full of viruses), or may be this is what happens when you have mammoth of PC with 1.5 TB of disk space.&lt;br /&gt;&lt;br /&gt;Since I use Virtual box for my virtualization, I can re-use the same virtual hard disks (vdi files), and boot the VM's in either Windows or Ubuntu and they work just fine. So no matter who is working on the main PC and what OS they are using, I can still access my virtual machine  remote desktop from my laptop or other old computers.&lt;br /&gt;&lt;br /&gt;It is the ultimate freedom I guess, I can boot into any OS, fire up Eclipse and start coding without even having to worry about which OS my main PC is running. There are software which I miss on Ubuntu like Live Writer, Visual Studio, Wordweb. &lt;a href="http://shreedhar.spaces.live.com/blog/cns%2120BE48062037DA31%21285.entry"&gt;Specially the Live Writer&lt;/a&gt;, it is beautiful piece of software which is unfortunately not available on Ubuntu.&lt;br /&gt;&lt;br /&gt;I feel really good when everything is working as expected and every time I do this, I get to learn something new. Most of all I think it is fun, it is fun for me to mess with computers and software and set then straight again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-6758791152947549617?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/6758791152947549617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=6758791152947549617' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/6758791152947549617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/6758791152947549617'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/07/my-home-computer-and-network-setup.html' title='My Home Computer and Network Setup'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-250468696793606500</id><published>2009-07-31T22:10:00.000-07:00</published><updated>2009-08-21T22:41:35.481-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Computers and Internet'/><title type='text'>Small things making big decision</title><content type='html'>&lt;p&gt;I am trying to make my home computer Ubuntu based, but there is this one little program for which I keep coming back to windows - Windows Live Writer. &lt;/p&gt;  &lt;p&gt;This program make my blogging a pleasant experience, specially so since I have multiple blogs. Nice UI, actual blog based editing, support for multiple blog engines and multiple accounts, local/online editing of posts, multiple drafts, fine set of plugins all these make Live Writer next to none. I have been searching for Live Writer alternative on Linux but so far no one has come near it. &lt;/p&gt;  &lt;p&gt;Everytime I install the latest Ubuntu, setup my development environment and then reach to write blog about any special experience, bam! there is no blogging tool! I reboot my machine back to Windows 7 rc and thats it! This cycle has been happening for over two years now. Such a small utility but yet with a powerful usablitiy appeal keeps me tied to windows. &lt;/p&gt;  &lt;p&gt;If anyone knows of a similar tool for Ubuntu, please comment, I would love to hear.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-250468696793606500?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/250468696793606500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=250468696793606500' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/250468696793606500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/250468696793606500'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/07/small-things-making-big-decision.html' title='Small things making big decision'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-1021716603031079074</id><published>2009-07-29T23:43:00.000-07:00</published><updated>2009-10-18T21:17:03.007-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Ubuntu - Running 32 bit binaries on x64 install of Ubuntu</title><content type='html'>Recently I upgraded to Ubuntu 9.04 Jaunty Jackalope. Though my primary android development is on Winodows 7, I just wanted to give Ubuntu a try. &lt;p&gt;&lt;br /&gt;So I installed Eclipse and Android SDK for linux which comes only for x86 platform. I then download the Sun Java 6 JDK (32 bit) and tried to execute the bin file like this&lt;/p&gt;&lt;p&gt;&lt;br /&gt;sudo ./jdk-6u14-linux-x86.bin&lt;/p&gt;&lt;p&gt;&lt;br /&gt;this command fails saying "No Such file or directory"&lt;/p&gt;&lt;p&gt;&lt;br /&gt;I unzipped the Android SDK and tried to execute some its binaries like adb and mksdcard. Even these fail with similar errors. I did a chmod 755 on all the binaries but still no luck. I finally download the 64bit JDK and it installed fine without any hassles. But Android SDK only has x86 flavor. Then I came across &lt;a href="http://www.howtoforge.com/installing-google-android-sdk1.0-on-ubuntu8.04-desktop"&gt;this post&lt;/a&gt; which specifically asks to install ia32-libs to get android tools running on 64bit Ubuntu installation.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;That did the trick a simple "sudo apt-get ia32-libs" installed all the necessary libraries for running 32 bit apps on my ubuntu and everything works fine now.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;So in case you are wonder why something wont run and you are on a 64 bit linux box, just install 32 bit runtimes and you should be fine.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-1021716603031079074?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/1021716603031079074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=1021716603031079074' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/1021716603031079074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/1021716603031079074'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/07/ubuntu-running-32-bit-banaries-on-x64.html' title='Ubuntu - Running 32 bit binaries on x64 install of Ubuntu'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-8140688361140896917</id><published>2009-07-16T08:14:00.001-07:00</published><updated>2009-07-16T08:14:20.387-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><title type='text'>Upgraded to Galileo build</title><content type='html'>&lt;p&gt;Yesterday I updated my android development environment with Eclipse 3.5 Galileo version. Although the Android SDK does not explicitly mentions the support for Eclipse 3.5, the ADT plug-in works just fine. You will have to re-install the ADT plug-in though.&lt;/p&gt;  &lt;p&gt;The SSL version of the ADT site (&lt;a href="https://dl-ssl.google.com/android/eclipse/"&gt;https://dl-ssl.google.com/android/eclipse/&lt;/a&gt;) never worked on Ganymede and I had to resort to the plain http site. This however worked just fine on Galileo.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-8140688361140896917?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/8140688361140896917/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=8140688361140896917' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/8140688361140896917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/8140688361140896917'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/07/upgraded-to-galileo-build.html' title='Upgraded to Galileo build'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-3149104085932756572</id><published>2009-07-11T07:30:00.001-07:00</published><updated>2009-07-11T07:34:22.862-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>Android: Fixed the unknown virtual device error</title><content type='html'>&lt;p&gt;I created my first hello world project as per the samples/help but when I try to run it, eclipse is throwing me following error&lt;/p&gt;&lt;div&gt;&lt;div style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; BORDER-TOP-STYLE: none; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0pxfont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:black;"   &gt;&lt;pre style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: white; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; BORDER-TOP-STYLE: none; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0pxfont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:black;"   &gt;[2009-07-11 19:29:08 - Emulator] emulator: ERROR: unknown &lt;span style="color:#0000ff;"&gt;virtual&lt;/span&gt; device name: &lt;span style="color:#006080;"&gt;'Android15Device'&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; BORDER-TOP-STYLE: none; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0pxfont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:black;"   &gt;[2009-07-11 19:29:08 - Emulator] emulator: could not find &lt;span style="color:#0000ff;"&gt;virtual&lt;/span&gt; device named &lt;span style="color:#006080;"&gt;'Android15Device'&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Bad thing for a developer who is just starting on a new platform. Isn’t a hellowrld application supposed to just run? I followed all the steps exactly&lt;/div&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;I installed everything&lt;/li&gt;&lt;li&gt;Created android virtual device using AVD manager in eclipse&lt;/li&gt;&lt;li&gt;Created a new helloworld project and selected this device&lt;/li&gt;&lt;li&gt;It compiles correctly, no errors&lt;/li&gt;&lt;li&gt;But the damn thing wont run because emulator cannot find the virtual device.&lt;/li&gt;&lt;/ol&gt;I googled around for some time and was able to fix the issue in no time. Looks like when you create new virtual device using the virtual device manager, it creates them in a .android folder under your user profile. In my case it was&lt;br /&gt;&lt;br /&gt;D:\Users\HomeUser\.android&lt;br /&gt;&lt;br /&gt;But the emulator always looks into C:\Users\HomeUser\.android which does not exist. There was a work around posted on one of the forum (sorry I lost the link, I will update it asap) which suggests using ntfs junction points. Below are the steps to fix this on Windows 7&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Open a command prompt&lt;/li&gt;&lt;li&gt;Change your directory to C:\Users\&amp;lt;&lt;em&gt;UserName&lt;/em&gt;&amp;gt;\ &lt;/li&gt;&lt;li&gt;Create a link to your original .android folder using the mklink command as below (assume your avd has been created in D:\Users\&amp;lt;&lt;em&gt;UserName&lt;/em&gt;&amp;gt;\.android folder&lt;br /&gt;&lt;br /&gt;mklink /J .android D:\Users\&amp;lt;&lt;em&gt;UserName&lt;/em&gt;&amp;gt;\.android&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Remember to change the &amp;lt;&lt;em&gt;UserName&lt;/em&gt;&amp;gt; in above commands to whatever user name you use to login to Windows. That's it, you should now be able to run your application and the emulator will find your virtual devices with no problem.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-3149104085932756572?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/3149104085932756572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=3149104085932756572' title='71 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/3149104085932756572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/3149104085932756572'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/07/android-fixed-unknown-virtual-device.html' title='Android: Fixed the unknown virtual device error'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>71</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-2711711322230617083</id><published>2009-07-11T06:55:00.001-07:00</published><updated>2009-07-11T06:55:34.951-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><title type='text'>Google Android and Mobile development</title><content type='html'>&lt;p&gt;I have mostly been programming in Microsoft technologies specifically using .NET, C# and SQL Server. Most of my development has been on web and web applications and haven’t had a chance to look into other areas. It has been over 6 years now and I think I need a change.&lt;/p&gt;  &lt;p&gt;In past I have tried doing game development using DirectX, OpenGL, also tried a bit of desktop client development and also mobile development on Windows Mobile 6.0, but it was all Microsoft and C/C# for me. I have now found a new are where I can venture into which is both light weight (in the sense I don’t have to do lots of technical study before getting some simple app running) and fresh (for me, as it for mobile platform). Google Android platform for Mobile devices.&lt;/p&gt;  &lt;p&gt;I am not too sure how serious I will take this, but for now its a fresh breeze of air that I needed most. Most probably I will do some business/utility kind of application to get a hang of the platform before moving into games (developing games has always been my dream and I sure ain’t letting it go so easily).&lt;/p&gt;  &lt;p&gt;I finished installing my development tool for Android this morning. It looks like this&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Windows 7 RC build&lt;/li&gt;    &lt;li&gt;Eclipse 3.4 Ganymede (IDE for android development)&lt;/li&gt;    &lt;li&gt;Android ADT plug-in version 0.9.1 &lt;/li&gt;    &lt;li&gt;Android SDK version 1.5 R2 (Primary Android SDK)&lt;/li&gt;    &lt;li&gt;Android NDK version 1.5 R1 (Android Native Development Kit)&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Spent few hours in the afternoon reading the android developer guide and now writing this post before I create my first Hello Android project. Hope this will go fine.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-2711711322230617083?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/2711711322230617083/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=2711711322230617083' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/2711711322230617083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/2711711322230617083'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/07/google-android-and-mobile-development.html' title='Google Android and Mobile development'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-6542790002470079452</id><published>2009-04-13T10:05:00.000-07:00</published><updated>2009-04-13T10:06:09.930-07:00</updated><title type='text'>Trip to Murudeshwar</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_moQurlX0u44/SeNxAcrjcCI/AAAAAAAAArE/wFl6UKpSv-8/s1600-h/DSC06816.JPG"&gt;&lt;img style="MARGIN: 0px 10px 10px 0px; FLOAT: left; CLEAR: both" border="0" alt="" src="http://2.bp.blogspot.com/_moQurlX0u44/SeNxAcrjcCI/AAAAAAAAArE/wFl6UKpSv-8/s320/DSC06816.JPG" /&gt;&lt;/a&gt;  Me and my daughter khushi on Murudeshwar beach. Nice place to be :)&lt;div style='clear:both; text-align:LEFT'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-6542790002470079452?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/6542790002470079452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=6542790002470079452' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/6542790002470079452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/6542790002470079452'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/04/trip-to-murudeshwar.html' title='Trip to Murudeshwar'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_moQurlX0u44/SeNxAcrjcCI/AAAAAAAAArE/wFl6UKpSv-8/s72-c/DSC06816.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-113652355869146885</id><published>2009-01-30T21:55:00.001-08:00</published><updated>2009-01-30T21:55:56.553-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><title type='text'>Mapping all Win32 API to C# Wrapper</title><content type='html'>&lt;p&gt;Recently I sat down to write a simple screen capture program in c# and soon realized that I will have to resort to unmanaged Win32 API's for getting my job done. Well that's ok, someone might have already created a wrapped for most of the function I just have to google it and start using.&lt;/p&gt;  &lt;p&gt;But to my surprise, nothing much has been done in this areas. The closest things was &lt;a href="http://pinvoke.net"&gt;http://pinvoke.net&lt;/a&gt;. It had the most comprehensive set of API's and corresponding C#/VB.net signatures mapped. It also provides you with a visual studio Add-In for inserting the declarations directly in your code without leaving the editor :). It does help a lot but it still does not give me anything concrete to download like a C# file or prebuilt assembly which I just reference in my code and start using it.&lt;/p&gt;  &lt;p&gt;So I have decided to take up this challenge and create a wrapped around commonly used Win32 API's starting with User32, GDI32 and Kernel32. I am planning to host this on codeplex. If you are interested in joining the effort, drop a comment below. Once the project is setup on codeplex I will post further details.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-113652355869146885?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/113652355869146885/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=113652355869146885' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/113652355869146885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/113652355869146885'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2009/01/mapping-all-win32-api-to-c-wrapper.html' title='Mapping all Win32 API to C# Wrapper'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-6415012839211320612</id><published>2008-07-19T01:58:00.001-07:00</published><updated>2008-07-19T01:58:05.266-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><title type='text'>What to keep configurable</title><content type='html'>&lt;p&gt;If it is an option, we would like to have every aspect of our program configurable, so that it can be fine tuned to changing scenarios without requiring a recompile. But that is not the case always and it would also make the program nothing but parser which runs based on set of configurable entries. There has to be a right balance between what goes in configuration files and what is compiled in. I could not find enough material on this subject and hence sharing some of the best methods that have worked for me. Since I work on .NET applications, these are closely related to .NET frame work. &lt;/p&gt;  &lt;p&gt;I have not covered all of the scenarios and there is much left to fill the void. Your thoughts/comments and feedback will be very much appreciated.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;External Systems&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If your program requires to talk to external systems, keep all the entities that require to identify the external system configurable. External program in this context mean any system/software/component whose source code is not directly under your control or is developed/deployed independent of your source code. Examples include&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Data base connection strings. &lt;/li&gt;    &lt;li&gt;URL's to web services or shared web applications. &lt;/li&gt;    &lt;li&gt;Username/password required to identify yourself to external system. &lt;/li&gt;    &lt;li&gt;TCP/IP address and port number of remote services. &lt;/li&gt;    &lt;li&gt;File shares &lt;/li&gt;    &lt;li&gt;Registry key names/custom configuration filenames where further configuration is maintained. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Since you do not have control on external systems which may be moved/changed, it is best to keep them configurable, because when such a change takes place all you have to do is to update your configuration. If any of these information is confidential you may choose to encrypt such entries using classes in System.Cryptography namespace.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Output from external systems&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If you find yourself parsing the output received from an external system to extract the information required for your application, it is better to keep such search filters configurable. This is more prevalent when the output is some sort of XML data. For example assume that you need to find out the joining date of an employee and assume that there is a web service which returns a XML node containing all details about an employee given employee id. You will probably be tempted to code something like the one below&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Courier New"&gt;String data = webService.GetEmployeeDetails(empId);&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Courier New"&gt;string nodeXpath = &amp;quot;&lt;strong&gt;&lt;font color="#ff0000"&gt;/employee/hr_data/joined_on&lt;/font&gt;&lt;font color="#000000"&gt;&amp;quot;;&lt;/font&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Courier New"&gt;XmlDocument oDoc = new XmlDocument();&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Courier New"&gt;oDoc.LoadXml(data);&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Courier New"&gt;XmlNode joinDate = oDoc.SelectSingleNode(nodeXpath);&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Courier New"&gt;if(joinDate != null)&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Courier New"&gt;{&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Courier New"&gt;// Do something useful with joinDate&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Courier New"&gt;}&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You can see that XPath query is hard coded in the program. Since the web service is external they may choose to put the joined_date node somewhere else or even change its name to &amp;quot;doj&amp;quot; to reduce XML size, and this code fails to find the necessary information. This code will then have to be changed to use the new path and go through all the deployment activities (cumbersome), I am sure you will think &amp;quot;only if this was kept in the configuration&amp;quot;. Other such examples may include&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;X Path queries as above. &lt;/li&gt;    &lt;li&gt;Column/table names if the output is a data table and you are referring specific columns in the code. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Other things that are best kept in configuration&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Below are some more items that I have found best if kept in configuration, which allow fine tuning of how program will behave.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Folder/File share where temporary files will be created. &lt;/li&gt;    &lt;li&gt;Internet proxy server name and port &lt;/li&gt;    &lt;li&gt;Web service call timeouts &lt;/li&gt;    &lt;li&gt;SQL command timeouts &lt;/li&gt;    &lt;li&gt;Log files name/event log sources &lt;/li&gt;    &lt;li&gt;Log level (like debug, warning, error etc) &lt;/li&gt;    &lt;li&gt;Things that change often (like list of countries where your services are allowed to be accessed or list of roles who are allowed to access a secure feature etc) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Configuration Store&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Once you identified the items that should be configurable for optimum maintainability, the next thing you want to decide is where to keep the entries. You have couple of options like&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;app.config or web.config which are supported by the .NET framework and are very easy to use in code. &lt;/li&gt;    &lt;li&gt;Custom configuration files &lt;/li&gt;    &lt;li&gt;Windows Registry &lt;/li&gt;    &lt;li&gt;In a SQL server table &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The architecture and design of your application should ideally dictate where you want to keep your configuration. More often it will be spread across multiple stores. Make sure you document them well and write notes about fine tuning the app using these entries.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-6415012839211320612?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/6415012839211320612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=6415012839211320612' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/6415012839211320612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/6415012839211320612'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2008/07/what-to-keep-configurable.html' title='What to keep configurable'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-6557420044775255861</id><published>2008-07-17T01:35:00.001-07:00</published><updated>2008-07-17T01:35:45.028-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AI'/><category scheme='http://www.blogger.com/atom/ns#' term='Tic Tac Toe'/><category scheme='http://www.blogger.com/atom/ns#' term='Game Programming'/><title type='text'>Initial Set Back on Tic-Tac-Toe game</title><content type='html'>&lt;p&gt;As I mentioned in my last post, I started off with creating a OpenGL based tic tac toe game. Due to the minimal graphics required and simplicity of the game, I thought it would be ideal to begin with. I have been working for two hours/day for whole of last week and I am still very far from being complete.&lt;/p&gt;  &lt;p&gt;As it stands today, it can render the tic tac toe board (looks yuk though), resize correctly depending on the window size accept user input via mouse and alternatively plot an 'X' and '&amp;#916;' (triangle shape, I still haven't found the function in OpenGL/GLU/GLUT which can draw a circle for me). The game can also detect the victory condition and display who won the game or if the game is a tie with no further moves possible. But there is no computer (AI) player yet!&lt;/p&gt;  &lt;p&gt;I come from the background of .NET application development where we design the application based OO concepts, various software models, tiered architecture, service oriented architecture etc with emphasis on maintainability, reuse etc. Data hiding/encapsulation is much more prevalent. and I think I have applied similar methods when I did the tic tac toe game.&lt;/p&gt;  &lt;p&gt;At high level my code organization looks like this. I have a main.c which initializes the GLUT, creates window and handles all glut events passes this information to a Game class. Game.cpp is my primary class responsible for starting new game, preprocessing handling input, alternating between actual player and computer player, drawing board, checking for victory conditions etc. It has a 3x3 matrix of representing the board state internally. There is also computer.cpp which represents the computer player and is supposed to decide the next best move to make, but it is still incomplete.&lt;/p&gt;  &lt;p&gt;The problem I am having is, the game class encapsulates (hides) most of the game data as private members. For the AI to work it needs to know what the current state of board looks like and then make a decision. And I am feeling very uncomfortable to make this board data public. I don't know why but I think it is a wrong thing to do. &lt;/p&gt;  &lt;p&gt;May be I haven't come out of my application development mentality. I guess game development is a totally different ball game with different set of rules. I also haven't figured out how AI will actually determine the best move to make even if it somehow get access to board data. I read about a minmax algorithm for such games, which I am going to explore further in coming days. I never thought it would be this difficult, may be I chose a wrong game to start with. &lt;/p&gt;  &lt;p&gt;The current code is so bad that I feel ashamed to even put it here on the public (I have been coding for over 6 years now and generally I write pretty good code in C# .NET which most of my peers appreciate). When I look at my own code for this game, ahh, grrrr, very bad. However I am going to continue, do some more reading, probably on philosophies of game development and change my mind set when working on coding. I beginning to feel that a lot of OO concepts in games is not a good idea (please correct me if I am wrong).&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;My next steps will be&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Read more on OpenGL and figure out how to draw circles. &lt;/li&gt;    &lt;li&gt;Find out the AI algorithm to use for tic tac toe game &lt;/li&gt;    &lt;li&gt;Read more source code and articles and see how other have organized the code and implemented AI and still use better design. &lt;/li&gt;    &lt;li&gt;Draw a neater looking board. &lt;/li&gt;    &lt;li&gt;Show a splash screen while starting up with options to start a new game/exit. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;If you have any inputs, pointers or recommendations for me, please leave a comment. It will be really helpful.&lt;/p&gt;  &lt;p align="right"&gt;&lt;span style="font-family: verdana"&gt;&lt;strong&gt;&lt;span style="font-size: 100%"&gt;- ಶ್ರೀಧರ -&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-6557420044775255861?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/6557420044775255861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=6557420044775255861' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/6557420044775255861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/6557420044775255861'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2008/07/initial-set-back-on-tic-tac-toe-game.html' title='Initial Set Back on Tic-Tac-Toe game'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-3717928686964837201</id><published>2008-07-05T12:01:00.000-07:00</published><updated>2008-07-06T04:46:02.160-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><title type='text'>My Development Environment</title><content type='html'>&lt;font face="treb"&gt;&lt;span style="font-family: verdana"&gt;Just finished setting up my OpenGL development environment.&lt;/span&gt;I freshly installed Ubuntu 8.04 - Hardy Heron with following libraries.     &lt;br /&gt;    &lt;br /&gt;GNU GCC compiler     &lt;br /&gt;Mesa     &lt;br /&gt;freeglut3     &lt;br /&gt;OpenAL     &lt;br /&gt;OpenAL utility toolkit     &lt;br /&gt;    &lt;br /&gt;I also installed Geany and Codeblocks IDE. Both the IDE's are very good and easy to setup and use. Geany is very light wight and is ideal for small projects. Codeblock on the other hand is very feature rich and also provides OpenGL and Glut project types.     &lt;br /&gt;    &lt;br /&gt;I am hoping to get started on some project pretty soon.     &lt;br /&gt;&lt;/font&gt;  &lt;br /&gt;  &lt;p align="right"&gt;&lt;span style="font-family: verdana"&gt;&lt;strong&gt;&lt;span style="font-size: 100%"&gt;- ಶ್ರೀಧರ -&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-3717928686964837201?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/3717928686964837201/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=3717928686964837201' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/3717928686964837201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/3717928686964837201'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2008/07/my-development-environment.html' title='My Development Environment'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-8657946106167148384</id><published>2008-06-23T00:59:00.001-07:00</published><updated>2008-06-23T00:59:13.753-07:00</updated><title type='text'>Why I choose OpenGL</title><content type='html'>&lt;p&gt;When I initially starting looking at game development, all I had was Turbo C 3.0, and I knew that great games could be written using this as Wolf3D was already out. But then not every one is John Carmack and John Romero. I had a graphic library called Fast Graph which came with a book game programming &amp;quot;Action Arcade Adventure Set&amp;quot; by Diana Gruber. This was pretty good and easy to use library and the book was very well written.&lt;/p&gt;  &lt;p&gt;I wrote couple of test programs with it but not a complete game. The 3D games were becoming the hot ones day by day and Fast Graph was only 2D (they have released 3D library as well, but I did not have it). So I started to look for other libraries that could help me out.&lt;/p&gt;  &lt;p&gt;The first thing that I landed up on was DirectX. Unfortunately due the lack of knowledge or grasping power, I could understand it and use it the way I wanted. I got my first triangle to rotate in 3D space but then that was it. I realized that it was too complex to learn on my own.&lt;/p&gt;  &lt;p&gt;Some time later my friend Nayan Khare, told me about an free cross platform 3D library called OpenGL, and how many of the commercial games already ship with it. The best selling point for me was, Quake 2 and Quake 3 (my favorite at that time) used rendering engines based on OpenGL. Moreover I had nothing to download to develop a OpenGL based application. This may not seem like a big thing now but remember that time I only had access to dial up connection for which I had to shell out Rs 40 per hour in a cyber cafe. All I needed to run a OpenGL application was already installed on my machine (without me even knowing about it). &lt;/p&gt;  &lt;p&gt;I quickly downloaded some tutorials, the glut library and I could get my first cube to rotate in 3D space within the matter of hours. Wow! I was amazed, it was a wonderful feeling. At once I knew if I had to do 3D, it will be using OpenGL.&lt;/p&gt;  &lt;p&gt;I believe that OpenGL is the best choice for beginners who have just started with 3D rendering (opinions may vary and I respect that). It is based on C language and the function naming conventions are very easy to remember. It is also available on Linux :). Its state machine architecture is easy to understand and manipulate. Best thing is it is fairly easy and quick to see the results of your work! Loads of documentation available on the net and some real good books are written on the topic (I have listed some of them below).&lt;/p&gt;  &lt;p&gt;I must also mention that OpenGL was very easy for me since I was reading a lot about graphics, 3D mathematics, co-ordinate systems etc after my initial failure with DirectX. The critical knowledge which I was lacking when I started with DirectX. I still have the latest DirectX SDK installed on my machine and over time have become comfortable using it. Some of the demo which I have seen and downloaded work much faster on DirectX than OpenGL. Some say that this is due to the way Microsoft has implemented OpenGL drivers for Windows. Anyway it will OpenGL for me for quite some time, until I can get my first game up and running :)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Links &lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;&lt;a href="http://www.opengl.org"&gt;http://www.opengl.org&lt;/a&gt; &lt;/li&gt;      &lt;li&gt;&lt;a href="http://www.glprogramming.com"&gt;http://www.glprogramming.com&lt;/a&gt;&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;Books      &lt;ul&gt;       &lt;li&gt;OpenGL Programmers Guide (The Red Book also available in html format &lt;a href="http://www.glprogramming.com/red/" target="_blank"&gt;here&lt;/a&gt;) &lt;/li&gt;        &lt;li&gt;OpenGL Super Bible &lt;/li&gt;        &lt;li&gt;Beginning OpenGL Game Programming &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p align="right"&gt;&lt;span style="font-family: verdana"&gt;&lt;strong&gt;&lt;span style="font-size: 100%"&gt;- ಶ್ರೀಧರ -&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-8657946106167148384?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/8657946106167148384/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=8657946106167148384' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/8657946106167148384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/8657946106167148384'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2008/06/why-i-choose-opengl.html' title='Why I choose OpenGL'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2698530851855759250.post-4301028674175672464</id><published>2008-06-14T01:03:00.000-07:00</published><updated>2008-06-14T02:41:47.999-07:00</updated><title type='text'>Introduction</title><content type='html'>&lt;p&gt;Hello world!&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family: verdana"&gt;&lt;span style="font-size: 100%"&gt;Guess you are all familiar with this one! and it also states my primary interest in creating this blog. Yes, I am a programmer with a lot of interest in game development but currently working for a reputed firm developing web applications for my living :(.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family: verdana"&gt;&lt;span style="font-size: 100%"&gt;Well that does not stop me from learning and developing my own small little games and this is what my blog is all about. I will post stuff on this blog from things I read and my own experience at game development to help other hobbyist like me. I will also share my gaming projects as a go along.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family: verdana"&gt;&lt;span style="font-size: 100%"&gt;I am also interested in other aspects of game development like AI, Physics, Simulations, Sound etc and keep reading a lot about these subjects. But my current priority is on getting familiar with OpenGL library for rendering. Soon after that I will be writing a small game (sort of ping-pong or tic-tac-toe type :) ), but the aim is to do something of Quake 4 quality (only in graphic quality, I know that game sucks!) better yet something like Half Life (I like this one very much, the graphics, game play, intelligence everything).&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family: verdana"&gt;&lt;span style="font-size: 100%"&gt;I know that these are very big goals, but I am planing to take very small and consistent steps towards it. This blog will be another means to keep myself on track as I will be responsible for readers who will be expecting a post here. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family: verdana"&gt;&lt;span style="font-size: 100%"&gt;I will also occasionally post about web development using .NET as majority of my time is spent on this. Well wish me luck and let me prepare for my first actual post.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family: verdana"&gt;&lt;span style="font-size: 100%"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p align="right"&gt;&lt;span style="font-family: verdana"&gt;&lt;strong&gt;&lt;span style="font-size: 100%"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p align="right"&gt;&lt;span style="font-family: verdana"&gt;&lt;strong&gt;&lt;span style="font-size: 100%"&gt;- ಶ್ರೀಧರ -&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2698530851855759250-4301028674175672464?l=techtraveller.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techtraveller.blogspot.com/feeds/4301028674175672464/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2698530851855759250&amp;postID=4301028674175672464' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/4301028674175672464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2698530851855759250/posts/default/4301028674175672464'/><link rel='alternate' type='text/html' href='http://techtraveller.blogspot.com/2008/06/introduction-hello-world-guess-you-are.html' title='Introduction'/><author><name>Shree</name><uri>http://www.blogger.com/profile/09998839606414103069</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://bp1.blogger.com/_moQurlX0u44/SFN5cJxkuCI/AAAAAAAAAb0/Tk42J4q-78Q/S220/Shreedhar.Jpg'/></author><thr:total>0</thr:total></entry></feed>
