May was a busy month for the Smart Client cause…

First there was the Microsoft Architect Forum in Lisbon. My colleague Maarten Mullender did the keynote on the value of smart clients and I hosted a break-out session on designing and building smart client applications. I really like these kinds of sessions – it’s always interesting to talk to customers and partners and hear first hand how and why people are using (or not using) .NET. There were a lot of questions about Windows Forms, Office and the Information Bridge Framework, and about choosing between a smart client and a thin client.

Many people choose a thin client architecture by default and then run into problems when they try and push the envelope a little too far. The web was designed to support linked documents and not complex line-of-business applications and so you have to rely on the many extensions and bolted-on bits to make it functional (by bolted-on bits, I mean JScript, DHTML, ActiveX controls, applets, etc). Apart from anything else, you have to decompose your application into small pieces of functionality called ‘pages’ and deliver these to the client one by one. For some applications this decomposition is natural, for others it most definitely is not.

Of course, there are many times when a thin client architecture is the most appropriate, but there are also times when a smart client architecture is the best approach. There are actually many similarities between the two approaches but the key differences are where things get interesting and these are what you need to carefully consider when choosing between the two. Choosing the wrong approach can be very expensive and painful for the developers, users and the IT department.

After Lisbon, I attended the Microsoft Architecture Advisory Board (MAAB) held at the Nutfield Priory in Redhill in the UK. At the MAAB, five focus groups consisting of senior architects from a number of leading companies get together for two full days to discuss architectural issues facing the industry. Sometimes these groups focus on topics that are 5 or more years in the future, and sometimes they focus on topics that are of great interest right now. So it was with the Smart Client Architecture group. I spent most of the time at the MAAB as a passive listener trying to understand how smart clients are being used and what kinds of problems people are facing when trying to build them. I’ll leave the details to a later post but I will say that this event was incredibly valuable and solidified and extended a lot of the thinking we have been doing in the smart client area. Also, it was nice to go back home for some proper chocolate and tea.

After the UK, it was off to San Diego and TechEd 2004. I presented a session on Smart Client Architecture Principles, and it seemed to go pretty well. This was my first time presenting a session at a big conference like TechEd and I admit I was a little nervous. Still, I got some good feedback and chance to speak to a lot of people who are thinking about, or have started building a smart client application. I’ll post some of the more interesting scenarios soon.

All in all a very busy month…