# Wednesday, September 28, 2005
That was my time for a mile in the race this weekend down 5th Avenue. In some respects a mile that fast was harder than the marathon. Headed out to Redmond, Washington to visit the boys at Microsoft at the MVP Summit. Should have some good stories to tell in the old blog while I am out there.
posted on Wednesday, September 28, 2005 4:30:10 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Tuesday, September 20, 2005

This Sunday I am going to see the Dalai Lama speak at Rutgers University. The topic is “Peace, War, and Reconciliation.” I am curious to see how he approaches the topic of China and Tibet.


Not being a fan of Richard Gere I do find the Chinese occupation of Tibet wrong. I can say this having visited the region several times and spending a lot of time there making friends with the locals in Tibet, Bhutan and Nepal. I hope the Dali Lama speaks to this.

posted on Tuesday, September 20, 2005 8:23:07 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Monday, September 19, 2005

Three and a half years ago I scaled my first peak in the Catskills and was hooked to get into the exclusive Catskill 3500 club. The 3500 club is someone who has climbed all 35 peaks of 3500 feet elevation in the Catskills, including 4 of them twice in the winter. You may say, that is easy, but considering that 18 or so of them are trail less and the Catskills can have a foot of snow as early as October 1 and as late as May 1.


Well I did it! It did take me long enough since I got diverted by the mountains in Bhutan, Machu Picchu, Everest, Denali, Mt. Rainer (twice), Kilimanjaro and a marathon in some strange land of Antarctica.


So in all of those crazy treks, Nepal is my favorite country (people, scenery, Buddhist culture), Rainer is my favorite, and Kilimanjaro is the one most likely to do more than once.


In the Catskills, I would do almost any of the mountains over again (and will do a bunch this winter) and most likely will start climbing some peaks in the White Mountain Range in NH.


So here are the peaks:



Slide (2/9)

Balsam (2/24)

Hunter (6/2)

Southwest Hunter (6/2)

Black Dome (9/8)

Thomas Cole (9/8)

Blackhead (9/8)

Whindham High Peak (9/28)

Graham (9/29)

Balsam Lake (9/29)

Panther (11/10)

Panther (12/29)



Blackhead (1/12)

Big Indian (3/13)

Eagle (3/13)

Westkill (3/23)

Table (4/19)

Peekamoose (4/19)

Indian Head (10/4)

Twin (10/4)

Sugarloaf (10/4)

Pleatu (10/4)

Katterskill High Peak (10/25)

Bearpen (10/26)

Vly (10/26)

Slide (11/16)

Wittenberg (11/16)

Cornell (11/16)

North Dome (12/28)

Sherill (12/28)



Balasm (1/4)

Lone (9/22)

Rocky (9/22)

Doubletop (9/25)

Fir (11/27)



Balsam Cap (5/15/05)

Friday (5/15/05)

Rusk (7/16/05)

Halcott (09/17/05)


posted on Monday, September 19, 2005 3:05:31 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [1] Trackback
# Wednesday, September 7, 2005

Back from China and ready to start the fall marathon season in New York along with the usual list of conferences, MVP Summits and the like.


A very quick synopsis on China, well it was pretty cool. Got to experience communism first hand (and made me not take for granted the freedoms I have as an American) and see some amazing historical, religious and cultural areas. I met so many everyday Chinese people, very excited to practice their English talking with me for hours and exchanging views and ideas.


While I went to several places in China (Beijing, Datong, Dunhuang, Xi’am, Shanghai, Hong Kong and Macau), I have to say two places really stuck out for me.



First is the Great Wall. It lives up to its reputation. It is steep, vast and goes on and on and on. I kept climbing on up, seeing in the distance a watchtower and figured to myself “well this watchtower should be the last one, I can then view over the other side of the mountain.” Then when I got there, there were just more and more and more. A truly amazing experience.


Second is the Yungang Caves, just outside of Datong in the Shanxi Province. These caves were carved out of a mountain by Buddhists 1500 years ago (yes 1500) and are a very special place-it was a bit of a pilgrimage for me. Started in 450 AD, Yungang is a relic of the Northern Wei Dynasty (386-534). It is a combination of Chinese and  Indian Gandhara Buddhist art. Chinese are not like the Buddhists in other parts of SouthEast Asia that are Theravada, the Chinese are Mahayana.


Anyway, I saw a ton of other great stuff, but don’t want to bore you all with the details. Time to get back to the Model View Controller Design pattern…..

posted on Wednesday, September 7, 2005 9:01:09 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [2] Trackback
# Wednesday, August 24, 2005

Today we woke up and visited Mao’s Tomb. A brutal reminder that while economically free China is still a one party state without any elected government.


Climber the Great Wall, visited the Forbidden City and Summer Palace (which rocks), of course a visit to a Buddhist Lama temple rounded out some time in Beijing.


