<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Minh T. Nguyen's Blog</title><subtitle type="html">Minh T. Nguyen's Professional Blog on .NET/Silverlight development</subtitle><id>http://blogs.msdn.com/minguyen/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/minguyen/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2006-03-08T13:12:00Z</updated><entry><title>Leaving Microsoft in Silicon Valley, joining Demand Media in Santa Monica </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2009/02/19/leaving-microsoft-in-silicon-valley-joining-demand-media-in-santa-monica.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2009/02/19/leaving-microsoft-in-silicon-valley-joining-demand-media-in-santa-monica.aspx</id><published>2009-02-19T11:55:00Z</published><updated>2009-02-19T11:55:00Z</updated><content type="html">&lt;p&gt;After having worked for almost 4 years for Microsoft, I’ve decided to let go. 
Some people think it’s crazy to quit a well-paid and stable job in this economy, 
but as much as I love Microsoft, I love my fiancée more, so it was time for me 
to pack up my stuff in San Jose and join PT in Los Angeles. Looking back, I am 
saddened to leave the dream company I’ve always wanted to work for since 
childhood, but I am proud to have left my imprints on &lt;a href="http://www.microsoftmediaroom.com/"&gt;Microsoft Mediaroom&lt;/a&gt; (aka &lt;a href="https://uverse1.att.com/un/launchAMSS.do"&gt;AT&amp;amp;T U-Verse&lt;/a&gt;) – the 
coolest TV product out there.&lt;/p&gt;
&lt;p&gt;On the other hand, I am very excited about this move. As a big-city person, I 
hated living in Silicon Valley, a place that is surely vibrant and exciting for 
the tech community, but socially and culturally doesn’t have that much to offer. 
I’ve now returned to Los Angeles and live with PT near UCLA. We go jogging every 
other morning and have dinner together each evening. On weekends we drive 
together to visit our parents (and my cats) in OC, but we’ll also reserve the 
right to stay in the City of Angels on weekends too. While this isn’t New York 
City, it’s the second favorite US city for me to live in. &lt;/p&gt;
&lt;p&gt;As for work, I’ve returned to my passion of web development and joined social 
web conglomerate &lt;a href="http://www.demandmedia.com/"&gt;Demand Media&lt;/a&gt; in Santa 
Monica. My commute to work is surprisingly short for the greater Los Angeles 
area (only 15-20 minutes), and working right next to the Santa Monica beach and 
the &lt;a href="http://www.thirdstreetpromenade.com/"&gt;Third Street Promenade&lt;/a&gt; 
surely is a great location for fun, food and festivities. I can’t wait to play 
some real beach volleyball with my new coworkers in the summer. What’s also 
exciting is that as a Lead Software Engineer here, I’ll get a chance in leading 
a team of developers in developing new features on some high-traffic websites. I 
am looking forward to the challenge and opportunity.&lt;/p&gt;
&lt;p&gt;All in all, lots of changes to my life this month, but I am embracing them 
all.&lt;/p&gt;&lt;p&gt;PS: This will be my last post on MSDN blogs. I'll continue blogging personally at &lt;a href="http://www.enderminh.com/blog/" title="http://www.enderminh.com/blog/" mce_href="http://www.enderminh.com/blog/"&gt;http://www.enderminh.com/blog/&lt;/a&gt; &lt;br&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9433580" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author></entry><entry><title>StoryShare - An open-source Facebook application for sharing, syndicating and promoting articles, links, podcasts and vodcasts</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2009/01/21/storyshare-an-open-source-facebook-application-for-sharing-syndicating-and-promoting-articles-links-podcasts-and-vodcasts.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2009/01/21/storyshare-an-open-source-facebook-application-for-sharing-syndicating-and-promoting-articles-links-podcasts-and-vodcasts.aspx</id><published>2009-01-21T11:00:00Z</published><updated>2009-01-21T11:00:00Z</updated><content type="html">

&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;table align="center"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;font size="+1"&gt;Download&lt;/font&gt;:&lt;br&gt;&lt;a href="http://www.enderminh.com/minh/binary/StoryShare_2009_01_11.zip" mce_href="http://www.enderminh.com/minh/binary/StoryShare_2009_01_11.zip"&gt;StoryShare_2009_01_11.zip&lt;/a&gt; 
(4 MB)&lt;br&gt;&lt;br&gt;&lt;font size="+1"&gt;PowerPoint&lt;/font&gt;:&lt;br&gt;&lt;a href="http://www.enderminh.com/minh/binary/StoryShare.ppt" mce_href="http://www.enderminh.com/minh/binary/StoryShare.ppt"&gt;StoryShare.ppt&lt;/a&gt; (1 
MB) &lt;br&gt;&lt;br&gt;&lt;font size="+1"&gt;See it live&lt;/font&gt;: &lt;br&gt;&lt;a href="http://apps.facebook.com/lenduong" mce_href="http://apps.facebook.com/lenduong"&gt;http://apps.facebook.com/lenduong&lt;/a&gt; 
&lt;/td&gt;

&lt;td width="5"&gt;&lt;br&gt;&lt;/td&gt;

&lt;td align="middle"&gt;&lt;a href="http://www.enderminh.com/minh/blogfiles/2009_01_20_storyshare.jpg" mce_href="http://www.enderminh.com/minh/blogfiles/2009_01_20_storyshare.jpg"&gt;&lt;img src="http://www.enderminh.com/minh/blogfiles/2009_01_20_storyshare_small.jpg" style="border: 3px solid black;" alt="StoryShare Screenshot" mce_src="http://www.enderminh.com/minh/blogfiles/2009_01_20_storyshare_small.jpg"&gt;&lt;/a&gt;&lt;br&gt;Screenshot&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;


