<body><script type="text/javascript"> function setAttributeOnload(object, attribute, val) { if(window.addEventListener) { window.addEventListener("load", function(){ object[attribute] = val; }, false); } else { window.attachEvent('onload', function(){ object[attribute] = val; }); } } </script> <iframe src="http://www.blogger.com/navbar.g?targetBlogID=12803833&amp;blogName=thomasnguyen.com&amp;publishMode=PUBLISH_MODE_FTP&amp;navbarType=TAN&amp;layoutType=CLASSIC&amp;homepageUrl=http%3A%2F%2Fwww.thomasnguyen.com%2Fblog%2F&amp;searchRoot=http%3A%2F%2Fblogsearch.google.com%2F" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" height="30px" width="100%" id="navbar-iframe" title="Blogger Navigation and Search"></iframe> <div></div>
home blog contact

Visual Studio.NET 2008 + Subversion + NAnt.
Friday, February 29, 2008
I've had trouble trying to figure out a way to grab the Subversion revision number in order to populate it into the the auto-generated CommonAssemblyInfo.cs file.

major.minor[.build[.revision]]

Google got me Bryant's post that linked to Jonathan Malek's post. Which didn't help at all because he already migrated his blog to WordPress and the link couldn't be found. The next link I found worth was Dan Hounshell's post on the topic. Guess who it refers to? Jonathan's (now invisible) post.

So finally, I put a few things together and I came up with an almost-done solution, YAY!

<property name="svnrevision" value="0"/>
<property name="svnrevisiontortoise" value="nothing" />
<if test="${directory::exists('.svn')}">
<!--... run the tortoise command line stuff to get latest ...-->
<loadfile file=".svn\all-wcprops" property="svnrevisiontortoise" failonerror="false" />
<regex pattern="ver\/(?'svnrevision'\w+)\/" input="${svnrevisiontortoise}" failonerror="false" />
</if>
<echo message="Using Subversion revision number: ${svnrevision}" />

The only stipulation for this is you HAVE to do an update on the repository before calling running this. I tried running a command, but I don't have Subversion installed on the machine, so it doesn't recognize it. Plus, I don't want to add that dependency. Maybe I can throw it in a bin folder or something as a reference.

<exec program="svn" commandline="up" failonerror="true" output="svn.update.log.txt" append="true"/>

Now that I have .revision automatically generated, I'll need to figure out a simple way to both tag and generate the build number.

Labels: , , , , ,

1 comments
Getting Started with Silverlight.
Tuesday, February 26, 2008
There's a ton of stuff out there that just makes my head go crazy. If you want to get started, here's the quick run down of problems I ran into and what I did to get things up and running.

Version Clarification
TypeNameDescription
FREESilverlight 1.0Initial release.
FREESilverlight 1.1 Alpha September Refresh
Upcoming Release (final version will be named 2.0).
TrialMicrosoft Expression BlendSupports Visual Studio 2005. (Project files only)
"Preview"Microsoft Expression Blend 2
(December Preview)
Supports Visual Studio 2008. (Solution and Project files!)
FREESilverlight 1.1 tools for VS2008Support of Silverlight 1.1 in Visual Studio 2008.

*Pretend Blend v1 and Silverlight 1.0 never existed. Get all the lastest stuff, believe me. You'll be MUCH happier.

I'm getting started with the Creating a Clock with Silverlight tutorial. I'm running Silverlight 1.1 Alpha, Visual Studio 2008 (with Resharper 3.0), Expression Blend 2 December Preview, and the Silverlight Tools Alpha for VS2008 all on a Vista Business Edition machine.

READY-SET-GO.

Update: This is a Silverlight example, but the Silverlight 2 Beta 1 has not been released yet (along with the tools for VS2008) that makes me sad, =(. Still, it is an awesome tutorial to create a Digg client application from Scott Guthrie.

"The entire application is implemented in about 35 lines of C# code and 75 lines of XAML page/user-control markup" -ScottGu <-- WOW.

Labels: , , , ,

0 comments
My eCOST Experience.
Tuesday, February 19, 2008
Why did I shop there? On January 20th, my Google Reader came up with an awesome deal from dealspl.us that wasn't a typo, and on the eCOST website even today!!! C'mon, $36.99 for a multi monitor mount (three monitors!!!). So I place an online order a few hours I read and re-read the listing to make sure it was correct. TOTAL: $49.48 shipped!

About a week goes by and BAM! DHL tracker says its in. I open the box and find a Flip-Down Mount.

FAIL.

Called them up and the guy told me I had to...
  • Place another order for the correct item
    • The order total was $50.91 due to shipping charge changes, WTF
  • Submit request a return
  • DHL return label for wrong product
So I do it without hesitation, c'mon...$50.91 for a multi monitor mount!

A few days later, another DHL box comes in: same shape, same weight and you guessed it, SAME WRONG PRODUCT.

FAIL.

I immediately called them back to get a return label for the second wrong item and follow up on the first return label. They forgot to send it the first time...

FAIL.

A few days ago, I receive the return label for the first wrong order, YAY! I called them today to check up on the second return label..
  • Call back 10 AM CST tomorrow
    • The resolution team isn't in...
  • Get to a resolution team
    • Make the Return Authorization (RA)
    • Get a return label
  • Process order online for a replacement order, then I'll get an RA (w/ return label)
  • I got really upset wanted to talk to his manager.
  • I got put on HOLD for a bout 30 seconds, w/o a "please hold"
  • "Ok, I just took care of everything."
    • He could have done after all...
I'm waiting for the second return label to come in, so we'll see how long that takes.

PASS/FAIL? We'll see...

Labels: , ,

5 comments
Visual Studio 2008 - What More Can You Ask For?
Tuesday, February 12, 2008
So I was talking to James a little bit about Visual Studio's features and things I'd like it to have. Here's my list of things I might just not know about or things that would make life easier in Visual Studio 2008.

-Right click a base class you created and click "Extend Class"
-Right-click an interface and click "Implement Interface"
-Save/Configure windows layout (dual screen vs. single)
-FULL LIST of the current keyboard mapping scheme that is readable

Oh yeah, Visual Studio + ReSharper is the only IDE I'd suggest. Without it, you're missing a TON of stuff.

Labels: , ,

1 comments





Recent Posts
Reading Material: Writing Secure Code.
No Right Click? Use Shift + F10.
Hurricane Ike Recovery.
CI in SD Conference.
Microsoft ArcReady Event.
University of Houston Alumni Organization.
Arrested Development - Great Show!
NYTimes.com - Double Click a Word, Try It.
Secure Vantage Technologies is Hiring.
SqlException: Invalid object name.

Archives
May 2005
June 2005
July 2005
August 2005
September 2005
October 2005
November 2005
December 2005
January 2006
February 2006
March 2006
April 2006
May 2006
June 2006
July 2006
August 2006
September 2006
October 2006
November 2006
December 2006
January 2007
February 2007
March 2007
April 2007
May 2007
June 2007
July 2007
August 2007
September 2007
October 2007
November 2007
December 2007
January 2008
February 2008
March 2008
April 2008
May 2008
June 2008
July 2008
August 2008
September 2008
October 2008

Blogger
copyright 2006-2008 | thomasnguyen.com

Google Reader flickr del.icio.us nike+