Browse Category

General

Vlad & Drew Microsoft Cloud Webinar Series

There is a constant release of new Microsoft cloud technologies and it is hard to keep up to date. There can be features that are released and the not widely seen or there could be questions about that feature that aren’t answered with the initial release. We want to try to close that gap of knowledge.

Vlad Catrinescu and myself, Drew Madelung, have begun putting together a webinar series where we will be targeting Microsoft modern workplace technologies and doing deep dives into specific feature releases. We want to bring experts from Microsoft and the community to share the details of what is being released and break down into the technology to really try to help everyone understand what the feature is meant to do, can do, and answer any outstanding questions.

Please join us and spread the word for these webinars. If you missed one, make sure you watch the recording! And if you have any suggestions for topics to deep dive into please let Vlad or myself know.

Upcoming Webinars

Previous Webinars

August 25th – Modern records management in a new world of remote work with Microsoft 365

In this webinar we were joined by special guests Roberto Yglesias and Tina Ying covering the latest news in Microsoft 365 records management. Records management in M365 has many new features and capabilities that we highlighted in this webinar. We also discussed real-world conversations on use cases of moving to modern records management in M365 and the challenges, opportunities, and overall guidance for this process.

August 3rd – Introducing Microsoft Lists – Your smart information tracking app in Microsoft 365

In this webinar, we jumped into the new functionality and features of the brand new solution called Microsoft Lists. We discussed what Lists can be used for, how to work with them, and details around the timing and availability of Lists along with demos of Lists themselves! With our special guest Mark Kashman who joined us this was a great overall webinar with a ton of questions.

July 7th – Enabling Sharing & Collaboration in OneDrive & SharePoint

In this webinar, we dived into sharing and discussing how it works, how it can be managed, and what’s new and upcoming in the world of sharing and collaboration in OneDrive and SharePoint. We were joined by Stephen Rice from Microsoft as we break down the details and background of sharing.

June 16 – Evolution of Office 365 Groups to Microsoft 365 Groups

In this webinar, we’ll were joined by Mike McLean from the Microsoft 365 Groups product team to discuss the evolution of Office 365 Groups to Microsoft 365 Groups. We reviewed the Office 365 Groups journey, and provided a behind-the-scenes look at the vision and strategy around the platform. Mike also shared details on improvements recently shipped that enhance how groups are managed across the Microsoft 365 suite and through Microsoft Graph.

May 20 – Review of the new experiences of managed metadata services (taxonomy and content types)

We were joined by product managers Sean Squires and Anupam Francis covering updates to the managed metadata service in Microsoft 365! In this webinar we talked about the updates coming to the managed metadata service. This includes experience updates to the term store, a new admin content type gallery, and improvements to managed metadata columns in lists and libraries. We will also talked about the new REST and Graph APIs supporting taxonomy updates.

May 26 – Enabling Sensitivity Labels for SharePoint Sites, Teams, Office 365 Groups and Office files

We were joined by Senior Program Manager Sanjoyan Mustafi for a free webinar covering Sensitivity Labels across Office 365! In this webinar we talked about the upcoming features around enabling more Office 365 workloads with sensitivity labels. This included new abilities to classify the containers of Office 365 Groups, Microsoft Teams, and SharePoint sites and the ability to enable sensitivity labels for Office files in SharePoint and OneDrive.

March 10th – Deep Dive into SharePoint Online Multilingual

We had the pleasure to host a webinar with Senior Program Manager Divyachapan (DC) Padur, and Senior Software Engineer Matt Mooty from Microsoft for a deep in multilingual in SPO. Recording below and a great collection of questions and answers came from it that we posted.

April 9th – Deep Dive into OneDrive Known Folder move

We were joined by Principal Program Manager Gaia Carini from the OneDrive team at Microsoft to talk all about Known Folder move. Recording is below.

Find and Report on Existing Delve Blogs

With the announcement that Delve blogs will be retiring you may want to see what blogs exist in your tenant. Delve blogs create their own site collection but do not show up in the admin center or when you use the SharePoint PowerShell module and the Get-SPOSite cmdlet. Thankfully PnP Powershell does return this. I put together a PowerShell script to find blogs and put a report together including the number of posts.

First, install PnP PowerShell if you haven’t already. I recommend installing via the PowerShell gallery with the command:

  • Install-Module SharePointPnPPowerShellOnline

Here is a script to find and export the blog information using PnP Powershell. Ensure you fill in your own variables for your tenant and the file path.

