Friday, December 29, 2006

Book Review: Practices of an Agile Developer

For any developer starting out with agile, I'd like to recommend this book. Indeed, for any well practiced agile developer, I'd also like to recommend this book.

I first got wind of Practices of an Agile Developer on DotNet Rocks show 205 where the authors Venkat Subramaniam and Andrew Hunt were interviewed and discussed their new book. There are some great agile books around, though they tend to me more about the way things should be done to be agile, but this book dives more into the mind of a developer on a agile project.

The conversational style makes the book really easy to read with plenty of stories thrown in to help illustrate a point. The use of the devil/angel at the start and end of each point also brought home a point (the devil would recommend something evil yet plausible whilst the angel would say what you might actually want to do).

Any developer on an agile project would probably already know a lot of the points raised, but the bite size chunks along side the easy to read prose makes this book worth flicking through regardless of experience.

Pick up your copy.

The Web21C Information About Me Sample App

Hmm, so what's this service call 'Information About Me'? Well, it's a service that enables an application to store information about it's users. It also have a permission model wrapped around the users attributes so that, if the owner of that information wants to, they can enable read/write access to other users within the application domain.

So, without further ado, go check out the downloads page and get the IAM sample source. You'll have to change the wse3policyCache.config file with one of your own based on your application certificate, then you can get going.

Using the sample, you'll need to create a user using our authentication service (WhiteLabelAuthentication) and then create the attribute with the initial value associated with the user who is now logged in to our authentication service. You can launch another instance of the application and create another user and then have a play around with getting and setting the attributes with different permissions. Watch the log for exception messages coming from the service.

Have fun, and place let me know any improvements to the sample that can be made through the comments.


WPF and the Web21C SDK

So I downloaded MS Expression Blend (Beta 1) the other day and had a little play around. It's a little clunky, but has a lot of potential. I really like the way the design has been abstracted away from the code further then the move to partial classes in Visual Studio 2005.

Using Expression Blend, I created my (awesome) GUI for a sample app I've been working on using the SDK. Added a few buttons, text boxes and the like and then added some on click events. Indecently, this was one of the issues I came across where you couldn't edit the .cs code files behind the XAML and trying to create an event wouldn't create the signatures in the code.

The nice thing about this package is that it creates a Visual Studio project so after doing the design you can open it up in and edit the project in VS2005. From here on in it's the same as any other SDK application: set up WSE, add references and get coding.

The presentation of the application look really nice. I'm happy to see that our SDK can be used in many ways with all of these different tools. Next up is WPF/e.