<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Technocratz</title>
	<atom:link href="http://technocratz.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://technocratz.wordpress.com</link>
	<description>Just another weblog</description>
	<lastBuildDate>Mon, 11 May 2009 13:10:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='technocratz.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Technocratz</title>
		<link>http://technocratz.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://technocratz.wordpress.com/osd.xml" title="Technocratz" />
	<atom:link rel='hub' href='http://technocratz.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Sometimes…names kick the shit out of us!</title>
		<link>http://technocratz.wordpress.com/2008/03/29/sometimes%e2%80%a6names-kick-the-shit-out-of-us/</link>
		<comments>http://technocratz.wordpress.com/2008/03/29/sometimes%e2%80%a6names-kick-the-shit-out-of-us/#comments</comments>
		<pubDate>Sat, 29 Mar 2008 05:47:02 +0000</pubDate>
		<dc:creator>technocratz</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://technocratz.wordpress.com/2008/03/29/sometimes%e2%80%a6names-kick-the-shit-out-of-us/</guid>
		<description><![CDATA[I didn&#8217;t think it was physically possible, but this both sucks and blows. &#8211; Bart Simpson I had a name clash in code of mine, yesterday. I was working on a framework for visualizing Data Exchange, Data overflow, Performance management, etc in Application Specific Servers. People who do charting, like to draw various shapes on [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=14&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div style="border-style:none none solid;border-width:medium medium 1.5pt;padding:0 0 1pt;">
<p style="border:medium none;text-align:center;line-height:150%;padding:0;" align="center"><b><span style="font-size:16pt;line-height:150%;font-family:Arial;color:black;"><br />
</span></b></div>
<p style="text-align:justify;line-height:150%;"><i><span style="font-family:Georgia;color:black;">I didn&#8217;t think it was physically possible, but this both sucks and blows. </span></i><i><span style="font-family:Georgia;">&#8211; <b>Bart Simpson</b></span></i></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">I had a name clash in code of mine, yesterday. I was working on a framework for visualizing Data Exchange, Data overflow, Performance management, etc in Application Specific Servers. People who do charting, like to draw various shapes on the screen. One of those shapes is a rectangle. So using my entire wisdom (thanks to Bhagavad-Gita and <i>Simula &amp; Simulacra…</i>I did acquire some wisdom off-late), I named the class that represents a rectangle&#8230; Rectangle…and thus the hell broke loose on me…Holy Cow!!!</span></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">In another class, I had to use both that class and java.awt.Rectangle. As Java doesn&#8217;t have any kind of aliasing facility, I was forced to reference one of those classes using the short name Rectangle, and the other using the full package name. As a result whenever I had to reference java.awt.Rectangle my code looked like this:</span></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">java.awt.Rectangle rectangle = new java.awt.Rectangle (10, 10, 100, 100);</span></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">It turns out that Java namespaces are just for show. I can&#8217;t imagine anyone thinking that the code above is the proper solution to the name clash problem.</span></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">What Java needs is, at least, a way to import a class and define an alias. Something like:</span></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">import com.acme.something.Rectangle as RectangleShape;</span></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">Then one can simply use both Rectangle and RectangleShape and the compiler can discern between the two classes without using long names.</span></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">Even better, Sun should define the equivalent of C++&#8217;s typedef statement. They plan on delivering generics in one of the next versions, and I&#8217;m pretty sure few people will enjoy typing stuff like:</span></p>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">Stack&lt;List&lt;MyClass&gt;&gt;</span></p>
<div style="border-style:none none solid;border-width:medium medium 1.5pt;padding:0 0 1pt;">
<p style="border:medium none;text-align:justify;line-height:150%;padding:0;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">Throughout their code. </span></p>
</div>
<p style="text-align:justify;line-height:150%;"><span style="font-size:11pt;line-height:150%;font-family:Arial;color:black;">­Ping me: <a href="mailto:getarakesh@gmail.com">getarakesh@gmail.com</a> </span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technocratz.wordpress.com/14/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technocratz.wordpress.com/14/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technocratz.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technocratz.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technocratz.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technocratz.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/technocratz.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/technocratz.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/technocratz.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/technocratz.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technocratz.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technocratz.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technocratz.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technocratz.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technocratz.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technocratz.wordpress.com/14/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=14&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://technocratz.wordpress.com/2008/03/29/sometimes%e2%80%a6names-kick-the-shit-out-of-us/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6740edc2315958627eee2d683d900e9e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">technocratz</media:title>
		</media:content>
	</item>
		<item>
		<title>Internet via Cable</title>
		<link>http://technocratz.wordpress.com/2008/03/26/internet-via-cable/</link>
		<comments>http://technocratz.wordpress.com/2008/03/26/internet-via-cable/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 13:17:55 +0000</pubDate>
		<dc:creator>technocratz</dc:creator>
				<category><![CDATA[Computer Science and Technology]]></category>

		<guid isPermaLink="false">http://technocratz.wordpress.com/?p=13</guid>
		<description><![CDATA[Troubleshooting…a hammer can come handy!!! After securing a rank in Pre-engineering entrance exam, which according to my dad was similar to the distance between earth and sun, I somehow got admission in a rural engineering college…at last!!! The place is called mahabubnagar. The college was nice, it’s in the town and it is in the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=13&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!-- @page { size: 21cm 29.7cm; margin: 2cm } 		H1 { margin-top: 0.49cm; margin-bottom: 0.49cm; page-break-after: auto } 		H1.western { font-family: "Georgia", serif; font-weight: medium } 		H1.cjk { font-family: "DejaVu Sans"; font-weight: medium } 		H1.ctl { font-family: "DejaVu Sans"; font-weight: medium } 		P { margin-bottom: 0.21cm } 		H2 { margin-top: 0.49cm; margin-bottom: 0.49cm; page-break-after: auto } 		H2.western { font-family: "Georgia", serif; font-weight: medium } 		H2.cjk { font-family: "DejaVu Sans"; font-weight: medium } 		H2.ctl { font-family: "DejaVu Sans"; font-weight: medium } 		A:link { color: #0000ff } 	--> <!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } --></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:small;"><strong>Troubleshooting…a hammer can come handy!!!</strong></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">After securing a rank in Pre-engineering entrance exam, which according to my dad was similar to the distance between earth and sun, I somehow got admission in a rural engineering college…at last!!! The place is called mahabubnagar. The college was nice, it’s in the town and it is in the neighborhood with the worst phone infrastructure in the whole country.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">I wanted to install ISDN, but I couldn’t. Since there aren’t enough copper wires in my neighborhood, most wires actually carry four phone lines through a device called PCM. (I’m assuming that stands for pulse-code modulation.) ISDN requires a dedicated copper wire for itself, thus no ISDN for me. </span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">So I went for the next-best alternative: <strong>Internet </strong>via <strong>cable</strong>.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The Promise</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The general idea is this: you put a modem, connect the cable to it and activate the internet.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The packets go out through the modem, but the responses come back at high speed via the dedicated cable line.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Plus you get to watch Cable-TV on your monitor, something I don’t care for (I’m bachelor still…so…hehehehe).</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Setting It Up</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The company that sells that stuff here in Mahabubnagar is Balreddy Lingareddy Maa TV Cable Internet Service (BLMTVCIS…whoa…lets call it this way from now on). </span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The company that sells the service for them here in our locality is Pedireddy Chinnareddy Maa TV Internet Service (PCMTVIS… whoa…lets call it this way from now on). I didn’t like that. I remember once calling them in order to buy a plan, 100-megabit Broadband card. They told me they had it on stock. When I showed up 20 minutes later, they acted surprised and told me that I have to order the card two days in advance…good god!!! This is standard broadband connection as it gets. If they don’t have that on stock, what do they have?</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">But I didn’t have much choice. So I called PCMTVIS and ordered the service. </span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The Cable service people came first. They had all the regular gear they need Plus a hammer. They fixed a 12 meter cable around and said someone else will come to install the computer software for internet to get activated. </span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Sometime later someone named jaggulu called. Would it be OK if he came at around 5:30 p.m. to install the software? Sure it would.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Jaggulu came at 5:30 and it was immediately obvious that he doesn’t know what he is doing. First he had the “regular gear” plus a “Hammer”…Holy cow, now why on earth does a software installation guy need a hammer and screws (part of the regular gear). He needed to install two drivers but installed only one, and then wasn’t sure why the program that runs the whole show wasn’t working. Then he removed and added the driver and the program a couple of times refusing to restart Windows. After numerous consultations with his colleagues over phone, he remembered that he also needs the other driver.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">After he installed the other driver, the thing still didn’t work. He tortured my CPU for a while de-installing and re-installing drivers, until he managed to get a Blue Screen of Death. </span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">After that, he couldn’t remove the driver anymore. Any attempt to touch the driver resulted in a BSOD. This is a machine that has been running non-stop for months, and he managed to break it in less than an hour.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">At this point, I was ready to use him as a chew toy for my dog. So I told him to go home and I’ll take care of it (Infact, I wanted to request him the hammer…just to use it again on him)!!!</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">I re-installed Windows that night.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Really Setting It Up</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Setting the whole thing up took only four steps:</span></span></span></p>
<ol>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Run 	the Add New Hardware wizard. Windows will find a new multimedia 	device. Point it to the Windows XP drivers on the disk. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Run 	the Add New Hardware wizard. Windows will not find anything. Tell it 	you want to install a network card, and then point it to the Windows 	XP drivers on the disk. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Install 	the program from the CD. Run it. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">In 	the Internet Explorer options, type in the proxy server. </span></span></span></p>
</li>
</ol>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">And that’s it!!!</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">This is a classic high-latency high-speed link. The pages take something like 3-4 seconds to start downloading, and then, whoosh, they are <em>there.</em></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">I had a problem downloading large files. After 50-500 KB, they would stop. <span style="text-decoration:underline;">Meta Download Manager</span> didn’t help, either.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Since I didn’t want to call anyone in PCMTVIS anymore (else they would suggest me to use the hammer again!!!), I called BLMTVCIS (Remember, the mother cow). They told me that there is a sync problem that most download managers can’t handle. They said only </span></span></span><a href="http://www.flashget.com/index_en.htm"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span style="text-decoration:underline;">FlashGet</span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"> can do it. I downloaded</span></span></span><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span style="text-decoration:underline;"> FlashGet</span></span></span></span><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">, and it was </span></span></span><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><em>fast.</em></span></span></span><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"> I downloaded the 85 MB Windows XP SP2 in 50 minutes or so.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Everything works!!!</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Lessons Learned</span></span></span></p>
<ol>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Don’t 	let someone from PCMTVIS install the software. Send them home and do 	it yourself. There is a manual that shows how to do it. It’s not 	for Windows XP, but its close enough and you should be able to 	follow it. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">You 	need FlashGet. No other download manager will work. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Put 	a proxy server on your gateway machine. That way the annoying 	username/password popup for the proxy server won’t jump out every 	time you open a new instance of IE. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The 	service is unreliable. Some days it works great, some days it sucks. 	It mostly works great, but be ready to turn it off on bad days. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The 	driver for Windows XP seems to enter some weird state after a few 	days and the easiest way to get it to work again is to restart 	Windows.</span></span></span></p>
</li>
</ol>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technocratz.wordpress.com/13/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technocratz.wordpress.com/13/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technocratz.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technocratz.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technocratz.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technocratz.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/technocratz.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/technocratz.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/technocratz.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/technocratz.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technocratz.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technocratz.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technocratz.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technocratz.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technocratz.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technocratz.wordpress.com/13/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=13&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://technocratz.wordpress.com/2008/03/26/internet-via-cable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6740edc2315958627eee2d683d900e9e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">technocratz</media:title>
		</media:content>
	</item>
		<item>
		<title>Reading your mind!!!!!</title>
		<link>http://technocratz.wordpress.com/2008/03/25/my-car-keys/</link>
		<comments>http://technocratz.wordpress.com/2008/03/25/my-car-keys/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 06:58:40 +0000</pubDate>
		<dc:creator>technocratz</dc:creator>
				<category><![CDATA[Computer Science and Technology]]></category>

		<guid isPermaLink="false">http://technocratz.wordpress.com/2008/03/25/my-car-keys/</guid>
		<description><![CDATA[[My car keys] &#60;Search&#62; Is this what you expecting from a search engine?!?!? After successfully convincing my good friend at Microsoft research Facility (MSRF), Hyderabad, India to author a article for this blog sake…I have taken liberty in asking him to help me out with another article for the blog…which he immediately agreed to fearing [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=12&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } --></p>
<p style="margin-bottom:.49cm;line-height:150%;" lang="en-US" align="center"><span style="font-family:Arial;"><span style="font-size:medium;"><strong>[My car keys] &lt;Search&gt; </strong></span></span></p>
<p style="margin-top:.49cm;margin-bottom:.49cm;line-height:150%;" lang="en-US" align="center"><span style="font-family:Arial;"><span style="font-size:medium;"><strong>Is this what you expecting from a search engine?!?!?</strong></span></span></p>
<p style="margin-top:.49cm;margin-bottom:.49cm;line-height:150%;" lang="en-US" align="justify"><span style="font-family:Georgia,serif;"><span style="font-size:x-small;"><em>After successfully convincing my good friend at Microsoft research Facility (MSRF), Hyderabad, India to author a article for this blog sake…I have taken liberty in asking him to help me out with another article for the blog…which he immediately agreed to fearing “will-you-write-or-shall-I-pull-the-trigger” attitude of mine…nevertheless, we are lucky to have him write another article for us…Thanks Dutch!</em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Time is a concept—or is it a magazine?</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">When it comes to ambiguous words or phrases, human beings are generally able to discern a distinction, whether it be by explicit explanation or by more subtle signals, such as written or oral context, gestures, or even body language. In many ways, the keys to understanding are in the eyes of the beholder.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Personal computers, while invaluable for a broad variety of informational chores, lack an ability to recognize and interpret some of these communication cues. Take search, for instance. How is a search engine to know the precise intention of a user who searches for an ambiguous term?</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“</span><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Search engines have to understand user intent, or at least behave like they do,” says </span></span></span></span><a href="http://research.microsoft.com/%7Enickcr/"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Nick Craswell</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">, who, along with Microsoft Research colleague </span></span></span></span><a href="http://research.microsoft.com/%7Eszummer/"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Martin Szummer</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">, has written a paper called </span></span></span></span><a href="http://research.microsoft.com/users/nickcr/pubs/craswell_sigir07.pdf"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><em><span style="text-decoration:underline;">Random Walks on the Click Graph</span></em></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">, presented during </span></span></span></span><a href="http://www.sigir2007.org/"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">SIGIR 2007</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">, the 30th annual international conference of the Association of Computing Machinery’s Special Interest Group on Information Retrieval, held July 23-27 in Amsterdam, Netherlands.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">The paper by Craswell and Szummer was just one of a strong contingent of accepted papers from Microsoft Research for this year’s conference. Of 85 papers accepted for presentation during the event, no fewer than </span></span></span></span><a href="http://research.microsoft.com/news/featurestories/source/sigirpapers2007.aspx"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">13 (15 percent) were from Microsoft Research</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">, with four of the organization’s five worldwide labs represented. </span></span></span></span><a href="http://research.microsoft.com/aboutmsr/labs/asia/default.aspx"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Microsoft Research Asia</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> and </span></span></span></span><a href="http://research.microsoft.com/aboutmsr/labs/redmond/default.aspx"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Microsoft Research Redmond</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> contributed five apiece, while </span></span></span></span><a href="http://research.microsoft.com/aboutmsr/labs/cambridge/default.aspx"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Microsoft Research Cambridge</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> added a couple more and </span></span></span></span><a href="http://research.microsoft.com/aboutmsr/labs/siliconvalley/default.aspx"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Microsoft Research Silicon Valley</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> one.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">That success ratio extended a notable presence for Microsoft Research at SIGIR. In 2006, the organization submitted 13 of the 74 papers accepted. Microsoft Research had 16 papers accepted in 2005, 10 in 2004.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Such numbers underscore the importance Microsoft—and Microsoft Research in particular—are placing on information-retrieval innovation. Papers named </span></span></span></span><a href="http://research.microsoft.com/users/jianh/publication/fp384.pdf"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><em><span style="text-decoration:underline;">Cross-Lingual Query Suggestion Using Query Logs of Different Languages</span></em></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><em>, </em></span></span></span></span><a href="http://research.microsoft.com/users/robertson/papers/Mizzaro_Robertson_SIGIR07.pdf"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><em><span style="text-decoration:underline;">HITS Hits TREC: Exploring IR Evaluation Results with Network Analysis</span></em></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><em>, and </em></span></span></span></span><a href="http://people.csail.mit.edu/teevan/work/publications/posters/sigir06.pdf"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><em><span style="text-decoration:underline;">History Repeats Itself: Re-Finding Queries in a Major Search Engine’s Logs</span></em></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> provide anecdotal evidence of the breadth and the depth of the projects Microsoft Research scientists presented during the five days of the Amsterdam conference.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">In fact, one of the Microsoft Research papers, </span></span></span></span><a href="http://research.microsoft.com/%7Eryenw/papers/WhiteSIGIR2007a.pdf"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><em><span style="text-decoration:underline;">Studying the Use of Popular Destinations to Enhance Web Search Interaction</span></em></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">, was honored with the conference’s best-paper award. The paper was based on work by the Redmond lab’s </span></span></span></span><a href="http://research.microsoft.com/%7Eryenw/"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Ryen White</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">, </span></span></span></span><a href="http://research.microsoft.com/%7Embilenko/"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Mikhail Bilenko</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">, and </span></span></span></span><a href="http://research.microsoft.com/users/silviu/"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Silviu Cucerzan</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">For a taste of the sort of work displayed during SIGIR 2007, consider the efforts of Craswell and Szummer to disambiguate search results generated by imprecise user queries.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“</span><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Users might type a short query like ‘time,’ “ says Craswell, a Microsoft Research Cambridge researcher currently reporting directly to Redmond’s </span></span></span></span><a href="http://www.live.com/"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"><span style="text-decoration:underline;">Live Search</span></span></span></span></span></a><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> team. “But engines have to automatically determine if the user wants to know the current time or if the user is looking for TIME magazine.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">We have developed a general method that finds a cluster of related queries and search results that can be used for a number of things. One application is to find out whether two queries are synonymous.”</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Craswell and Szummer, a Microsoft Research Cambridge researcher, use click data to find associations among search queries and search results. The data can be analyzed in four ways: query to query, query to document, document to query, and document to document. The result is a rich set of associations that can yield revealing information to enable researchers to fine-tune search results based on what the method is able to determine is the user’s specific target.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Back to the “time” example. A query for the word “time” has a host of associated searches:</span></span></span></p>
<ul>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Time 	zones. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Atomic 	clock. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Official 	time. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">TIME 	magazine. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">World 	clock. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">U.S. 	time zones. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">World 	time. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Time 	zone. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Correct 	time. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">What 	time is it? </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">U.S. 	time. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">U.S. 	time-zone map. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Atomic 	time. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Time 	zones.” </span></span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Central 	time. </span></span></span></p>
</li>
<li>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Official 	U.S. time. </span></span></span></p>
</li>
</ul>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The magazine is there, as are requests for the correct time and time zones. Lower down the list, we would find “daylight-saving time,” “telling time,” “time management,” “time sheets,” and “time travel.” When you consider the sheer breadth of what might be identified as a suitable match for a single word, the need for a more precise search mechanism becomes apparent.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">We are trying to find,” Craswell explains, “a high-quality set of synonymous queries and results. Because our work is based on a large set of user click data, we’re getting a handle on user intent. Whereas click data can only go from a precise query to a set of documents, we find larger clusters of related queries and information.”</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Click data, on which the project relies, provides the means to analyze the results for a particular query. The engine devised by Craswell and Szummer considers the history of all the people who ever typed that query and the preference of those users according to which results were often clicked. The history of which results were selected for which queries is click data.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Click-based methods,” Craswell notes, “are a very good way of understanding the dominant intent.”</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">In doing so, the researchers are able to take a look at queries that are synonymous, but “synonymous queries,” as it turns out, are not quite what you might expect.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Interestingly,” Craswell says, “the definition of what’s a synonymous query is different from synonyms you would find in a thesaurus. It’s very specific to search and depends on understanding user intent.”</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The project by Craswell and Szummer utilizes a new, productive direction for search-result analysis.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">We can aggregate clicks across many queries in this novel way,” Szummer says. “We picked one of the applications—query-to-document association—and did some solid experiments to show that it works very well.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Some things that are obvious to people are not obvious to computers without an advanced algorithm like ours. The algorithm can correctly use the click data to make distinctions between what appear to be closely related concepts.”</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The researchers can use their search system with any application that has click logs. The paper cites examples from image search, but the principles have since been successfully applied to general Web search.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">And, in the interests of privacy, it is important to note that the results from click logs are used in aggregate, thereby protecting users in the study from an invasion of their privacy.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Click logs are a record of how people use a search engine,” Craswell notes. “The important thing to note is that we aggregate the data in such a way that it’s not personally identifiable. We don’t say, ‘Joe clicked result XYZ, so do something special the next time Joe searches.” Instead, we say, ‘Consider all the people who ever typed the query XYZ—and only do so if it’s 10 or more people—and analyze their preferred results to help every future user who types XYZ.”</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The desired result is that, one day, users who search for TIME magazine by typing “time” into their search engine will get just what they were seeking, which would satisfy not only those users, but also the researchers who helped refine the mechanism to make it happen.</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;">“<span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">The main application,” Craswell says, “is a search system that gets this stuff right, which leads to better search results.”</span></span></span></span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technocratz.wordpress.com/12/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technocratz.wordpress.com/12/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technocratz.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technocratz.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technocratz.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technocratz.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/technocratz.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/technocratz.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/technocratz.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/technocratz.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technocratz.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technocratz.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technocratz.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technocratz.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technocratz.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technocratz.wordpress.com/12/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=12&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://technocratz.wordpress.com/2008/03/25/my-car-keys/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6740edc2315958627eee2d683d900e9e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">technocratz</media:title>
		</media:content>
	</item>
		<item>
		<title>Multiple ID’s is actually Fun!!!</title>
		<link>http://technocratz.wordpress.com/2008/03/20/multiple-id%e2%80%99s-is-actually-fun/</link>
		<comments>http://technocratz.wordpress.com/2008/03/20/multiple-id%e2%80%99s-is-actually-fun/#comments</comments>
		<pubDate>Thu, 20 Mar 2008 07:39:28 +0000</pubDate>
		<dc:creator>technocratz</dc:creator>
				<category><![CDATA[Hacks]]></category>

		<guid isPermaLink="false">http://technocratz.wordpress.com/2008/03/20/multiple-id%e2%80%99s-is-actually-fun/</guid>
		<description><![CDATA[To all “Intelligent-but-not-well-informed”, here is a way to replicate yahoo messenger and G-talk through which u can create multiple instances if in case u need to… YAHOO MESSENGER: Go to Start -&#62; Run -&#62; Type regedit -&#62; hit enter Go to HKEY_CURRENT_USER-&#62;&#62; Software -&#62;&#62; Yahoo -&#62;&#62; pager -&#62;&#62;Test Right click on test -&#62; choose New [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=11&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } --></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">To all “Intelligent-but-not-well-informed”, here is a way to replicate yahoo messenger and G-talk through which u can create multiple instances if in case u need to…</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Arial;"><span style="font-size:x-small;"><strong>YAHOO MESSENGER:</strong></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Georgia;"><span style="font-size:x-small;"><em>Go to Start -&gt; Run -&gt; Type regedit -&gt; hit enter</em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Georgia;"><span style="font-size:x-small;"><em>Go to HKEY_CURRENT_USER-&gt;&gt; Software -&gt;&gt; Yahoo -&gt;&gt; pager -&gt;&gt;Test</em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Georgia;"><span style="font-size:x-small;"><em>Right click on test -&gt; choose New -&gt;Dword value </em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Arial;"><span style="font-size:x-small;"><em>Rename it as Plural.</em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Georgia;"><span style="font-size:x-small;"><em>Double click it -&gt; assign a decimal value of 1.</em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Georgia;"><span style="font-size:x-small;"><em>Close registry -&gt; Restart yahoo messenger.</em></span></span></p>
<p style="line-height:150%;" align="justify"><img src="http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif" border="0" alt=":)" width="15" height="15" align="bottom" /> <span style="font-size:x-small;"><span style="font-family:Arial;">NOW you can open yahoo messenger N number of times…!!!</span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Arial;"><span style="font-size:x-small;"><strong>GOOGLE TALK:</strong></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Arial;"><span style="font-size:x-small;"><em>Create a shortcut of Google Talk messenger on your desktop or any other location.</em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Arial;"><span style="font-size:x-small;"><em>Right click on the Google Talk messenger icon and select properties option</em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Georgia;"><span style="font-size:x-small;"><em>Modify target location text: “c:\program files\google\google talk\googletalk.exe” /startmenu </em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Georgia;"><span style="font-size:x-small;"><em>To:“c:\program files\google\google talk\googletalk.exe” /nomutex</em></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Arial;"><span style="font-size:x-small;"><em>Click OK</em></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Now you can run multiple instances of G-talk.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Now isn’t this good news…Three cheers to my infinite wisdom &amp; kind heart  <img src="http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif" border="0" alt=":D" width="15" height="15" align="bottom" /> !!!</span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="font-family:Arial;"><span style="font-size:x-small;">Get in touch: <a href="mailto:getarakesh@gmail.com">getarakesh@gmail.com</a> </span></span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technocratz.wordpress.com/11/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technocratz.wordpress.com/11/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technocratz.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technocratz.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technocratz.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technocratz.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/technocratz.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/technocratz.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/technocratz.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/technocratz.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technocratz.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technocratz.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technocratz.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technocratz.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technocratz.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technocratz.wordpress.com/11/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=11&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://technocratz.wordpress.com/2008/03/20/multiple-id%e2%80%99s-is-actually-fun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6740edc2315958627eee2d683d900e9e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">technocratz</media:title>
		</media:content>

		<media:content url="http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif" medium="image">
			<media:title type="html">:)</media:title>
		</media:content>

		<media:content url="http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif" medium="image">
			<media:title type="html">:D</media:title>
		</media:content>
	</item>
		<item>
		<title>Life is not smooth</title>
		<link>http://technocratz.wordpress.com/2008/03/18/life-is-not-smooth/</link>
		<comments>http://technocratz.wordpress.com/2008/03/18/life-is-not-smooth/#comments</comments>
		<pubDate>Tue, 18 Mar 2008 15:41:18 +0000</pubDate>
		<dc:creator>technocratz</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://technocratz.wordpress.com/?p=10</guid>
		<description><![CDATA[This article is actually a personal experience of a Dutchman who spent two years in Hyderabad, India, as a visiting expert at Microsoft Research facility. Being a very good friend of mine he volunteered to write this for me on condition that I don’t reveal his name. It is all about Indian roads…our roads!!! Driving [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=10&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!-- @page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } 	--> <!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } --></p>
<p style="line-height:150%;" lang="en-US" align="justify"><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } 	--><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">This article is actually a personal experience of a Dutchman who spent two years in Hyderabad, India, as a visiting expert at Microsoft Research facility. Being a very good friend of mine he volunteered to write this for me on condition that I don’t reveal his name. It is all about Indian roads…our roads!!!</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Driving in India: </span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">For the benefit of citizens of globalization, visiting India and daring to drive on Indian roads, I am offering a few hints for survival. They are applicable to every place in India except Bihar, where life outside a vehicle is only marginally safer!!!</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Indian road rules broadly operate within the domain of karma where you do your best, and leave the results to your insurance company. The hints are as follows: Do we drive on the left or right of the road? The answer is “both”.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Basically you start on the left of the road, unless it is occupied. In that case, go to the right, unless that is also occupied. Then proceed by occupying the next available gap, as in chess. Just trust your instincts, ascertain the direction, and proceed. Adherence to road rules leads to much misery and occasional fatality. Most drivers don’t drive, but just aim their vehicles in the generally intended direction.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Don’t you get discouraged or underestimate yourself except for a belief in reincarnation; the other drivers are not in any better position. Don’t stop at pedestrian crossings just because some fool wants to cross the road. You may do so only if you enjoy being bumped in the back. Pedestrians have been strictly instructed to cross only when traffic is moving slowly or has come to a dead stop because some minister is in town. Still some idiot may try to wade across, but then, let us not talk ill of the dead.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Blowing your horn is not a sign of protest as in some countries. We horn to express joy, resentment, frustration, romance and bare lust (two brisk blasts), or just mobilize a dozing cow in the middle of the bazaar. Keep informative books in the glove compartment. You may read them during traffic jams, while awaiting the chief minister’s motorcade, or waiting for the rainwater to recede when over ground traffic meets underground drainage.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Occasionally you might see what looks like a UFO with blinking colored lights and weird sounds emanating from within. This is an illuminated bus, full of happy pilgrims singing bhajans. These pilgrims go at breakneck speed, seeking contact with the Almighty, often meeting with success.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><strong>Auto Rickshaw (Baby Taxi):</strong> The result of a collision between a rickshaw and an automobile, this three-wheeled vehicle works on an external combustion engine that runs on a mixture of kerosene oil and creosote. This triangular vehicle carries iron rods, gas cylinders or passengers three times its weight and dimension, at an unspecified fare. After careful geometric calculations, children are folded and packed into these auto rickshaws until some children in the periphery are not in contact with the vehicle at all. Then their school bags are pushed into the microscopic gaps all round so those minor collisions with other vehicles on the road cause no permanent damage. Of course, the peripheral children are charged half the fare and also learn Newton’s laws of motion enroute to school. Auto-rickshaw drivers follow the road rules depicted in the film Ben-Hur, and are licensed to irritate.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Mopeds: </span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">The moped looks like an oil tin on wheels and makes noise like an electric shaver. It runs 30 miles on a teaspoon of petrol and travels at break-bottom speed. As the sides of the road are too rough for a ride, the moped drivers tend to drive in the middle of the road; they would rather drive under heavier vehicles instead of around them and are often “mopped” off the tarmac.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">One-way Street: </span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">These boards are put up by traffic people to add jest in their otherwise drab lives. Don’t stick to the literal meaning and proceed in one direction. In metaphysical terms, it means that you cannot proceed in two directions at once. So drive as you like, in reverse throughout, if you are the fussy type. Least I sound hypercritical; I must add a positive point also. Rash and fast driving in residential areas has been prevented by providing a “speed breaker”; two for each house. This mound, incidentally, covers the water and drainage pipes for that residence and is left untarred for easy identification by the corporation authorities, should they want to recover the pipe for year-end accounting.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Night driving on Indian roads can be an exhilarating experience for those with the mental make up of Ghenghis Khan. In a way, it is like playing Russian roulette, because you do not know who amongst the drivers is loaded. What looks like premature dawn on the horizon turns out to be a truck attempting a speed record. On encountering it, just pull partly into the field adjoining the road until the phenomenon passes.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">Our roads do not have shoulders, but occasional boulders. Do not blink your lights expecting reciprocation. The only dim thing in the truck is the driver, and with the peg of illicit arrack (alcohol) he has had at the last stop, his total cerebral functions add up to little more than a naught. Truck drivers are the James Bonds of India, and are licensed to kill. Often you may encounter a single powerful beam of light about six feet above the ground. This is not a super motorbike, but a truck approaching you with a single light on, usually the left one. It could be the right one, but never get too close to investigate. You may prove your point posthumously. Of course, all this occurs at night, on the trunk roads.</span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">During the daytime, trucks are more visible, except that the drivers will never show any Signal. (And you must watch for the absent signals; they are the greater threat). Only, you will often observe that the cleaner who sits next to the driver, will project his hand and wave hysterically. This is definitely not to be construed as a signal for a left turn. The waving is just a statement of physical relief on a hot day. If, after all this, you still want to drive in India, have your lessons between 8 pm and 11 am-when the police have gone home and – The citizen is then free to enjoy the ‘FREEDOM OF SPEED’ enshrined in the constitution. Having said all this isn’t it true that the accident rate and related deaths are less in India compared to US or other countries!!??</span></span></span></p>
<p style="margin-bottom:0;" align="justify"><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } 		A:link { color: #0000ff } 	--></p>
<p style="margin-top:.49cm;margin-bottom:.49cm;line-height:150%;border-color:#000000;border-style:none none solid;border-width:medium medium 1pt;padding:0 0 .04cm;" align="justify">
<p style="margin-top:.49cm;margin-bottom:.49cm;line-height:150%;" align="justify"><span style="font-family:Arial;"><span style="font-size:x-small;">Laughs and gags can be mailed at: </span></span><span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="mailto:getarakesh@gmal.com"><span style="font-family:Arial;"><span style="font-size:x-small;">getarakesh@gmail.com</span></span></a></span></span><span style="font-family:Arial;"><span style="font-size:x-small;"> </span></span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technocratz.wordpress.com/10/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technocratz.wordpress.com/10/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technocratz.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technocratz.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technocratz.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technocratz.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/technocratz.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/technocratz.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/technocratz.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/technocratz.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technocratz.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technocratz.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technocratz.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technocratz.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technocratz.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technocratz.wordpress.com/10/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=10&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://technocratz.wordpress.com/2008/03/18/life-is-not-smooth/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6740edc2315958627eee2d683d900e9e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">technocratz</media:title>
		</media:content>
	</item>
		<item>
		<title>Face-Off</title>
		<link>http://technocratz.wordpress.com/2008/03/18/face-off/</link>
		<comments>http://technocratz.wordpress.com/2008/03/18/face-off/#comments</comments>
		<pubDate>Tue, 18 Mar 2008 15:36:53 +0000</pubDate>
		<dc:creator>technocratz</dc:creator>
				<category><![CDATA[Computer Science and Technology]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://technocratz.wordpress.com/?p=9</guid>
		<description><![CDATA[JAVA: The Two Sides of the Coin! It’s been a year since I have started using Java as my regular primary programming language. Not a big deal, but…some things I like very much &#38; some things irk me and make my life really hard with java. Now after a complete shift into Java from C++, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=9&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } --></p>
<p align="center"><strong><span style="color:#000000;"><span style="text-decoration:none;"><span style="font-family:Arial;"><span style="font-size:small;">JAVA: The Two Sides of the Coin!</span></span></span></span></strong></p>
<p style="margin-bottom:0;" align="justify">
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">It’s been a year since I have started using Java as my regular primary programming language. Not a big deal, but…some things I like very much &amp; some things irk me and make my life really hard with java. Now after a complete shift into Java from C++, I found some differences which are so interesting, that I decided to share it with you guys…</span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">The best part of Java Programming (as compared to C++):</span></span></span></span></strong></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">1.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> Inner classes and anonymous classes are cool. C++ doesn’t have them, and that sucks big time. (Actually, I’d prefer anonymous functions, as most of the things I write in-place are implementations of one-function interfaces.)</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">2.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> Reflection (an enhanced version of RTTI) is cool. Good run-time type information makes exposing parts of a program to a scripting engine easy. It also makes things like dynamic proxies and RMI easy to implement without requiring one to use IDL.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">3.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> A controlled environment such as a VM means that there is no chance of corrupting the memory. Thus when a bug happens one usually has much more evidence about what caused it than in a typical native program.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">4.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> Java standardizes on a naming convention that is clean and readable. My eyes (though they are well protected behind a pair of glasses…  <img src="http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif" border="0" alt=":P" width="15" height="15" align="bottom" /> ) hurt when I look at an average C++ program.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">5.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> Java comes with a large standard library. The library has packages for a platform-independent GUI, threads, sockets, encryption, etc.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Now, time for the things that make me go crazy over Java: </span></span></span></span></strong></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">1.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> No support for types with value semantics. I frequently use iterators in my designs. And when I send an iterator into a function, I want to send a copy, not the iterator that I still own and want to use.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">2.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> No resource management facilities. Garbage collector takes care of unused memory, but what about files, sockets, bandwidth and similar resources which need to be disposed of as soon as they are not used any more? In C++ I can do that painlessly by using reference counting smart pointers and destructors.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">3.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> Checked exceptions. Checked exceptions are evil because they put implementation details (which exceptions are thrown) into interfaces. So instead of letting me propagate the exceptions until the place where the transaction started, Java is forcing me to handle them locally because large portions of the standard library use checked exceptions. I get around this by catching them, wrapping them into an exception derived from RuntimeException and re-throwing, but that is both painful and leads to information about the exception being lost.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">4.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> No const keyword. The const keyword is great. It ensures that an object sent into a function will not get changed, which is one of those nice guarantees that a function can make.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">5.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> No multiple inheritance. I’ve heard all kinds of arguments against multiple inheritance. It’s complicated. One can form the “diamond of death” using multiple inheritance. It can lead to bad designs. Yet I have never seen any piece of code that misuses multiple inheritance. Most people simply don’t use it. Those that do usually put it to good use and create crisp, elegant designs that avoid tall, monolithic hierarchies.</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">6.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> Sun’s complacency about bugs. I’ve personally hit against numerous important bugs in the Java libraries. After I isolate a bug I usually check the bug database at java.sun.com to see if there are any workarounds. More often than not, I can see that the bug has been reported a couple of years ago, and that Sun has ignored it. To add to the insult, “super-kind” engineers at Sun sometimes close the bug with an irresponsible comment, like “if someone doesn’t send me a piece of code demonstrating this bug, I’m closing it.” Like they are doing me a favor for letting me report a bug (…May the Mighty Chupacabra of the southwest Zambia swallow the customer service reps of sun!!!)</span></span></span></span></p>
<p style="line-height:150%;" lang="en-US" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;">In all the time that I have programmed under Windows I didn’t find as many bugs as I stepped on for the last one year working in Java. And, none of the bugs in the Windows API were showstoppers. Unfortunately, some of the bugs in the JDK are. For example, the clipping region of a Graphics obtained from a lightweight component by calling getGraphics() is wrong. Finding a way around that kind of bug is a nightmare.</span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">7. </span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">The Java GUI library does not define an order in which events will be fired, and it does not define exactly which events will be fired when. This means that JDK, IE and Netscape will fire events differently on a single platform, Windows. Throw in additional platforms, and you’ve got a whole big mess to clean (try it now (…&amp; regret it rest of your life!!!)).</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">8.</span></span></span></span></strong><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US"> Java makes me pay, in run-time size and speed, for using data types. If I have a C++ program that counts apples and oranges, I can have types AppleCount and OrangeCount that make sure that I never mix the two. Since these types would are simple wrappers around int and use only inline functions, the end program will be as fast and as small as if I had used int, only more type-safe. Unfortunately, in Java, I have to pay in both program size (as additional .CLASS files are shipped), and in execution speed (the compiler is unable to erase type information from data types used in interfaces).</span></span></span></span></p>
<p style="line-height:150%;" align="justify"><span style="color:#000000;"><span style="font-family:Arial;"><span style="font-size:x-small;"><span lang="en-US">Happy Javing (that’s Java Programming…in case you did’nt know  <img src="http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif" border="0" alt=";)" width="15" height="15" align="bottom" /> </span></span></span></span>)</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technocratz.wordpress.com/9/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technocratz.wordpress.com/9/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technocratz.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technocratz.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technocratz.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technocratz.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/technocratz.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/technocratz.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/technocratz.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/technocratz.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technocratz.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technocratz.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technocratz.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technocratz.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technocratz.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technocratz.wordpress.com/9/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technocratz.wordpress.com&amp;blog=3196386&amp;post=9&amp;subd=technocratz&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://technocratz.wordpress.com/2008/03/18/face-off/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6740edc2315958627eee2d683d900e9e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">technocratz</media:title>
		</media:content>

		<media:content url="http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif" medium="image">
			<media:title type="html">:P</media:title>
		</media:content>

		<media:content url="http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif" medium="image">
			<media:title type="html">;)</media:title>
		</media:content>
	</item>
	</channel>
</rss>