try {

    #variables -> enter your own domain and output path
    $creds = Get-Credential
    $tenantadmin = "https://domain-admin.sharepoint.com"
    $outputfilepath = "c:\temp\delveblogexport.csv"

    #connect to tenant to get blog sites
    Connect-PnPOnline $tenantadmin -Credentials $creds
    $sites = Get-PnPTenantSite -Template POINTPUBLISHINGPERSONAL#0

    $resultsarray = @()

    #loop through sites to get details for blog
    foreach($s in $sites){
        Connect-PnPOnline $s.Url -Credentials $creds
        $list = Get-PnPList -Identity "Pages"
        $pagecount = $list.ItemCount
        $listlastmodified = $list.LastItemUserModifiedDate
        $contributor = Get-PnPGroupMembers -Identity "Contributors" | select Email

        #add to export object
        $obj = New-Object PSObject
        Add-Member -InputObject $obj -MemberType NoteProperty -Name DelveBlogUrl -Value $s.Url
        Add-Member -InputObject $obj -MemberType NoteProperty -Name BlogPageCount -Value $pagecount
        Add-Member -InputObject $obj -MemberType NoteProperty -Name LastModified -Value $listlastmodified
        Add-Member -InputObject $obj -MemberType NoteProperty -Name Email -Value $contributor.Email

        $resultsarray += $obj
        $obj = $null

        Disconnect-PnPOnline

    }
    #export results
    $resultsarray | Export-Csv -Path $outputfilepath -NoTypeInformation
    Write-Host "Complete" -ForegroundColor Green
}
catch
{
    Write-Host $_.Exception.Message -ForegroundColor Red
}

The results will include the URL of the site, the page count, last modified, and the email of the blog site owner.

If you want other details per page you can go directly to the pages library to view by applying “pPg/Forms/AllItems.aspx” to the blog site url. As an example:

When you go to the pages library you can download the posts. They exist in a JSON blob. This may be a good way to extract blog posts before they are removed via Microsoft.

To view the posts you will still go through “portals/hub/personal/drew” path vs “portals/personal/drew”.


Another path to get some of this information is through the User Profiles that exist. Each user profile includes a link to their Delve blog. So if you get all existing user profiles you can find where that value is filled in. The best way to get this at scale is through SharePoint search. I put together a script to do this as well. I included batching logic on the results which will be needed in large tenants as the max search results is only 500.

try
{
    #variables -> enter your own domain and output path
    $creds = Get-Credential
    $tenantadmin = "https://domain-admin.sharepoint.com"
    $outputfilepath = "c:\temp\delvebloguserprofileexport.csv"
    $returnproperties = @("PreferredName","AccountName","WorkEmail")
    $sourceid = "B09A7990-05EA-4AF9-81EF-EDFAB16C4E31"  #this is consistent across tenants
    $maxresults = 100
    $startrow = 0

    #connect to tenant to search
    Connect-PnPOnline $tenantadmin -Credentials $creds

    $resultsarray = @()
    Do{
   
        #perform search query
        $results = Submit-PnPSearchQuery -Query "*" -SourceId $sourceid -SelectProperties $returnproperties -StartRow $startrow -MaxResults $maxresults -SortList @{LastModifiedTime="Descending"} 
        $rowcount = $results.RowCount

        #loop through results in row
        foreach($res in $results.ResultRows){

            #get user profile properties
            $props = Get-PnPUserProfileProperty -Account $res.AccountName

            #check if blog site exists
            if($props.UserProfileProperties.'SPS-PointPublishingUrl' -ne ""){

                #add to export object
                $obj = New-Object PSObject
                Add-Member -InputObject $obj -MemberType NoteProperty -Name DelveBlogUrl -Value $props.UserProfileProperties.'SPS-PointPublishingUrl'
                Add-Member -InputObject $obj -MemberType NoteProperty -Name WorkEmail -Value $props.UserProfileProperties.WorkEmail
                $resultsarray += $obj
                $obj = $null
            }
        }
        $startrow = $startrow + $rowcount + 1
    }
    while ($rowcount -ne 0)
    
    #export results
    $resultsarray | Export-Csv -Path $outputfilepath -NoTypeInformation
    Write-Host "Finished" -ForegroundColor Green
}
catch
{
    Write-Host $_.Exception.Message -ForegroundColor Red
}

This is not the most efficient way to get this information but it could be helpful to double check the SharePoint sites approach. This is also a handy way to loop through user profiles via search.

Microsoft Ignite Recap Webinar Series – brought to you by Vlad & Drew

