# 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
# Thursday, June 30, 2005

Starts in 3 days. It will be great to see Lance in his prime go out in style. Win or lose it will be quite an amazing tour.

posted on Thursday, June 30, 2005 8:09:26 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [1] Trackback
# Tuesday, June 21, 2005

last week I visited the unique Chawkandi Tombs outside of Karachi. The tombs are from the 15th to 18th century and very elaborate. The photos do not do they justice, they span for over 3 km. Here are the photos:

These are what most look like:

Here is one shaped like a mosque:

posted on Tuesday, June 21, 2005 12:56:17 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [2] Trackback
# Wednesday, June 15, 2005

Did you notice the Don Box is among the people for sale on eBay at the Charity Auction? Go bid:http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=5587400881


posted on Wednesday, June 15, 2005 3:36:15 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [1] Trackback
# Tuesday, June 14, 2005

I just got home from Karachi and have discovered several warm messages in my inbox from people who went to the PDC and saw me speak. To all of you, THANK YOU for the kind words. My time in Pakistan was only 3 days, but it was very special. I have my plaque on my desk in my office.

And to all of you who left comments in my blog about Mr. Clemens, thanks, I would have paid a few hundred rupees to see the look on his face. :)

If there is another PDC next year I will be back, my experience was great.

I encourage people to visit to Pakistan, it is a wonderful country with very warm people.

posted on Tuesday, June 14, 2005 5:22:19 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [3] Trackback
# Monday, June 13, 2005

The 3rd Annual Pakistan Developers Conference is under way here in Karachi! I had a free day in Karachi to enjoy the city and weather. Went and purchased a carpet and visited the unique Chawkandi Tombs outside of Karachi. The tombs are from the 15th to 18th century and very elaborate. The photos do not do they justice, they span for over 3 km.

The first Grok Talks are published, check them out here!


posted on Monday, June 13, 2005 3:17:26 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [8] Trackback
# Friday, June 10, 2005

 I will be speaking at the 3rd Annual Pakistan developers Conference in Karachi, Pakistan next week. This is a great event with usually 5,000+ developers. I will be speaking on security, and new SQL Server 2005 features.


My friends question my sanity when I tell them that I am headed to Pakistan, a potentially dangerous place with Al-Qaeda cells running around. They say “Why bother, why not speak somewhere safe, like the USA or Europe?”


Microsoft makes a statement by holding a conference in a developing country, a country that many westerns are willing to write it off. I am making the same statement; I believe the only way for Pakistan to beat back Al-Qaeda and make peace with India is to get on board with globalization and to create economic opportunity for its citizens. The way to do this is with jobs. The road to jobs starts with training and conferences. Give someone a chance to get a job, give them hope.  If India can be an outsourcing center for the West, why can’t Pakistan? I am traveling to Pakistan to help them get there. Al-Qaeda can’t recruit an employed .NET developer


Peace through .NET. Go figure.

posted on Friday, June 10, 2005 5:06:45 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [3] Trackback