Team Sites vs. Communication Sites in SharePoint Online

SharePoint content management: 2 paradigms

With clients, I talk about dividing SharePoint content into two categories:

  1. Bottom-up: content that’s created and shared collaboratively by many users and potentially consumed by even more users.  This can be expanded to include more tightly-governed document management paradigms as well.
  2. Top-down: content that’s curated by a select few users and consumed by many.  In legacy SharePoint, this content typically belonged in Publishing Sites.

Bottom-up: Team Sites

First out of the gate in SharePoint Online were Modern Team Sites (powered by Office Groups), which provide a great way to collaborate on “bottom-up” content with a team.

Top-down: Communication Sites

Released in June, Communication Sites are modern SharePoint’s answer to “top-down” publishing.

Team Sites vs. Communication Sites

new site

Below are the main differences between Team Sites and Communication Sites in SharePoint Online.  Keep these in mind when creating a site, and your SharePoint admin will thank you….

Communication sites aren’t connected to an Office Group

team site.pngBecause Team Sites are built with collaboration in mind, creating a Team Site in SharePoint Online automatically creates an Office Group behind the scenes.  In addition to a SharePoint site to share news and documents, you get a shared calendar and inbox in Outlook, a Planner tasks board and a OneNote notebook.

When you create a Communication Site, no Office Group is created behind the scenes.

Communication sites are private by default

Creating a new Team Site from SharePoint Home prompts you to select Privacy Settings, which are set to Public by default.

You’re then immediately prompted to add team members right on the Create Site page.

snip_20170630105629.pngContrarily, creating a Communication Site doesn’t prompt you to add members.  Instead, you’ll need to click Share site from the site’s home page; adding users assigns them read access by default.

 

 

Different default home pages

After creating a Team Site, you’re taken to a home page that’s pre-configured for collaboration, featuring a News web part and Site Activity that highlights recent documents and pages on the site.

snip_20170630110621.png

 

Creating a Communication Site prompts you to select from 3 default designs: TopicShowcase or Blank.

Creating the site takes you to a home page matching your selected design:

snip_20170630111225.png

Different navigation

Communication Sites feature Top Navigation by default rather than the Quick Launch (left) navigation that ships with Team Sites.

snip_20170630113025

snip_20170630123155.pngAnd because there’s no left navigation, the Search box moves to the upper right on Communication Sites pages, beneath the new Share site button and the familiar Follow button.

 

Team Sites , which are connected to an Office Group, gain 3 unique navigation experiences that you won’t find on Communication sites:

Quick navigation to Office Groups features

Clicking the name of the Team Site or the site icon pops up a dialog with navigation to other Groups features like Planner, Conversations and the OneNote notebook:

snip_20170630113103

Add links to Office Groups features in left navigation

You can also add links to the aforementioned Office Groups features in the Quick Launch (left) navigation while editing:

snip_20170630122804.png

Members and Conversations

snip_20170630123305.pngFinally, Team Sites show a summary of team members and a link to team conversations in the upper right-hand corner of the site navigation.

This helps to further emphasize the collaborative, “bottom-up” nature of Team Sites, where visitors to the site are likely to want to know who else is a part of the team.

Final thoughts

Aside from these main differences, Team Sites and Communication Sites are actually very similar:

  • snip_20170630134904.pngBoth have Pages libraries to house pages and News, where you can access all of the new page layouts and web parts
  • Everything you can do with a page on a Communication site you can do with a page on a Team site, including customizing the header image (finally!)
  • Both ship with Documents and Site Asset libraries
  • Both provide the ability to publish News that appears on SharePoint Home to users who follow the site

Users still must follow a Communication Site to always see News from that site on SharePoint Home.  I had hoped that Communication Sites would provide a way to kindly *ahem* shove content down users’ throats, but it appears the News feature on SharePoint Home is strictly opt-in for now.

Better late than never: 3 takeaways from Microsoft Ignite 2016 for SharePoint and Office 365 (with a developer spin)

I forced myself to wait a few weeks (OK, two months) and let the Microsoft Ignite dust settle before blogging about what’s next for SharePoint and Office 365.  As a rule, it’s best to wait until the conference high subsides before crowning each and every announcement as the greatest thing since sliced bread for {insert favorite Microsoft platform here}.

(Plus, a certain baseball team on the north side of Chicago is in the playoffs WON THE WORLD SERIES…)

wflag
I’ve been a bit preoccupied, but better late than never.

But Microsoft Ignite 2016 brought plenty of welcome news for everyone connected to the SharePoint platform, whether in Office 365 or on-premises.