Are you ready for the next Microsoft Ignite? We are only a few weeks away from the annual gathering of Microsoft and their closest friends in sunny Orlando. Ignite is a large conference and has hundreds of announcements across different technologies like Azure, Windows, Data & AI, and Microsoft 365.

It isn’t possible take in all the news and announcements from this wild week so Vlad Catrinescu and myself will be putting together a series of webinars in which we will review what we learned while being there and helping you digest what may be most important to you and your business. We will also have some special guests for each of the webinars so make sure you stay tuned.

For everyone that attends a webinar, we will be having some giveaways with a collection of swag and goodies from Microsoft Ignite, including some lucky attendees who will get 12-month Xbox Live Gold Membership Cards, books, and more!

Vlad Catrinescu & Drew Madelung Microsoft Ignite Recap Webinar Series

Register for each webinar below

Webinar 1: Hot of the press from Microsoft Ignite with Vlad and Drew

Time: Nov 7, 2019 02:00 PM (EST)
Description: Join Microsoft MVPs Vlad Catrinescu and Drew Madelung directly on the floor of Microsoft Ignite and be one of the first people to hear the latest news that Microsoft announces . From the Year of Yammer, to intelligent intranets, and enhancements in compliance & security inside Microsoft 365, we will digest the important announcements for you, tell you why they matter, and point you to additional resources that you can take back to the rest of the organization!
Registration: https://zoom.us/webinar/register/WN_E89uT30mSHGnxhSXzsjHbw


Webinar 2: Microsoft Ignite Recap: SharePoint & OneDrive for Business with Vlad & Drew

Special Guest: Mark Kashman
Time: Nov 12, 2019 01:00 PM (EST)
Description: Join Microsoft MVPs Vlad Catrinescu and Drew Madelung and special guest Mark Kashman the week after Ignite for a recap of the most important SharePoint and OneDrive for Business news that was announced. With the dust and excitement from Ignite settled, and the most important features out and tested, Vlad and Drew will cover the biggest and most important news from Ignite!

Registration: https://zoom.us/webinar/register/WN_8EBMVb5eR7abqh4FIaOJAA

Special Guest!

Mark Kashman

Senior Product Manager @Microsoft

Mark is a senior product manager on the SharePoint & OneDrive team focused primarily on content collaboration in Microsoft 365. He has worked at MSFT since 2000. He started working with SharePoint building a digital asset management (DAM) solution built on top of SharePoint 2007 (IMM, the Interactive Media Manager) before moving to the SharePoint team. Mark also co-hosts The Intrazone podcast (aka.ms/TheIntrazone) – a show about the SharePoint intelligent intranet.


Webinar 3: Microsoft Ignite Recap: Microsoft Teams & Yammer with Vlad & Drew

Special Guest: Karuana Gatimu
Time: Nov 19, 2019 01:00 PM (EST)
Description: Join Microsoft MVPs Vlad Catrinescu and Drew Madelung the week after Ignite for a recap of the most important Microsoft Teams and Yammer news that were announced. With the dust and excitement from Ignite settled, and the most important features potentially out and tested, Vlad and Drew will cover the biggest and most important news from Ignite!
Registration: https://zoom.us/webinar/register/WN__Y9Q2gyMSda2dyFSYCZcfA

Special Guest!

Karuana Gatimu

Lead, Customer Advocacy Group @Microsoft

Lead of Customer Advocacy Group for Microsoft Teams Engineering. Passionate O365 business architect specializing in measurable outcomes, solutions and adoption. Author – Microsoft Service Adoption Specialist course; Steward of Office 365 Champions program. Exec Producer of https://aka.ms/CoffeeintheCloud on YoutTube. Learn more at https://aka.ms/MicrosoftAdoption


Webinar 4: Microsoft Ignite Recap: Microsoft 365 Security & Compliance with Vlad & Drew

Special Guest: Antonio Maio
Time: Nov 21, 2019 01:00 PM (EST)
Description: Join Microsoft MVPs Vlad Catrinescu and Drew Madelung after Ignite for a recap of the most important Security and Compliance news that was announced. With the dust and excitement from Ignite settled, and the most important features potentially out and tested, Vlad and Drew will cover the biggest and most important news from Ignite!
Registration: https://zoom.us/webinar/register/WN_9BdGl9OLQtay00Dxh4N_hA

Special Guest!

Antonio Maio

Associate Director & Senior Enterprise Architect @Protiviti

