<?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>FVN Tech Blog</title>
	<atom:link href="http://blog.feuvan.net/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.feuvan.net</link>
	<description>Coding or Programming in C#/PHP &#124; Linux or Windows Server Backend &#124;  New Media &#124; SNS &#124; Misc ...</description>
	<lastBuildDate>Thu, 04 Mar 2010 04:37:59 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Upgraded to WP 2.9.2</title>
		<link>http://blog.feuvan.net/2010/03/04/213-upgraded-to-wp-2-9-2.html</link>
		<comments>http://blog.feuvan.net/2010/03/04/213-upgraded-to-wp-2-9-2.html#comments</comments>
		<pubDate>Thu, 04 Mar 2010 04:36:02 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[WPtouch]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/?p=213</guid>
		<description><![CDATA[and added WPtouch.
]]></description>
			<content:encoded><![CDATA[<p>and added <a href="http://wordpress.org/extend/plugins/wptouch/">WPtouch</a>.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html&amp;title=Upgraded+to+WP+2.9.2"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html&amp;title=Upgraded+to+WP+2.9.2"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html&amp;title=Upgraded+to+WP+2.9.2"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html&amp;headline=Upgraded+to+WP+2.9.2"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=Upgraded+to+WP+2.9.2&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=Upgraded+to+WP+2.9.2&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=Upgraded+to+WP+2.9.2&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=Upgraded+to+WP+2.9.2&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=Upgraded+to+WP+2.9.2&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html&amp;title=Upgraded+to+WP+2.9.2&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F03%2F04%2F213-upgraded-to-wp-2-9-2.html&amp;title=Upgraded+to+WP+2.9.2"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2010/03/04/213-upgraded-to-wp-2-9-2.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Upgraded to WP 2.9.1</title>
		<link>http://blog.feuvan.net/2010/02/08/210-upgraded-to-wp-2-9-1.html</link>
		<comments>http://blog.feuvan.net/2010/02/08/210-upgraded-to-wp-2-9-1.html#comments</comments>
		<pubDate>Mon, 08 Feb 2010 05:34:02 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[lightsocial]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2010/02/08/210-upgraded-to-wp-2-9-1.html</guid>
		<description><![CDATA[nth new.
added a new plugin: light-social to "insert a set of social share links at the bottom of each post, focused on technical blogs."
]]></description>
			<content:encoded><![CDATA[<p>nth new.</p>
<p>added a new plugin: <a href="http://wordpress.org/extend/plugins/light-social/">light-social</a> to "insert a set of social share links at the bottom of each post, focused on technical blogs."</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html&amp;title=Upgraded+to+WP+2.9.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html&amp;title=Upgraded+to+WP+2.9.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html&amp;title=Upgraded+to+WP+2.9.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html&amp;headline=Upgraded+to+WP+2.9.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=Upgraded+to+WP+2.9.1&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=Upgraded+to+WP+2.9.1&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=Upgraded+to+WP+2.9.1&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=Upgraded+to+WP+2.9.1&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=Upgraded+to+WP+2.9.1&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html&amp;title=Upgraded+to+WP+2.9.1&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F02%2F08%2F210-upgraded-to-wp-2-9-1.html&amp;title=Upgraded+to+WP+2.9.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2010/02/08/210-upgraded-to-wp-2-9-1.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Let&#8217;s guess the trend of IT Tech in the next decade. Part.1</title>
		<link>http://blog.feuvan.net/2010/01/05/206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html</link>
		<comments>http://blog.feuvan.net/2010/01/05/206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html#comments</comments>
		<pubDate>Mon, 04 Jan 2010 17:28:02 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[dotNET]]></category>
		<category><![CDATA[Interoperability]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Parallel]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2010/01/05/206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html</guid>
		<description><![CDATA[Preface
I supposed to write this blog post by the end of the last year, but it was delayed.
These words are just IMHO. And you’ve already been familiar with these words.
XML
About 10 years ago, XML is considered to be one of top 10 technologies that most programmers should master. Today XML is still the most important [...]]]></description>
			<content:encoded><![CDATA[<h3>Preface</h3>
<p>I supposed to write this blog post by the end of the last year, but it was delayed.</p>
<p>These words are just IMHO. And you’ve already been familiar with these words.</p>
<h3>XML</h3>
<p>About 10 years ago, XML is considered to be one of top 10 technologies that most programmers should master. Today XML is still the most important basis for cross-platform/language/system/blahblah message exchange/interpret. Meanwhile, JSON is becoming more and more popular in Web age for its lightweight. But in enterprise domain and business critical scenarios, XML related technologies provide these feature: flexible (better than JSON), open, robust (better than JSON) and compressible.&#160; (one important example: Office Open XML format .aka. <a href="http://www.ecma-international.org/publications/standards/Ecma-376.htm">ECMA-376</a>, it’s continue evolving along with Microsoft Office products in these years)</p>
<h3>Parallel</h3>
<p>I’m not talking about cloud. I’m talking about desktop parallel computing. With more and more multiple core CPUs are filling the market, the old programming style will be changed a bit.</p>
<p>The change will involve new compiler, new library (OpenMP for C/C++, .NET FX 4, etc), new language (someone may mention Erlang), and the most important, new programming model or thinking.</p>
<h3>Managed</h3>
<p>Managed languages like C# and Java will eat more market share from traditional ones. In the next ten years, we may see Native IL support CPU or its work-like-a-product prototype say hi to the world.</p>
<p>Script languages will get benefits from technologies like DLR from .NET. We have seen JPython/IronPython, JRuby/IronRuby, Groovy/PowerShell (well, this pair are not so suitable to compare), and we’ll see more.</p>
<h3>Mobile</h3>
<p>Netbook? UMPC? PDA Phone? We’ll enjoy a mobile life. From the next generation mobile, we may get more affordable next generation mobile data fee(beyond 3G, LTE), much fast dl/up speed, better signal coverage.</p>
<p>Designers and manufacturers will produce more powerful mobile device, and the meaning of “mobile” will be extended to many devices. More scenes in SF novel/movie will come true.</p>
<p>At the same time, IT system will be more friendly to mobile device. For example, better support for small screen, one hand operation, reader mode, etc.</p>
<h4>Universal</h4>
<p>I’m talking about OS. We’ll have more choice when choosing OS, Windows, Linux, Mac, BSD…. but they will talk to each other much more smoothly. With Microsoft’s <a href="http://www.microsoft.com/interop/">open promise on interoperability</a>, other OS and products can talk to one of the biggest market share holders’ products. People can see their different desktop/server can talk to each other more happily than before.</p>
<p>&#160;</p>
<p>&#160;</p>
<p>--</p>
<p>It’s a bit late (1:26AM, GMT+8), Ill try to finish the list in recent days and post it as Part.2</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html&amp;title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html&amp;title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html&amp;title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html&amp;headline=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html&amp;title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F01%2F05%2F206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html&amp;title=Let%26rsquo%3Bs+guess+the+trend+of+IT+Tech+in+the+next+decade.+Part.1"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2010/01/05/206-lets-guess-the-trend-of-it-tech-in-the-next-decade-part-1.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>upgraded to wordpress 2.9</title>
		<link>http://blog.feuvan.net/2009/12/22/204-upgraded-to-wordpress-2-9.html</link>
		<comments>http://blog.feuvan.net/2009/12/22/204-upgraded-to-wordpress-2-9.html#comments</comments>
		<pubDate>Tue, 22 Dec 2009 05:21:29 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2009/12/22/204-upgraded-to-wordpress-2-9.html</guid>
		<description><![CDATA[Nth happened, smooth upgrade.
There’re some bad news about CN Internet.
This post is just to let you know that the site is still alive and I’m alive.
I will post some technical thoughts by the end of the year.
]]></description>
			<content:encoded><![CDATA[<p>Nth happened, smooth upgrade.</p>
<p>There’re some bad news about CN Internet.</p>
<p>This post is just to let you know that the site is still alive and I’m alive.</p>
<p>I will post some technical thoughts by the end of the year.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html&amp;title=upgraded+to+wordpress+2.9"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html&amp;title=upgraded+to+wordpress+2.9"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html&amp;title=upgraded+to+wordpress+2.9"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html&amp;headline=upgraded+to+wordpress+2.9"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=upgraded+to+wordpress+2.9&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=upgraded+to+wordpress+2.9&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=upgraded+to+wordpress+2.9&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=upgraded+to+wordpress+2.9&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=upgraded+to+wordpress+2.9&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html&amp;title=upgraded+to+wordpress+2.9&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F12%2F22%2F204-upgraded-to-wordpress-2-9.html&amp;title=upgraded+to+wordpress+2.9"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2009/12/22/204-upgraded-to-wordpress-2-9.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FUCK MSN SPAMMER</title>
		<link>http://blog.feuvan.net/2009/09/04/201-fuck-msn-spammer.html</link>
		<comments>http://blog.feuvan.net/2009/09/04/201-fuck-msn-spammer.html#comments</comments>
		<pubDate>Fri, 04 Sep 2009 09:52:45 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2009/09/04/201-fuck-msn-spammer.html</guid>
		<description><![CDATA[sammy_ios25@hotmail.com says:
 近来可好？我最近加入一个很不错的白领社区网站，结识了不少海外华人，和他们一起探讨问题、说秘密、玩游戏，简直是打发无聊、摧残寂寞的不二选择。
http://www.tinyhz.info?=bvhhki
]]></description>
			<content:encoded><![CDATA[<p>sammy_ios25@hotmail.com says:<br />
 近来可好？我最近加入一个很不错的白领社区网站，结识了不少海外华人，和他们一起探讨问题、说秘密、玩游戏，简直是打发无聊、摧残寂寞的不二选择。</p>
<p>http://www.tinyhz.info?=bvhhki</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html&amp;title=FUCK+MSN+SPAMMER"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html&amp;title=FUCK+MSN+SPAMMER"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html&amp;title=FUCK+MSN+SPAMMER"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html&amp;headline=FUCK+MSN+SPAMMER"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=FUCK+MSN+SPAMMER&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=FUCK+MSN+SPAMMER&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=FUCK+MSN+SPAMMER&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=FUCK+MSN+SPAMMER&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=FUCK+MSN+SPAMMER&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html&amp;title=FUCK+MSN+SPAMMER&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F09%2F04%2F201-fuck-msn-spammer.html&amp;title=FUCK+MSN+SPAMMER"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2009/09/04/201-fuck-msn-spammer.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>remove Intel GMA driver&#8217;s dummy &#8220;Graphics xxxx&#8221; context menu in shell integration</title>
		<link>http://blog.feuvan.net/2009/08/31/199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html</link>
		<comments>http://blog.feuvan.net/2009/08/31/199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html#comments</comments>
		<pubDate>Sun, 30 Aug 2009 23:32:35 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[GMA]]></category>
		<category><![CDATA[Intel]]></category>
		<category><![CDATA[regsvr32]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2009/08/31/199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html</guid>
		<description><![CDATA[run as Administrator:
regsvr32 /u C:\Windows\system32\igfxpph.dll
If you want the menu back, run the command again but remove "/u".
]]></description>
			<content:encoded><![CDATA[<p>run as Administrator:<br />
regsvr32 /u C:\Windows\system32\igfxpph.dll</p>
<p>If you want the menu back, run the command again but remove "/u".</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html&amp;title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html&amp;title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html&amp;title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html&amp;headline=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html&amp;title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F31%2F199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html&amp;title=remove+Intel+GMA+driver%27s+dummy+%22Graphics+xxxx%22+context+menu+in+shell+integration"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2009/08/31/199-remove-intel-gma-drivers-dummy-graphics-xxxx-context-menu-in-shell-integration.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>idle bot</title>
		<link>http://blog.feuvan.net/2009/08/23/188-idle-bot.html</link>
		<comments>http://blog.feuvan.net/2009/08/23/188-idle-bot.html#comments</comments>
		<pubDate>Sun, 23 Aug 2009 00:06:39 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[wow]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/?p=188</guid>
		<description><![CDATA[Download: wowidlebot.cpp#define WIN32_LEAN_AND_MEAN
#include &#60;windows.h&#62;
#include &#60;stdio.h&#62;
#include &#60;stdlib.h&#62;
#include &#60;time.h&#62;
&#160;
&#160;
DWORD&#160;GenerateSleepMilliseconds()
{
&#160; &#160; unsigned&#160;int range_min = 5*60; // 5 minutes
&#160; &#160; unsigned&#160;int range_max = 8*60; // 8 minutes
&#160; &#160; DWORD&#160;u = (DWORD)(((double)rand() / (RAND_MAX + 1) * (range_max - range_min)&#160; + range_min)*1000);
&#160; &#160; return&#160;u;
}
&#160;
int&#160;main(int argc, TCHAR * argv[])
{
&#160; &#160; DWORD&#160;sleepms = 0;
&#160; &#160; HWND&#160;handle = FindWindow(NULL, TEXT(&#34;魔兽世界&#34;));
&#160; &#160; if&#160;(handle == [...]]]></description>
			<content:encoded><![CDATA[<div class="hl-title">Download: <a href="http://blog.feuvan.net/wp-content/plugins/coolcode/coolcode.php?p=188&amp;download=wowidlebot.cpp">wowidlebot.cpp</a></div><div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span class="hl-prepro">#define</span><span style="color: Gray;"> </span><span style="color: Blue;">WIN32_LEAN_AND_MEAN</span><span class="hl-prepro"></span></li>
<li><span class="hl-prepro">#include </span><span style="color: #8b0000;">&lt;</span><span style="color: Red;">windows.h</span><span style="color: #8b0000;">&gt;</span><span class="hl-prepro"></span></li>
<li><span class="hl-prepro">#include </span><span style="color: #8b0000;">&lt;</span><span style="color: Red;">stdio.h</span><span style="color: #8b0000;">&gt;</span><span class="hl-prepro"></span></li>
<li><span class="hl-prepro">#include </span><span style="color: #8b0000;">&lt;</span><span style="color: Red;">stdlib.h</span><span style="color: #8b0000;">&gt;</span><span class="hl-prepro"></span></li>
<li><span class="hl-prepro">#include </span><span style="color: #8b0000;">&lt;</span><span style="color: Red;">time.h</span><span style="color: #8b0000;">&gt;</span><span class="hl-prepro"></span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Blue;">DWORD</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">GenerateSleepMilliseconds</span><span style="color: Olive;">()</span></li>
<li><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span class="hl-types">unsigned</span><span style="color: Gray;">&nbsp;</span><span class="hl-types">int</span><span style="color: Gray;"> </span><span style="color: Blue;">range_min</span><span style="color: Gray;"> = </span><span style="color: Maroon;">5</span><span style="color: Gray;">*</span><span style="color: Maroon;">60</span><span style="color: Gray;">; </span><span style="color: #ffa500;">// 5 minutes</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span class="hl-types">unsigned</span><span style="color: Gray;">&nbsp;</span><span class="hl-types">int</span><span style="color: Gray;"> </span><span style="color: Blue;">range_max</span><span style="color: Gray;"> = </span><span style="color: Maroon;">8</span><span style="color: Gray;">*</span><span style="color: Maroon;">60</span><span style="color: Gray;">; </span><span style="color: #ffa500;">// 8 minutes</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Blue;">DWORD</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">u</span><span style="color: Gray;"> = </span><span style="color: Olive;">(</span><span style="color: Blue;">DWORD</span><span style="color: Olive;">)(((</span><span class="hl-types">double</span><span style="color: Olive;">)</span><span style="color: Blue;">rand</span><span style="color: Olive;">()</span><span style="color: Gray;"> / </span><span style="color: Olive;">(</span><span style="color: Blue;">RAND_MAX</span><span style="color: Gray;"> + </span><span style="color: Maroon;">1</span><span style="color: Olive;">)</span><span style="color: Gray;"> * </span><span style="color: Olive;">(</span><span style="color: Blue;">range_max</span><span style="color: Gray;"> - </span><span style="color: Blue;">range_min</span><span style="color: Olive;">)</span><span style="color: Gray;">&nbsp; + </span><span style="color: Blue;">range_min</span><span style="color: Olive;">)</span><span style="color: Gray;">*</span><span style="color: Maroon;">1000</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">u</span><span style="color: Gray;">;</span></li>
<li><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span class="hl-types">int</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">main</span><span style="color: Olive;">(</span><span class="hl-types">int</span><span style="color: Gray;"> </span><span style="color: Blue;">argc</span><span style="color: Gray;">, </span><span style="color: Blue;">TCHAR</span><span style="color: Gray;"> * </span><span style="color: Blue;">argv</span><span style="color: Olive;">[])</span></li>
<li><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Blue;">DWORD</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">sleepms</span><span style="color: Gray;"> = </span><span style="color: Maroon;">0</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Blue;">HWND</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">handle</span><span style="color: Gray;"> = </span><span style="color: Blue;">FindWindow</span><span style="color: Olive;">(</span><span class="hl-prepro">NULL</span><span style="color: Gray;">, </span><span style="color: Blue;">TEXT</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">魔兽世界</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">))</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Blue;">handle</span><span style="color: Gray;"> == </span><span class="hl-prepro">NULL</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: Maroon;">1</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Blue;">srand</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span class="hl-types">unsigned</span><span style="color: Olive;">)</span><span style="color: Blue;">time</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span class="hl-prepro">NULL</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">while</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Green;">true</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">SendMessage</span><span style="color: Olive;">(</span><span style="color: Blue;">handle</span><span style="color: Gray;">, </span><span style="color: Blue;">WM_KEYDOWN</span><span style="color: Gray;">,</span><span style="color: Blue;">VK_SPACE</span><span style="color: Gray;">, </span><span style="color: Maroon;">0</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">SendMessage</span><span style="color: Olive;">(</span><span style="color: Blue;">handle</span><span style="color: Gray;">, </span><span style="color: Blue;">WM_KEYUP</span><span style="color: Gray;">, </span><span style="color: Blue;">VK_SPACE</span><span style="color: Gray;">, </span><span style="color: Maroon;">0</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">sleepms</span><span style="color: Gray;"> = </span><span style="color: Blue;">GenerateSleepMilliseconds</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">printf_s</span><span style="color: Olive;">(</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Sleep %d milliseconds.</span><span style="color: Navy;">\</span><span style="color: Red;">n</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">, </span><span style="color: Blue;">sleepms</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">Sleep</span><span style="color: Olive;">(</span><span style="color: Blue;">sleepms</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Olive;">}</span></li></ol></div>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html&amp;title=idle+bot"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html&amp;title=idle+bot"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html&amp;title=idle+bot"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html&amp;headline=idle+bot"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=idle+bot&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=idle+bot&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=idle+bot&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=idle+bot&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=idle+bot&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html&amp;title=idle+bot&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F23%2F188-idle-bot.html&amp;title=idle+bot"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2009/08/23/188-idle-bot.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My web proxy is reloaded. Access now at http://bit.ly/pr0xy.</title>
		<link>http://blog.feuvan.net/2009/08/13/184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html</link>
		<comments>http://blog.feuvan.net/2009/08/13/184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html#comments</comments>
		<pubDate>Wed, 12 Aug 2009 21:51:46 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[phproxy]]></category>
		<category><![CDATA[proxy]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/?p=184</guid>
		<description><![CDATA[It's still there http://us.feuvan.net/.
Or you may prefer this short url http://bit.ly/pr0xy.
It's now hosted on Linode.com.
Let's see when it will be suspended.
]]></description>
			<content:encoded><![CDATA[<p>It's still there <a href="http://us.feuvan.net/">http://us.feuvan.net/</a>.<br />
Or you may prefer this short url <a href="http://bit.ly/pr0xy">http://bit.ly/pr0xy</a>.</p>
<p>It's now hosted on Linode.com.<br />
Let's see when it will be suspended.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html&amp;title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy."><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html&amp;title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy."><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html&amp;title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy."><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html&amp;headline=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy."><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy.&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy.&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy.&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy.&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy.&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html&amp;title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy.&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F08%2F13%2F184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html&amp;title=My+web+proxy+is+reloaded.+Access+now+at+http%3A%2F%2Fbit.ly%2Fpr0xy."><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2009/08/13/184-my-web-proxy-is-reloaded-access-now-at-httpbit-lypr0xy.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Wordpress broken link helper</title>
		<link>http://blog.feuvan.net/2009/01/20/178-a-wordpress-broken-link-helper.html</link>
		<comments>http://blog.feuvan.net/2009/01/20/178-a-wordpress-broken-link-helper.html#comments</comments>
		<pubDate>Tue, 20 Jan 2009 07:43:49 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2009/01/20/178-a-wordpress-broken-link-helper.html</guid>
		<description><![CDATA[Just an example.
For wordpress ppl who changed their perm link.
Download: brokenlinkhelper.php&#60;?php
require_once(&#160;dirname(__FILE__) . '/wp-load.php' );
&#160;
global&#160;$wpdb;
&#160;
$uri = $_SERVER[&#34;REQUEST_URI&#34;];
$pattern = &#34;/^\/(\d{4})\/(\d{2})\/(\d{2})\/([^\d].*&#124;\d+[.^-]*).html$/&#34;;
if&#160;(preg_match($pattern, $uri, $match) == 1)
{
&#160; &#160; $year = $match[1];
&#160; &#160; $month = $match[2];
&#160; &#160; $mday = $match[3];
&#160; &#160; $post_name = $match[4];
&#160;
&#160; &#160; if&#160;((string)(int)$post_name == $post_name) {
&#160; &#160; &#160; &#160; $id = (int)$post_name;
&#160; &#160; &#160; &#160; $link = get_permalink($id);
&#160; [...]]]></description>
			<content:encoded><![CDATA[<p>Just an example.<br />
For wordpress ppl who changed their perm link.</p>
<div class="hl-title">Download: <a href="http://blog.feuvan.net/wp-content/plugins/coolcode/coolcode.php?p=178&amp;download=brokenlinkhelper.php">brokenlinkhelper.php</a></div><div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: Blue;">&lt;?php</span></li>
<li><span style="color: Green;">require_once</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">dirname</span><span style="color: Olive;">(</span><span style="color: Green;">__FILE__</span><span style="color: Olive;">)</span><span style="color: Gray;"> . </span><span style="color: #8b0000;">'</span><span style="color: Red;">/wp-load.php</span><span style="color: #8b0000;">'</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Green;">global</span><span style="color: Gray;">&nbsp;</span><span style="color: #00008b;">$wpdb</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: #00008b;">$uri</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$_SERVER</span><span style="color: Olive;">[</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">REQUEST_URI</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: #00008b;">$pattern</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">/^\/(\d{4})\/(\d{2})\/(\d{2})\/([^\d].*|\d+[.^-]*).html$/</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Blue;">preg_match</span><span style="color: Olive;">(</span><span style="color: #00008b;">$pattern</span><span style="color: Gray;">, </span><span style="color: #00008b;">$uri</span><span style="color: Gray;">, </span><span style="color: #00008b;">$match</span><span style="color: Olive;">)</span><span style="color: Gray;"> == </span><span style="color: Maroon;">1</span><span style="color: Olive;">)</span></li>
<li><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$year</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$match</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$month</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$match</span><span style="color: Olive;">[</span><span style="color: Maroon;">2</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$mday</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$match</span><span style="color: Olive;">[</span><span style="color: Maroon;">3</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$post_name</span><span style="color: Gray;"> = </span><span style="color: #00008b;">$match</span><span style="color: Olive;">[</span><span style="color: Maroon;">4</span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">((</span><span style="color: Blue;">string</span><span style="color: Olive;">)(</span><span style="color: Blue;">int</span><span style="color: Olive;">)</span><span style="color: #00008b;">$post_name</span><span style="color: Gray;"> == </span><span style="color: #00008b;">$post_name</span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$id</span><span style="color: Gray;"> = </span><span style="color: Olive;">(</span><span style="color: Blue;">int</span><span style="color: Olive;">)</span><span style="color: #00008b;">$post_name</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #00008b;">$link</span><span style="color: Gray;"> = </span><span style="color: Blue;">get_permalink</span><span style="color: Olive;">(</span><span style="color: #00008b;">$id</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #00008b;">$link</span><span style="color: Olive;">)</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">wp_redirect</span><span style="color: Olive;">(</span><span style="color: #00008b;">$link</span><span style="color: Gray;">, </span><span style="color: #8b0000;">'</span><span style="color: Red;">301</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">; </span><span style="color: #ffa500;">// Permanent redirect</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$query</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">SELECT post_id FROM </span><span style="color: #00008b;">$wpdb</span><span style="color: Red;">-&gt;postmeta, </span><span style="color: #00008b;">$wpdb</span><span style="color: Red;">-&gt;posts WHERE ID=post_id </span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">.</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">AND YEAR(post_date) = </span><span style="color: #00008b;">$year</span><span style="color: Red;"> AND MONTH(post_date) = </span><span style="color: #00008b;">$month</span><span style="color: Red;"> AND DAYOFMONTH(post_date) = </span><span style="color: #00008b;">$mday</span><span style="color: Red;">&nbsp;</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">.</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">AND post_name = </span><span style="color: Navy;">\&quot;</span><span style="color: #00008b;">$post_name</span><span style="color: Navy;">\&quot;</span><span style="color: Red;"> LIMIT 1</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$id</span><span style="color: Gray;"> = </span><span style="color: Olive;">(</span><span style="color: Blue;">int</span><span style="color: Olive;">)</span><span style="color: #00008b;">$wpdb</span><span style="color: Gray;">-&gt;</span><span style="color: Blue;">get_var</span><span style="color: Olive;">(</span><span style="color: #00008b;">$query</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$link</span><span style="color: Gray;"> = </span><span style="color: Blue;">get_permalink</span><span style="color: Olive;">(</span><span style="color: #00008b;">$id</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #00008b;">$link</span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Blue;">wp_redirect</span><span style="color: Olive;">(</span><span style="color: #00008b;">$link</span><span style="color: Gray;">, </span><span style="color: #8b0000;">'</span><span style="color: Red;">301</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">; </span><span style="color: #ffa500;">// Permanent redirect</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$query</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">SELECT ID FROM </span><span style="color: #00008b;">$wpdb</span><span style="color: Red;">-&gt;posts WHERE </span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">.</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">YEAR(post_date) = </span><span style="color: #00008b;">$year</span><span style="color: Red;"> AND MONTH(post_date) = </span><span style="color: #00008b;">$month</span><span style="color: Red;"> AND DAYOFMONTH(post_date) = </span><span style="color: #00008b;">$mday</span><span style="color: Red;">&nbsp;</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">.</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">AND post_name = </span><span style="color: Navy;">\&quot;</span><span style="color: #00008b;">$post_name</span><span style="color: Navy;">\&quot;</span><span style="color: Red;"> LIMIT 1</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$id</span><span style="color: Gray;"> = </span><span style="color: Olive;">(</span><span style="color: Blue;">int</span><span style="color: Olive;">)</span><span style="color: #00008b;">$wpdb</span><span style="color: Gray;">-&gt;</span><span style="color: Blue;">get_var</span><span style="color: Olive;">(</span><span style="color: #00008b;">$query</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$link</span><span style="color: Gray;"> = </span><span style="color: Blue;">get_permalink</span><span style="color: Olive;">(</span><span style="color: #00008b;">$id</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: #00008b;">$link</span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Blue;">wp_redirect</span><span style="color: Olive;">(</span><span style="color: #00008b;">$link</span><span style="color: Gray;">, </span><span style="color: #8b0000;">'</span><span style="color: Red;">301</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">; </span><span style="color: #ffa500;">// Permanent redirect</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: #00008b;">$link</span><span style="color: Gray;"> = </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">/</span><span style="color: #00008b;">$year</span><span style="color: Red;">/</span><span style="color: #00008b;">$month</span><span style="color: Red;">/</span><span style="color: #00008b;">$mday</span><span style="color: Red;">/</span><span style="color: #8b0000;">&quot;</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Blue;">strstr</span><span style="color: Olive;">(</span><span style="color: #00008b;">$_SERVER</span><span style="color: Olive;">[</span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">HTTP_USER_AGENT</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">]</span><span style="color: Gray;">, </span><span style="color: #8b0000;">&quot;</span><span style="color: Red;">Mozilla</span><span style="color: #8b0000;">&quot;</span><span style="color: Olive;">)</span><span style="color: Gray;"> === </span><span style="color: Green;">FALSE</span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: #ffa500;">// if it's not a user</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">wp_redirect</span><span style="color: Olive;">(</span><span style="color: #00008b;">$link</span><span style="color: Gray;">, </span><span style="color: #8b0000;">'</span><span style="color: Red;">302</span><span style="color: #8b0000;">'</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Blue;">?&gt;</span></li>
<li><span style="color: Black;">&lt;html&gt;&lt;head&gt;</span></li>
<li><span style="color: Black;">&lt;meta http-equiv=&quot;refresh&quot; content=&quot;5;url=</span><span style="color: Blue;">&lt;?php</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">echo</span><span style="color: Gray;"> </span><span style="color: #00008b;">$link</span><span style="color: Gray;">;</span><span style="color: Blue;">?&gt;</span><span style="color: Black;">&quot; / &gt; &lt;title&gt;Page has moved&lt;/title&gt; &lt;/head&gt;</span></li>
<li><span style="color: Black;">&lt;body&gt;&lt;p&gt;The permant link changes, however &lt;i&gt;broken link helper&lt;/i&gt; can't solve it automaticlly, it will redirect you to &lt;a href=&quot;</span><span style="color: Blue;">&lt;?php</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">echo</span><span style="color: Gray;"> </span><span style="color: #00008b;">$link</span><span style="color: Gray;">;</span><span style="color: Blue;">?&gt;</span><span style="color: Black;">&quot;&gt;the date archive page&lt;/a&gt;. It would be nice if you can report broken links to feuvan#feuvan.net.&lt;/p&gt;</span></li>
<li><span style="color: Black;">&lt;/body&gt;&lt;/html&gt;</span></li>
<li><span style="color: Blue;">&lt;?php</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">}</span><span style="color: Gray;"> </span><span style="color: Blue;">?&gt;</span></li></ol></div>
<p>Corresponding nginx configuration block:</p>
<blockquote><p>
server {<br />
	listen 80;<br />
	server_name blog.feuvan.net;</p>
<p>	root /home/feuvan/wwwdata/blog;<br />
	index index.php;<br />
	if (-e $request_filename) {<br />
		break;<br />
	}</p>
<p>	rewrite  ^/index.php/(.+)$  /index.php?q=$1 last;<br />
	rewrite  "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/([^\d].*|\d+[.^-]*).html" /brokenlinkhelper.php last;<br />
#rewrite  ^/(.+)$ /index.php?q=$1 last;<br />
	rewrite  ^/ /index.php last;</p>
<p>	location ~ \.php$ {<br />
		fastcgi_pass   unix:/tmp/php.sock;<br />
	}<br />
}
</p></blockquote>
<p>Hope it helps.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html&amp;title=A+Wordpress+broken+link+helper"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html&amp;title=A+Wordpress+broken+link+helper"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html&amp;title=A+Wordpress+broken+link+helper"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html&amp;headline=A+Wordpress+broken+link+helper"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=A+Wordpress+broken+link+helper&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=A+Wordpress+broken+link+helper&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=A+Wordpress+broken+link+helper&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=A+Wordpress+broken+link+helper&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=A+Wordpress+broken+link+helper&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html&amp;title=A+Wordpress+broken+link+helper&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2009%2F01%2F20%2F178-a-wordpress-broken-link-helper.html&amp;title=A+Wordpress+broken+link+helper"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2009/01/20/178-a-wordpress-broken-link-helper.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>2009: A dynamic future of C#</title>
		<link>http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html</link>
		<comments>http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html#comments</comments>
		<pubDate>Fri, 31 Oct 2008 08:39:46 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[dotNET]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html</guid>
		<description><![CDATA[70s coders learn C, Pascal, COBOL(one of the best IT jobs in economic crisis)
80s coders learn C
90s coders learn C++, Java, Delphi
21-century (long time no see this hot word during 1999-2001)  coders learn C#?
- A homemade rumor by anonymous craven
On PDC 2008, Anders, former architecture of Turbo Pascal, Delphi, Visual J++, currently the father of [...]]]></description>
			<content:encoded><![CDATA[<p>70s coders learn C, Pascal, COBOL(one of the best IT jobs in economic crisis)<br />
80s coders learn C<br />
90s coders learn C++, Java, Delphi<br />
21-century (long time no see this <em>hot</em> word during 1999-2001)  coders learn C#?</p>
<p align="right">- A homemade rumor by anonymous craven</p>
<p>On PDC 2008, Anders, former architecture of Turbo Pascal, Delphi, Visual J++, currently the father of C#, gives us a presentation <a href="http://channel9.msdn.com/pdc2008/TL16/" target="_blank">“The Future of C#”</a> about what new features C# 4.0 will have. The demo “Compiler as a service” is really cool. Think about the prompt “C# &gt;”.</p>
<p>Mads Torgersen, C# Language PM gives a <a title="The Future of C#" href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=csharpfuture&amp;DownloadId=3550" target="_blank">public released document</a> on <a href="http://code.msdn.microsoft.com/csharpfuture" target="_blank">C# Future site</a>, describes four main new features:</p>
<blockquote>
<h5>Dynamic lookup</h5>
<p>Dynamic lookup allows you to write method, operator and indexer calls, property and field accesses, and even object invocations which bypass the C# static type checking and instead gets resolved at runtime.</p>
<h5>Named and optional parameters</h5>
<p>Parameters in C# can now be specified as optional by providing a default value for them in a member declaration. When the member is invoked, optional arguments can be omitted. Furthermore, any argument can be passed by parameter name instead of position.</p>
<h5>COM specific interop features</h5>
<p>Dynamic lookup as well as named and optional parameters both help making programming against COM less painful than today. On top of that, however, we are adding a number of other small features that further improve the interop experience.</p>
<h5>Variance</h5>
<p>It used to be that an IEnumerable&lt;string&gt; wasn’t an IEnumerable&lt;object&gt;. Now it is – C# embraces type safe “co-and contravariance” and common BCL types are updated to take advantage of that.</p></blockquote>
<p>My comments:</p>
<table border="1" cellspacing="1" cellpadding="2" width="700">
<thead>
<tr>
<th width="150">features</th>
<th>benefit</th>
<th>side effect</th>
</tr>
</thead>
<tbody>
<tr>
<td>Dynamic lookup</td>
<td><strong>dynamic </strong>(runtime type detection) versus <strong>var </strong>(compile time type inference) introduced in C#3.0.<br />
No handwritten reflection codes any more.</td>
<td>No IntelliSense when programming.<br />
Difficult to defend unknown runtime exceptions, errors.</td>
</tr>
<tr>
<td>Named and optional parameters</td>
<td>ease function call of COM interop like VSTO, etc.</td>
<td>Named parameters looks Pythonic. But maybe <a href="http://channel9.msdn.com/pdc2008/TL10/" target="_blank">Jim</a> like this?</td>
</tr>
<tr>
<td>COM specific interop features</td>
<td>based on previous two new features, it’s easier.<br />
The biggest benefit: no runtime PIA more!</td>
<td>N/A? Time to migrate old workaround code.</td>
</tr>
<tr>
<td>Variance</td>
<td>more friendly</td>
<td>as above.</td>
</tr>
</tbody>
</table>
<p>These new features certainly relies on new .NET framework. At least, <strong>dynamic</strong> is not a language sugar like <strong>var</strong>.</p>
<p>Overall, C# is becoming more and more free-style language, combined compile-time and run-time power. It’s worthy to take a look at what C# will be if you are a C# developer or even a Java, C++ lover. Write less, do more. That’s the best value of the C# evolution, IMO.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;headline=2009%3A+A+dynamic+future+of+C%23"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=2009%3A+A+dynamic+future+of+C%23&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=2009%3A+A+dynamic+future+of+C%23&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=2009%3A+A+dynamic+future+of+C%23&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=2009%3A+A+dynamic+future+of+C%23&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=2009%3A+A+dynamic+future+of+C%23&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23&amp;summary=&amp;source="><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/reader/link?url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23"><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