Now I am in Datong, where no English is spoken at all. Visiting some old Buddhist Caves and Monasteries tomorrow before off to Xiam to see the warriors.

(This does not suck)

posted on Wednesday, August 24, 2005 9:52:46 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [2] Trackback
# Tuesday, August 9, 2005

SQL Server 2005 Notification Services is what you would traditionally call “middle ware” or part of an application server. SQL Server is traditionally a “back end” or an infrastructure component to your architecture. SSNS is middleware provided by Microsoft as part of the SQL Server 2005 package. Microsoft has not traditionally provided a lot of middleware, but ever since the success of “Viper” or Microsoft Transaction Server (MTS), Microsoft has been providing more and more reliable and scalable middleware. Since SSNS is middleware and not part of the core database engine, SSNS is a separate setup option that is turned off by default when you initially set up your SQL Server 2005 server. You will need to select SSNS to install it at initial setup. 

If you choose to install SQL Server 2005 Notification Services, all of its components and support files install in a separate subdirectory (typically the \Notification Services subdirectory of your default SQL Server installation.). If you are like me and need to know what everything is, you can see by inspecting the subdirectory that SSNS is made up of a few components, the important ones are explained here:

microsoft.sqlserver.notificationservices.dll-this is the actual guts of Notification Services. A managed .NET assembly that contains the core code for SSNS and the built-in providers you use to retrieve data and create notifications and subscriptions.

NSService.exe-the executable shell of microsoft.sqlserver.notificationservices.dll used for running as a Windows Service. Each instance of NSService.exe runs as a Windows Service and can be managed by SQL Management Studio. Instances of NSService.exe are independent of SQL Server 2005 instances.

Providers-is the extensible framework that SSNS is built around: event providers, formatters and delivery protocol providers.

Nscontrol.exe-this is a utility program that is used when you compile your application and generates the SQL Server Database and objects that the Windows Service application uses to retrieve data and create notifications.

XML Schemas-When you generate a SSNS application, you use configuration files that are XML based. The schemas provided as part of the framework validate those documents.

Sample applications-more than most other tools, the community has used the sample applications to fully show the power of Notification Services. We will explore them as well.

This is good stuff. More later..

posted on Tuesday, August 9, 2005 4:03:48 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Wednesday, August 3, 2005

My friend in Pakistan thinks 10 million people read my blog. Somehow I don’t think so, but I did get a lot of email asking if I were dead. I also discovered that my parents keep track of me via my blog and called the day of the London bombings asking if I was in London. So I hopefully will keep the blog up to date. So where have I been?


July was a busy month.


First there was the Tour de France. Enough said.


The gang then traveled over to Ohio to visit the whole crew over the July 4th Holiday. Jack brought us all out Lance Armstrong “LiveStrong” wristbands. I know that you hate Lance Billy but that is just because your coach, Greg Lemond, is jealous. We are wearing them for Michelle, our close friend who is being very brave and faces cancer (and surgery on August 11th).


After the Ohio gang threw us out, we traveled down to Savannah, Georgia for a while to visit Jimmy on leave from his duties in Iraq. Jimmy is a LT and leads a mission every day, takes small arms fire and faces car bombs. We got the inside scoop on what is really happening over there. He looks well and headed back and will be home in January from his tour of duty.


Next flew in Lara and we made it official, she is a member of the inner circle of the anti-suckieness club by performing the ritual on 4 continents in the calendar year.  Inner members are now at: Malek, Goksin, Clemens, Stephen, Kathleen, Kimberly and Lara. (I think Alex and Adam qualify?) We took her around to the MOMA and the Circle Line. Any of my friends from Pakistan, Egypt, Algeria, Morocco, etc who come visit me in New York, I will take you to the MOMA and the Circle Line (and maybe to the top of the Empire State Building).


After a disappointing Mets game and some beach weekends, I am finally back into the swing of things. Work has been crazy but I am now back from the black hole.


Off to China in 2 weeks, lots of photos of course will be posted.

posted on Wednesday, August 3, 2005 9:01:28 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [8] Trackback

In October 2003, Microsoft released Visual Studio Tools for the Office (VSTO). This new group of class libraries brings .NET Framework-based development to Word and Excel 2003 by enabling developers to write managed code in C# or VB .NET that responds to events within the Word and Excel automation models. While not as integrated as Visual Basic for applications (VBA), building on the tradition of Visual VBA and COM-based automation, VSTO)provides developers with significant benefits for building Office solutions, including a familiar coding experience, improved deployment, and improved security.

The Visual Studio 2005 release of VSTO brings significant enhancements to the development of solutions based on Excel and Word 2003. Building on top of VSTO 2003, Visual Studio 2005 Tools for Office will address some of the biggest hurdles facing Office solution developers today, including separation of data and view elements, deployment of Office solution assemblies, server-side and offline scenarios, and seamless integration with the Visual Studio toolset.

