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

<channel>
	<title>dow.ngra.de &#187; cool</title>
	<atom:link href="http://dow.ngra.de/category/cool/feed/" rel="self" type="application/rss+xml" />
	<link>http://dow.ngra.de</link>
	<description>no buzzwords allowed</description>
	<lastBuildDate>Wed, 04 Aug 2010 13:19:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Master Debugging Class: RMI</title>
		<link>http://dow.ngra.de/2010/08/04/master-debugging-class-rmi/</link>
		<comments>http://dow.ngra.de/2010/08/04/master-debugging-class-rmi/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 13:19:05 +0000</pubDate>
		<dc:creator>Jevgeni Kabanov</dc:creator>
				<category><![CDATA[cool]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1295</guid>
		<description><![CDATA[Today we had a most interesting encounter with the quirks of our environment and RMI. We use RMI in our new LiveRebel product to connect the management console to the remote agents. Commonly, the agent code is obfuscated by Proguard. However as obfuscation renames the classes it prevents us from doing any debugging, so I [...]]]></description>
			<content:encoded><![CDATA[<p>Today we had a most interesting encounter with the quirks of our environment and RMI. We use RMI in our new LiveRebel product to connect the management console to the remote agents. Commonly, the agent code is obfuscated by Proguard. However as obfuscation renames the classes it prevents us from doing any debugging, so I made a vanilla build and started the debugger.</p>
<p>BOOM! The particular method I needed to call throws an exception &#8220;java.rmi.UnmarshalException: unrecognized method hash: method not supported by remote object&#8221;. Googling tells me that this usually means that different classes are deployed on the client and server, so I spend the next half an hour making sure that the JAR on the client and server is exactly the same. A complicating condition is that this particular method returns an object from a third-party library, and to avoid conflicts with the user code we rename the package of that library using JarJar.</p>
<p>As I establish beyond reasonable or unreasonable doubt that the JAR really is the same I start looking into other potential issues. As the exception reports the hash to be missing I start looking into how the hash is calculated for the RMI calls. A fair amount of debugger stepping (a useful tip is that you can put a method breakpoint even if you don&#8217;t have the code) reveals that <code>sun.rmi.server.Util.computeMethodHash()</code> calculates the hash using the digest of the method name and signature. Not much room for mistakes there, but nevertheless I put a method breakpoint on <code>UnicastServerRef.dispatch()</code>, which is the last call in the stack trace and dump hashes for all methods in the target class from a static map.</p>
<p>Next I make sure that the hashes are the same on client and server. Decompiling the RMI Stub shows that it includes the precalculated hashes in the call. First check on a different method that I know to work shows that the hashes are the same. But the hash for the problematic method is different in the Stub than in the server map. WTF is wrong?</p>
<p>Here I probably should have verified the next assumptions, but luckily an epiphany interferes. Turns out that the <code>rmic</code> compiler is called <em>before</em> the third-party library is renamed, so the hash is calculated with the wrong packages in the signature. As the JarJar will then rename the signature in the Stub class, it is almost impossible to notice. However the last remaining question is why the hell did it work at all? The hashes should have been different all the time, not just in the vanilla build. A little digging reveals, that as Proguard commonly renames the classes in RMI signatures it will go and fix the RMI hash for you. </p>
<p>EOF</p>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2010/08/04/master-debugging-class-rmi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When Manners Run Out &#8211; Story of a Website Theft</title>
		<link>http://dow.ngra.de/2010/07/07/when-manners-run-out/</link>
		<comments>http://dow.ngra.de/2010/07/07/when-manners-run-out/#comments</comments>
		<pubDate>Wed, 07 Jul 2010 08:11:53 +0000</pubDate>
		<dc:creator>tony</dc:creator>
				<category><![CDATA[cool]]></category>
		<category><![CDATA[humour]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1240</guid>
		<description><![CDATA[A guest post from our intern Tony. He has traveled all the way from North-America just to learn the ropes of programming and IT culture from us. He&#8217;s last week&#8217;s priority 2 task was to handle our site being stolen problem.

A few months ago we discovered that our website (http://www.zeroturnaround.com) had been stolen by jbrute.info [...]]]></description>
			<content:encoded><![CDATA[<p><em>A guest post from our intern Tony. He has traveled all the way from North-America just to learn the ropes of programming and IT culture from us. He&#8217;s last week&#8217;s priority 2 task was to handle our <a href="http://dow.ngra.de/2010/04/23/somebody-is-stealing-my-website-design-what-are-my-options/">site being stolen problem</a>.<br />
</em><br />
A few months ago we discovered that our website (<a href="http://www.zeroturnaround.com/">http://www.zeroturnaround.com</a>) had been stolen by jbrute.info (I won&#8217;t link it, you need to copy-paste yourself), in every sense of the word. (HTML, CSS, JavaScript, even our logo, HOTLINKED!) A simple side-by-side screenshot will show you the extent of their blatant behavior.</p>
<p><a href="http://dow.ngra.de/wp-content/uploads/2010/07/zt_screenshot.jpg"><img class="alignnone size-large wp-image-1256" src="http://dow.ngra.de/wp-content/uploads/2010/07/zt_screenshot-1024x547.jpg" alt="" width="502" height="268" /></a></p>
<p><a href="http://dow.ngra.de/wp-content/uploads/2010/07/jbrute_screenshot.jpg"><img class="alignnone size-large wp-image-1259" src="http://dow.ngra.de/wp-content/uploads/2010/07/jbrute_screenshot-1024x555.jpg" alt="" width="502" height="272" /></a></p>
<p>Furious as we were, we managed to keep our manners and reached out (tried to at least) to the author of of jbrute.info and their hosting provider. Sadly, the only response we ever had other than SMTP MAIL CANNOT BE DELIVERED is a canned email instructing us how to write a formal DMCA takedown notice.</p>
<p>We then turned to <a href="http://dow.ngra.de/2010/04/23/somebody-is-stealing-my-website-design-what-are-my-options/">starting a blog post and asking your help on what you would do in our shoes</a>. As Karl Marx would put it, &#8220;the power of the people is strong&#8221;, and before long the community came up with a few nothing-less-than-brilliant ideas. (We are not Communists and are not related to the Tsars in anyway, I promise, even though our operational base in Central <a href="http://vesilind.blogspot.com/2008/05/estonian-jokes.html">Estonia </a>might lead you to think otherwise :P)</p>
<p>In particular, Joe Walnes pointed out that since jbrute.info hotlinks .php files and JavaScript from our website, by &#8220;check[ing] the HTTP_REFERER, [we] can conditionally change the contents, and with JavaScript [we] can make the page look however [we] want.&#8221;</p>
<p>Sadly, life got busy and almost three months suddenly went by, and this little incident was nearly forgotten. Last week, we stumbled upon JBrute once again&#8230; Finally we got around to acting on Joe&#8217;s advice and, in the most hackish fashion, decided to take it upon ourselves to deliver a truly custom &#8220;DMCA Takedown notice&#8221; over two glasses of beer. Here is a screenshot of the finished work :) We encourage you to check out <a href="http://jbrute.info">jbrute.info</a> (this time I linked :( ) for yourself.</p>
<p><a href="http://dow.ngra.de/wp-content/uploads/2010/07/jbrute_defaced_screenshot1.jpg"><img class="alignnone size-large wp-image-1273" src="http://dow.ngra.de/wp-content/uploads/2010/07/jbrute_defaced_screenshot-1024x551.jpg" alt="" width="491" height="265" /></a></p>
<p>Just to prove our point, we bring you the pseudo xkcd comic.<br />
<a href="#"><img class="alignnone size-full wp-image-1242" src="http://dow.ngra.de/wp-content/uploads/2010/07/blogging_ironic.png" alt="" width="330" height="335" /></a></p>
<p>I hope you enjoyed our little mischief. We&#8217;ll keep you posted on the status of jbrute over the coming days following this post and we&#8217;ll follow up next week with the technical details &#8211; <em>How to un-hack a website!</em> Keep tuned :)</p>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2010/07/07/when-manners-run-out/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>A job offer and a kinda cool puzzle</title>
		<link>http://dow.ngra.de/2010/02/18/a-job-offer-and-a-kinda-cool-puzzle/</link>
		<comments>http://dow.ngra.de/2010/02/18/a-job-offer-and-a-kinda-cool-puzzle/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 12:59:51 +0000</pubDate>
		<dc:creator>Jevgeni Kabanov</dc:creator>
				<category><![CDATA[cool]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1211</guid>
		<description><![CDATA[ZeroTurnaround is looking for an infrastructure engineer in Tartu (http://bit.ly/zt-infra-eng). If you want to apply or just have a little fun, solve this puzzle:
UEsDBBQAAAAIAIVyUjx/yWgsbQIAAP0CAAAHABwAcHJvYmxlbVVUCQADeTB9S3ow
fUt1eAsAAQToAwAABOgDAAAdUsmumlAA3fcrGtNFX1zABblgXm2jOACXSRBEY9Jc
5knmSb6+vi7OkJyzO+fXnx8T6W4WrB3LbiuOBxXMfNRNW8Wn9NipMa4QbVv8MQVL
05STYRfqADEysKpWFm/3mViqu5EtXlzGPVl6zauMly7vUNt3S9ji1LESwdn63jCN
DZkNHrzCc78lb8/mucZtFFM45ckrs1XnmtOYo34WENfnXkzC9vQ6s3sJEpCifalp
BtvFDjI50bJunpHhegTuhAKuKsh49uGhN9tXPJpkNxknpCaHjgoxivp4MNg4YQSG
V+K8IXs3KvSzK2IcaJOxvWny89ztEn66vIpYcNpw1jnkr7CplWUCGGNneZ0Y3mdK
du/0Ss2S8Zqve2ZQWWQcIsDMh/spoPTCEujcunKTWHZ9JZryK6YlAqi7Z+4noaHM
+SC2KyYws6Vk3gqt4FuqESqyfQ6jSjfkIO0yXJgXr6zUI0L6+CKOcmjZvkFyrmxd
92QoKQ0WHcmRqgiKJ7+I6J0xK8d70ALbNBQh8LMlPLlBefMRVfOVkupsao181s+X
alqrQprbp3QH0CuTxEminYhUtGLm8htNsEVWaVvbzxrTTGTuAqlSEbsXQiMdjSCh
SxWaNYe6hknmS6ND+6g01+aoFnZ/qaURCYTRQBEf9vEp9UmrIxTb7bnzMOFzaFE1
cagV4M+WbexrQrDLPf/eqjROlTqeNYFVbwpYLvV+HTgdbcxavlan9ZhtFp/vb3qb
hYsfE0sHcPXXf0yQeYAV/dbQfxvmfyfYLKIHYKkHYMA7Cd6Ab3i4Cxaf34MB5z+/
Wl/kfZH78fHx+ef3t39QSwECHgMUAAAACACFclI8f8loLG0CAAD9AgAABwAYAAAA
AAABAAAApIEAAAAAcHJvYmxlbVVUBQADeTB9S3V4CwABBOgDAAAE6AMAAFBLBQYA
AAAAAQABAE0AAACuAgAAAAA=
Please don&#8217;t post the answer in the comments, but you&#8217;re welcome to tell what game is the quote from and how long did it take you to solve it.
]]></description>
			<content:encoded><![CDATA[<p>ZeroTurnaround is looking for an infrastructure engineer in Tartu (<a href="http://bit.ly/zt-infra-eng">http://bit.ly/zt-infra-eng</a>). If you want to apply or just have a little fun, solve this puzzle:</p>
<p>UEsDBBQAAAAIAIVyUjx/yWgsbQIAAP0CAAAHABwAcHJvYmxlbVVUCQADeTB9S3ow<br />
fUt1eAsAAQToAwAABOgDAAAdUsmumlAA3fcrGtNFX1zABblgXm2jOACXSRBEY9Jc<br />
5knmSb6+vi7OkJyzO+fXnx8T6W4WrB3LbiuOBxXMfNRNW8Wn9NipMa4QbVv8MQVL<br />
05STYRfqADEysKpWFm/3mViqu5EtXlzGPVl6zauMly7vUNt3S9ji1LESwdn63jCN<br />
DZkNHrzCc78lb8/mucZtFFM45ckrs1XnmtOYo34WENfnXkzC9vQ6s3sJEpCifalp<br />
BtvFDjI50bJunpHhegTuhAKuKsh49uGhN9tXPJpkNxknpCaHjgoxivp4MNg4YQSG<br />
V+K8IXs3KvSzK2IcaJOxvWny89ztEn66vIpYcNpw1jnkr7CplWUCGGNneZ0Y3mdK<br />
du/0Ss2S8Zqve2ZQWWQcIsDMh/spoPTCEujcunKTWHZ9JZryK6YlAqi7Z+4noaHM<br />
+SC2KyYws6Vk3gqt4FuqESqyfQ6jSjfkIO0yXJgXr6zUI0L6+CKOcmjZvkFyrmxd<br />
92QoKQ0WHcmRqgiKJ7+I6J0xK8d70ALbNBQh8LMlPLlBefMRVfOVkupsao181s+X<br />
alqrQprbp3QH0CuTxEminYhUtGLm8htNsEVWaVvbzxrTTGTuAqlSEbsXQiMdjSCh<br />
SxWaNYe6hknmS6ND+6g01+aoFnZ/qaURCYTRQBEf9vEp9UmrIxTb7bnzMOFzaFE1<br />
cagV4M+WbexrQrDLPf/eqjROlTqeNYFVbwpYLvV+HTgdbcxavlan9ZhtFp/vb3qb<br />
hYsfE0sHcPXXf0yQeYAV/dbQfxvmfyfYLKIHYKkHYMA7Cd6Ab3i4Cxaf34MB5z+/<br />
Wl/kfZH78fHx+ef3t39QSwECHgMUAAAACACFclI8f8loLG0CAAD9AgAABwAYAAAA<br />
AAABAAAApIEAAAAAcHJvYmxlbVVUBQADeTB9S3V4CwABBOgDAAAE6AMAAFBLBQYA<br />
AAAAAQABAE0AAACuAgAAAAA=</p>
<p>Please don&#8217;t post the answer in the comments, but you&#8217;re welcome to tell what game is the quote from and how long did it take you to solve it.</p>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2010/02/18/a-job-offer-and-a-kinda-cool-puzzle/feed/</wfw:commentRss>
		<slash:comments>36</slash:comments>
		</item>
		<item>
		<title>Story of a startup: How to Convert a Pair of Glasses into Fame and Fortune?</title>
		<link>http://dow.ngra.de/2010/02/09/story-of-a-startup-how-to-convert-a-pair-of-glasses-into-fame-and-fortune/</link>
		<comments>http://dow.ngra.de/2010/02/09/story-of-a-startup-how-to-convert-a-pair-of-glasses-into-fame-and-fortune/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 18:05:16 +0000</pubDate>
		<dc:creator>Ivo Mägi</dc:creator>
				<category><![CDATA[cool]]></category>
		<category><![CDATA[humour]]></category>
		<category><![CDATA[crosspost]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[glasses]]></category>
		<category><![CDATA[nerd]]></category>
		<category><![CDATA[phb]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1200</guid>
		<description><![CDATA[Another guest post from our PHB. Obviously he has been reading too much Techcrunch, just discovered icanhascheezburger.com and slacking off during his day job.
This is a story of a start-up built around the nerdiest glasses on earth. If you wonder why and how we&#8217;re doing it, how exactly will we make millions of dollars off [...]]]></description>
			<content:encoded><![CDATA[<p><em>Another guest post from our PHB. Obviously he has been reading too much <a href="http://www.techcrunch.com">Techcrunch</a>, just discovered <a href="http://icanhascheezburger.com">icanhascheezburger.com</a> and slacking off during his day job.</em></p>
<p><a href="http://dow.ngra.de/wp-content/uploads/2010/02/glasses.png"><img src="http://dow.ngra.de/wp-content/uploads/2010/02/glasses-300x126.png" alt="" title="glasses" width="300" height="126" class="alignleft size-medium wp-image-1201" /></a>This is a story of a start-up built around the nerdiest glasses on earth. If you wonder why and how we&#8217;re doing it, how exactly will we make millions of dollars off of it then you&#8217;re in luck. We&#8217;re planning to document and publish everything on our website and we have just released the first in the series, <a href="http://spotthenerd.com/2010/02/09/converting-a-pair-of-glasses-into-fame-and-fortune/">Converting a pair of glasses into fame and fortune</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2010/02/09/story-of-a-startup-how-to-convert-a-pair-of-glasses-into-fame-and-fortune/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Hacking with IDE plugins &#8211; fun art of binary patching</title>
		<link>http://dow.ngra.de/2009/12/11/hacking-with-ide-plugins-fun-art-of-binary-patching/</link>
		<comments>http://dow.ngra.de/2009/12/11/hacking-with-ide-plugins-fun-art-of-binary-patching/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 15:34:26 +0000</pubDate>
		<dc:creator>Toomas Römer</dc:creator>
				<category><![CDATA[cool]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[Java Virtual Machine]]></category>
		<category><![CDATA[netbeans]]></category>
		<category><![CDATA[patching]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1158</guid>
		<description><![CDATA[Today&#8217;s software is so much about integration. You can have a cool Java utility but if you don&#8217;t have an Eclipse plugin for that, a large % of Eclipse users won&#8217;t adopt (IDEA &#38; NetBeans users require plugins just as much).  In the consumer market the same goes for browser extensions and iPhone apps [...]]]></description>
			<content:encoded><![CDATA[<p>Today&#8217;s software is so much about integration. You can have a cool Java utility but if you don&#8217;t have an Eclipse plugin for that, a large % of Eclipse users won&#8217;t adopt (IDEA &amp; NetBeans users require plugins just as much).  In the consumer market the same goes for browser extensions and iPhone apps that support the main service with better accessibility.</p>
<p>There are different ways for integration. Usually it is done via an <a href="http://en.wikipedia.org/wiki/Application_programming_interface">API</a>. The host platform offers some hooks into the system and you can use them to add some custom functionality on top of the host (or maybe just integrate your own product with the host). The result of this in the IDE world is a <b>plugin</b>. <a href="http://www.jrebel.com">JRebel</a> (the product our team is spending the most development time on) has plugins for application servers, frameworks and even IDEs.</p>
<p>If you&#8217;re in luck you can achieve everything with the API, if not you need other tricks. If the API does not offer certain public methods or access to some internal fields you can go in with <a href="http://en.wikipedia.org/wiki/Reflection_%28computer_science%29">reflection</a> and still use them (of course there are no guarantees if the internals stay the same on version changes).</p>
<p>One step further to the darkside is binary patching. By binary patching I mean adding/changing/removing methods/fields/classes in runtime. This is the approach that we had to take when writing the JRebel <a href="http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=22254">NetBeans plugin</a>.</p>
<p>On NetBeans startup we lookup a debugger class and on success try to patch it. In 2009 and using the JVM (not native apps) it is quite an easy task, at least for the most part. No assembler involved (of course you could be using a bytecode generation library), no need to do jumps to correct offsets or even read assembler (or bytecode).</p>
<p>In our case we use the <a href="http://en.wikipedia.org/wiki/Javassist">Javassist</a> library. It is a matter of inserting Java code embedded into a String to methods looked up via reflection. For example the following code adds some new code into the beginning of a method.</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">ctc.<span style="color: #006600;">getDeclaredMethod</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;setRequests&quot;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">insertAfter</span><span style="color: #66cc66;">&#40;</span>
  <span style="color: #ff0000;">&quot;org.netbeans.api.debugger.jpda.LineBreakpoint _breakpoint = getBreakpoint();&quot;</span> +
  <span style="color: #ff0000;">&quot;java.lang.String _className = _breakpoint.getPreferredClassName();&quot;</span> +
  <span style="color: #ff0000;">&quot;if (_className == null) {&quot;</span> +
  <span style="color: #ff0000;">&quot;  _className = reader.findCachedClassName(_breakpoint);&quot;</span> +
  <span style="color: #ff0000;">&quot;  if (_className == null) {&quot;</span> +
  <span style="color: #ff0000;">&quot;    _className = org.netbeans.modules.debugger.jpda.EditorContextBridge.getContext().getClassName (&quot;</span> +
  <span style="color: #ff0000;">&quot;      _breakpoint.getURL (),&quot;</span> +
  <span style="color: #ff0000;">&quot;      lineNumber);&quot;</span> +
  <span style="color: #ff0000;">&quot;    if (_className != null &amp;amp;&amp;amp; _className.length() &amp;gt; 0) {&quot;</span> +
  <span style="color: #ff0000;">&quot;      reader.storeCachedClassName(_breakpoint, _className);&quot;</span> +
  <span style="color: #ff0000;">&quot;    }&quot;</span> +
  <span style="color: #ff0000;">&quot;  }&quot;</span> +
  <span style="color: #ff0000;">&quot;}&quot;</span></pre></div></div>

<p>For the complete source code of the patch see the src folder of the <a href="http://repos.zeroturnaround.com/svn/jr-ide-support/nb-plugin/">nb-plugin</a>.</p>
<p>In conclusion, the best way to integrate with any system is via the API it provides. If it does not cut it then look into reflection and start using internals. You will lose on maintainability of course. Still not happy? Look into binary patching and have your fingers crossed whenever the target platform releases a new version.</p>
<div style="margin-top: 10px; height: 15px;" class="zemanta-pixie"><a class="zemanta-pixie-a" href="http://reblog.zemanta.com/zemified/ab7f8433-9fe0-4f91-bee1-521e253034c3/" title="Reblog this post [with Zemanta]"><img style="border: medium none ; float: right;" class="zemanta-pixie-img" src="http://img.zemanta.com/reblog_e.png?x-id=ab7f8433-9fe0-4f91-bee1-521e253034c3" alt="Reblog this post [with Zemanta]"></a><span class="zem-script more-related pretty-attribution"><script type="text/javascript" src="http://static.zemanta.com/readside/loader.js" defer="defer"></script></span></div>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2009/12/11/hacking-with-ide-plugins-fun-art-of-binary-patching/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configuring Eclipse – &#8220;fail fast&#8221;</title>
		<link>http://dow.ngra.de/2009/11/27/configuring-eclipse-fail-fast/</link>
		<comments>http://dow.ngra.de/2009/11/27/configuring-eclipse-fail-fast/#comments</comments>
		<pubDate>Fri, 27 Nov 2009 10:33:21 +0000</pubDate>
		<dc:creator>Ivo Mägi</dc:creator>
				<category><![CDATA[cool]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1139</guid>
		<description><![CDATA[Another guest post from our favorite PHB. I don&#8217;t have the slightest idea why he has Eclipse installed or better yet, why is he trying to run it. Probably overheard something from devs at the water-cooler and wants some free time from PowerPoint.
My Eclipse instance starts with a warning popup. Well, most likely it picked [...]]]></description>
			<content:encoded><![CDATA[<p><em>Another guest post from our favorite PHB. I don&#8217;t have the slightest idea why he has Eclipse installed or better yet, why is he trying to run it. Probably overheard something from devs at the water-cooler and wants some free time from PowerPoint.</em></p>
<p>My Eclipse instance starts with a warning popup. Well, most likely it picked up a JRE instead of the usual JDK specified in my environment variables. But hey, I know how to handle property files (ed: seriously?), and they are actually pointing me towards the <code>eclipse.ini</code>.</p>
<p><img src="http://dow.ngra.de/wp-content/uploads/2009/11/image002.jpg" alt="JDK vs JRE" title="JDK vs JRE" width="441" height="190"/></p>
<p>Clicking the link on the warning popup does not open the file itself though, so I have to manually navigate to the C:\Programs\eclipse folder and find <code>eclipse.ini</code> from there containing:</p>
<div class="igBar"><span id="lcode-3"><a href="#" onclick="javascript:showPlainTxt('code-3'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-3">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-showsplash</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">org.<span style="">eclipse</span>.<span style="">platform</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&#8211;launcher.<span style="">XXMaxPermSize</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">256M</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-framework</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">plugins\org.<span style="">eclipse</span>.<span style="">osgi_3</span>.<span style="color:#800000;color:#800000;">4</span>.<span style="color:#800000;color:#800000;">2</span>.<span style="">R34x_v20080826</span>-<span style="color:#800000;color:#800000;">1230</span>.<span style="">jar</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-vmargs</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-Dosgi.<span style="">requiredJavaVersion</span>=<span style="color:#800000;color:#800000;">1</span>.<span style="color:#800000;color:#800000;">5</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-Xms40m</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-Xmx256m </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Adding <code>–vm C:\Program Files\Java\jdk1.6.0_14</code> to the end of the configuration and restarting. Well – nothing has changed. OK, let’s open up Google.</p>
<p>Proposed solution: <code>-vm</code> option has to be specified before the <code>–vmargs</code> option. Still no help, Eclipse will start with the previously mentioned warning.</p>
<p>Second solution – there has to be a line break between <code>–vm</code> and the value specified – BINGO. We are getting somewhere –</p>
<p><img src="http://dow.ngra.de/wp-content/uploads/2009/11/image001.jpg" alt="Trainwreck" title="Trainwreck" width="344" height="172"/></p>
<p>Now let’s just change it to:</p>
<div class="igBar"><span id="lcode-4"><a href="#" onclick="javascript:showPlainTxt('code-4'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-4">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-showsplash</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">org.<span style="">eclipse</span>.<span style="">platform</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&#8211;launcher.<span style="">XXMaxPermSize</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">256M</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-framework</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">plugins\org.<span style="">eclipse</span>.<span style="">osgi_3</span>.<span style="color:#800000;color:#800000;">4</span>.<span style="color:#800000;color:#800000;">2</span>.<span style="">R34x_v20080826</span>-<span style="color:#800000;color:#800000;">1230</span>.<span style="">jar</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-vm</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">C:\Program Files\Java\jdk1.<span style="color:#800000;color:#800000;">6</span>.<span style="color:#800000;color:#800000;">0</span>_14\bin\javaw.<span style="">exe</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-vmargs</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-Dosgi.<span style="">requiredJavaVersion</span>=<span style="color:#800000;color:#800000;">1</span>.<span style="color:#800000;color:#800000;">5</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-Xms40m</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">-Xmx256m </div>
</li>
</ol>
</div>
</div>
</div>
<p> </p>
<p>And it just works. But for heaven’s sake – why on earth do I have to figure out</p>
<ul>
<li>where is the configuration I have to change</li>
<li>in which order do I have to specify the parameters</li>
<li>that the key-value options must be separated with the line break</li>
</ul>
<p>Considering the last warning dialog – why cannot the whole configuration be validated and initialization failed properly? If this were a tool used in-house or only by small number of freaks, then – let it be. But this is Eclipse we are speaking about – there are millions of people working their asses off on a daily bases with this tool. Can’t imagine the time wasted for problems like this …</p>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2009/11/27/configuring-eclipse-fail-fast/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Live from Devoxx: Agile Mythbusters by Scott Ambler</title>
		<link>http://dow.ngra.de/2009/11/18/live-from-devoxx-agile-mythbusters-by-scott-ambler/</link>
		<comments>http://dow.ngra.de/2009/11/18/live-from-devoxx-agile-mythbusters-by-scott-ambler/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 13:50:58 +0000</pubDate>
		<dc:creator>Jevgeni Kabanov</dc:creator>
				<category><![CDATA[cool]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1133</guid>
		<description><![CDATA[I haven&#8217;t been interested in Agile (or any other methodologies) for a long while. Partially because I found the things that work for me and my team and partially because there was a lot of marketing BS not confirmed by any actual results. This talk promised to deliver some hard data, so I was interested [...]]]></description>
			<content:encoded><![CDATA[<p>I haven&#8217;t been interested in Agile (or any other methodologies) for a long while. Partially because I found the things that work for me and my team and partially because there was a lot of marketing BS not confirmed by any actual results. This talk promised to deliver some hard data, so I was interested how it goes together with the consulting mumbo-jumbo.</p>
<p>The talk borrows the title and format from the Mythbuster TV show, where experts recreate the urban legend situations to check if they are plausible or not. Scott confirms or busts one myth at a time using the data from the surveys that come from a variety of sources, some of them more trustworthy, some less. </p>
<p>The reasons I couldn&#8217;t take some of the conclusions seriously were:<br />
1) Agile is not well defined. There&#8217;s a large number of practices considered Agile, and many people will claim that they&#8217;re doing agile e.g. if they have a build server.<br />
2) Surveys only tell what people think is happening. If you want to know how long is the <a href="http://imaginatorium.org/stuff/nose.htm">nose of the emperor of China</a> you don&#8217;t walk around asking people. Worse a lot of those surveys are conducted only among the Agile or TDD community, which gives them a high bias against traditional development.<br />
3) Comparing Agilists to Traditionalists is like comparing Tide to the Usual Washing Powder. There&#8217;s no such thing as a traditional methodology, there&#8217;s a bunch of them with very different approaches.</p>
<p>Note that here I give only my interpretation of Scotts talk and data, so please don&#8217;t treat it as anything else, but my own opinion.</p>
<h3>Myth 1: The majority of organizations are now doing Agile.</h3>
<p>Survey shows that 76% of organizations <em>claim</em> they are doing Agile. </p>
<p><b>CONFIRMED!</b></p>
<h3>Myth 2: The majority of project teams are doing Agile.</h3>
<p>In the 76% of the organizations claiming to do Agile only 44% of teams report using it. That translates to roughly 33% of the &#8220;popular vote&#8221; for Agile. Therefore 66% of developers are not even claiming to do Agile..</p>
<p><b>BUSTED!</b></p>
<h3>Myth 3: Agile is all about development</h3>
<p>In the list of Agile practices the <em>only</em> one that is used by more than half of developers claiming to do Agile is Continuous integration (65%). That kind of underlines the fact </p>
<p><b>PLAUSIBLE?</b></p>
<h3>Myth 4: Agile is just for small teams</h3>
<p>A lot of large projects are confirmed succeeding with Agile. In fact success rate isn&#8217;t that different from small ones. Would be interesting to see the breakdown of different practices used in small v/s large projects.</p>
<p><b>BUSTED!</b></p>
<h3>Myth 5: Agile doesn&#8217;t work in a regulatory environment</h3>
<p>To clarify here are meant environments where errors are critical and thus are regulated by legal or engineering requirements. Surprisingly 33% are using Agile in a regulatory environment. Again a breakdown of practices would be very interesting as there&#8217;s bound to be some difference.</p>
<p><b>BUSTED!</b></p>
<h3>Myth 6: Agile &#038; CMMI don&#8217;t work together.</h3>
<p>Only 9% reported using Agile. I think Scott put this as BUSTED, but 9% sounds like CONFIRMED to me :)</p>
<h3>Myth 7: Agile approaches are &#8220;empirical&#8221;.</h3>
<p>Very weirdly phrased claim. The survey shown was 51% of respondents collecting manual metrics, 19% collecting automatic metrics and the result was CONFIRMED.</p>
<h3>Myth 8: Agile teams are mostly building from scratch.</h3>
<p>78% of respondents work with legacy at least on some level. Scott had a pretty interesting digression on how Agile practices handle well the legacy code (with tests, refactoring, etc), but don&#8217;t give that much attention to the quality of legacy data.</p>
<p><b>BUSTED!</b></p>
<h3>Myth 9: Agile certification is a good idea.</h3>
<p>78% of respondents think certification is meaningless, wonder how many of them are certified (as does Scott). An interesting digression about a guy having both PhD and Scrum master on his business card, as if their value were the same. Certification that doesn&#8217;t require any real effort is greatly overvalued in the community.</p>
<p>However although Scott considers the myth busted, I don&#8217;t think it makes sense to ask this question from everyone. If this&#8217;d be a poll among hiring managers it would make much more sense.</p>
<p><b>BUSTED?</b></p>
<h3>Myth 10: Agile teams are colocated.</h3>
<p>Survey shows that only 42% are colocated. </p>
<p><b>BUSTED!</b></p>
<h3>Myth 11: Agile doesn&#8217;t do up-front estimates.</h3>
<p>In the world of budgets this premiss always sounded ridiculous. And unsurprisingly 89% of teams have to provide an up-front estimate (with different level of certainty). </p>
<p><b>BUSTED!</b></p>
<h3>Myth 12: Agile teams just start coding.</h3>
<p>No kickoff is another thing I never believed. From the data about a month of kickoff is usual before starting the actual coding. </p>
<p><b>BUSTED!</b></p>
<h3>Myth 13: Agilists follow common dev conventions.</h3>
<p>Data is a bit confusing, but seems that 59% have some kind of conventions. </p>
<p><b>PLAUSIBLE?</b></p>
<h3>Myth 14: Rights &#038; responsibilities are part of the agile culture.</h3>
<p>The question is quite weird and the data isn&#8217;t really connected to it. </p>
<p><b>PLAUSIBLE?</b></p>
<h3>Myth 15: Agilists test often and test early.</h3>
<p>Only 71% in the TDD community are actually doing TDD. WTF? And agile guys are still having integration tests (45%) and hired testers (36%). This confirms my suspicions that unit tests are not the silver bullet as many suppose them to be. </p>
<p><b>CONFIRMED!</b></p>
<h3>Myth 16: Agilists don&#8217;t do up-front requirements modeling.</h3>
<p>76% are doing high-level up-front requirement modeling. This correlates with Myth 11, because to provide reliable estimates you need to have an idea what you&#8217;re going to be doing.</p>
<p><b>BUSTED!</b></p>
<h3>Myth 17: Agilists don&#8217;t do up-front architecture.</h3>
<p>70% do architecture design. This explains the month of kickoff along with the requirement gathering.</p>
<p><b>BUSTED!</b></p>
<h3>Myth 18: Agilists write some &#8220;interim&#8221; docs.</h3>
<p>Not sure if anyone doubted it, but 56% agree.</p>
<p><b>CONFIRMED</b></p>
<h3>Myth 19: Agilists don&#8217;t do supporting docs.</h3>
<p>The numbers are slightly lower than &#8220;Traditionalists&#8221;.</p>
<p><b>BUSTED!</b></p>
<h3>Myth 20: Traditionalists write better docs.</h3>
<p>Equally bad at writing docs according to polls. I can believe that :)</p>
<p><b>BUSTED!</b></p>
<h3>Myth 21: More difficult to add members to Agile projects.</h3>
<p>Data shows that it&#8217;s slightly easier to add in Agile. Promiscuous pairing makes it even easier, so make sure to be promiscuous.</p>
<p>Frankly I heard the other myth that it&#8217;s easy to add members to Agile projects, that is busted as well.</p>
<p><b>BUSTED!</b></p>
<h3>Myth 22: Agile works better than traditional approaches.</h3>
<p>The ultimate question :) Success rate over different approaches:</p>
<ul>
<li>Iterative &#8212; 71%</li>
<li>Agile &#8212; 70%</li>
<li>Traditional &#8212; 66%</li>
<li>Ad-hoc &#8212; 62%</li>
</ul>
<p>Personally, I think that the variation is pretty small and it&#8217;s more important that 30% of projects fail no matter what than the 4% of difference between Agile and &#8220;Traditional&#8221;. </p>
<p>However when broken down on specific aspects (like cost, time, quality), it seemed that Agile was considerably better. I&#8217;d take it with a grain of salt though, as a lot of people take Agile as a religion and measure success accordingly :)</p>
<p><b>CONFIRMED?</b></p>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2009/11/18/live-from-devoxx-agile-mythbusters-by-scott-ambler/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Spinning off with style (pictorial report)</title>
		<link>http://dow.ngra.de/2009/11/04/spinning-off-with-style-pictorial-report/</link>
		<comments>http://dow.ngra.de/2009/11/04/spinning-off-with-style-pictorial-report/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 10:13:28 +0000</pubDate>
		<dc:creator>Toomas Römer</dc:creator>
				<category><![CDATA[cool]]></category>
		<category><![CDATA[humour]]></category>
		<category><![CDATA[report]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1106</guid>
		<description><![CDATA[ZeroTurnaround is a spin-off of Webmedia (fastest growing software development company in the Baltic States since 2000). Before JRebel (our flagship product) we worked in the R&#038;D team of Webmedia. Then came JRebel, JSPWeaver, ZeroTurnaround and now we&#8217;ve spinned off and are at a new office.
A spin-off is a new organization or entity formed by [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.zeroturnaround.com">ZeroTurnaround</a> is a <a href="http://en.wikipedia.org/wiki/Spin-off">spin-off</a> of <a href="http://www.webmedia.eu">Webmedia</a> (fastest growing software development company in the Baltic States since 2000). Before JRebel (our flagship product) we worked in the R&#038;D team of Webmedia. Then came JRebel, JSPWeaver, ZeroTurnaround and now we&#8217;ve spinned off and are at a new office.</p>
<blockquote style="font-size:9pt;color:grey"><p>A spin-off is a new organization or entity formed by a split from a larger one, such as television series based on a pre-existing one, or a new company formed from a university research group or business incubator.</p></blockquote>
<p>Moving is work, getting stuff into boxes, moving the boxes and getting the stuff out of the boxes. We were able to add a fun factor to the process. The evening before the move our team was having beers at a <a href="http://www.bcplace.ee/">local bar</a> and one thing lead to another and the next moment we were at the old office with a <b>knife</b>, <b>pillow</b> and <b>3 eggs</b> and it was 1AM.</p>
<p><img src="http://dow.ngra.de/wp-content/uploads/post.png" alt="Knife, pillow and 3 eggs" title="Knife, pillow and 3 eggs" width="476" height="77" class="aligncenter size-full wp-image-1122" /></p>
<p>So in the middle of the night, at the office, 3 guys with the mentioned equipment and a plan! The plan was simple. Webmedia CEO&#8217;s name is <b>Eagle</b> (at least in the Estonian language) and what if we prep his office for a proper leaving. Stage it as <b>birdies</b> leaving the <b>nest</b>, <b>feathers</b>, <b>egg-shells</b>. Awesome plan from just 4 beers!</p>
<p>Pictures follow.<br />

<a href='http://dow.ngra.de/2009/11/04/spinning-off-with-style-pictorial-report/img_0351/' title='Entering the office'><img width="150" height="150" src="http://dow.ngra.de/wp-content/uploads/2009/11/img_0351-150x150.jpg" class="attachment-thumbnail" alt="" title="Entering the office" /></a>
<a href='http://dow.ngra.de/2009/11/04/spinning-off-with-style-pictorial-report/img_0350/' title='Step by step'><img width="150" height="150" src="http://dow.ngra.de/wp-content/uploads/2009/11/img_0350-150x150.jpg" class="attachment-thumbnail" alt="" title="Step by step" /></a>
<a href='http://dow.ngra.de/2009/11/04/spinning-off-with-style-pictorial-report/img_0349/' title='One step closer'><img width="150" height="150" src="http://dow.ngra.de/wp-content/uploads/2009/11/img_0349-150x150.jpg" class="attachment-thumbnail" alt="" title="One step closer" /></a>
<a href='http://dow.ngra.de/2009/11/04/spinning-off-with-style-pictorial-report/img_0348/' title='Closer look at the desk'><img width="150" height="150" src="http://dow.ngra.de/wp-content/uploads/2009/11/img_0348-150x150.jpg" class="attachment-thumbnail" alt="" title="Closer look at the desk" /></a>
<a href='http://dow.ngra.de/2009/11/04/spinning-off-with-style-pictorial-report/img_0347/' title='The message'><img width="150" height="150" src="http://dow.ngra.de/wp-content/uploads/2009/11/img_0347-150x150.jpg" class="attachment-thumbnail" alt="" title="The message" /></a>
</p>
<ul>
<li>The sign says <em>ZeroTurnaround guys have left the nest. Thanks!</em></li>
<li>Yeah, all the feathers come from a single pillow</li>
<li>Yes, I&#8217;m missing a pillow</li>
<li>Yes, we had to clean it up (well, just me, because everybody else supposedly had more important tasks at hand).</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2009/11/04/spinning-off-with-style-pictorial-report/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A PHB + a startup + dilbert = SALES are up!</title>
		<link>http://dow.ngra.de/2009/10/31/a-phb-a-startup-dilbert-sales-are-up/</link>
		<comments>http://dow.ngra.de/2009/10/31/a-phb-a-startup-dilbert-sales-are-up/#comments</comments>
		<pubDate>Sat, 31 Oct 2009 14:35:13 +0000</pubDate>
		<dc:creator>Toomas Römer</dc:creator>
				<category><![CDATA[cool]]></category>
		<category><![CDATA[humour]]></category>
		<category><![CDATA[report]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1083</guid>
		<description><![CDATA[Looking at the numbers I can say that it is working but wearing the extra nose is not as easy as it seems.


]]></description>
			<content:encoded><![CDATA[<p>Looking at the numbers I can say that it is working but wearing the extra nose is not as easy as it seems.</p>
<p><a href="http://dow.ngra.de/wp-content/uploads/2009/10/71290strip.gif"><img src="http://dow.ngra.de/wp-content/uploads/2009/10/71290strip-300x93.gif" alt="Dilbert strip" title="Dilbert strip" width="300" height="93" class="aligncenter size-medium wp-image-1086" /></a></p>
<p><a href="http://dow.ngra.de/wp-content/uploads/2009/10/photo.jpg"><img src="http://dow.ngra.de/wp-content/uploads/2009/10/photo-300x225.jpg" alt="Making sales" title="Making sales" width="300" height="225" class="aligncenter size-medium wp-image-1089" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2009/10/31/a-phb-a-startup-dilbert-sales-are-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.cn/.asia Domain Name Scam</title>
		<link>http://dow.ngra.de/2009/09/29/cnasia-domain-name-scam/</link>
		<comments>http://dow.ngra.de/2009/09/29/cnasia-domain-name-scam/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 08:28:24 +0000</pubDate>
		<dc:creator>Jevgeni Kabanov</dc:creator>
				<category><![CDATA[cool]]></category>

		<guid isPermaLink="false">http://dow.ngra.de/?p=1037</guid>
		<description><![CDATA[We just received an email offering us to register a domain name ahead of competition. First I took it to be the real deal, and replied, but luckily before actually doing anything I did a search in the internet. Ladies and Gentlemen, I almost was a scam victim :)
However now that I know this is [...]]]></description>
			<content:encoded><![CDATA[<p>We just received an email offering us to register a domain name ahead of competition. First I took it to be the real deal, and replied, but luckily before actually doing anything I did <a href="http://www.google.com/search?client=safari&#038;rls=en&#038;q=We+are+the+department+of+registration+service+in+China.+we+have+something+need+to+confirm+with+you.&#038;ie=UTF-8&#038;oe=UTF-8">a search in the internet</a>. Ladies and Gentlemen, I almost was a scam victim :)</p>
<p>However now that I know this is a scam, I just might to try and turn the tables on the scammer. If I succeed to do anything fun, I&#8217;ll be sure to let you know :D</p>
<p>The letter is verbatim below to serve as a warning to those even less careful than me:</p>
<blockquote><p>
(If you are NOT CEO,please forward this to your CEO, because this is urgent.Thanks.)</p>
<p>Dear CEO,</p>
<p>We are the department of registration service in China. we have something need to confirm with you. We formally received an application on Sep 28, 2009, One Japan company called Seed soft investment Corp&#8221; are applying to register(zeroturnaround) as internet brand name and domain names as below (zeroturnaround.net.cn  zeroturnaround.org.cn  zeroturnaround.mobi  zeroturnaround.asia  zeroturnaround.in  zeroturnaround.hk  zeroturnaround.cc  zeroturnaround.tw  in  etc.).</p>
<p>After our initial checking, we found the internet brand name and these domain names being applied are as same as your company’s, so we need to get the confirmation from your company. If the aforesaid company is your business partner or your subsidiary company, please DO NOT reply us, we will approve the application automatically. If you have no any relationship with this company, please contact us within 10 workdays. If out of the deadline, we will approve the application  submitted by Seed soft investment Corp&#8221; unconditionally.</p>
<p>We would like to get the affirmation of your company,please contact us by telephone or email as soon as possible.</p>
<p>Best Regards,</p>
<p>Kevin Wu<br />
Senior Director<br />
TEL: +86 21 69929440<br />
Fax:  +86 21 69929447<br />
Website:www.govqipeng.org.cn<br />
Address:Room 902,8th,nong 1518,Jinyuan 1st Road,Jiading District, Shanghai city.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://dow.ngra.de/2009/09/29/cnasia-domain-name-scam/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->