Which community project do you maintain?
Web Part Samples, Extension Samples, Sharing is Caring (w/ David Warner, Emili Mancini, April Dunnam and Luise Freese)
How does it help people?
The sample repositories are there to help people find useful code samples to get started on their new SPFx development tasks and learn new concepts. For those learning to use the PnP reusable controls and libraries (such as PnPjs), they can find real-world code samples to help.
All samples are contributed by the community, and we make sure to celebrate the hard work of contributors and give them the opportunity to provide a demo of their samples on the PnP community calls.
Sharing is Caring asks: “What prevents people from starting to use the M365 resources available and/or prevents them from contributing back to the community?” and addresses each barrier to adoption with hands-on sessions conducted with small groups or, in some cases, one-on-one.
For example, we found that one of the biggest reasons why people don’t contribute to open-source repositories is because they find GitHub intimidating; so, we created a 1-hour workshop where we should people how to use GitHub by walking them through their first contribution to a real PnP repository. The first pull request to the Sharing is Caring repository counts as a valid contribution and the session attendees are listed on the list of contributors on the PnP monthly calls.
Many of our Sharing is Caring first-time contributors go on to become frequent contributors after attending just one session!
Sharing is Caring also provides individual guidance with Office Hours and the Buddy System.
Office Hours allows people to book 15-30 minutes with a PnP member so they can get help with whatever may be preventing them from succeeding in their projects.
Buddy System pairs first-time presenters with an experienced presenter to help prepare their presentations, rehearse, and – if necessary – co-present their community demos. It helps those who are afraid of public speaking to remove the fear and deliver great presentations.
What have you been working on lately?
Lately, I’ve been working on building a set of new sample repositories for Power Platform samples, including Power Apps, Power Automate, Power Fx, and Power Virtual Agents.
I’ve also been working on a “unified” sample browser, which will help people find samples for any Microsoft 365 technology in one place.
Finally, I’ve been working with the rest of the Sharing is Caring team to build new workshops covering how to use other PnP resources (such as the CLI for Microsoft 365, PnPjs, etc.), expanding our coverage (with future sessions covering the Power Platform), and helping new community contributors (with a “First Time Presenter” session, advanced GitHub topics, etc.)
What do you do at work?
I’m an independent consultant and I help organizations that have tried to implement Microsoft 365 solutions and failed multiple times. I help with solution architecture, training team members and stakeholders, conducting workshops, and helping out with coding/implementing solutions.
A big part of what I do is educating teams about what to do, what not to do, and – most often – how to get started in the right direction. How to tackle big projects by breaking them down into small iterations, adopting a delivery mindset, and prioritizing by risk and high business importance.
Why are you a part of the M365 community?
I love how the M365 community is welcoming, inclusive, and friendly. Even though we’ve all been stuck at home for over a year, the M365 community members have become some of my closest friends; they’re my new extended family.
The M365 is not about stroking people’s egos; it is about helping each other and celebrating other people’s successes while being there when people are struggling.
What was you first community contribution?
My first community contribution was to present a student budget web part which I had built over a weekend. I was a C#/.NET developer and I had never used SPFx, Typescript, React, GitHub, or Visual Studio Code before this. The web part integrated cool concepts like an editable grid, dashboard-like charts, and using mobx to facilitate data changes and write back to SharePoint lists.
I wanted to show the web part because I wanted people who – like me – came from a legacy SharePoint/C# world and had no experience with the SPFx ecosystem that it was easy to get started.
I eventually separated the components of the demo into smaller components and added some of them to the PnP re-usable controls. I thought the folks who managed the repo would dismiss me and/or mock me, but they accepted my pull request and welcomed me to continue contributing… and I haven’t stopped since!
One tip for someone who’d like to start contributing
It is absolutely your place to contribute! If you see that something is missing and no one else has contributed it, you don’t need to wait for someone else to do it! You are welcome to help!
If you don’t know where to get started, look for issues in the PnP repositories that are tagged as “Help Wanted” or “Good First Issue” and add a comment to tell the maintainer that you want to help.
And if you don’t know how to use GitHub, sign up for our Sharing is Caring First-Time Contributor session; we’ll get you started!