The spigot on the information coming out of Microsoft about SharePoint 2010 was cranked up from a drip to a trickle on July 13th with the debut of the SharePoint 2010 web site. Microsoft has been promising to open it to a full-blown fire hose at the SharePoint Conference in October, but until then it’s worth going through what has been released. (there’s also an invitation-only technical preview).
First, before we get to features, there’s a new conceptual view. The old 2007 “SharePoint donut” got tons of usage since most everyone is at a loss to describe what SharePoint is without it. Sure, it’s a “collaboration server”, but what does it do? Well, let me whip out this diagram and walk through it …
Here’s my best guess so far on how the old donut maps to the new one. “Sites” is the most vague (statements like “Sites allows you to expand across environments” that describe capabilities rather than a definition). I think Sites is just a generic, catch-all bucket for anything involving creation of websites, so it overlaps with all the others.
Here are my takeaways from the main video (with marketing-speak omitted except where I found it interesting or telling). I’ll be clear where I’m injecting my own point of view by using [brackets], although the rest is paraphrased so what you see here is filtered through my own perspective. I encourage you to view the videos yourself as well.
Sharepoint 2010 Overview (Tom Rizzo)
- Mentions how they are supporting all browsers (although he tellingly stumbles when trying to say “Safari” … )
- Promises great strides in social computing
- Went around the SharePoint 2010 donut:
- Sites are all about sharing information
- Mentions a further push into extranets and internet sites
- Plans to support a hierarchical structure of communities
- “Regardless of how they come together” [implies to me embracing end user creation and maintenance of their own communities rather than just enabling administrators to create communities]
- People-centric, LOB-centric
- “We’ve been Working hard to manage content from creation to disposition and destruction … ”
- Will enhance ability of users to discover content
- [our analysis of SharePoint 2007’s enterprise content management showed weakness at the later stages of the process , so beefing up capabilites around disposition and discovery seem to show positive action from Microsoft to close the gap]
- FAST will be combined with existing SharePoint search.
- More investments have been made in uncovering hidden assets
- People search will be (better) blended with search.
- At 8:22 he says “You’ll be able to find rich people across your organization”. [I guess that’s handy if Bill Gates works at your company and you need to borrow money for lunch]
- There’s a plug for the business connectivity services (formerly business data catalog) in terms of searching structured data
- Combining the rest of SharePoint with the business intelligence stack. [not really any detail here, or nothing new to talk about]
- “Rapidly create dynamic bus solutions” [At the SharePoint conference in 2006, none other than Bill Gates said building composites is the #1 capability of SharePoint. If they’re going to get away from the “portal” word which is increasingly watered down then this is a good choice. Composite applications encompasses portals, but also other important styles of web apps made from piece parts including any type of assembly of web services or RESTful services, mashups, or business process management]
- Features shown in the demo
- User interface
- The Office ribbon now shows up all over SharePoint and is removable, customizable, contextual
- He showed live editing of text in a website, and as you mouse over different font sizes you get preview of fonts just like in Word 2007
- He showed a very fat client-like resizing of images, adding a border, etc.
- You can add Silverlight with an out of box Silverlight web part
- There’s the ability to apply PowerPoint themes to sites (colors, fonts, etc.)
- Business connectivity
- You’ll be able to put a Visio diagram directly in SP, and since Visio can have links to get live data from business systems that means live data too [neat!]
- Forget BDC: it’s now BCS. There’s a new acronym: Business Connectivity Services (BCS) to replace the business data catalog (BDC)
- Instead of just sites in SP designer 2010, it has lists, workflows, etc.
- Also has an item in SP designer called “entities” for creating connections to bus data
- Demoed a SQL connecter that auto-creates CRUD (create, read, update, delete)
- You cal see a BCS data set in SharePoint and it looks like a list, but it’s a SQL database. Demoed filtering.
- You can also click “edit item” and update the item. [I hope they improve the interface. It refreshes and fills the whole screen with a data dump of the row. Not at all like editing in a cell]
- Demoed creating a new doc from SharePoint in Word which has a bunch of fields defined in BCS. You can select a customer name from the list and it fills in all the fields from that record in the document information panel
- Work with data in richer ways
- Microsoft finally clarified that Groove (new name=SharePoint Workplace) is the rich client for SharePoint. [wow, that took a long time for something we knew was going to happen]
- Workplace can sync info from a SharePoint site
- Showed in SP workspace how he can edit info offline, and then synced back up by selecting “Connect to server” and “Sync supplier list”. [Not sure why its so manual. In Notes you don’t have to hit “connect” then “sync”. Maybe there are automated, scheduled options too that weren’t shown. I hope so]
- Tom emphasized that these are just some of the features – not an exhaustive list.
- User interface
SP 2010 for IT professional video (Richard Riley)
- He mentioned on premise or as SaaS
- Beta later this year, general availability 1st half of 2010
- Goal is to scale up and out with high reliability [just as Bill Pray noted in his thoughts on Exchange 2010, it seems many of the administrative enhancements for SharePoint 2010 are to help it support SaaS rather than to just help current on premises installations]
- [bookmark] IT professional productivity
- Central admin: he mentioned “easier to find” and ribbon UI [he didn’t mention any actual functionality changes]
- There’s a best practice analyzer
- It analyzes health, performance, and has reporting
- Rules can regularly run and send pop ups with issues encountered. Admins can build rules and automatically apply fixes
- There is a new logging database, extensible with custom data and custom reports
- Scalable unified infrastructure
- Large lists will not hang the system anymore [yahoo!]
- The admin can set thresholds for how many rows max will be returned. And there’s a “happy hour” when you can get larger responses from queries.
- Unattached content database recovery
- Admins can browse content in repositories, create an export, and upload to list
- Flexible deployment
- You can detach a 2007 database and attach it to 2010
- When you migrate to 2010 it keeps UI the same, but you can select an option to switch user experiences
SP 2010 for Developer (Paul Andrew)
- Developer productivity
- Paul talked about the Visual Studio 2010 SharePoint tools
- There is a new visual Web Part designer and team foundation server
- You can look at lists and other server items from the server explorer within VS without having to go to SharePoint
- Can specify deployment configuration such as a package WSP file that can include custom installation steps
- Demoed click and drag creation of a Web Part with a button that calls LINQ query
- Rich platform
- There is the ability to use LINQ to access SharePoint lists including joins
- Paul also mentioned the Silverlight Web Part and business connectivity services
- Flexible deployment
- Paul talked about solution deployment [but frankly I got distracted at this point and don’t have notes here. I believe this is an attempt to address SP2007 weaknesses around staging from test to QA to production]
Data connectivity services
- In the demos, DCS still showed as BDC in VS 2010 since it’s not finished yet
- Paul showed how it supports creating methods for BCS CRUD
- In SharePoint you can create an “external list” now, which means data from the BCS
- There are new “list” menus in the ribbon bar in the SharePoint web UI
- Demoed using Silverlight to fill a data grid with data from a SharePoint list. With Silverlight, it’s running on the client so things like sorting the list are done without calls back to the server
That’s a summary of what I took away from the latest information on SharePoint. At our SharePoint Workshop (SharePoint 2007: The Current Governance Nightmare—and Will It Get Better?) on July 28th at Catalyst we have added a module on what’s new in SharePoint 2010 that includes our statements on what we thought was missing from 2007. Seeing new stuff is great, but lining it up against the weaknesses in 2007 provides a better view of the progress being made. All said though, it’s still too early to stand up and applaud. There’s a lot more information left in the tank that has to trickle out first.
I’m hoping that my recent postings on mashups (see here and here) have served to point out that 1) mashups are easier to define as an attitude and “feel” than a strict technological definition and 2) that mashups are not something new, although the attention to the quick&easy end of the composite application development scale is a good thing
I’d like to now add a #3 to that list: 3) that a killer web services API is sticky, contagious, and gets the creator/hoster a lot of good attention.
See this example from the EMC Documentum 6 enterprise content management platform. I had a few conversations with Documentum about the importance of web services APIs and what kinds of things and level of granularity they should operate at. Those conversations may have had a positive effect because Documentum subsequently released their first set of web services APIs, which I thought fit the mold of what customers were looking for. With version 6 they have pushed this further and added a development tool:
— Documentum Enterprise Content Services: a new, Web Services-based API that simplifies development and integration with ready-to-use enterprise content services for easy integration with other enterprise applications within a Service Oriented Architecture (SOA). EMC’s new services interface was redesigned to eliminate Documentum specific methods and terminology and replace it with a vendor-neutral framework for working with content management functionality. These services enable developers with no Documentum experience to build ECM applications quickly and easily. This open, generic approach eliminates the “knowledge barriers” that get in the way of incorporating ECM functionality in all enterprise applications and business processes that deal with content
— Documentum Composer: provides a standardized environment for development and configuration tools that reduce the need for coding and facilitates composition of applications with reusable elements
I’m hoping that as vendors realize how powerful Google Maps has become in part because of the great API that has encouraged thousands of websites to create mashups that depend on it, they will also want to provide “mashable” APIs. “We want to be the Google Maps API of the xxx industry” is shorthand for saying that a vendor (or enterprise with B2B channels) wants to make available a mashable web service that is:
- Sticky: Once a website incorporates a web services API it is unlikely to remove it for quite a long time.
- Contagious: Every website incorporating the API acts as an ambassador to visitors that get ideas about how it could be used in their website. To quote an obnoxious 70’s shampoo commercial “And they’ll tell two friends, and so on, and so on, and so on …”
- Good attention: When the UI being integrated is branded or the source somehow easily recognizable, it acts as an advertisement for the infrastructure underneath.
In my previous posting on mashups, I described how the origins of mashups (quick combination of parts that weren’t meant to go together) don’t match the most common apps called mashups (Google Maps mashups or “mapsups”). I then wrote “So, if the most common example of mashups doesn’t fit the narrative of the mashup and its origins, does that mean mapsups aren’t mashups? Or that the word has evolved and, if so, what does it mean now?”
That day an article by Ben Worthen appeared in the Wall St. Journal (“‘Mashups’ Sew Data Together”, 7/31/07, B4). Of course the screen shot was a mapsup (journalists, please check out this mashup of Sudoku with numbers from flickr – a non-mapping mashup – to validate this isn’t a one-trick concept). But the non-technical, business-related focus of the WSJ would certainly force them to give a good definition that is declarative, binary, and unique right? Think again.
“Mashups essentially are a way to take data trapped in separate applications and combine them into new, hybrid applications”. Just “a” way – if there are others then what’s the difference? And portals don’t fit this definition? Is it that the pieces being combined can be placed on top of each other or aggregated versus side-by-side like in a portal? But Facebook doesn’t fit that definition. Does it have to use Web 2.0 rich internet application technologies like Ajax?
Maybe it’s a new subcategory. Is this an implementation of service oriented architecture (which states apps from piece parts like mashups as an end goal) or an alternate mechanism? Is this a type of composite application? But still, it has to be differentiated from other types.
And talk about giving a non-unique definition, a few paragraphs later the WSJ quotes another definition “A mashup ‘combines data from disparate sources into something that is more valuable than the sum of its parts'”. If it’s really combining data you’re after, don’t business intelligence (BI) tools do that? Or dashboards? Or are those mashups too?
If that’s true, then it isn’t appropriate to say “Mashups do xxx”. One should say “doing things in a mashup way enables you to do xxx”. But they won’t – the term has taken on a life of its own. And if it leads to people rediscovering technologies like portals, BI, and dashboards; creating new web-based composite application creation tools like Popfly or Yahoo Pipes; and attaching a new label to aggregated apps like Facebook then that’s fine with me.
I think I get this whole “mashup” thing, but there’s one part I’m still figuring out: why is a combo made with Google Maps considered a mashup?
To explain my confusion, I’ll start with some history. The term mashup is derived from the music world where it describes a song created by combining (generally overlaying) parts of other songs. I’d describe it as a “frankensong”. The term “mash” has implications of a forceful, less-than-orderly combination of things. If you check the dictionary, you’ll see definitions and synonyms for “mash” that include words like “violence”, “pounding”, “crush”, and (yikes!) “pulpy mass”. The implication is that the musical combination is supposed to be quirky, creative, and charmingly rough. The outcome should be “new” – a different vibe, emotion, genre. It should be an unintentional use of the pieces involved.
I can see how a messy Facebook page, with all sorts of seemingly disconnected content and media crammed next to each other to create a new and charming mosaic of someone’s life, would fit the mashup concept.
But take a look at everyone’s favorite web-based example of mashups: Google Maps. A client recently told me mashups should really be called “mapsups” because Google Maps seems to be the only example anyone can give! In fact, according to ProgrammableWeb, Google Maps accounts for 50% of all mashup API use. John Musser’s Mashup Feed shows 54% of examples leveraging Google Maps.
But are they mashups?
Google provides a mapping API that is used to provide geographic visualization. It’s not unintentional or hijacking something for an unintended use. It’s just an API. This is what it is for. It is no different than calling out to a charting API and, indeed, there have been visualization libraries for a long time for bar charts and geographic mapping (Microsoft MapPoint comes to mind). Maybe it seemed like a clever type of repurposing and combinatorial innovation to the first few people that saw mapsups, but they may have been uninformed about the code-calls-API underpinnings.
So, if the most common example of mashups doesn’t fit the narrative of the mashup and its origins, does that mean mapsups aren’t mashups? Or that the word has evolved and, if so, what does it mean now? I’ll mull that over a bit and publish my thoughts in another blog entry.