Tuesday, August 01, 2006

The separation of the design from implementation - the age of the designer cometh?

I've been learning a (very little) bit about the Windows Presentation Foundation (WPF) of late. WPF, for those who don't know, is the new foundation for Windows UI application development in Vista, replacing Windows Forms.

Now the exciting bit of this, as I see it (and I could be utterly wrong) is that the design of interfaces will be in an XML-like language: Extensible Application Markup Language (XAML). This enables, theoretically at least, an interface to be designed completely independently of an implementation, and then that XAML interface design to be used by one or more implementations.

For non-coding designers, like myself, this offers the possibility to use tools like Microsoft Expression (which I've not had time to download and play around with yet) to effectively produce interfaces and leave the implementation details to programmers. This sits perfectly with my philosophy of designers being architects (considering how buildings work to support people, and making them a pleasure to use) and developers being civil engineers (making sure the materials are right, the building stands up, and the heating works).

This framework releases both designers to design and software engineers to engineer, and has the potential to save much duplicated effort, a lot of wasted time, and to produce more useful, better engineered products than before. Whether it will work like this is another thing, but it's an exciting thing to contemplate.