• About CSOM performance - Part 3: What is SPMeta2 doing?

    So what exactly is SPMeta2 doing? Fiddler comes to the rescue.

    It’s definitely possible to understand XML in requests send by CSOM to the server. But in this example I’ll use CSOM inspector fiddler extension that makes it a bit easier.

  • About CSOM performance - Part 2: SPMeta2

    In previous post, I mentioned my experience with provisioning data structures via CSOM. I also wrote that I’ll have a look at SPMeta2.

    Test model

    I’ll create very basic data structure. List of logical operations:

    • create site column SPMeta2_field,
    • create content type SPMeta2 content type,
    • create list SPMeta2 list,
    • add SPMeta2_field to SPMeta2 content type,
    • add SPMeta2 content type to SPMeta2 list.

    I’m executing 5 simple operations, so I’m expecting around 5 calls to SharePoint.

  • About CSOM performance - Part 1: Rant

    This post presents just my thoughts about provisioning. If you’re looking for some useful technical information, skip to part 2.

    During five years I’ve spent working with SharePoint I’ve seen a lot. I’ve worked with different companies and different developers and all of them have their own best practices…

    Wait, best practices? Haha! Those were rarely good enough practices.

    So, all of them had ‘their practices’. Oh man, in regard of data structure provisioning, I’ve seen some really exotic stuff.

  • How (not) to set user as a field value

    Over 5 years of experience creating SharePoint CSOM code and I’m writing about something that basic.

    Why? Guess just one too many times I’ve seen how people do it wrong. But I understand why. I’ll repeat what I’ve already said/wrote on multiple occasions. It’s all Microsoft’s fault. Microsoft failed to document and explain how to write good CSOM code. Well, they’ve even failed to explain what CSOM is.

    Simple task: Set some user as a value of some field.

  • Just how bad can one method be?


    I’ve set up the domain and blog more than half a year ago. I wanted to write about great new technologies and all this amazing stuff people are using them for. I wanted to learn and share my knowledge with others.

    But in January I moved to Ireland. New country, new job, new language, new everything. It turned out that between work, learning and settling in a new place, I simply didn’t have enought time to write. Or at least it was good enough excuse for me.

    So why writing now?

    I’ve recently moved to another SharePoint project. It uses Office PnP (not my decision). How Office PnP makes it impossible to write performant code is completely different story and I’ll leave it for now.

    This post was caused by one particular property and one tiny extension method in Office PnP. I seriously wanted to start with something more positive, but I just cant fight it.