With Jeff Teper and Bill Baer leading the way, Microsoft made it loud and clear: SharePoint is back as the premiere collaboration platform, and the changes we’ve seen lately are just a taste of what’s to come.

1.  Files are finally easy in Office 365

Wait, wasn’t SharePoint designed for file sharing? Well, yes– but as Office 365 and OneDrive for Business evolved, sharing files in SharePoint became just one way to collaborate. Most of us have files in Office 365 Groups, OneDrive, Yammer AND SharePoint, and navigating to each individual app to work on a file is painful.

Now, you can access (almost) all of your files in one place: OneDrive. All of your files from SharePoint team sites, Office Groups, OneDrive for Business and files that have been shared with you from other users’ OneDrive are all accessible via OneDrive and the OneDrive mobile app.

Noticeably absent from this list is Yammer, but don’t worry: the Yammer team had some good news of their own to announce (hint: it’s not dead)!

O365 Groups integration.png
From the right-side panel in Yammer (source: Yammer team blog)!

The Yammer roadmap includes tighter integration with Office 365 Groups, including a Group for every Yammer team created.  You can read the Yammer announcement about Groups integration on their Office Blog, or watch the roadmap video on Channel 9.

onedrive-in-yammer
Accessing OneDrive files in Yammer (source: Yammer team blog)

Developer spin: welcome to the OneDrive API!

Get used to using the Microsoft Graph to work with files in Office 365 and SharePoint, rather than the SharePoint CSOM.  Announced at Ignite, the Microsoft Graph now officially supports files and folders in SharePoint Online document libraries.

If this sounds confusing (wait, wasn’t the Microsoft Graph Files API recently deprecated?), that’s because it is (at least to me).  It is, in fact, the OneDrive API that now supports REST queries for SharePoint files.  Further adding to the confusion is that the SharePoint team announced on their Future of SharePoint blog that SharePoint files access is coming to the Microsoft Files API.

But this is just further proof that it shouldn’t matter where your files are stored– in OneDrive or in SharePoint Online– working with files in Office 365 is getting a consistent user experience that is backed by a consistent experience for developers, too.

2.  SharePoint UX is ready for the modern web

The SharePoint library and list UX has been virtually the same since 2007, and the new Modern Document Library and Modern List experience (now rolling out to all tenants) has been a breath of fresh air. While not perfect (there were some bumps along the way, and there are still some legacy features missing from the modern experiences), these new user experiences provide a fresh take on the traditional library and list.

Notable features in modern document libraries include new grid views, pinned documents, fast view switching and a powerful details pane that you can open by simply typing “i” on your keyboard.

Modern lists now inherit the same slick new UI and support quick and dirty Flow and PowerApps integration.  In this blogger’s opinion, neither is fully ready for prime time yet, but each provides a ray of hope for rapid workflow development and mobile form creation, respectively.

But the biggest announcement coming out of Ignite is that modern Pages are live.

pages.png
Configuring the Highlighted Content web part on a modern Team Site page

The Pages experience brings a wealth of new web parts in a responsive grid (well, more like a responsive column– I’m not sure if a true grid is in the works).  Out of the box, Modern Pages support several new modern web parts:

  • Text
  • Image
  • Document
  • Office 365 Video
  • Content Embed
  • Highlighted Content
  • Quick Links
  • Site Activity
  • Yammer Feed
newpage.png
Adding client-side web parts to a new Modern Page in SharePoint Online

I’ll blog more in-depth about each of these options another day, but for now, the big takeaway is that Modern Pages are live, and with them come modern, client-side web parts.

Developer spin: time to learn SPFx

With modern, client-side web parts comes the SharePoint Framework, or SPFx, for developing client-side web parts for SharePoint Online.

This isn’t exactly news from Ignite– modern web parts were announced back on May 4 as part of the Future of SharePoint event– but we got a taste of actually developing them during a few developer-focused sessions at Ignite.

Donning a baller “$ yo SharePoint” shirt, Chakkarah Deep (PM, SharePoint Developer Platform) led an intriguing session on the SharePoint Framework in which he demonstrated using modern web scaffolding tools such as Yeoman, Gulp, Node.js and NPM to build client-side web parts in SharePoint Online with new eye candy like Office UI Fabric (built with React.js).

What a mouthful!

ctc3cfawyaeuqjw
Got my hands on a sweet $ yo sharepoint shirt. I feel like Superman.

It’s a big mouthful, but it’s an important one for SharePoint developers.

Gone are the days of building web parts that inherit from the .NET WebPart class.  Gone are the (brief, but painful) days of building App Parts for your SharePoint Add-in only to scratch and claw to get something useful to render in an iFrame.