&lt;p&gt;&lt;strong&gt;&lt;font size="+1"&gt;What is StoryShare?&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://enderminh.com/blog/archive/2009/01/11/2438.aspx" mce_href="http://enderminh.com/blog/archive/2009/01/11/2438.aspx"&gt;StoryShare&lt;/a&gt; is 
an open-source ASP.NET/C#-based Facebook application that allows users to 
suggest, share, syndicate articles, links, podcasts and vodcasts with one 
another. It was developed in 2008 originally in-house by the &lt;a href="http://www.lenduong.net/" mce_href="http://www.lenduong.net/"&gt;Len Duong International Vietnamese Youth 
Network&lt;/a&gt; for the purpose of promoting its activities, but was then later 
decided to be made available to other organizations in January 2009.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;font size="+1"&gt;Features&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;StoryShare has the following features for now&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Facebook users can suggest links to other websites, self-written notes, MP3 
files on the web, and YouTube videos. Each of these items is referred to as a 
“Story” 
&lt;/li&gt;
&lt;li&gt;A predefined set of moderators can approve stories, which then will appear 
on the main StoryShare feed 
&lt;/li&gt;
&lt;li&gt;Stories can be commented on by other users of the application as well as 
re-posted to ones’ own profile 
&lt;/li&gt;
&lt;li&gt;The main feed can also be embedded directly into people’s profiles as well 
&lt;/li&gt;
&lt;li&gt;The main feed is available as an RSS feed outside of facebook 
&lt;/li&gt;
&lt;li&gt;All approved video stories also appear in the VodCast tab again 
&lt;/li&gt;
&lt;li&gt;A PodCast tab lists all audio files from a specified Podcast RSS feed. 
Unlike the VodCast tab, this feed does not originate from the approved stories, 
but is just replicated from an arbitrary RSS feed&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The following features are currently in plan:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Suggested stories should also appear on user’s main Facebook feed like “Minh 
Nguyen just suggested this story through SomeOrganization’s StoryShare” 
&lt;/li&gt;
&lt;li&gt;Ability for an administrator to send messages to all users 
&lt;/li&gt;
&lt;li&gt;Ability for administrators to dynamically promote/demote other users as 
Moderators 
&lt;/li&gt;
&lt;li&gt;Support other videos besides YouTube (maybe Vimeo)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;font size="+1"&gt;Version&lt;/font&gt;&lt;br&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The “January 2009” version was the first publicly-available version of 
StoryShare. Your feedback and collaboration is welcome.&lt;br&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;font size="+1"&gt;Requirements&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The following are required to install and configure StoryShare, &lt;br&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An ASP.NET 2.0 web host 
&lt;/li&gt;
&lt;li&gt;SQL Server 2005 (or higher) 
&lt;/li&gt;
&lt;li&gt;Visual Studio .NET 2008 (you should be able to use the free Express edition) 
&lt;/li&gt;
&lt;li&gt;SubSonic 2.1 (or higher) 
&lt;/li&gt;
&lt;li&gt;An understanding of ASP.NET, SubSonic, C#, SQL and the Facebook 
anatomy&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Minh T. Nguyen, StoryShare Developer&lt;/strong&gt;&lt;br&gt;&lt;strong&gt;Len Duong 
International Vietnamese Youth Network&lt;br&gt;&lt;/strong&gt;&lt;a href="mailto:nguyentriminh@yahoo.com" mce_href="mailto:nguyentriminh@yahoo.com"&gt;nguyentriminh@yahoo.com&lt;/a&gt;&lt;br&gt;&lt;a href="http://enderminh.com/blog/archive/2009/01/11/2438.aspx" mce_href="http://enderminh.com/blog/archive/2009/01/11/2438.aspx"&gt;http://enderminh.com/blog/archive/2009/01/11/2438.aspx&lt;/a&gt;&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9355895" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author><category term="Facebook Application" scheme="http://blogs.msdn.com/minguyen/archive/tags/Facebook+Application/default.aspx" /></entry><entry><title>Minh T. Nguyen's Mandelbrot Explorer 1.0 in Silverlight 2.0 with source code </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2008/12/03/minh-t-nguyen-s-mandelbrot-explorer-1-0-in-silverlight-2-0-with-source-code.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2008/12/03/minh-t-nguyen-s-mandelbrot-explorer-1-0-in-silverlight-2-0-with-source-code.aspx</id><published>2008-12-03T13:16:00Z</published><updated>2008-12-03T13:16:00Z</updated><content type="html">&lt;p align="center"&gt;&lt;iframe src="http://silverlight.services.live.com/invoke/34134/MandelbrotExplorer/iframe.html" mce_src="http://silverlight.services.live.com/invoke/34134/MandelbrotExplorer/iframe.html" style="width: 640px; height: 480px;" scrolling="no" frameborder="0"&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p align="left"&gt;&lt;a href="http://enderminh.com/blog/archive/2008/12/03/2379.aspx" mce_href="http://enderminh.com/blog/archive/2008/12/03/2379.aspx"&gt;Minh T. Nguyen&lt;/a&gt;'s &lt;a href="http://enderminh.com/blog/archive/2008/12/03/2379.aspx" mce_href="http://enderminh.com/blog/archive/2008/12/03/2379.aspx"&gt;Mandelbrot Explorer&lt;/a&gt; is an application that allows you to zoom into the &lt;a href="http://en.wikipedia.org/wiki/Mandelbrot_set" mce_href="http://en.wikipedia.org/wiki/Mandelbrot_set"&gt;Mandelbrot set&lt;/a&gt;
fractal at an arbitrary level. Simply select an area to zoom in, and
use the back button to backtrace or the restart button to start from
the beginning. If you don't see the fractal above, please install the
freely-available Microsoft Silverlight 2.0 plug-in (available for most
popular browsers) at &lt;a href="http://www.silverlight.net/" mce_href="http://www.silverlight.net/"&gt;www.silverlight.net&lt;/a&gt;. Note that this application is very power-hungry, so a fast computer is recommended.&lt;br&gt;&lt;br&gt;&lt;b&gt;Academic details:&lt;/b&gt; The Mandelbrot fractal is generated by drawing the set of &lt;a href="http://en.wikipedia.org/wiki/Complex_number" mce_href="http://en.wikipedia.org/wiki/Complex_number"&gt;complex numbers&lt;/a&gt;
c on a complex plane, where the value of the function f(z) = z * z + c
applied iteratively on itself is unbounded. In other words, if you pick
a complex number c and an initial value of z being c, and apply the
above function over and over again, you’ll see that the absolute value
of the running result either always remains bounded below 2 or &lt;a href="http://www.ddewey.net/mandelbrot/" mce_href="http://www.ddewey.net/mandelbrot/"&gt;suddenly shoots up towards infinity&lt;/a&gt;
after a certain number of iterations. Well if the latter happens, you
draw the complex number on the plane with a certain color that is
reflective of how many iterations it took for the function to escape.
But anyways, before mathematicians are lynching me for such a rude
definition, you’re probably better off reading a formal description of &lt;a href="http://en.wikipedia.org/wiki/Mandelbrot_set" mce_href="http://en.wikipedia.org/wiki/Mandelbrot_set"&gt;the Mandelbrot set over at Wikipedia&lt;/a&gt;. &lt;br&gt;&lt;br&gt;&lt;b&gt;Technical details:&lt;/b&gt; This application was recently updated with the &lt;a href="http://www.silverlight.net/" mce_href="http://www.silverlight.net/"&gt;Microsoft Silverlight 2.0&lt;/a&gt; and is hosted via &lt;a href="http://streaming.live.com/" mce_href="http://streaming.live.com/"&gt;Microsoft Silverlight Streaming by Windows Live&lt;/a&gt;. The Mandelbrot generation algorithm is very loosely based on &lt;a href="http://oraclevsmicrosoft.blogspot.com/2004/11/mandelbrot-in-c-sources.html" mce_href="http://oraclevsmicrosoft.blogspot.com/2004/11/mandelbrot-in-c-sources.html"&gt;Marc Boizeau's implementation&lt;/a&gt;
of using complex number classes and operator overloading, while the
coloring of the complex points outside of the Mandelbrot set is
borrowed from &lt;a href="http://www.codeproject.com/csharp/Mandelbrot_in_C_.asp" mce_href="http://www.codeproject.com/csharp/Mandelbrot_in_C_.asp"&gt;Pierre Leclercq's implementation&lt;/a&gt;. In order to draw pixels on a Bitmap in Silverlight, I used &lt;a href="http://blogs.msdn.com/jstegman/archive/2008/04/21/dynamic-image-generation-in-silverlight.aspx" mce_href="http://blogs.msdn.com/jstegman/archive/2008/04/21/dynamic-image-generation-in-silverlight.aspx"&gt;Joe Stegman's dynamic image generation&lt;/a&gt; code.&amp;nbsp;&lt;/p&gt;

