Office 2010 Migration for Law Firms

My new column Office 2010 Migration for Law Firms is up on the Legal IT Professionals website. Written for law firms, but applicable to almost any organization with a large investment in MS Office.

Advertisements

Fall Conference Wrap-Up – Part 4

My new column is up on Legal IT Professionals. This is the final part of my Fall Conference Wrap Up series. In this part, I take the technologies I described in the first three columns, and try to relate them to real business value.

SharePoint Conference 09 Wrapup

It had been my intention to write daily blog posts from SPC09, but honestly there was just too much going, and I was tweeting all day anyway. I thought I would, however, post a summary of the things I saw and learned at the conference (well, the SharePoint things, not the “people acting silly” things 🙂 ). It was a great conference, well organized, and with lots of information – too much information actually, so much that I could not see all the sessions I wanted to and will have to wait for the videos to be posted.

There is a lot of new stuff coming in SharePoint 2010, and a lot of improvements to existing features. Before I get into my thoughts on the conference and SharePoint 2010 in general, I would like to recommend looking at this post. Tony Byrne makes some good points. For me, it can all be condensed down into one statement: No matter what the hype, no matter what fancy new features are there, always, ALWAYS, keep business needs front of mind – upgrade when there is a clear business reason, and not before. All of the features in the world will not help you if you do not know what you are building and why.

So, on to the good stuff! There are many things I saw at the conference which really make me excited about SharePoint 2010. The things that caught my interest can be broken down into the following groups:

  • General SharePoint features
  • Service Architecture
  • Office services
  • Development support and tools

General Features

I am not going to dwell too much on the general SharePoint features, as I am sure there will be lots of articles covering them. Obviously there are considerable user interface enhancements (though the design experts out there will no doubt crap on the overall UI). The ribbon interface is pretty impressive for things like editing pages, working with lists, and similar activities. I am not sure how well it applies in a more generic “web” world, and how it can be made to be non-intrusive in a highly customized deployment.

It is also nice to see a considerable amount of AJAX-like behaviour in the UI, thus greatly reducing the number of post backs and screen refreshes. This includes the new dialog framework – many of the actions which previously sent the user to a second page to collect information, and back again when the action was completed, are now done through layered dialogs (which are also customizable for consistency with your desired look and feel).

There have also been significant improvements to the capacity and scalability of SharePoint lists and document libraries.

Finally, it is nice to see SharePoint moving towards compliance with standards such as WCAG, XHTML, and CMIS.

Services Application Architecture

A major change in SharePoint 2010 is architectural – the introduction of the  Service Application Architecture. This is a replacement for the Shared Service Providers (SSPs) in SharePoint 2007. SSPs hosted such things as the User Profile Service, Search Services, and BDC Services. There were a number of deployment, scaling and manageability issues with SSPS, however.

Service Applications are a far more flexible approach. A Service Application can consist of a package of assemblies, databases, and other components which are deployed to a SharePoint App Server. The service is exposed via a proxy deployed to the WFE. This proxy knows how to talk to a custom WCF service on the App Server. The client (for example a Web Part) talk calls the proxy in order to consume the Service Application, without having to know where the Application Service is deployed – on the same farm or even another farm. The architecture also has built in round-robin load balancing.

Office Services

Among the services deployed in SharePoint 2010 are various office services:

  • Improved Excel Services
  • Improved InfoPath Forms Services
  • Visio Services
  • Access Services

I know there are some great improvements in Excel and Excel Services from the keynote. Excel rendering is improved, as in the interaction experience. Additionally, Excel Services now exposes REST interfaces, making it easier to consume server-based calculations and charts from other pages or web applications.

Something that specifically caught my interest is PowerPivot – which allows Excel to work with huge datasets in an effective way (the keynote showed it working with 100+ million rows – but that of course was a demo). I did not get a chance to go to the PowerPoint sessions, but will definitely have a look at the recordings when they are available. In the meantime, have a look here.

Something new which has been added in SharePoint 2010 are Visio Services allowing for the rendering of Visio diagrams in the browser, with interactivity and data binding. The Visio diagrams are rendered in a SharePoint web part using Silverlight technology. I already have a few ideas for how this could be applied to projects on which I am working.

Also added are SharePoint Access Services. This allows the publication of Access Solutions to a SharePoint where they can be centrally managed, and provides multiuser access and distribution difficult to achieve with an Access desktop solution.

