Archive for November, 2008

Speaking on Prism as the D2SIG next week

I’ll be doing a presentation at the D2SIG in Houston next Tuesday. The topic is going to be Prism (or Composite Application Guidance for WPF…). I’d like to send a big thank you to Brian Noyes, who’s let me borrow his presentation material on the subject.

Here’s information about the user group meeting:

Houston – Area D2 SIG Meeting for Silverlight & WPF Designers and Developers
Where:   Microsoft-Houston Offices (2000 West Sam Houston Parkway)
When:   December 2 (first Tuesday of each month) – 6:00 – 8:00PM
Why:   A free discussion on the latest Microsoft designer and developer technologies

This special interest group (SIG) is a community effort open to all interested participants. Each month, a different presenter from various organizations will present to interested attendees. The group is dedicated to exploring modern user experiences (UX) which are part computer programming and part artistic design. While traditionally there has been little overlap in the two disciplines, users now expect a good experience with a professional look. Covered topics will range from development in Silverlight, WPF and related technologies such as Microsoft Surface to design of rich interactive experience for graphical designers. The group strives to provide a good balance of content that appeals to both developers and designers.

Session Abstract: Using the Composite Application Guidance for WPF and Silverlight
This presentation covers an overview of the Composite Application Guidance for WPF and Silverlight (codename Prism), its architecture and Composite Application Library (CAL), and how applications are be built on top of it. If you build any application that goes beyond "Hello World", it’s likely that you create composite applications. Prism allows for applications to be built with proper separation of concerns, promoting loose coupling, extensibility, and testability. It also helps with WPF/Silverlight’s goals of allowing developers and designers to collaborate more easily on the same project.
RSVP Requested
Attendance of the SIG meetings is free. To allow us to plan the meetings better and to judge interest ahead of time, we ask people to RSVP here. (This is a temporary site and will be replaced in the future with

Leave a comment

Book Review: Clean Code – A Handbook of Agile Software Craftsmanship

I’ve just finished reading this book a few weekends ago:

book Clean Code – A Handbook of Agile Software Craftsmanship

I already had high hopes on it, and I felt sure I was about to read a good book when I saw the introduction starting off with this image (originally published here):


Despite being funny, the image actually pretty much describes reality.

I was glad to see that I am already following many of the recommendations described in this book. There are things I have to work on, though, and I’ll make sure a put serious consideration into it.

There’s just one thing I strongly disagree with the author: when talking about replacing magic numbers with named constants, the author says "…the number 5280 is so very well known and so unique a constant that readers would recognize it even if it stood alone on a page with no context surrounding it.". I don’t agree with that at all. Maybe any reader who uses the Imperial measurement system would recognize it; people like myself, who use the Metric system, aren’t likely to recognize that at all!!

With so much development work being outsourced to people from all over the World, developers should put a little more thought into writing code that’s clear to a broader range of developers. Granted, that’s not an easy task, but it sure is on cases like the "magical number 5280" (that’s the number of feet per mile, by the way).

Other than that, great book, that should be read by every serious developer.


Speaking at the Dallas .NET User Group

This Thursday I’m speaking at the Dallas .NET User Group. The topic is "Refactoring, Patterns, new language features, code quality, and more". I know, the title needs some refactoring.  🙂

Command design pattern, Lambda Expressions, Extension Methods, fluent interfaces, refactoring, test-driven development, writing elegant code, and more. This session will cover a little bit of many things learned from projects I’ve been working on. We expect every attendee to learn a few tricks that can be applied immediately, and also to feel encouraged to go out and research more on whatever area appeals the most. Besides learning those things, we really hope attendees will start thinking and approaching their code in a different way.

This is one of my favorite talks. Very little slides (I guess two or three?), and then just code. I pack a lot of stuff into it, so I hope there’s something for everybody here, and I always have fun presenting this one.

If you’re in the Dallas area, come by and say hi!  🙂

Ah, and I may also spend some 15 minutes sharing some of my impressions from PDC 2008…

Leave a comment