A walk through WinFx (first of a series)
Having just returned from the TechReady2 conference in rain-soaked Seattle, I realized that knowledge of all the great technologies I had just seen and heard about would quickly pass through my mind if I didn't do something to make them stick. I also found myself wondering just how I could possibly make that happen with all the administrative tasks I had to keep up with as part of my new role. And so, I thought it might be a good idea to build a simple application on WinFx that helps me handle my administrative tasks and at the same time illustrates the feature set and power of WinFx. As I suspect many ISVs will be facing the same challenges, I also thought it might be useful to blog about it.
I call the application I'll be building "myisvs", and its purpose is quite simple. I'd like to use it to track all the email, news, web, document, event, and contact information I manage for each ISV I work with. Accordingly, I started by builiding a simple data model in SQL Server 2005 which tracks:
ISVs - base information about each ISV
Contacts - pointers over to contacts kept in Exchange for each ISV
Events - any happenings within the ISV that I'd like to keep track of (text + link + date/time)
Locations - address and lat/long (for plotting on a map)
Profile - blurbs of text about each ISV I hope to use to auto-generate Word 12 documents
Programs - internal Microsoft sponsored programs the ISV is participating in (Touchdown, Ascend, Front Runner, etc.)
Products - products ISVs offer in the market
Technologies - the technologies (products, frameworks, etc., Microsoft or otherwise) that the ISVs use in their products
I've also added a bunch of tables to link all these together in what I hope are interesting ways.
In my next post, I'll discuss the data model, and from there, I'll walk my way up the stack to a business layer and finally a user interface built on top of the data model. I hope to touch all the major components of WinFx in the process and hope that I'll learn quite a bit along the way.