&lt;p align="left"&gt;&lt;b&gt;Source code:&lt;/b&gt; The full source code for this Mandelbrot Explorer is &lt;a href="http://enderminh.com/minh/binary/MinhsMandelbrotExplorer_1.0.zip" mce_href="http://enderminh.com/minh/binary/MinhsMandelbrotExplorer_1.0.zip"&gt;posted here&lt;/a&gt;&amp;nbsp;(requires
Visual Studio .NET 2008). I don't care what you want to do with this.
Just don't make money or claim that it's yours. :)&lt;br&gt;&lt;br&gt;&lt;b&gt;Version 1.0 Update:&lt;/b&gt; This 1.0 version&amp;nbsp;is an update over the &lt;a href="http://enderminh.com/blog/archive/2007/11/06/1831.aspx" mce_href="http://enderminh.com/blog/archive/2007/11/06/1831.aspx"&gt;0.9 version&lt;/a&gt;.
It uses Silverlight 2.0's new DispatcherTimer to be able to modify UI
elements from a timer event without the need to manually marshal
control back to the UI thread (avoids the “cross-thread operation not
allowed” exception). In addition, in version 0.9 I used a bad hack of
drawing tiny rectangles on a canvas to mimic pixels since Silverlight
does not have an out-of-the-box editable image class. Well, since then &lt;a href="http://blogs.msdn.com/jstegman/archive/2008/04/21/dynamic-image-generation-in-silverlight.aspx" mce_href="http://blogs.msdn.com/jstegman/archive/2008/04/21/dynamic-image-generation-in-silverlight.aspx"&gt;Joe Stegman has invented such an EditableImage&lt;/a&gt;
by converting the pixel&amp;nbsp;data in memory into a PNG image. This technique
greatly improves the drawing performance, prompting me to even draw the
view partially as it is being calculated. What's next? Well, really, I
should be coding this using the &lt;a href="http://msdn.microsoft.com/en-us/library/cc645050%28VS.95%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/cc645050%28VS.95%29.aspx"&gt;DeepZoom technology&lt;/a&gt;, since this example is just crying out loud to be implemented using&amp;nbsp;that, but I'll do that another time. :)&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9169330" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author><category term="mandelbrot silverlight" scheme="http://blogs.msdn.com/minguyen/archive/tags/mandelbrot+silverlight/default.aspx" /></entry><entry><title>Speaking at UC Berkeley on September 30th on the computer science major</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2008/09/26/speaking-at-uc-berkeley-on-september-30th-on-the-computer-science-major.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2008/09/26/speaking-at-uc-berkeley-on-september-30th-on-the-computer-science-major.aspx</id><published>2008-09-27T08:56:00Z</published><updated>2008-09-27T08:56:00Z</updated><content type="html">&lt;b&gt;What:&lt;/b&gt; &lt;a href="http://blogs.msdn.com/minguyen" mce_href="http://blogs.msdn.com/minguyen"&gt;Minh T. Nguyen&lt;/a&gt;, a Cal Alumnus and Senior Software Design Engineer with &lt;a href="http://www.microsoftmediaroom.com" target="_blank" mce_href="http://www.microsoftmediaroom.com"&gt;Microsoft Mediaroom&lt;/a&gt;, will speak at the alumni panel at the Letters &amp;amp; Science 1 class about his experience choosing his major, getting his BS degree in computer science at Cal, how this experience has affected his career and provide some retrospective advice.&lt;br&gt;&lt;br&gt;&lt;b&gt;When&lt;/b&gt;: Tuesday, September 30th, 2008, 3:30pm&lt;br&gt;&lt;br&gt;&lt;b&gt;Where: &lt;/b&gt;2040 Valley Life Sciences Building, UC Berkeley, Berkeley, CA&lt;br&gt;&lt;br&gt;&lt;b&gt;Why: &lt;/b&gt;Letters and Science 1 is a course for entering students, particularly those who are excited to be here but uncertain of where to start their explorations. It provides an introduction to the intellectual landscape of the College of Letters &amp;amp; Science, the campus's liberal arts college. There will be several alumni speaking briefly about their respective majors in L&amp;amp;S and provide tips and advice to first-year students.&lt;br&gt;&lt;br&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8967380" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author><category term="UC Berkeley" scheme="http://blogs.msdn.com/minguyen/archive/tags/UC+Berkeley/default.aspx" /><category term="Alumni Panel" scheme="http://blogs.msdn.com/minguyen/archive/tags/Alumni+Panel/default.aspx" /><category term="Berkeley" scheme="http://blogs.msdn.com/minguyen/archive/tags/Berkeley/default.aspx" /><category term="Mediaroom" scheme="http://blogs.msdn.com/minguyen/archive/tags/Mediaroom/default.aspx" /></entry><entry><title>Photosynth of Osaka Castle in Osaka, Japan and interior of Saint Peter’s Basilica in Rome, Italy</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2008/09/16/photosynth-of-osaka-castle-in-osaka-japan-and-interior-of-saint-peter-s-basilica-in-rome-italy.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2008/09/16/photosynth-of-osaka-castle-in-osaka-japan-and-interior-of-saint-peter-s-basilica-in-rome-italy.aspx</id><published>2008-09-17T00:47:00Z</published><updated>2008-09-17T00:47:00Z</updated><content type="html">&lt;p&gt;About two years ago, Microsoft showed a preview of Photosynth at the internal company meeting event, and wowed us all, but we weren’t allowed to talk about it. Then, almost a year later, the beta software was made available to employees, allowing us to play with it, but we could discuss or even show this outside of Microsoft. Well, last month, Microsoft finally released Photosynth to the world as a Microsoft Live Labs project, so I can finally blog about what a kick-ass awesome product this is, and publish two of my really synthy photosynths.&lt;/p&gt;
&lt;p&gt;For those who don’t know, Photosynth is a software application that takes a set of digital photographs, and builds a three-dimensional cloud out of these pictures just through pure computational analysis. Without the user having to prepare or do anything at all, the software analyzes and determines how each photo relates to one another, provided that there is some overlap. The resulting mesh is then presented in a 3D world that allows you to navigate and zoom in and out with no limit on resolution or zoom factor. It’s hella cool, and absolutely stunning!&lt;/p&gt;
&lt;p&gt;So, let me present to you to Photosynth that I painstakingly did on my last two vacations.&lt;/p&gt;
&lt;p align="center"&gt;&lt;iframe src="http://photosynth.net/embed.aspx?cid=0e4b32c7-25f1-4868-8cb7-2784de20134a" mce_src="http://photosynth.net/embed.aspx?cid=0e4b32c7-25f1-4868-8cb7-2784de20134a" width="400" frameborder="0" height="300"&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;This is the interior of Saint Peter’s Basilica in Rome, Italy. While PT had a headache and was resting on a bench, I wandered around in there for two hours to take tons of pictures. From those, 291 pictures were reconstructed in this Photosynth that is 97% synthy.&lt;/p&gt;
&lt;p align="center"&gt;&lt;iframe src="http://photosynth.net/embed.aspx?cid=7417d40e-8316-47bb-9e03-9b1e0d5d9b5c" mce_src="http://photosynth.net/embed.aspx?cid=7417d40e-8316-47bb-9e03-9b1e0d5d9b5c" width="400" frameborder="0" height="300"&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;This is Osaka Castle in Osaka, Japan. I took this earlier this year on my return trip from Vietnam. This Photosynth comprises of 621 photos and is 99% synthy. That’s a lot of photos! You can see the front, side and back of the Castle (yeah, only 180 degrees, I couldn’t go on the other side of the castle) .&lt;/p&gt;
&lt;p&gt;This is just the start of what’s possible and I predict that this is going to make giant leaps in the world of artificial intelligence! Imagine taking a video of an object (say a bicycle). A potential software could decompose the video into pictures, feed it into Photosynth so that 3D cloud could be reconstructed. As a result, recognizing that the video includes a bicycle is then merely the same problem of optical character recognition (OCR)--a problem set that computer science has already solved fairly well (at least in the 2D world). This could also help with automatically tagging videos based on computational recognition. The software could identify all bikes in online videos, making a video search on ‘bikes’ actually work based on the content of the video and not on the honesty of people who provide the keywords.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8954441" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author><category term="Photosynth" scheme="http://blogs.msdn.com/minguyen/archive/tags/Photosynth/default.aspx" /></entry><entry><title>Casting/converting generic List of a certain type into a List of another type in C#</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2008/06/25/casting-converting-generic-list-of-a-certain-type-into-a-list-of-another-type-in-c.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2008/06/25/casting-converting-generic-list-of-a-certain-type-into-a-list-of-another-type-in-c.aspx</id><published>2008-06-26T04:36:00Z</published><updated>2008-06-26T04:36:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Here’s an easy way to convert a generic List of a specific type to a List of another type.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'; mso-bidi-font-size: 10.0pt; mso-no-proof: yes"&gt;List&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-bidi-font-size: 10.0pt; mso-no-proof: yes"&gt;&amp;lt;&lt;SPAN style="COLOR: blue"&gt;double&lt;/SPAN&gt;&amp;gt; listOfDoubles = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;List&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: blue"&gt;double&lt;/SPAN&gt;&amp;gt;() {1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7, 8.8, 9.9};&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'; mso-bidi-font-size: 10.0pt; mso-no-proof: yes"&gt;List&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-bidi-font-size: 10.0pt; mso-no-proof: yes"&gt;&amp;lt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&amp;gt; listOfIntegers = listOfDoubles.ConvertAll(doubleNumber =&amp;gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;) doubleNumber);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="FONT-SIZE: 9pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-bidi-font-size: 10.0pt; mso-no-proof: yes"&gt;listOfIntegers.ForEach(&lt;SPAN style="COLOR: #2b91af"&gt;Console&lt;/SPAN&gt;.WriteLine);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Sure, this example only casts doubles to integers (useless), but you could do the same for more complex conversions for reference classes (i.e, convert a list of Employee instances to a list of their salaries as a decimals).&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Note how beautiful the code looks like with the usage of the lambda expression … isn’t C# 3.0 the coolest thing ever?&lt;SPAN style="FONT-SIZE: 9pt; LINE-HEIGHT: 115%; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8654299" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author><category term="lambda C# 3.0 generics List convert cast" scheme="http://blogs.msdn.com/minguyen/archive/tags/lambda+C_2300_+3.0+generics+List+convert+cast/default.aspx" /></entry><entry><title>Windows Vista Vietnamese Language Interface Pack </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2007/12/18/windows-vista-vietnamese-language-interface-pack.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2007/12/18/windows-vista-vietnamese-language-interface-pack.aspx</id><published>2007-12-19T10:10:00Z</published><updated>2007-12-19T10:10:00Z</updated><content type="html">&lt;P align=center&gt;&lt;IMG style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" alt="Windows Vista Vietnamese Language Interface Pack" src="http://www.enderminh.com/minh/blogfiles/2007_12_18_vista_vietnamese_lip.png" mce_src="http://www.enderminh.com/minh/blogfiles/2007_12_18_vista_vietnamese_lip.png"&gt;&lt;/P&gt;
&lt;P&gt;Microsoft released the &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=0E21EB7B-E01A-4FCC-B7F1-30E419DA7F5B&amp;amp;displaylang=vi" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyId=0E21EB7B-E01A-4FCC-B7F1-30E419DA7F5B&amp;amp;displaylang=vi"&gt;Windows Vista Vietnamese Language Interface Pack&lt;/A&gt; (LIP) last month, and I finally got some time take a screenshot to blog about it. I installed it a few weeks ago, and I think it's pretty cool!! I am now running Windows permanently in Vietnamese so I can learn Vietnamese. The hardest part is to use the search functionality in the Control Panel, because you can’t type in "services" to find the NT services—you have to know the Vietnamese word for it (which quite frankly I still don’t know, haha).&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Another funny thing is that if you right-click on a webpage and choose "View Source", … well that’s translated as "Xem&amp;nbsp;Nguồn"... hm... isn’t "Nguồn" more used as "roots"? Finding my roots? And what’s up with the random capitalization of Vietnamese words all over the place?&lt;/P&gt;
&lt;P&gt;Anyways, if you are running Windows Vista, you can download and install the Vietnamese LIP here:&lt;BR&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=0E21EB7B-E01A-4FCC-B7F1-30E419DA7F5B&amp;amp;displaylang=vi" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyId=0E21EB7B-E01A-4FCC-B7F1-30E419DA7F5B&amp;amp;displaylang=vi"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=0E21EB7B-E01A-4FCC-B7F1-30E419DA7F5B&amp;amp;displaylang=vi&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Have fun.... or shall we say.... Có&amp;nbsp;sự&amp;nbsp;vui&amp;nbsp;đùa!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6803434" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author><category term="Windows Vista Vietnamese Language Interface Pack LIP" scheme="http://blogs.msdn.com/minguyen/archive/tags/Windows+Vista+Vietnamese+Language+Interface+Pack+LIP/default.aspx" /></entry><entry><title>Minh T. Nguyen's Mandelbrot Explorer in Silverlight 1.1</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2007/11/06/minh-t-nguyen-s-mandelbrot-explorer-in-silverlight-1-1.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2007/11/06/minh-t-nguyen-s-mandelbrot-explorer-in-silverlight-1-1.aspx</id><published>2007-11-06T13:18:00Z</published><updated>2007-11-06T13:18:00Z</updated><content type="html">&lt;p align="left"&gt;&lt;font size="4"&gt;&lt;strong&gt;Update:&lt;/strong&gt; Please refer to &lt;/font&gt;&lt;a href="http://enderminh.com/blog/archive/2008/12/03/2379.aspx"&gt;&lt;font size="4"&gt;this new post&lt;/font&gt;&lt;/a&gt;&lt;font size="4"&gt; for an updated version of this application (including source code).&lt;/font&gt;&lt;/p&gt;
&lt;p align="left"&gt;&lt;a href="http://blogs.msdn.com/controlpanel/blogs/" mce_href=""&gt;Minh T. Nguyen&lt;/a&gt;'s &lt;a href="http://enderminh.com/blog/archive/2007/11/06/1831.aspx" mce_href="http://enderminh.com/blog/archive/2007/11/06/1831.aspx"&gt;Mandelbrot Explorer&lt;/a&gt; is an application that allows you to zoom into the &lt;a href="http://en.wikipedia.org/wiki/Mandelbrot_set" mce_href="http://en.wikipedia.org/wiki/Mandelbrot_set"&gt;Mandelbrot set&lt;/a&gt; fractal at an arbitrary level. Simply select an area to zoom in, and use the back button to backtrace or restart button to start from the beginning. If you don't see the fractal above, please install the freely-available Microsoft Silverlight 1.1 plug-in (available for most popular browsers) using &lt;a href="http://msdn2.microsoft.com/en-us/silverlight/bb419317.aspx" mce_href="http://msdn2.microsoft.com/en-us/silverlight/bb419317.aspx"&gt;this link&lt;/a&gt;&amp;nbsp;(the above link won't work). Note that this application is very power-hungry, so a fast computer is recommended.&lt;br&gt;&lt;br&gt;&lt;b&gt;Academic details:&lt;/b&gt; The Mandelbrot fractal is generated by drawing the set of &lt;a href="http://en.wikipedia.org/wiki/Complex_number" mce_href="http://en.wikipedia.org/wiki/Complex_number"&gt;complex numbers&lt;/a&gt; c on a complex plane, where the value of the function f(z) = z * z + c applied iteratively on itself is unbounded. In other words, if you pick a complex number c and an initial value of z being c, and apply the above function over and over again, you’ll see that the absolute value of the running result always remains bounded below 2 or &lt;a href="http://www.ddewey.net/mandelbrot/" mce_href="http://www.ddewey.net/mandelbrot/"&gt;suddenly shoots up towards infinity&lt;/a&gt; after a certain number of iterations. Well if the latter happens, you draw the complex number on the plane with a certain color that is reflective of how many iterations it took for the function to escape. But anyways, before mathematicians are lynching me for such a rude definition, you’re probably better off reading a formal description of &lt;a href="http://en.wikipedia.org/wiki/Mandelbrot_set" mce_href="http://en.wikipedia.org/wiki/Mandelbrot_set"&gt;the Mandelbrot set over at Wikipedia&lt;/a&gt;. &lt;br&gt;&lt;br&gt;&lt;b&gt;Technical details:&lt;/b&gt; This application was coded with the &lt;a href="http://msdn2.microsoft.com/en-us/silverlight/bb419317.aspx" mce_href="http://msdn2.microsoft.com/en-us/silverlight/bb419317.aspx"&gt;Microsoft Silverlight 1.1 Alpha September Refresh&lt;/a&gt; and is hosted via &lt;a href="http://streaming.live.com/" mce_href="http://streaming.live.com/"&gt;Microsoft Silverlight Streaming by Windows Live&lt;/a&gt;. The Mandelbrot generation algorithm is very loosely based on &lt;a href="http://oraclevsmicrosoft.blogspot.com/2004/11/mandelbrot-in-c-sources.html" mce_href="http://oraclevsmicrosoft.blogspot.com/2004/11/mandelbrot-in-c-sources.html"&gt;Marc Boizeau's implementation&lt;/a&gt; of using complex number classes and operator overloading, while the coloring of the complex points outside of the Mandelbrot set is borrowed from &lt;a href="http://www.codeproject.com/csharp/Mandelbrot_in_C_.asp" mce_href="http://www.codeproject.com/csharp/Mandelbrot_in_C_.asp"&gt;Pierre Leclercq's implementation&lt;/a&gt;. Since Silverlight does not support setting pixels in a bitmap, this Mandelbrot Explorer is setting tiny rectangles instead to mimic the same behavior, though some optimization have been made to reduce the number of &lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.uielement.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.windows.uielement.aspx"&gt;UIElement&lt;/a&gt;s drawn on the &lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.controls.canvas.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.windows.controls.canvas.aspx"&gt;Canvas&lt;/a&gt; by recognizing neighboring pixels of the same color and drawing them all as a single rectangle. Since the Silverlight 1.1 Alpha September Refresh does not yet support marshalling the execution of code from the background thread to the UI thread (the "Invalid Cross-Thread access" exception), I had to resort to the &lt;a href="http://silverlight.net/forums/p/665/3365.aspx" mce_href="http://silverlight.net/forums/p/665/3365.aspx"&gt;empty timeline trick&lt;/a&gt; to display the progress status. The full source code for this Mandelbrot Explorer will be posted in the near future.&lt;br&gt;&lt;br&gt;&lt;b&gt;Personal details:&lt;/b&gt; So, why does the world need yet another Mandelbrot fractal generator? It doesn't. There are tons of them out there, with far more snappier UI and superior performance, but I wanted to create one to get my hands dirty with Silverlight. When .NET was still in its early stages, I coded the &lt;a href="http://www.enderminh.com/minh/sierpinski.aspx" mce_href="http://www.enderminh.com/minh/sierpinski.aspx"&gt;Sierpinski Triangle&lt;/a&gt; fractal to get my hands dirty with &lt;a href="http://msdn2.microsoft.com/en-us/library/ms533798.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/ms533798.aspx"&gt;GDI+&lt;/a&gt;. When Silverlight came out recently, I first wanted to convert my &lt;a href="http://wpf.netfx3.com/" mce_href="http://wpf.netfx3.com/"&gt;WPF&lt;/a&gt;-based &lt;a href="http://www.sudoku3d.com" mce_href="http://www.sudoku3d.com"&gt;Sudoku 3D&lt;/a&gt; browser application to Silverlight, but as it turns out Silverlight does not have support for 3D geometry, so I ended up doing the Mandelbrot fractal instead. I've always been intrigued by the mother of all fractals anyways, and always wanted to learn and understand the mathematics behind it, so this was the perfect opportunity.&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=5932857" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author></entry><entry><title>What I work on - Microsoft Mediaroom</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2007/07/07/what-i-work-on-microsoft-mediaroom.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2007/07/07/what-i-work-on-microsoft-mediaroom.aspx</id><published>2007-07-08T00:35:00Z</published><updated>2007-07-08T00:35:00Z</updated><content type="html">&lt;P&gt;Whenever people ask me what I work on at Microsoft, it always takes some time explaining.&lt;/P&gt;
&lt;P&gt;I joined Microsoft TV&amp;nbsp; here in Silicon Valley two years ago working on the Microsoft TV Foundation Edition. It's a platform for cable providers such&amp;nbsp;as Comcast to provide an interactive television experience with a Guide, Video on Demand, Search and DVR. In particular, I was responsible for the search feature that allows you to search for movies by actor, title, keyword. Unfortunately, even though my work made it into version 1.9 and 2.0, those versions were never deployed (and might not be anytime soon in the US).&lt;/P&gt;
&lt;P&gt;Well, a little bit less than a year ago, I've switched over to the Microsoft IPTV product, which is a end-to-end platform that allows traditional telephone companies (telco) to enter the TV market by providing a full TV experience using IP technologies. It's like Voice over IP just for your good old television. Now, people always get confused and ask how we can compete with YouTube or Joost. Well, Microsoft IPTV is not competing with that, because that's something entirely different. IPTV is not watching video on your monitor over the internet using your computer. What our product does is to watch live TV and on-demand video on your good-old TV via set top boxes that transfer data via internet protocol.&lt;/P&gt;
&lt;P&gt;Providers such as &lt;A class="" title=AT&amp;amp;T href="https://uverse1.att.com/launchAMSS.do" mce_href="https://uverse1.att.com/launchAMSS.do"&gt;AT&amp;amp;T&lt;/A&gt; here in the United States stream those videos via DSL modems in HD-quality using our software. Given the IP's flexibility, you can imagine the endless possibilities that IP-based TV can offer versus traditional TV: interactivity (vote on your American Idol from your TV), unlimited amount of channels (since only one stream is sent to your box), picture in picture or multi view (watch a baseball game from three different angles), share media with friends and family (share images from your computer directly to your TV, or send them to your mom's TV in another state), chatting, home shopping, games, etc, etc, etc. In other words, it's the best in TV plus all your media in one place -- and that is our division's new slogan.&lt;/P&gt;
&lt;P&gt;&lt;IMG title="Microsoft Mediaroom - The best in TV plus all your media in once place." style="WIDTH: 590px; HEIGHT: 156px" height=156 alt="Microsoft Mediaroom - The best in TV plus all your media in once place." src="http://www.microsoft.com/tv/images/BANNERS/MSTV_Experience_banner.jpg" width=590 align=middle mce_src="http://www.microsoft.com/tv/images/BANNERS/MSTV_Experience_banner.jpg"&gt;&lt;/P&gt;
&lt;P&gt;Our IPTV division went through a huge&amp;nbsp;rebranding this past month. Our product is now called "Microsoft Mediaroom" and it's an ingredient brand for other telcos. The same way Dolby Digital or THX are ingredient brands for movies, Bluetooth ingredient brand for cellphones or EnergyStar is an ingredient brand for electronics, Microsoft Mediaroom is an ingredient brand for TV providers.&amp;nbsp; We finally have a website geared towards the end-consumer (previously we only had marketing material geared for the telcos only). Check it out yourself on &lt;A href="http://www.microsoftmediaroom.com/"&gt;www.microsoftmediaroom.com&lt;/A&gt;&amp;nbsp;and see what all the buzz is about.&lt;/P&gt;
&lt;P&gt;Next time you sign up for TV service, ask for Microsoft Mediaroom and you might be seeing some of the features that I have worked on. In particular that would be Emergency Alert System (those "warning, there's a thunderstorm coming to your area" messages with R2D2-like sounds), Download and Play (the ability to download a high-quality Video-on-Demand assets over a low-bandwidth connection) and the notification messages (for instance the notification that displays caller ID info when someone calls your home while you watch TV), HDMI connections and of course a lot of bug fixes in all other areas. I think the really cool thing is that I work on a product that touch thousands and thousands of people every day. Our product is already deployed in the US, UK, Germany, France, Italy, Singapore, China, South Africa, Hungary--you name it. Many of the end-consumers don't even know it's Microsoft software driving this technology end-to-end, but if you happen to know, realize that those buttons that you click might as well be executing my code. :-)&lt;/P&gt;
&lt;P&gt;Happy watching.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3752435" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author><category term="IPTV Microsoft Mediaroom TV branding" scheme="http://blogs.msdn.com/minguyen/archive/tags/IPTV+Microsoft+Mediaroom+TV+branding/default.aspx" /></entry><entry><title>Minh T. Nguyen's Sudoku3D in XAML</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2007/02/05/minh-t-nguyen-s-sudoku3d-in-xaml.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2007/02/05/minh-t-nguyen-s-sudoku3d-in-xaml.aspx</id><published>2007-02-06T09:00:00Z</published><updated>2007-02-06T09:00:00Z</updated><content type="html">&lt;P&gt;I’ve already played with &lt;A href="http://en.wikipedia.org/wiki/Extensible_Application_Markup_Language"&gt;XAML&lt;/A&gt; almost a year ago when it was still in the early stages, but over my winter break, I spent some time getting my hands dirty with the 3D aspects of Microsoft’s XAML/&lt;A href="http://wpf.netfx3.com/"&gt;Windows Presentation Framework&lt;/A&gt;. I decided to create a 3D version of the famous Japanese &lt;A href="http://en.wikipedia.org/wiki/Sudoku"&gt;Sudoku&lt;/A&gt; game, and pretty much finished coding 90% of it already in December 2006, but it’s not until today that I finally found the time to wrap up the code, the user interface and fix all the pending bugs.&lt;/P&gt;
&lt;P&gt;So, here it is: &lt;A href="http://www.enderminh.com/sudoku3d" target=Sudoku3D&gt;Minh T. Nguyen’s Sudoku3D&lt;/A&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;A href="http://www.enderminh.com/sudoku3d" target=Sudoku3D&gt;&lt;IMG alt="Minh T. Nguyen's Sudoku 3D" src="http://enderminh.com/minh/blogfiles/2007_02_05_minhtnguyen_sudoku3d.png" border=0&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;The Game&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Just like in regular Sudoku, you need to fill in a row, column and “height column” of the cube with all natural numbers, so that each number appears once and only once. Unfortunately, the third rule of Sudoku (that a given 3x3 sub-square of a 9x9 Sudoku square contains all 9 numbers) does not translate into the third dimension. For instance, in a 4x4x4 Sudoku cube the 2x2x2 sub-cube has eight cells, not four. I therefore had to get rid of the third rule, which makes playing this game not as fun as I expected it to be. If anyone has any insightful suggestions on how to translate the third Sudoku rule into the third dimension, let me know.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Requirements&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This game requires &lt;A href="http://www.microsoft.com/windows/ie/"&gt;Internet Explorer&lt;/A&gt; as well as the &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=10CC340B-F857-4A14-83F5-25634C3BF043&amp;amp;displaylang=en"&gt;Microsoft .NET 3.0&lt;/A&gt; (which comes pre-installed with &lt;A href="http://www.microsoft.com/windows/products/windowsvista/"&gt;Windows Vista&lt;/A&gt; but is available as a separate download for other Windows systems). A fast and powerful computer running &lt;A href="http://www.microsoft.com/windows/products/windowsvista/"&gt;Windows Vista&lt;/A&gt; is preferred, as the Sudoku generation for large cubes can be very CPU-consuming (in fact, I don’t even allow you to generate cubes larger than 5x5x5 even though it’s theoretically possible). In addition, the graphics just looks much smoother on Vista since 3D anti-aliasing is only enabled there.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Development&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Coding this game has been pretty fun. The hardest part of this all was actually not the 3D aspects of this, but the Sudoku generation algorithm itself. I never realized that creating a valid Sudoku is actually much harder than solving it. In the end, I’ve designed a backtracking algorithm using a stack of intermediate steps in conjunction with a 3D array of possible moves. Fun stuff.&lt;/P&gt;
&lt;P&gt;Hope you all will enjoy playing this game as much as I enjoyed coding it!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1609508" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author></entry><entry><title>Random Updates for December 2006 </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2006/12/22/random-updates-for-december-2006.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2006/12/22/random-updates-for-december-2006.aspx</id><published>2006-12-23T00:58:00Z</published><updated>2006-12-23T00:58:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;Bill Gates&lt;/STRONG&gt; - Last month Bill Gates came down and visited &lt;A href="http://www.microsoft.com/about/companyinformation/usaoffices/northernca/svc.mspx" mce_href="http://www.microsoft.com/about/companyinformation/usaoffices/northernca/svc.mspx"&gt;our campus&lt;/A&gt;. I was sitting pretty much in the front row as he talked about the company’s direction. What I found more interesting though is how he describes his work on the &lt;A href="http://www.gatesfoundation.org/" mce_href="http://www.gatesfoundation.org/"&gt;Bill and Melinda Gates Foundation&lt;/A&gt; and its goal to eradicate human diseases. He applies a Microsoft-business-like mentality to the philanthropic world by attracting the world’s brightest scientists and providing them with the tools and finances that they need to achieve their goals. I always had a deep admiration for Bill Gates and Microsoft since high school, but his decision to leave Microsoft and spend his full-time life on the foundation starting July 2008 leaves me with awe. He says that “with great fortune, comes great responsibility”. Seriously, Bill is the new Spiderman.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;School&lt;/STRONG&gt; – So I finished my first semester at &lt;A href="http://west.cmu.edu/" mce_href="http://west.cmu.edu/"&gt;Carnegie Mellon West&lt;/A&gt; last Friday. While it was very time-consuming, as I find myself doing school work in my office, on flights, waiting in airports and even when I am “on vacation” in OC or New York, it wasn’t all too difficult. I attribute this to being part of an excellent and high-performing team and that the first semester was an intro course to what is yet to come over the next five semesters. The harder part of my first semester was actually to balance school, work and personal life. Programming C# at work all day with hard deadlines, only to come home to work in Java all night with hard deadlines and trying to squeeze in time to fly to New York or Redmond or practice piano in between leaves my schedule of 15-minute granularity filled up to the gazoo. Where do I only find the time to shave my cats?!&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;Vacation projects&lt;/STRONG&gt; – So what’s Minh doing over his Christmas vacation? Well, for one, a complete revamp of the &lt;A href="http://www.journeyfromthefall.com/" mce_href="http://www.journeyfromthefall.com/"&gt;Journey from the Fall&lt;/A&gt; website is due by year’s end. Fortunately, I’ll be given a design by the art director over at &lt;A href="http://www.theimaginasian.com/" mce_href="http://www.theimaginasian.com/"&gt;ImaginAsian&lt;/A&gt;, so I only need to code and implement it, but I am looking forward to developing my first real &lt;A href="http://www.asp.net/" mce_href="http://www.asp.net/"&gt;ASP.NET 2.0&lt;/A&gt; application. However, the more interesting and exciting project this vacation is a simple &lt;A href="http://wpf.netfx3.com/" mce_href="http://wpf.netfx3.com/"&gt;WPF&lt;/A&gt;-based computer puzzle that I started developing the day before yesterday. This was more a personal project for me as I wanted to get my hands dirty with the 3D aspects of &lt;A href="http://en.wikipedia.org/wiki/Extensible_Application_Markup_Language" mce_href="http://en.wikipedia.org/wiki/Extensible_Application_Markup_Language"&gt;XAML&lt;/A&gt;, but after having completed a playable prototype today, I realize that this can actually be a cool casual game, so I might make it available in January 2007. I don’t want to reveal too much, other that this is a mathematical puzzle. So Dark the Con of Minh.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1349581" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author></entry><entry><title>Minh's Stupid PhotoResizer 1.3 now supports EXIF meta-data tags </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2006/08/23/716380.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2006/08/23/716380.aspx</id><published>2006-08-24T09:29:00Z</published><updated>2006-08-24T09:29:00Z</updated><content type="html">&lt;p&gt;I've updated my stupid &lt;a href="http://www.enderminh.com/minh/photoresizer.aspx"&gt;PhotoResizer&lt;/a&gt; program today to support EXIF meta-data tags, so that digital camera image properties are now retained while resizing the pictures. Thanks to Tuan Dinh from the UK for this suggestion and feature request. Happy batch-resizing, you smugmugs.&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://www.enderminh.com/minh/photoresizer.aspx"&gt;&lt;img style="border-color: black; border-width: 1px;" alt="Minh's Stupid PhotoResizer 1.3" src="http://www.enderminh.com/minh/blogfiles/2006_08_23_photoresizer13.jpg"&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=716380" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author></entry><entry><title>Free PDF-download of my book “Visual Studio .NET Tips and Tricks” on InfoQ.com </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2006/06/08/free-pdf-download-of-my-book-visual-studio-net-tips-and-tricks-on-infoq-com.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2006/06/08/free-pdf-download-of-my-book-visual-studio-net-tips-and-tricks-on-infoq-com.aspx</id><published>2006-06-09T01:50:00Z</published><updated>2006-06-09T01:50:00Z</updated><content type="html">
&lt;p&gt;Starting today, a non-printable PDF version of my book “&lt;a href="http://www.enderminh.com/minh/vsnet_tt.aspx" mce_href="http://www.enderminh.com/minh/vsnet_tt.aspx"&gt;Visual Studio .NET Tips and Tricks&lt;/a&gt;” is available as a free download exclusively on the &lt;a href="http://www.infoq.com/minibooks/vsnettt" mce_href="http://www.infoq.com/minibooks/vsnettt"&gt;InfoQ.com&lt;/a&gt;, a new enterprise software development community that covers Java, .NET, Ruby, SOA, and Agile. Launching today, &lt;a href="http://www.infoq.com/" mce_href="http://www.infoq.com/"&gt;InfoQ.com&lt;/a&gt; comes from the same people that started the much-read &lt;a href="http://www.theserverside.net/" mce_href="http://www.theserverside.net/"&gt;TheServerSide.net&lt;/a&gt;, and even before launch &lt;a href="http://www.infoq.com" mce_href="http://www.infoq.com"&gt;InfoQ.com&lt;/a&gt; has generated a lot of traffic, blogs and articles already, so keep an eye on this website.&lt;/p&gt;