There are a lot of improvements for developers in SharePoint 2010 and Visual Studio 2010.  So much so that I am going to do a completely separate post to cover them. To summarize:

  • Many new and improved templates in VS 2010
  • Visual designers in VS2010
  • Support for Features and Packaging in VS2010
  • Improved APIs (way too much to get into here)
  • Developer Dashboard view
  • Development support on 64-bit Vista/Windows 7
  • Improved tools in SharePoint Designer

I will be posting another write up later today specifically focused on the development improvements.

The Microsoft SharePoint Team Blog has a post summarizing these and many other features I have not gotten into here.

First look at SharePoint 2010 for Developers

The past week has seen quite a bit of new information being published by Microsoft regarding Office 2010 and SharePoint 2010. This is just the start, I am sure, and by the time Office 2010 is released next year, we will probably all be getting sick of hearing about it (jk). A good place to start getting a feel for SharePoint 2010 is to look at SharePoint 2010 Sneak Peek videos recently posted by Microsoft.

I had a look late last week at the new features from a general perspective – see my column over at Legal IT Professionals. In this post I want to have a look at some of the new features for developers. I will give my take on what I saw in the videos, and also mention a few things that I was hoping to see but didn’t.

The Developer Sneak Peek Video covers a number of features of SharePoint 201 for developers:

  • Visual Studio 2010 SharePoint tools
  • Language Integrated Query (LINQ) for SharePoint
  • Developer Dashboard
  • Business Connectivity Services
  • Client Object Model (OM)
  • Silverlight Web Part

The Visual Studio SharePoint tools are intended to improve programmer productivity when developing for SharePoint. A major new feature is the Visual Web Part Designer. As the name implies, this tool lets you visually design your web part UI, rather than coding it or using something like SmartPart. While the demonstration in the video is extremely simple, this tool should greatly improve the process of developing Web Parts for SharePoint 2010.

The support for Feature and Solution packaging seems to be greatly improved as well, and actually looks like it is a real Visual Studio tool rather than an afterthought.

Microsoft has also added a SharePoint node to the Server Explorer in Visual Studio. This allows you to look at the structure and content of the SharePoint site you are targeting without having to bounce back and forth between IE and Visual Studio.

Another big feature is the Business Connectivity Services design tools for Visual Studio. This is a set of tools for implementing BCS entities from within Visual Studio, allowing a developer to do more sophisticated BCS development than is possible from SharePoint Designer.

Moving beyond Visual Studio, there are a number of other important enhancements for developers.

One of these enhancements is the Developer Dashboard. This is a component which is enabled by a sight administrator, and can be added to any SharePoint page to support development and debugging. It provides diagnostic information regarding including the detailed page request, timing information, information on Stored procedures called, as well as details regarding resource usage, authenticated user, web part timings, etc. This should be a big help in troubleshooting issues.

Another addition is the addition of the Client Object Model, a client-side API for interacting with data on the SharePoint server using JavaScript, .NET code, or Silverlight.

Speaking of Silverlight, there is now a built-in Silverlight Web Part to facilitate deployment of rich UI components. The video shows a nice demonstration using Silverlight, the Silverlight Web Part, and the Client Object Model.  

While I definitely like what I see for developers in SharePoint 2010, there are a number of things I want to see but didn’t:

  1. The Visual Web Part Designer is great. I am curious, though, whether this tool will have any support for developing connectable web parts more easily? Creating the visual part of the Web Part is wonderful, but most useful web parts need to provide or consume connections.
  2. Another thought on the Web Part Designer – does it have support for developing async behaviours, or does it still have to be duck-taped together?
  3. Is there better support for development of Site Definitions, List Definitions, Content Types, etc.? This has remained a manual, tedious, and hence error-prone process. Similarly, is there support for editing of CAML for queries, etc.?
  4. SharePoint Workflow development support. The tools for workflow development in SharePoint 2007 are “ok” as far as they go, but there remain a fair number of very manual, very “cludgey” steps that make it non-trivial to implement real-world workflows, including the mechanisms for developing and using custom ASP.NET association, initiation, and task forms.
  5. Speaking of workflow, the execution environment for workflow in SharePoint is missing some pieces, most notably the tracking service. What has been added?
  6. Rumour has it that SharePoint 2010 will be running over .NET 3.5, not .NET 4.0. Say it ain’t so! So SharePoint Workflow will not take advantage of the performance improvements in .NET 4.0 – what’s the point?
  7. Does the Silverlight Web Part support connections? Or must any data flow into or out of the web part be done from within the Silverlight?

Well, those are my first thoughts on SharePoint 2010 for developers. I can’t wait to see/learn more over the coming months.