When I was hired into my current position in July 2007, one of my first tasks was to modify an Active Directory attribute for SharePoint contacts. Specifically, we needed to set the attribute “mapiRecipient” to False. The process that created the contacts left the Boolean attribute in a “Not set” state – that is, neither True nor False.
My supervisor said I could use either VBScript or PowerShell to do this.
As we were planning our transition from Exchange 2000 to Exchange 2007, I decided to use PowerShell.
I had come from a background of writing .Net programs in C# and VB.Net so I was not unfamiliar with the underlying structure of PowerShell objects. I was able to fairly quickly create a script to modify the one custom attribute, which is still in use today – albeit in a slightly modified form.
Having a background in .Net can be both a blessing and a curse, depending on how you look at it. I tend to write scripts with a C# style instead of a “PowerShelly” style.
I quickly realized that there was way more to this PowerShell stuff than the simple scripts I was creating, and started reading blogs by Shay Levy, Brandon Shell, Marco Shaw, Lee Holmes, Marc van Orsouw, as well as the official Microsoft PowerShell blog, and hanging out in the now defunct Microsoft newsgroups (replaced by the Windows PowerShell forum on TechNet). Pretty soon I started thinking I could actually offer help to people as a way of paying back the community for all the help I’d been provided. Marco in particular started noticing and suggested I create my own blog. Then, less than a year later, Marco asked me if I wanted to work on a book. It took a little over a year, but the “Windows PowerShell 2.0 Bible” was published in September.
I’m still nowhere near as competent with PowerShell as the people who have unknowingly mentored me, but I have high hopes.
Would you like to share your story? Win one of TrainSignal’s PowerShell training courses? Learn more about the “How I Learned to Stop Worrying and Love Windows PowerShell” contest.