&lt;p&gt;In order to download the book, simply visit &lt;a href="http://www.infoq.com/news/Book--Visual-Studio-Tips-Tricks" mce_href="http://www.infoq.com/news/Book--Visual-Studio-Tips-Tricks"&gt;InfoQ.com&lt;/a&gt;, register and download the PDF and if you would like to support InfoQ.com and myself, feel free to &lt;a href="http://www.lulu.com/content/78560" mce_href="http://www.lulu.com/content/78560"&gt;purchase the print copy&lt;/a&gt;, so I can put bread on the table for my wife and 8 children (k, I am kidding of course).&lt;/p&gt;

&lt;p&gt;I can’t believe that it’s almost two years already since I published this book. 70% of this book was written during my 1-hour lunch break when I was still working in San Diego. The rest was written in the Downtown Bellevue Library. A lot of people are asking me whether I will write a second book, and I am sorry to disappoint you all, but I am afraid that I won’t find the time to write a 2nd edition, even though I very much would like to.&lt;/p&gt;
&lt;br&gt;
&lt;table align="center"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="http://www.lulu.com/items/volume_1/78000/78560/1/preview/vsnet_tt_preview.pdf" mce_href="http://www.lulu.com/items/volume_1/78000/78560/1/preview/vsnet_tt_preview.pdf"&gt;&lt;img src="http://www.enderminh.com/minh/blogfiles/vsnet_tt_front_250.jpg" alt="Click to preview Visual Studio .NET Tips and Tricks" mce_src="http://www.enderminh.com/minh/blogfiles/vsnet_tt_front_250.jpg" border="0"&gt;&lt;/a&gt;&lt;/td&gt;

