October the 19th I was invited to do a talk on development for 2007 Office System at Dyalog ’06. My presentation is located here.

A good resource is the videos from the Microsoft Office System Developers Conference.

It was an interesting chance to meet with people who are expert users to another programming paradigm (Functional programming) than we are accustomed to. So I was facing was 85 functional programmers who are used to use APL for doing very complex calculations without writing more than a few lines of code. If you are curious the following example are from Wikipedia:

Here's how you would write a program that would sort a word list stored in matrix X according to word length:
274608634_3da8c928f5 

It should compile and run ;-)

In preparation I had a discussion with Morten Kromberg at Insight Systems in order to get a grasp of what business domains APL programmers are mostly engaged with. APL is often used within financial and insurance applications, in simulations, and in some mathematical applications. The users are considered to be expert Excel users. So my cue was basically: what can we do with Excel 2007 to support these business domains.

There are (at least) two stories worth telling: the client side, where you can extend Office with VSTO and the story about Microsoft Excel Server.

In short, the Excel 2007 demo was about developing Excel add-ins using custom task panes and the ribbon menu. A lot of examples can be viewed here.

But what really caught my attention when preparing this presentation was Microsoft Excel Server. What you can do with Microsoft Excel server is, that you can host spreadsheets on a SharePoint site, and then expose the spreadsheet as a web service. When you choose to expose the your spreadsheet as a web service, you choose the named ranges (cells) that maps to input and output parameters. Excel server will the expose the WSDL that corresponds to what you have selected. If you think a bit about that: Imagine what it will do for decoupling you business logic from your applications – you can now have the domain experts program business calculations in Excel and then use their models directly in your apps.