Author: James Callaghan

  • Believe in your dreams

    Believe in your dreams

    Almost ten years ago I was lucky enough to be invited by my college to attend a Microsoft conference called “A Glimpse into the world of a computer scientist”. It was held at the Microsoft Research building in Cambridge. Can you remember something you were doing ten years ago?

    My certificate of attendance to "A glimpse into the world as a computer scientist", a Microsoft Research Cambridge conference
    My certificate of attendance to “A glimpse into the world as a computer scientist”, a conference held at Microsoft Research in Cambridge.

    The conference gave me grant insight into Microsoft and the world of computer science. Frankly it was rocket fuel and really kick-started my career off in IT! I volunteered to participate in a research project discussed during the conference. My family and I were selected a help test a product called the Whereabouts Clock (pictures below) – imagine the Harry Potter clock! A few months later we were working with a Microsoft Research Employee called Alex Taylor –  a researcher in the Socio-Digital Systems team. The clock was designed to display the whereabouts of everyone in the family. This was achieved through location data transmitted from smartphones and shared with an application. Each member in the family were then placed in a pre-defined segment of the clock, Home, Work or School. You can read more about the Whereabouts Clock on the Microsoft Research website.

    The Microsoft Research Whereabouts Clock, 2006
    The Microsoft Research Whereabouts Clock, 2006
    Find my Friends iOS App ten years on from The Whereabouts Clock
    Find my Friends iOS App ten years on from The Whereabouts Clock

    Scarily ten years have passed. While Microsoft never released “The Whereabouts Clock”, their work directly or indirectly can be seen on the smartphones in our pockets today. Google launched its Latitude app, although this has now been retired, Apple have their Find my iPhone and Find my Friends apps (picture above) and Microsoft have their Find my Windows Phone. Other applications exist to manage scenarios similar to those of the “Whereabouts Clock”, one such example is Life360 Family Locator. Ten years on, I also still have my bright orange Microsoft Research bag (picture below) – you know how much I like my bags!

    I still have my Microsoft Research conference bag ten years on!
    I still have my Microsoft Research conference bag ten years on!

    Back in February I got my dream blue badge and started my new job with Microsoft. working in the Microsoft Consulting Services (MCS) group. I emailed Alex a few days ago, ten years on he still remembered me and my family and the research we did with him. He was so happy to discover I’m now working for Microsoft! Alex still works for Microsoft Research in Cambridge. I hope to meet him in person soon as he has kindly offered to give me a tour of the labs in Cambridge.

    I’d like to leave you with one last message, inspired by a wonderful article published by Scott Hanselman when he was hired by Microsoft. I was particularly lucky to attend the Microsoft Research conference in 2005 and to be involved with “The Whereabouts Clock” research. But all that aside, I worked very hard at college and spent the last ten years working equally as hard developing my career, doing something I thoroughly enjoy and am passionate about (see Scott’s dream job Venn diagram in his post). All this enabled me to achieve my dream to work for Microsoft – thank you to all those who have helped me along the way – massive kudos to those who have helped me along the way such as Marshall Aerospace and ClearPeople. If you have dreams – don’t stop believing in them!

    James Callaghan, jamecal, jcallaghan.com, jamescallaghan

  • #MSIgnite sessions available in a single spreadsheet

    #MSIgnite sessions available in a single spreadsheet

    Update (31/01/15): Session spreadsheet updated and now includes 275 sessions.

    Those involved with SharePoint, Office 365, Yammer, the communities and the wider industry will already know about the Ignite conference Microsoft has planned for May this year. Microsoft published the conference sessions on the Ignite website this afternoon, introduced through this Office Blog post.

    The Office Blog post included a video from Julia White in which she shared what to expect from the conference. She also said in the video “without giving away too much, be the first to see a lot of new technology”, hinting that we will probably see the next versions of SharePoint and Exchange etc. The SharePoint Twitter account also shared the tweet below, with another video (#InBillWeTrust) confirming the next version of SharePoint (SharePoint 2016) will be shared during the conference.

    The conference is just around the corner. At the time of writing this post, there are 272 sessions published on the website and I’m sure this will increase in the coming weeks and months. Over a year ago, I created a PowerShell script to help myself and others easily review all the sessions that were planned for the then SharePoint Conference (#SPC14).

    You’ll be pleased to know I’ve done something similar again this year, although this year I’ve quickly gone about it using jQuery. I plan to create and share a bookmarklet but until then I’ve shared the first Ignite sessions spreadsheet for your viewing. The latest version of the sessions spreadsheet and jQuery bookmarklet are shared below.

    MSIgnite Sessions Spreadsheet

    Javascript via JSFiddle

    Fingers crossed I can attend #MSIgnite and have the opportunity to meet the great people I met at #SPC14 again!

  • Discover what’s inside my man bag…

    Discover what’s inside my man bag…

    Ok, it’s time for me to confess that I like a man bag or two. I really appreciate a stylish and high-quality bag and have to admit I have a few. I don’t buy them at a rate like my partner does (along with her shoes) but when that time arises, I take a trip to France! Join me in this post to discover my various bags and what’s in them bag – inspired by one of my favourite blogs Lifehacker.

    Inspired many years ago by the various stories of ‘Featured Bags’ from Lifehacker and ‘What’s in our bags’, I’ve always wanted to write one of these posts for myself at the right time – that time is now!

    As a SharePoint Consultant who is often on the road, it is important for me to have various pieces of technology & equipment and those other ‘things’ with me for when the need arises. Equally as important as having the right things with me at the right time is having a bag that is high quality, elegant in design, durable and comfortable to carry around. Let me share with you my collection of bags…

    The bag collection

    I have two French laptop bags, an overnight bag and a Crumpler Good Boy 13″ sling bag. My favourite is the smaller, more recent laptop bag. I received this for Christmas from my girlfriend (thank you, thank you, thank you) along with the overnight bag. They’re both from the same town in France where I brought my first laptop bag a year or so ago.

    My favourite bag (Francinel 13" laptop bag)
    My favourite bag (Francinel 13″ laptop bag)
    The workhorse (Katana 15" laptop bag)
    The workhorse (Katana 15″ laptop bag)
    The sleeper (David Jones overnight bag)
    The sleeper (David Jones overnight bag)
    Undercover (Crumpler 13" Good Boy sling bag)
    Undercover (Crumpler 13″ Good Boy sling bag)

    Where do they come from? Well, the Crumpler I brought in the Crumpler store on the Strand, London a few years back. The other bags…I cannot say. It’ll give away my secrets – I can say though that they came from France!

    What’s inside my bag?

    Lots of people have asked me what I carry in my bag…here is your chance and theirs, to see what’s inside my bag (on a typical day):

    Itemised:

    1. A good book to read – at present I’m reading “The man who knew too much” (Alan Turing) by David Leavitt
    2. My favourite watch!
    3. A strong umbrella
    4. Oakley Sunglasses
    5. Cacoon Grid-it organiser
    6. Canon PowerShot SX280 HS
    7. Beats Headphones
    8. iPhone 5 (this may become a Lumia soon)
    9. MacBook Air 13″ (although I’m sure this might change to something less Apple-based like a Surface Pro 3 soon)
    10. Microsoft Arc Touch Mouse
    11. Huawei 4G Mi-Fi
    12. Leatherman Titanium
    13. Powerbank (RavPower Deluxe)
    14. Western Digital Pocket drive and various flash drives (all but one encrypted mind!)
    15. Various adapters (USB to Ethernet, Miniport to VGA etc)
    16. Logitech R700 presentation remote
    17. Laptop lock cable (for the bag, not the laptop)
    18. Moleskin notebook
    19. Bluetooth speaker with microphone – great for conference calls
    20. Pens. Pens. Pens. Particularly my Parker fountain pen and a really good whiteboard marker.
    21. Welfare stuff like tissues, hand cleaner, wet wipes and some Nurofen!
    22. Envelope to stash receipts
    23. Peter Rabbit and Paddington Bear – when I travel I like to take pictures of these two in front of recognisable and special places to send to my daughter.

    There you have it…my bags and what’s in them.

  • Home brew grain milling with a coffee grinder

    Home brew grain milling with a coffee grinder

    I unpacked all our ingredients and equipment to start the home brew project off today, only to find I made a very silly mistake. I had ordered 3kg of Maris Otter uncrushed and had no way to crush it. No problem, I’ll just order some more I thought. It got me thinking though, and not waste this grain, was it possible to mill the grain ourselves before the online order arrived?

    Maris Otter uncrushed grain
    Maris Otter uncrushed grain

    First home brew disappointment

    Hoping to start our first brew off on Tuesday evening, I was doubtful that the online order would be delivered in time. The order was dispatched and estimated to arrive within two working days. The race was on!

    Local breweries, forums & rolling pins

    The research began. I reached out to two local micro-breweries and asked them if they had a grain mill available, unsurprisingly they didn’t! One suggested using a pestle & mortar or a rolling pin which I tried but I felt the result wasn’t great. While attempting the pestle & mortar method I questioned whether we needed a grain mill to crush the grain or can we use some other tool?

    Homebrewer Research & Argos

    I did want any home brewer would do and reached out in search of an answer in the homebrewer forums. It seems we’re not the only ones to have made this mistake! One method suggested by many homebrewers was to use an electric coffee grinder. Staying clear of any internet suppliers to avoid any further delays with delivery etc, I leapt on the Argos website, where I found three different coffee grinders available. I read their product descriptions and reserved the one with the largest capacity and easiest access (De’Longhi KG40 Coffee Bean Grinder). Within 20 minutes of making the reservation, I had the thing unboxed on the counter, grain loaded and all!

    Milling grain with coffee grinders

    A few test grinds indicated I needed to grind for 12 seconds to get it to the consistency I needed. I was able to grind just over a 100g each go and milled our batch of 3kg in less than 15 minutes. The coffee grinder solution does work!

    Crushed Maris Otter
    Crushed Maris Otter

    The solution is not all perfect as we’re not able to grind, mill or crush grain consistently as you might be able to with a true grain mill but we do have an efficient tool for those rare occasions when we need it. Bonus, we can grind coffee beans as well!

    3kg of Maris Otter crushed using a coffee grinder
    3kg of Maris Otter crushed using a coffee grinder

    We beat the online order!

    It is Tuesday, our uncrushed grain is now crushed. Two working days have passed and the online order still hasn’t arrived. Nothing can stop us from starting our first brew as planned this evening.

  • What types of email does SharePoint send automatically?

    What types of email does SharePoint send automatically?

    Update: After reviewing the SMTP logs, on a very active SharePoint 2013 environment and some further research, I now have an extensive list of the types of emails SharePoint sends. Most of these now include an example image of the email that is sent.

    I recently responded to a question posted to Twitter using the #SPHelp hashtag. Tim Ferro was trying to understand all the different types of email that SharePoint sends automatically.

    While I may have misunderstood his tweet to begin with, it certainly got me thinking about what emails does SharePoint actually send. I gave it some thought with a colleague and have produced this post as a result.

    1. MySite Cleanup Notification
    2. Task assigned to you notification
    3. Alerts
    4. Storage limit exceeded
    5. Sharing – Invited to
    6. Site Mailbox Created
    7. MySite Setup Notification
    8. Mentioned in a conversation
    9. Site Deletion Notice (Site Policy)
    10. Site Access Requests

    Example of SharePoint Emails

    There is very little information that provides an answer to Tim’s question. I’ve attempted to create a consolidated view of all the different types of emails that SharePoint sends. I have sourced example images from various sources on the internet. They have been credited to the author and include a link to the originating content.

    MySite cleanup notification

    MySite Cleanup Notification. Credit: SharePoint 2013 Admin blog http://sharepoint2013admin.wordpress.com/2013/11/19/my-site-cleanup-timer-job-2/
    MySite Cleanup Notification. Credit: SharePoint 2013 Admin blog http://sharepoint2013admin.wordpress.com/2013/11/19/my-site-cleanup-timer-job-2/

    Task assigned to you notification

    Task assigned to you email. Credit: Tomislav Tasic http://tomislavspadmin.blogspot.co.uk/2014/06/enable-email-notifications-for-tasks.html
    Task assigned to you email. Credit: Tomislav Tasic http://tomislavspadmin.blogspot.co.uk/2014/06/enable-email-notifications-for-tasks.html

    Alerts

    SharePoint Alerts. Credit: Merin Nakarmi http://sharepointrealm.blogspot.co.uk/2013/06/how-to-cusomize-alert-email-for.html
    SharePoint Alerts. Credit: Merin Nakarmi http://sharepointrealm.blogspot.co.uk/2013/06/how-to-cusomize-alert-email-for.html

    Storage Limit Exceeded

    Storage Quota Exceeded. Credit: Three Will https://www.threewill.com/2013/12/storage-quotas-in-sharepoint-online/
    Storage Limit Exceeded. Credit: Three Will https://www.threewill.com/2013/12/storage-quotas-in-sharepoint-online/

    Sharing – Invited to …

    Mentioned in a conversation email. Credit: Jennifer Mason, CMS Wire http://www.cmswire.com/cms/social-business/sharepoint-2013-social-features-highlights-019624.php?pageNum=2
    Mentioned in a conversation email. Credit: Jennifer Mason, CMS Wire http://www.cmswire.com/cms/social-business/sharepoint-2013-social-features-highlights-019624.php?pageNum=2

    Site Mailbox Created

    Site Mailbox Created. Credit: Mark Kashman http://blogs.office.com/2013/04/02/whats-new-in-sharepoint-online-top-10/
    Site Mailbox Created. Credit: Mark Kashman http://blogs.office.com/2013/04/02/whats-new-in-sharepoint-online-top-10/

    MySite Setup Notification

    MySite Setup. Credit: Sudhit Kesharwani http://sharepoint.stackexchange.com/questions/72530/sharepoint-mysite-changing-the-notification-email
    MySite Setup. Credit: Sudhit Kesharwani http://sharepoint.stackexchange.com/questions/72530/sharepoint-mysite-changing-the-notification-email

    Mentioned in a conversation

    Mentioned in a conversation
    Mentioned in a conversation email. Credit: Jennifer Mason, CMS Wire http://www.cmswire.com/cms/social-business/sharepoint-2013-social-features-highlights-019624.php

    Site Deletion Notice (Site Policy)

    Site Deletion Notice. Steven Boyle, SharePoint IT Pro Blog http://blogs.technet.com/b/tothesharepoint/archive/2013/03/28/site-policy-in-sharepoint.aspx
    Site Deletion Notice. Steven Boyle, SharePoint IT Pro Blog http://blogs.technet.com/b/tothesharepoint/archive/2013/03/28/site-policy-in-sharepoint.aspx

    Site Access Requests

    Site Access Requests. Jasper Oosterveld https://www.nothingbutsharepoint.com/sites/eusp/Pages/SharePoint-Online-2013-Request-Access-Procedure.aspx
    Site Access Requests. Jasper Oosterveld https://www.nothingbutsharepoint.com/sites/eusp/Pages/SharePoint-Online-2013-Request-Access-Procedure.aspx

    Other possibilities

    There are a number of other emails that SharePoint might send, which I have been unable to confirm at this time.

    • Health Analyser – Alerts
    • Managed Metadata Service – term managed and term submission
    • Solution resource usage – site collection exceeded daily resource usage
    • Membership requests (requests to join/leave groups)
    • MySite new followers and Colleague and keyword suggestions
    • Site Collection Upgrade Notification (2010 > 2013)
    • Created and Delete Upgrade Evaluation Site Collections
    • Removal notifications of user provisioned Site Collections
    • Search Service Application
    • Apps Service Application
    • eDiscovery
    • Record
    • Publishing
    • Retention

    Community Contribution

    Not stopping there, I have also asked the community via the Office 365 Technical Network on Yammer (10,000+ members). Let’s see what people come back with. In time I’d like to add more detailed summaries of these including a sample of the emails.

  • Event Receiver to Remove “Recent” from SP2013 Quick Launch

    Event Receiver to Remove “Recent” from SP2013 Quick Launch

    I’m sure removing the Recent heading from the Quick Launch in SharePoint 2013 has been talked about a million times over since SharePoint 2013 was launched. It’s been solved in this way and that way, by hand, with javascript and programmatically. In this post, I share the code to remove the heading with the ListAdded event receiver.

    With and without the Recent heading on the Quick Launch navigation.
    With and without the Recent heading on the Quick Launch navigation.

    Event receiver code

    It’s based on code provided as an answered on the SharePoint StackExchange website by Remko van Laarhoven. I’ve then wrapped in a list added event receiver so that it is executed each time a new list or library is added. As the list/library is then not available on the Quick Launch I’ve added a couple of lines to then show it.

    Update (22nd June 2014): since creating this solution I have since discovered that the Recent heading still is created even with the event receiver triggering when lists/libraries created from templates. I resolved this by adding a sleep before the code to remove the heading is executed.
    [code language="c"]
    System.Threading.Thread.Sleep(1500);
    This in conjunction with the jQuery method prevent users from ever seeing the Recent Heading whether they are viewing the page or editing the links on the page.
    [code language="js"]
    // Hide Recent on Quick Launch
    $("#ctl00_PlaceHolderLeftNavBar_QuickLaunchNavigationManager .ms-core-listMenu-root li:contains('Recent')").children().remove();
    $("#ctl00_PlaceHolderLeftNavBar_QuickLaunchNavigationManager .ms-core-listMenu-item:contains('Recent')").remove();
    [code language="c"]
    public class ListAddedEventReceiver : SPListEventReceiver
    {
    public override void ListAdded(SPListEventProperties properties)
    {
    base.ListAdded(properties);
    SPWeb web = properties.Web;
    if (web != null)
    {
    //Sleep
    System.Threading.Thread.Sleep(1500);

    //Remove heading
    var title = SPUtility.GetLocalizedString("$Resources:core,category_Recent", null, web.Language);
    SPNavigationNodeCollection nodes = web.Navigation.QuickLaunch;
    foreach (SPNavigationNode node in nodes)
    {
    if (node.Title.ToLower().Equals(title.ToLower()))
    {
    // Delete the recent heading node
    node.Delete();
    break;
    }
    }
    // Show list on the quick launch
    SPList list = web.Lists[properties.ListId];
    list.OnQuickLaunch = true;
    list.Update();
    }
    }
    }

    Download Remove Recent Heading Solution

    For those who don’t want to create the event receiver themselves in Visual Studio or don’t know how to, I have a packaged the solution so that you can deploy the WSP to your environment. For those who don’t know how to use this code, I will write a post explaining how to create this event receiver using Visual Studio from an IT Pros perspective very soon.

    jcallaghan.removerecentheading.wsp

    As with anything you download from the internet remember to review, rename and test this code/solution before using it in a production environment.

  • Long live the best SharePoint ULS Viewer

    Long live the best SharePoint ULS Viewer

    Update (15th June 2014): We may see a return of the SharePoint ULS Viewer very soon. Jeremy Thake and Office Dev indicated it is coming back to life very soon.

     

     

    Community Discussion (9th June 2014): SharePoint Consultant and MVP Vlad Catrinescu has started a discussion about possible replacements for the ULS Viewer on the SharePoint Community site (http://sharepoint-community.net/forum/topics/what-is-the-best-replacement-for-ulsviewer).

    After noticing a tweet from Brian Lalancette ‏(@brianlala, you might also know him through his AutoSPInstaller project), I gasped at the thought that the best ULS Viewer for SharePoint is no longer going to be available.

    Along with many others in the SharePoint community, I was quite surprised by this news and started to consider what alternative was available. I’ve used the ULS Viewer from MSDN so many times I have lost count and don’t know where I would be without it.

    The best ULS Viewer
    The best ULS Viewer

    For those who’ve found this post and just want to download a copy of the ULS Viewer tool, you’re in luck. I have preserved a copy of ULS Viewer as a .exe and a .zip archive – these are available here http://bit.ly/UlsViewer and http://bit.ly/UlsViewerzip.
    You might receive a warning from the URL shortening service when using the .exe link warning against directly downloading an exe – this is why I have also provided a ZIP version.

    Other SharePoint ULS Viewer tools…

    As the ULS Viewer is no longer available I thought I shared some alternative tools or techniques to get access to the SharePoint ULS logs.

    ULS Studio

    A Codeplex project that I’ve used on several occasions and does somewhat come close to the features that the ULS Viewer tool had – ULS Studio (https://uls.codeplex.com).

    ULS Studio
    ULS Studio

    CSOM for SharePoint Online

    If you’re using SharePoint Online you could follow Vardhaman Deshpande’s blog post (http://www.vrdmn.com/2014/03/view-tenant-uls-logs-in-sharepoint.html) and access the ULS logs using the Client-Side Object Model (CSOM).

    SPO ULS with CSOM - Vardhaman Deshpande
    SPO ULS with CSOM – Vardhaman Deshpande

    Developer Dashboard

    There’s also the ULS tab within the Developer Dashboard, although this is limited to reviewing errors related to those requests where the Developer Dashboard is displayed or used.

    The Developer Dashboard can be activated using PowerShell – SharePoint Developer Devendra Velegandla shares the PowerShell and reviews the Developer dashboard on his blog (http://www.sharepoint-journey.com/developer-dashboard-in-sharepoint-2013.html).

    $svc = [Microsoft.SharePoint.Administration.SPWebService]::ContentService
    $dds = $svc.DeveloperDashboardSettings
    $dds.DisplayLevel = "On"
    $dds.Update()
    ULS errors displayed in the Developer Dashboard
    ULS errors displayed in the Developer Dashboard

    PowerShell

    Use can even use PowerShell to get details about a correlation error. Wictor Wilén shares details about this method in an article on his blog (http://www.wictorwilen.se/Post/Working-with-SharePoint-2010-Correlation-ID-in-PowerShell-and-code.aspx).

    Get-SPLogEvent | out-gridview
    Get-SPLogEvent | Out-GridView
    Get-SPLogEvent | Out-GridView

    Summary

    While I’m not going to stop using the ULS Viewer – I can only recommend you use something to help you view the SharePoint ULS logs. Troubleshooting SharePoint is not easy but you can help yourself, firstly by always checking the event log and secondly being comfortable with your method of doing.

    Long live the best ULS Viewer.

  • Provide feedback directly to Microsoft about Office 365

    Provide feedback directly to Microsoft about Office 365

    I have just discovered that you can give feedback about your experiences using Office 365 directly to Microsoft using their online feedback form (http://msft.it/o365feedback) thanks to a Tweet from Jennifer Mason.

    The Office 365 Twitter account shortly replied with a useful link to provide feedback.

    It is a great tip for those working with Office 365, SharePoint Online and Yammer etc who want to pass on feedback to Microsoft about their experiences using Office 365.

  • The Deployment Guide of all SharePoint 2013 Deployment Guides

    The Deployment Guide of all SharePoint 2013 Deployment Guides

    Let me introduce you to the Deployment guide for Microsoft SharePoint 2013. Anyone deploying, installing or configuring SharePoint 2013 absolutely must read this!

    This particular Deployment Guide is 674 pages long and like no other. It was published by the Microsoft Office System and Servers Team at Microsoft back in October 2012.

    It is such a great guide and is packed full of information. Reading through the deployment guide, I discovered some neat little tricks and refreshed myself on some pretty important best practices which are always a good exercise.

    Download it now, get reading and share it!

  • SharePoint Site folders coming to SharePoint 2016

    SharePoint Site folders coming to SharePoint 2016

    This post is part of SP14 Keynote highlights series where I provide some highlights of the next version of SharePoint. These highlights are from the SP24 Conference Keynote that Bill Baer delivered.

    SharePoint Site Folders

    How many occasions have you tried to access a document in SharePoint, but end up having to click through a long set of links to find it because you can’t remember the URL? OK, this is not an everyday issue, but we do use SharePoint to store documents and we use SharePoint sites to create contextual containers to store documents in. In someways, these SharePoint sites slow us down from accessing documents harder.

    In the next version of SharePoint (SharePoint 2016) we might find a new method to access Document Libraries called Site Folders. Site Folders will provide a list of all Sites that we have access to that contain Document Libraries (a.k.a Site Folders or Site Libraries) and will be available from OneDrive for Business.

    Site Folders coming to SharePoint 2016.
    Site Folders coming to SharePoint 2016.

    Users will be able to click-through into individual Sites from the Site Folders page to easily discover Document Libraries each site contains.

    Libraries visible through the Site Folders area coming to SharePoint
    Libraries visible through the new Site Folders area coming to SharePoint 2016.

    I wonder how this will impact how with architect document management solutions. Search is becoming more and more powerful than we are shifting to an era where Information Architecture and Taxonomies become less relevant (or maybe more relevant behind the scenes), time will tell!

    I have an idea what Microsoft is trying to do here, watch this space as I’ll provide my own mock-up with an example soon.

    Discover more

    Join me over the next year as I discover more news and information about the next version of SharePoint and Office 16 by following my #Office16 tag.