&lt;td&gt;&lt;a href="http://www.lulu.com/items/volume_1/78000/78560/1/preview/vsnet_tt_preview.pdf" mce_href="http://www.lulu.com/items/volume_1/78000/78560/1/preview/vsnet_tt_preview.pdf"&gt;&lt;img src="http://www.enderminh.com/minh/blogfiles/vsnet_tt_back_250.jpg" alt="Click to preview Visual Studio .NET Tips and Tricks" mce_src="http://www.enderminh.com/minh/blogfiles/vsnet_tt_back_250.jpg" border="0"&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br&gt;
&lt;p align="left"&gt;&lt;b&gt;About the Book:&lt;/b&gt; Visual Studio .NET is one of the most versatile and extensible programming tools released by Microsoft. The number of features and shortcuts available in VS.NET is truly immense, and it grows tremendously with each release. Developers who are unaware of these timesaving features surely miss out on opportunities to increase their programming productivity and effectiveness.&lt;/p&gt;

&lt;p align="left"&gt;Visual Studio .NET Tips and Tricks explains how to use VS.NET efficiently. Organized into short and easy-to-grasp sections, and containing tips and tricks on everything from editing and compiling to debugging and navigating within the VS.NET IDE, this book is a must-read for all .NET developers, regardless of expertise and whether they program in C#, VB.NET, or any other .NET language. This book covers the Visual Studio .NET 2002, 2003, and 2005 Beta 1 releases. &lt;/p&gt;

