Wednesday, December 14, 2005

VSTS Virtual Labs



# 

Register Now!

I got this link from our Microsoft Regional Developer Evangelist.  It looks interesting, but I haven't had a chance to try it out.  If you complete one of the labs, please let me know what you think in the comments.

++Alan
Tools | VSTS    Comments [0]
 Tuesday, December 13, 2005

iTunes and Windows Media Player Play Nice



# 
I've been playing with Home Theater PC software for a couple years.  I settled on Windows Media Center Edition as my platform a few months back. 

It isn't the best, but it is the easiest.  It works out of the box, and has a great remote preconfigured.  I got tired of fiddling, and wanted an appliance that just worked.  MCE discourages fiddling, because it isn't as configurable as other packages.

The one drawback for me in using MCE is that all my personal CDs are ripped as iTunes AAC files.  Actually, every HTPC front end I tried had this drawback, so it wasn't unique to MCE.  Fortunately, MCE uses the media library from Windows Media Player.  Getting WMP to play AAC files is a snap using the 3ivx codec.

The trouble begins when you want to see tag info.  You won't see any artist, album or track info after you add the files to WMP's library.  In fact, you may find your AAC files in the "Other Media" ghetto... er, I mean node.

So here's the fix I worked out:  Remove all AAC (.m4a) files from your WMP library.  Apply the m4a.reg registry patch linked below.  Add the AAC files into your WMP library.  At this point you should be ready to run my little import app, but there's a caveat. 

If your music is on a network drive, you need to be sure that it is added to iTunes using the UNC path. (e.g. \\computer\share)  WMP will add the files mapped this way even if you have the share mapped to a local drive.  Since I use the fully qualified file name as my means of relating the tracks in both libraries, this gave me some trouble.

The program (iTunes2WMP.exe) included in the .zip file below doesn't actually enable WMP to read the tags in AAC files.  It reads the relevant information (artist, album, etc.) about a file out of the iTunes library, and then writes it into the WMP library.  The result is the same as if WMP had read the tags directly.

I didn't set out to write a program to do this.  I tried two utilities that I downloaded (from a forum that shall remain unnamed), and they both sucked.  Not only did they not work for me, but the code was embarrassing to read.  When I don't know what I'm doing, I try to copy someone who does.  I can only assume that these people don't realize that they don't know what they are doing.

I wrote this utility in C# 2.0 because I wanted to try out some of the features of the new release.  I can report that code snippets are a terrific productivity boost in Visual Studio 2005, but the real super-duper feature for 2.0 is generics.  I created a strongly typed dictionary with one line of code, and I assure you that I did not know what I was doing when I started.  It's just that easy.  .NET generics are THE BOMB!  "Stone guaranteed to blow your mind" as James Taylor would say.

If you use this utility, I'd like to hear your comments.  I don't promise to make any improvements.  That's why you have the source.  I would just like to know if others find it useful.

++Alan

PS: The following files are provided without warranty, or assurance of fitness for any purpose.  They could melt your synapses, give you bird flu or worse, crash your system.  If they do, I'm not responsible.  Got it?

iTunes2WMP.zip (68.03 KB) m4a.reg.txt (.66 KB)
 Sunday, November 27, 2005

Sleepless Nights



# 

It appears that I am causing others to loose sleep. :-)

http://scottscovellonvfp.blogspot.com/2005/11/bindevent-and-compile.html

++Alan
 Friday, November 11, 2005

Really Big Files on a CDR



# 

Microsoft provides development releases early and often, now.  This is great because I get to see what's coming while it is being developed.  This is part of Microsoft's drive toward transparancy, and it is a good thing.  The problem is that I don't want to test these unstable releases on my work PC because, you know, I, like, make my living using that machine.  As a result, I want to install them at home, where it would be annoying if they broke something, but I could continue to pay the rent.

Seems simple, right?   I just take the file home and install it.  Well, that's the catch.  I can't just take the file home, because it is often a DVD image file, and I don't have a DVD burner at work.  (Incidently, I bought a dual layer burner for my home PC, but have you seen the price of dual layer media?)  Now along comes Jason with a terrific solution.  It's called Free File Splitter, and it is exactly what its name promises.  It's free and it splits files.  Not only that, but it provides a batch file to re-assemble the original file once all the fragments are copied to the hard drive.  Sweet! 


++Alan
 Thursday, November 10, 2005

A New, Old Dog



# 

Last night, the kids and I visited a dog that was available for adoption. Her name is Lady Theodora, but she responds to Teddy. We all fell in love with her, and voted unanamously to make her part of our family. She is hardly a puppy, but she is very well mannerd and playful, which makes her a good match for the kids. She will join three humans and one feline as the fifth resident of The Netcave.

++Alan

Lazy Programmers



# 

I've long said that all programmers are lazy.  There are two kinds of lazy, though.  Good lazy is when a programmer has to do something twice, she stops to automate the process, so she won't be bothered by this rote task again.  Bad lazy is when a programmer uses "clipboard inheritance", mindlessly copy and pasting code, and not stepping back long enough to find a better solution, much less the "best" solution.

This was brought to mind again by a post by Phillip Lensen (via Foxpro.catalyst):
Why Good Programmers Are Lazy and Dumb
I hadn't considered the dumb part, but I do look for a drive to constantly investigate and learn when evaluating a job candidate.  Phillip makes some interesting points.

++Alan
 Wednesday, November 09, 2005

Totally Cool Firefox Extension



# 

I have used the Image Zoom extension in Firefox for many months.  This week I downloaded an update using the friendly Firefox update feature.  It was only today that I "discovered" an exciting new feature.  If I hover my mouse over an image in Firefox and scroll the mouse wheel, the image zooms in or out depending on the direction I scroll. 

Totally cool!

++Alan

Today's Story...



# 

In which our hero becomes a shameless media whore:

Microsoft's Visual Studio Team Server enters the arena

Microsft's approach is broad, said Alan Stevens, and leaves room for other vendors. Stevens, a Visual Studio developer who helped co found NTeam, an open-source alternative to VSTS, said "The best of breed components was not the priority; it was the best of breed across the whole development lifecycle. For example, they don't have the best source control or bug tracking, but they were not trying to. What they are selling is the integration of the various pieces so there is no context switch."

Stevens pointed out that other tools used by Visual Studio developers would require developers to switch contexts in order to communicate programming progress. That puts extra overhead on already beleaguered developers. VSTS integration, he said, "provides a kind of automatic tracking so they don't have to manually tell the tester when [something is] complete."

"With Team System, I check in the code and get a list of work items. When that check item is resolved, it immediately e-mails the tester and they can begin testing," said Stevens.

++Alan

Oh, Great



# 

NPR says:

Software Industry Sees Robust Growth in China

At least I work for a military contractor.  I don't expect my job to go to China (or India) any time soon.

++Alan

 Tuesday, November 08, 2005

Free Visual Studio 2005 Training from Microsoft



# 

For 90 days, you can sign up for free classes on MS's latest developer products here:

https://www.microsoftelearning.com/visualstudio2005/

I've used some of their e-learning materials before, and found them helpful.  YMMV

++Alan