Antonio Maio is an information security architect with over 25 years of experience in cyber security practices and systems, product management, software development and leadership. Antonio is currently a Senior Manager and Senior SharePoint Architect with Protiviti. He has been awarded a Microsoft Most Valuable Professional award for 8 consecutive years, from 2012 to 2019, specializing in Microsoft SharePoint Server, Office 365 and Office Services. His background includes implementing cryptography and PKI systems, information security technologies, and both information governance and cyber security best practices. His experience with Microsoft SharePoint and Office 365 extends over the last 10 years. When he’s not helping enterprise, military or government organizations solve security challenges, you can catch him speaking at conferences or contributing to the community through this blog.


Please register for all the webinars you want to attend.

The webinars will be recorded, and the recording will be sent to all the registered attendees after the webinar has taken place!

PowerShell for SharePoint Site Designs & Site Scripts

SharePoint site designs and site scripts allow you to provision sites and apply your own configurations at that time. This solution allows you to drive consistency for sites being created in SharePoint Online. The management of these is currently all done by PowerShell. I have been working with these and building presentations on them and have put together a collection of PowerShell scripts that I found useful. This includes a lot of the base functionality for working with them but is absolutely not all inclusive.

This is not intended to be ran as 1 full script but use pieces of these together and run sections that you need at a point in time. A few things this script includes:

  • Creating site scripts and site designs
  • Add and remove site scripts from an existing site design
  • Setting site design view rights
  • Getting site scripts from a list
  • Viewing status and information about previous ran or running site designs

PowerShell scripts

Here is the link to the repository on Github for the site design and site script PowerShell file.

Please help update as well!

Key links

SharePoint site designs and site scripts overview from Microsoft docs customization/site-design-overview

Multiple provisioning blog posts from Beau Cameron

PnP Remote Provisioning

Amazing info from Laura Kokkarinen

Will you be at SharePoint Conference 2019? I will!

I am excited to share that I will be speaking and attending the next SharePoint Conference in Las Vegas during the full week of May 20th in 2019. This is a can’t miss event that will keep you up to speed with all of the great new things coming out in the collaboration and communication space at Microsoft in 2019. Last year we got the introduction into SharePoint spaces! You will want to be there in person to see what’s next.

You can register early to take advantage of some early swag (like an Xbox!) and even save more money using the code MADELUNG when you register!

Why you should try to go

  • Networking & networking & more networking. I love events of this scale because of the opportunities to meet new people and learn from others experiences. There is no better spot than after a great session at a lunch table or after sessions are done and you are out at a great dinner in Vegas! Strike up conversations and who knows what kind of nuggets of great info you might find.
  • It’s not just about SharePoint anymore. Yes the name is SharePoint Conference but this event is really about bringing together all of the Microsoft workloads around communication and collaboration and how they work together. This includes primary focuses outside of SharePoint and OneDrive like Teams, PowerBI, Yammer, Planner, and larger topics like Microsoft Search and Azure.
  • Interactions with Microsoft. What is that super specific question or issue or scenario that has been nagging you or your company? An event like this is a great time to connect directly with people on the product team about how things work and why they were done the way they were. These discussions can provide priceless value that you can take back with you that you can’t find anywhere else.
  • It’s in Vegas and Vegas is awesome.

My sessions

From start to finish: How to create your modern SharePoint site provisioning solution

Creating modern SharePoint sites only takes a second, but what if you want to customize or control that process? It can be a challenge to keep up with all the sites in an organization and can affect support and governance of a SharePoint environment. In this session, learn how to use Microsoft’s latest tools such as Site Designs, PnP Site Provisioning, PowerApps and Flow to create a full site provisioning system with custom templates, custom branding, and easy approval before creation!

This is a session I am doing with Vlad Catrinescu and will be a deeper dive into what we presented at Microsoft Ignite in 2018. Here is a video sneak preview of what to expect!

Kudos to Adam King for help with the video! (and the security guard)

Taking OneDrive for Business administration to the next level

OneDrive for Business is a key workload in Office 365 and is an integral part of your collaboration and content strategy. Whether you are looking to roll-out OneDrive for Business or are already are utilizing it, there are important things that you should know about for administration. Do you know what is possible for admins? Do you know if your content really is secure? Do you know who can and can’t share? You also can’t have a great OneDrive for Business experience without sync but there are things you need to know about deploying and managing sync across your enterprise. This session will go through real world experiences of managing OneDrive for Business and what you really need to know to be successful.


Can’t wait to see everyone at #SPC19!