&lt;p align="left"&gt;In this book you'll find the following: 
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;More than 120 tips for editing and writing your code, navigating within the IDE, and compiling, debugging, and deploying your application 
&lt;/li&gt;

&lt;li&gt;Section dedicated to VS.NET 2005 
&lt;/li&gt;

&lt;li&gt;Keyboard shortcuts for the majority of tips 
&lt;/li&gt;

&lt;li&gt;More than 90 figures and screenshots &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p align="left"&gt;&lt;b&gt;About the Author:&lt;/b&gt;&lt;a href="http://www.wholinkstome.com" mce_href="http://www.wholinkstome.com"&gt;&amp;nbsp;&lt;/a&gt;Minh T. Nguyen is a website development engineer with Expedia.com. He has worked with Visual Studio .NET since its beta stages and regularly gives workshops and writes articles for the .NET community. 
&lt;/p&gt;

&lt;hr size="1" width="95%" noshade="noshade"&gt;

&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ISBN: &lt;/b&gt;1411613961 
&lt;/li&gt;

&lt;li&gt;&lt;b&gt;Suggested Retail Price: &lt;/b&gt;$15.95 
&lt;/li&gt;

&lt;li&gt;&lt;b&gt;Format: &lt;/b&gt;Paperback, 124 pages 
&lt;/li&gt;