New web parts are:

  • Written entirely on client-side languages: pick a favorite and scaffold the supporting SharePoint classes
  • A brilliant example of the new TypeScript 2.0 (not required, but useful)
  • Environment-aware: run in SharePoint when deployed to production, but can be developed locally with a Node server and Gulp using data from a live SharePoint environment
  • Backwards-compatible: can be added to old web part pages and new Modern pages.
  • Still in preview: you will need a development tenant to deploy and test them with SharePoint connections

3: Every SharePoint Site gets a Group, and every Group gets a SharePoint Site

I saved the best for last.

Now, when you create an Office 365 Group, a SharePoint team site is provisioned (actually, it’s always been this way, but you can finally access the full team site).

And the reverse is true: when you create a SharePoint team site, you get an Office 365 group.

Although the message is still a bit murky and provides an opportunity for thought leadership on what features of Groups and Team Sites to use when, this much is clear: you no longer need to choose between a Group or a Team Site.

The end result is that when you create a site or a group in Office 365, you get a full-blown, people-centric collaboration suite with:

  • A Shared Documents library that is accessible within OneDrive
  • The ability to create additional document libraries with custom columns, permissions, Flows and PowerApps
  • The ability to create custom databases (lists) on your site, again with the full extensibility of Flow and PowerApps
  • A group inbox in Exchange via a distribution group and a team chat that you can access in Outlook
  • A OneNote notebook
  • A Plan in Planner for tracking project goals, tasks and assignments
  • A home page for your team that shows recent documents and team activity, with the ability to create additional pages with web parts that highlight activity, individual documents, or even list items
  • A true modern, mobile experience in the SharePoint app on your phone

Clicking the “Files” tab in any view of an Office 365 Group (from within Outlook or on the team site) will open the Team Site Shared Documents library, but you can then navigate to additional document libraries, pages and lists on your site.

Developer spin: owning the provisioning story is more critical than ever

I’ve been screaming as loud as I can about the incredible work the OfficeDevPnP team has been doing around site provisioning in Office 365 (and SharePoint 2016).

If you’re new to the PnP team, here’s a TL;DR: the Office Development Patterns and Practices team curates open-source, documented code on GitHub that helps you implement best practices for provisioning custom site collections in Office 365.

Owning the site provisioning experience has always been important to SharePoint developers; most of my clients request some means of creating a customized instance of a SharePoint site.

So why is it more important now?  We’ve traditionally used site templates to take more ownership of the large, sprawling toolbox that is a SharePoint site, typically managing customization around things like web parts on pages, navigation, security groups and permissions, default list instances and, of course, site columns and content types.

This toolbox has now grown to include all the Office 365 Groups goodies (see above), which means that administrators wishing to stand up governance around the creation of SharePoint sites now have even more to govern.

For now, the best advice I can give to SharePoint developers and administrators scrambling to govern Team Sites and Groups is to funnel the creation of Office 365 Groups through the creation of SharePoint sites, where you can own more of the experience.  Utilize tools like the OfficeDevPnP Partner Pack to manage self-service site creation and, if you’re especially concerned about content sprawl, turn off the ability for end users to create Groups and instead direct them to a site request list.

As the Office 365 toolbox continues to evolve, common customization requests of SharePoint/Office 365 developers will grow to include standing up custom team sites with custom document libraries/lists, plans, custom navigation, default content, limitations on naming conventions and perhaps even integration with the recently-announced Microsoft Teams.

By owning the provisioning experience with the OfficeDevPnP toolkit, you gain programmatic control over several aspects of the experience, and I anticipate that the list of customizations will continue to grow; Microsoft has already announced that Planner Templates with custom buckets and flags are in development:

roadmap
Custom Planner templates are coming to Office 365.  Source: FastTrack

Wrapping it up

As I put the final touches on this blog here at the MVP Summit, I’m reminded that Microsoft now moves faster than most of us can keep up– even MVPs like myself who live and breathe this stuff every day.

If you’re overwhelmed, you’re not alone.  But know this: incredible things are ahead for collaboration, and SharePoint is at the center of all of it.

Developer spin: it’s a paradigm shift

Our role as SharePoint developers has undergone a paradigm shift, from shoehorning custom business functionality into SharePoint by hook or by crook, to mastering the ins and outs of the SharePoint and Office 365 toolkit enough to make an educated guess as to:

  • Which Office 365 service to harness for a particular use case
  • When to custom-develop an application, vs. when OOB is good enough
  • How to bridge the gap between OOB and what your customer actually wants using client-side code