I don't think we (Microsoft) talk enough about how great smart client applications are. We talk a lot about web applications (and with good reason, we have an awesome web platform and a great set of tools, especially with Whidbey). But, we also have a great set of platform and tools technologies for smart clients. Windows Forms is a great way to build rich, functional, great-looking, connected (or not) client applications.


We have a bunch of resources to help developers learn about what we have to offer and to learn how to be more productive. WindowsForms.net is a great place to start. The MSDN smart client developer center is a great one, too. And, don’t forget about integrating Office into solutions. It's the ultimate smart client application that can also be used as a platform.


Speaking of smart clients, my favorite smart client application (right now) is Groove. It rocks! Since Microsoft acquired Groove Networks I've been playing around with the application and using for projects. I am very impressed. What do I like about it? Well, the following:


  • It's a client application. It's responsive; it supports simple things like drag/drop and notifications.
  • It's peer-to-peer. You might ask “who cares?” But, for projects with several people, this means that the data about the project (files, status, tasks, whatever you want to put in the workspace) are always on *your* machine. There is no server involved. If someone makes a change, then that change is automatically propagated to all the other members (if they are not online, the the next time they are connected, they'll get updated). If you're on a plane, no problem, all your data is there. It's very cool!
  • It integrates well with Office. Keeping spreadsheets, presentations, documents, etc. in a workspace works very well. Groove will allow more than one person to edit a Word document simultaneously. All the members of the workspace and view a PowerPoint presentation at the same time (virtual meeting).
  • It works through firewalls! I can sit at home, turn on my machine, and BOOM - any changes are synchronized automatically.
  • It's customizable. You can create your own forms and lists. I have not dug into the API or forms design very much, but having the ability is cool.


I still have more to learn, but so far, I love it. Check it out here.