&lt;li&gt;&lt;b&gt;Publisher: &lt;/b&gt;Lulu Press, Inc.; 1 edition (September 2004) 
&lt;/li&gt;

&lt;li&gt;&lt;b&gt;Preview: &lt;/b&gt;&lt;a href="http://www.lulu.com/items/volume_1/78000/78560/1/preview/vsnet_tt_preview.pdf" mce_href="http://www.lulu.com/items/volume_1/78000/78560/1/preview/vsnet_tt_preview.pdf"&gt;vsnet_tt_preview.pdf&lt;/a&gt; 
&lt;/li&gt;

&lt;li&gt;&lt;b&gt;Complete: &lt;/b&gt;&lt;a href="http://enderminh.com/blog/archive/2006/06/08/1320.aspx" mce_href="http://enderminh.com/blog/archive/2006/06/08/1320.aspx"&gt;Free PDF Download&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;hr size="1" width="95%" noshade="noshade"&gt;

&lt;table align="center"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td align="middle"&gt;Buy it for $13.95&lt;br&gt;on lulu.com&lt;br&gt;&lt;br&gt;&lt;a href="http://www.lulu.com/content/78560" mce_href="http://www.lulu.com/content/78560"&gt;&lt;img src="http://www.lulu.com/services/buy_now_buttons/images/gray.gif" alt="Buy Visual Studio .NET Tips and Tricks on Lulu.com" mce_src="http://www.lulu.com/services/buy_now_buttons/images/gray.gif" border="0"&gt; &lt;/a&gt;&lt;/td&gt;

&lt;td width="10"&gt;&amp;nbsp;&lt;/td&gt;

&lt;td align="middle"&gt;Buy it for $15.95&lt;br&gt;on barnesandnoble.com&lt;br&gt;&lt;br&gt;&lt;a href="http://search.barnesandnoble.com/booksearch/isbninquiry.asp?ISBN=1411613961&amp;amp;userid=lL5Qt1IAAB&amp;amp;cds2Pid=946&amp;amp;pdf=y" mce_href="http://search.barnesandnoble.com/booksearch/isbninquiry.asp?ISBN=1411613961&amp;amp;userid=lL5Qt1IAAB&amp;amp;cds2Pid=946&amp;amp;pdf=y"&gt;&lt;img src="http://www.enderminh.com/minh/images/bn.gif" alt="Buy Visual Studio .NET Tips and Tricks on barnesandnoble.com" mce_src="http://www.enderminh.com/minh/images/bn.gif" border="0"&gt; &lt;/a&gt;&lt;/td&gt;

&lt;td width="10"&gt;&amp;nbsp;&lt;/td&gt;

&lt;td align="middle"&gt;Buy it for $15.95&lt;br&gt;on amazon.com&lt;br&gt;&lt;br&gt;&lt;a href="http://www.amazon.com/exec/obidos/redirect?tag=enderminh-20&amp;amp;path=ASIN/1411613961" mce_href="http://www.amazon.com/exec/obidos/redirect?tag=enderminh-20&amp;amp;path=ASIN/1411613961"&gt;&lt;img src="http://www.enderminh.com/minh/images/amazon.gif" alt="Buy Visual Studio .NET Tips and Tricks on amazon.com" mce_src="http://www.enderminh.com/minh/images/amazon.gif" border="0"&gt; &lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=622986" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author></entry><entry><title>Presenting Microsoft TV at UC Berkeley Technology Expo 2006 next week </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2006/03/11/presenting-microsoft-tv-at-uc-berkeley-technology-expo-2006-next-week.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2006/03/11/presenting-microsoft-tv-at-uc-berkeley-technology-expo-2006-next-week.aspx</id><published>2006-03-11T12:31:00Z</published><updated>2006-03-11T12:31:00Z</updated><content type="html">
&lt;p align="center"&gt;&lt;img src="http://www.enderminh.com/minh/blogfiles/2006_03_11_microsoft_tv.jpg" alt="Microsoft TV" mce_src="http://www.enderminh.com/minh/blogfiles/2006_03_11_microsoft_tv.jpg"&gt;&lt;/p&gt;

