Monday, August 28, 2006

The DRM Fight Continues

In an important volley some hack programmers released a tool called FairUse4WM which strips the protection from music files that have digital rights protection embedded.  There point is that if they paid to download the music, they should be able to listen to it in any medium they choose and rights management restricts that.  This is of course, a totally bogus argument, but the software is nifty if illegal.

In response, Microsoft patched the rights management software to not allow this.  Supposedly.

I in no way condone the stealing of music.  This is an important lesson however, that whatever one person can create, another can destroy.

Wednesday, August 23, 2006

Toolbox Addition

Recently, I was trying to unravel some pretty hairy code that I inherited. After spending a bit of time trying to map the various aspects of the algorithms implemented I took some advice and tried out some various tools to help with this.

The one I finally ended up actually using was from Logic Explorers.  They've got a pretty handy set of features that let you diagram out code and then using filtering and stuff to get just to the good stuff.  I found it particularly helpful for teaching my lower level engineers.

It is one thing to go over the code and explain why it isn't elegant or needs to be simplified or whatever.  It is much simpler to show them a diagram which actually looks like spaghetti and then they understand why it needs work.

Being a visual person, tools like this really help me.  If you think better on a white board, this might be a good addition to your toolbox too.

Friday, August 11, 2006

New Phone?

Currently I have an I-Mate SP3 and a JasJar.  Unfortunately, they seem to be nearing the end of their lives.  Which means I now need to look around for a new phone.

I've been reading reviews and am a little stymied.  This review of the TyTN from HTC (the guys who make the I-Mate) was very positive but I fear it is a little too big.  Also, the camera quality isn't what I have been hoping for.

If need be I will again go with the two phone approach.  A very small phone with no keyboard, and a bigger phone with a keyboard and an SD slot.

Here's my combined list for an ideal phone:
  • T-Mobile compatible
  • Windows Mobile 5
  • 2.0+ Megapixel Camera
  • SD (not mini) slot
  • Regular headset jack
  • WiFi
If I'm going with a small phone, it should be really small, clam-shells are okay and need not have the SD slot or WiFi.  The larger phone needs at least the same resolution screen as the JasJar.

Any thoughts?

Monday, August 07, 2006

Customizing TFS

On my current gig we are using TFS to manage project lifecycle, version control, and quality assurance.  While there are still quite a few enhancements we are waiting for in much anticipated service pack, the current version is humming nicely.

We found that all the templates had things we liked, and things we didn't like.  Those that collected more information were too bulky to use.  Those that were simply to understand, didn't collect the data points we required.  Which brings us to customizating the work item templates.

For myself, the key to understanding work items templates (WITs) was just mapping Fields to Controls, and then worrying about the Transitions seperately.  The States got in the way in most cases, because I tend to think that most information should be configured by the user not the system.  I recognize that will be taken as a religious statement by many, but oh well.

To start with, we mapped all the data for our modified WIT into the most appropriate field.  In many cases, we simply borrowed the fields from other templates and then used them for our purposes.  After we had all the fields which represented the data we wanted to collect, we were able to figure out which ones had information displayed and how it looked on-screen.  This was pretty straight-forward and totally subjective.

With the data being collected and used on-screen we were then able to get fancy by using Transitions to restrict input, validate states, and in some cases, default some data.  We only used States in a few situations.

If you'd like to see our modified WITs, shoot me an email.

Why didn't I use the process editors?  Because we were shooting for the lightest possible learning curve, smallest number of adjustments, and quickest turn-around.  If you, like me, just have some work to get done and want to start collecting some data, I advise steering clear of the fancy tools too.  Sometimes the simple approach really is the best.