One of the primary successes of VSTO 2005 is the separating of “data” from “view” in Office documents in order to simplify the creation of Office-based solutions. Today, Excel spreadsheets and Word documents consist of an amalgamation of either cell values or text (representing the data) and descriptive information about that data, such as the font (representing the view). Because Word and Excel have no built-in concept of programmatic data like Microsoft Access does, developers are limited in their ability to effectively develop solutions around the data stored within the documents.

VSTO 2005 will separate the data from the view in Office documents by enabling data to be embedded as an independent XML data island. This provides a well understood and easily addressable structure that developers can rely on when programming in addition to the benefit of offline support for views of the data. The developer is able to separate presentation (view) and data, and is thus able to update the data directly without concern of writing presentation code. Typed data sets will be used to provide a schema-oriented programming model for interacting with the data island, ensuring IntelliSense support for the managed code being written. Data binding will be used between the data island and the view to keep these two in sync. The developer will also be able to add validation code to the data that is independent from the document view components. Typed DataSets are now exposed as partial classes so you can add validation code very easily and encapsulate it as part of the DataSet itself.

Programming directly to data by way of an XML schema-based model provides improved productivity for developers over previous coding paradigms. Code that works with data does not need to address the Excel and Word object models at all. This simplifies much of the code involved in building Office solutions as well as shields your data code from changes in the document. The resulting code is loosely coupled because it does not rely on hard coded references to specific cells, ranges and tables that can be arbitrarily moved around by end users, rather, your code directly accesses XML data islands.

Working with XML Data Islands enables new server-side opportunities. Most importantly, the data island embedded in the document can be manipulated without starting the individual Office application. This is a major shift from the current model, by which, in order for code to manipulate the contents of the document, Excel or Word must be installed and running. This limitation blocked many solutions from being created such as programmatically creating Office documents from within an ASP.NET application.

The VSTO 2005 runtime will support instantiation on a server without the need to instantiate and run Excel or Word. The data island in a document can then be manipulated from the server-side code as any XML data can. When the user opens the associated Office document the view would be re-synchronized with the data island and the user would be automatically presented with the updated data. In this scenario, Excel and Word are not needed to write to the data on the server, but rather only to view it on the client, limiting potential security holes. This updated model will also provide higher scalability and the ability to perform high performance batch processing of multiple documents (such as T&E documents) containing data islands on the server.

Storing the data in a data island also provides a way to enable rich offline scenarios. When a document is first requested from the server or first opened by the user, the data island will be filled with the most recent data. The data island can then be cached in the document and made available offline. The data could then be manipulated by the user and by code without a live connection. When the user reconnects, the changes to the data could be propagated back to a server data source by code that you provide.

In addition to improving the data programming model, VSTO 2005 introduces enhancements to the way developers programmatically access user interface, elements, such as ranges, lists, and bookmarks. Developers can write code today to manipulate these elements, but they are impacted by the extent to which the Office object models expose events, properties, and methods. For example, the Excel object model provides a WorkSheet_Change event, but does not provide similar events for individual cells or ranges, creating the need for additional code to handle the occurrence of a change to a specific element. VSTO 2005 introduces enhancements to the Excel and Word object models in the area of these user interface elements. Elements, such as cells, ranges, lists, and bookmarks will become first class controls that can be easily accessible in your code. Each control will be uniquely identified and will enable data binding and will provide a more complete event model, making it easier for the developer to manipulate Word and Excel.

VSTO 2005 will also makes it much easier to develop applications with Excel and Word with Visual Studio. With VSTO 2003, developers wrote managed code in Visual Studio .NET then they had to switch to Excel or Word in order to create the user interface. In VSTO 2005, Excel and Word will be hosted directly in the Visual Studio 2005 IDE as designers as live documents. Developers will be able to design Office documents within the Visual Studio environment using the full collection of Windows Forms controls in Excel and Word by simply dragging and dropping managed controls, including third-party controls, from the Toolbox. Just like in other Visual Studio environments, double-clicking on a managed control in Excel or Word will invoke the code view in which customizations can be written inside the auto generated event handler for that control.

Managed control hosting within Word and Excel documents, combined with Excel and Word integration within the Visual Studio IDE, will make Office just another target platform for Visual Studio developers in addition to Windows Forms, ASP .NET, Mobile and Web Services.

What does this mean for InfoPath? Not sure?


posted on Wednesday, August 3, 2005 8:49:29 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [92] Trackback
# Monday, August 1, 2005
July was a crazy month. Too much work and major deadlines, but the end is near. Just wanted to pop in and say hi, will be back shortly.
posted on Monday, August 1, 2005 11:05:32 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [1] Trackback