&lt;p align="justify"&gt;I’ll be joining a few other Microsoft Berkeley alumni to present some of our work at the &lt;a href="http://www.berkeley.edu/" mce_href="http://www.berkeley.edu/"&gt;UC Berkeley&lt;/a&gt; &lt;a href="http://csba.berkeley.edu/" mce_href="http://csba.berkeley.edu/"&gt;Computer Science &amp;amp; Business Association&lt;/a&gt; &lt;a href="http://csba.berkeley.edu/tech_expo.shtml" mce_href="http://csba.berkeley.edu/tech_expo.shtml"&gt;4&lt;sup&gt;th&lt;/sup&gt; Annual Technology Expo 2006&lt;/a&gt;. The event will take place Thursday, March 16&lt;sup&gt;th&lt;/sup&gt;, 2006 from 11am – 4pm at the Pauley Ballroom at UC Berkeley, where my co-worker and I will demo some of our recent work on &lt;a href="http://www.microsoft.com/tv/default.mspx" mce_href="http://www.microsoft.com/tv/default.mspx"&gt;Microsoft TV&lt;/a&gt; (&lt;a href="http://www.microsoft.com/tv/FoundationEdition.mspx" mce_href="http://www.microsoft.com/tv/FoundationEdition.mspx"&gt;Foundation Edition&lt;/a&gt; and &lt;a href="http://www.microsoft.com/tv/IPTVEdition.mspx" mce_href="http://www.microsoft.com/tv/IPTVEdition.mspx"&gt;IPTV&lt;/a&gt;). I’ve primarily worked on &lt;a href="http://www.microsoft.com/tv/FoundationEdition.mspx" mce_href="http://www.microsoft.com/tv/FoundationEdition.mspx"&gt;Foundation Edition 1.9&lt;/a&gt; which we will be releasing this year and recently started work on some UI-prototyping for &lt;a href="http://www.microsoft.com/tv/IPTVEdition.mspx" mce_href="http://www.microsoft.com/tv/IPTVEdition.mspx"&gt;IPTV 2.0&lt;/a&gt;. Several other &lt;st1:state w:st="on"&gt;&lt;st1:place w:st="on"&gt;Cal&lt;/st1:place&gt;&lt;/st1:state&gt; alumni will show their work on &lt;a href="http://www.microsoft.com/windowsmobile/pocketpc/default.mspx" mce_href="http://www.microsoft.com/windowsmobile/pocketpc/default.mspx"&gt;PocketPC&lt;/a&gt;, &lt;a href="http://www.microsoft.com/windowsmobile/smartphone/default.mspx" mce_href="http://www.microsoft.com/windowsmobile/smartphone/default.mspx"&gt;SmartPhones&lt;/a&gt; and &lt;a href="http://join.msn.com/mailbeta/features" mce_href="http://join.msn.com/mailbeta/features"&gt;Windows Live Mail&lt;/a&gt;, so be sure to swing by and check out our very cool products.&lt;/p&gt;

&lt;p align="justify"&gt;GO BEARS!&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=549364" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author></entry><entry><title>Minh's Stupid PhotoResizer Version 1.2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/minguyen/archive/2006/03/08/minh-s-stupid-photoresizer-version-1-2.aspx" /><id>http://blogs.msdn.com/minguyen/archive/2006/03/08/minh-s-stupid-photoresizer-version-1-2.aspx</id><published>2006-03-09T00:12:00Z</published><updated>2006-03-09T00:12:00Z</updated><content type="html">&lt;p&gt;This is long overdue, but I've finally updated my stupid &lt;a href="http://www.enderminh.com/minh/photoresizer.aspx" mce_href="http://www.enderminh.com/minh/photoresizer.aspx"&gt;PhotoResizer&lt;/a&gt; program with the two requests that most people have asked for the most. The 1.2 update has the following two new features:&lt;/p&gt;
&lt;p&gt;A) You can now drag a folder over the area, and it will resize all files within that folder. No folder-recursion.&lt;br&gt;B) You can now specify the JPEG compression ratio, which defaults to 90.&lt;/p&gt;
&lt;p&gt;Thanks for &lt;a href="http://www.martjan.tk/" mce_href="http://www.martjan.tk/"&gt;Martjan den Hoed&lt;/a&gt; from the Netherlands for some of his suggestions and his &lt;a href="http://home.wanadoo.nl/martjan/photography/fotoverkleiner/" mce_href="http://home.wanadoo.nl/martjan/photography/fotoverkleiner/"&gt;Dutch&lt;/a&gt; version (which I assume he will update for 1.2 version soon).&lt;/p&gt;
&lt;p&gt;Enjoy,&lt;br&gt;Minh T. Nguyen.&lt;br&gt;&lt;br&gt;PS: For those who are awaiting the new &lt;a href="http://www.enderminh.com/minh/vnconversions.aspx" mce_href="http://www.enderminh.com/minh/vnconversions.aspx"&gt;Vietnamese Conversions&lt;/a&gt; to go out of its &lt;a href="http://www.enderminh.com/minh/vnconversions_beta.aspx" mce_href="http://www.enderminh.com/minh/vnconversions_beta.aspx"&gt;rich-text-editor beta&lt;/a&gt; stage, hang in there. Besides a bug that I still have to fix, I've received an additional&amp;nbsp;request to add Unicode-&amp;gt;Vietnet/VIQR conversion. I already know how to do it, I just need to find the time to implement it some time this month.&lt;/p&gt;
&lt;hr width="80%" noshade="noshade"&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;table cellpadding="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td align="right"&gt;&lt;b&gt;Name&lt;/b&gt; &lt;/td&gt;
&lt;td&gt;:&lt;/td&gt;
&lt;td&gt;PhotoResizer &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="right"&gt;&lt;b&gt;Version&lt;/b&gt; &lt;/td&gt;
&lt;td&gt;:&lt;/td&gt;
&lt;td&gt;1.2 &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="right"&gt;&lt;b&gt;Requirement&lt;/b&gt; &lt;/td&gt;
&lt;td&gt;:&lt;/td&gt;
&lt;td&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=262D25E3-F589-4842-8157-034D1E7CF3A3&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyId=262D25E3-F589-4842-8157-034D1E7CF3A3&amp;amp;displaylang=en"&gt;.NET Framework 1.1&lt;/a&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="right"&gt;&lt;b&gt;Size&lt;/b&gt; &lt;/td&gt;
&lt;td&gt;:&lt;/td&gt;
&lt;td&gt;6kb &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="right"&gt;&lt;b&gt;Download&lt;/b&gt; &lt;/td&gt;
&lt;td&gt;:&lt;/td&gt;
&lt;td&gt;&lt;a href="http://www.enderminh.com/minh/binary/PhotoResizer.zip" mce_href="http://www.enderminh.com/minh/binary/PhotoResizer.zip"&gt;Binary executable&lt;/a&gt; - &lt;a href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=9B7D333F-DF70-457D-B5C6-E2735DFB89B9" mce_href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=9B7D333F-DF70-457D-B5C6-E2735DFB89B9"&gt;Source code&lt;/a&gt; - &lt;a href="http://home.wanadoo.nl/martjan/photography/fotoverkleiner/" mce_href="http://home.wanadoo.nl/martjan/photography/fotoverkleiner/"&gt;Dutch Version&lt;/a&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="right"&gt;&lt;b&gt;License&lt;/b&gt; &lt;/td&gt;
&lt;td&gt;:&lt;/td&gt;
&lt;td&gt;Freeware/OpenSource &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p align="center"&gt;&lt;img src="http://www.enderminh.com/minh/images/photoresizer.jpg" alt="PhotoResizer" mce_src="http://www.enderminh.com/minh/images/photoresizer.jpg"&gt;&lt;/p&gt;
&lt;p&gt;This is a very simple utility to allow you to batch-resize digital photos. You simply indicate your maximum width or height in pixels and drag and drop your picture files onto the window. The program will then batch-resize all pictures into a subfolder.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=546511" width="1" height="1"&gt;</content><author><name>minguyen</name><uri>http://blogs.msdn.com/members/minguyen.aspx</uri></author></entry></feed>