Tips for the Care and Feeding of PowerShell Users Groups
Summary: After four months of meetings, leaders of two successful Windows PowerShell Users Groups discuss what went well and what didn’t.
Microsoft Scripting Guy, Ed Wilson, is here. Today we will not be as technical; but hopefully, this still will be useful Windows PowerShell information. We have Adam Driscoll and Jim Christopher to tell us firsthand about their recent experiences starting new Windows PowerShell Users Groups.
Adam Driscoll is a software developer team lead at Quest Software. He works closely with the Windows PowerShell module for their vWorkspace product. Adam is a cofounder of the Madison, WI Windows PowerShell Users Group and is facilitating this spring’s PowerShell Deep Dive in San Diego. He is also the author of the PowerGUI Visual Studio Extension.
Jim Christopher is the owner and principle developer for Code Owls LLC, a company focused on software services and toolset development for Windows PowerShell. He is a Microsoft MVP for Windows PowerShell and a frequent speaker at users groups and conferences, where he enjoys promoting Windows PowerShell as a tools and automation platform. Jim helps organize the Charlotte PowerShell Users Group in Charlotte, North Carolina.
For this post, Jim (JC) and Adam (AD) answered questions about how they started and run their respective Windows PowerShell Users Groups. The hope is that these questions and their answers will help you start your own local Windows PowerShell community.
Where is your PowerShell Users Group located, and how long have you been meeting?
AD: Our group is located in Madison, WI. We have members coming from the near Madison area, but we have had some interest from as far away as the Twin Cities. We held out first meeting in January 2012.
JC: Our group serves Charlotte, NC and the surrounding areas. Our first meet-up was in January 2012.
Was there any particular catalyst that prompted you to start the users group?
JC: I’ve been speaking for a few years about Windows PowerShell, and I’ve noticed a few things. My talks target developers, but my audience consists of developers, dev-ops, database administrators (DBAs), and support engineers. Also, I have to start every talk with the same 20 minute overview of Windows PowerShell—what I call ”PowerShell for n00bs.” There is an obvious cross-discipline interest in Windows PowerShell, and a lack of general knowledge. So there’s the opportunity. Also, Ed “Scripting Guy” Wilson and the Scripting Wife live and work near the Charlotte Microsoft office. We were on the same page about forming a local community, and having such prominent figures available creates a lot of motivation.
AD: In my experience, there was no definitive catalyst. I‘ve spent a lot of time networking with Windows PowerShell community members over the Internet, but I had little face-to-face contact with people that were passionate about it. Although we have a growing adoption for Windows PowerShell at our R&D lab, the number of frequent users was limited. I wanted to get out in the community and learn how a wider audience was using Windows PowerShell. I also wanted to be able to share whatever I could with anyone looking to learn. What really decided it for me was when I talked to our cofounder, Lee Berg, about starting a group, and he was just as excited about the idea as I was.
How are the meetings typically structured?
JC: We meet monthly and alternate between formats. Odd months are a typical users group experience—a speaker prepares an hour’s worth of material about a topic and delivers it in a lecture. For example, next month, Brian Hitney (a developer evangelist at Microsoft), is showing how he uses Windows PowerShell to manage Windows Azure applications. Even months are Script Clubs. Members bring scripts or ideas they are working on and get assistance from other members.
AD: Yep, we are starting to follow that format also. The first two meetings, we did not. The initial plan was to have a regular presentation, followed by a Script Club format. What we found was that after an hour or longer presentation, members didn’t necessarily want to stick around to delve deep into scripts. We’ve only had a single session that was Script Club style but I think it was a lot of fun and really informative for everyone involved.
Are your Script Clubs structured or ad-hoc?
JC: Our group treats them like an open space. I ask volunteers to describe an interest or problem, and attendees decide how to group up. Some like to help, others like to chat and learn. For instance, last month, someone brought an incomplete script to read remote event logs and modify Windows services. She had two members helping her and more looking on. The group of six spent 90 minutes teaching each other Windows PowerShell scripting techniques.
AD: Our format has been very organic. I notify members via our blog and Google Group to come prepared with some scripts or ideas to share. Because our group is smaller, it is easy to pass around the reigns and look over the scripts as a group. We also spend time on PoshCode and playing with some general tips and tricks. It‘s a blast and we can dig deep into some really interesting problems.
How did you promote the group in your area when you were getting started?
AD: Word-of-mouth has, by far, been our best advertisement. Most of the members hear about the group through coworkers. We also have a blog and Google Group, but they seem to provide less advertising and more communication. We’ve tried every social network in the book (Facebook, Twitter, LinkedIn, reddit), but there has been little influence locally from any of them. We did find that promoting ourselves on sites like this did prompt some interest from Windows PowerShell users outside the Madison area. We are still working out the kinks involved in becoming truly remote-capable.
JC: We also rely heavily on word-of-mouth. We told a lot of other local IT and development users groups about us, and they helped promote the first couple of meetings to their members. And of course we reciprocate. There are also several community websites we use to promote the group. PowerShell Community Groups is an obvious choice when you’re looking for a Windows PowerShell users group, but I want to make sure people find the group even if they’ve never heard of Windows PowerShell. So we also use Meetup. I tag our Windows PowerShell Users Group with various interest labels (.NET, dev-ops, Windows Server, IT administration), and Meetup notifies users who have listed overlapping interests. We’ve even had local Linux admins who wanted to see what Windows PowerShell was all about.
Of the members in your group, what is the ratio between developers and IT administrators?
JC: It seems to be about 60% IT administrators and dev-ops, and the other 40% developers and DBAs. It’s a nice cross-section of the technology stack, actually.
AD: Our typical crowd is primarily IT administrators. We will usually have a developer or two, but it’s usually the result of me inviting my coworkers.
Windows PowerShell topics can be pretty specific (Hyper-V, WSUS, and SCM). How to you manage the diversity among member specialization and experience levels?
AD: Our meetings have been about very general Windows PowerShell topics thus far. We have had some focus on WMI, with more of that coming in June with Trevor Sullivan. One of the most important facets of Windows PowerShell is that it integrates with so many technologies. Because of this, we will definitely be mixing in more specific sessions in the future.
JC: We literally have the widest experience gap possible: in one seat is the Microsoft Scripting Guy, and sitting right behind him is someone who’s never opened a shell. I don’t ask speakers to dumb down their information, but I do ask that they spend time explaining the Windows PowerShell choices they make, no matter how mundane they seem. To quote the Scripting Guy, “PowerShell is PowerShell is PowerShell.” My hope is that a DBA watching someone manage Windows Azure with PowerShell is learning techniques that they can apply to SQL Server administration.
How do you find presenters for your group?
JC: Up to this point, I’ve been asking people I know from the community. The group is registered with INETA, which may help in the coming months. I give speaking priority to group members, something I consider keystone to the community experience. I gave my first talk to the Charlotte ALT.NET group. I learned that I love the experience (even when I do it poorly), and I want to give others the chance to learn that for themselves.
AD: So far, finding speakers has been pretty easy. I’m amazed by the willingness of the experts in the Windows PowerShell community to offer their time to present to a group of people they don’t know.
Do you collaborate with other Windows PowerShell groups?
JC: At the moment the only collaboration we’ve participated in is International PowerShell User Group Day. We’ve discussed having “Iron Scripter” competitions, which would be a mini Scripting Games that’s isolated to our group. Other groups would run their own Iron Scripter games, growing it into a bracket where people can win badges like Iron Scripter: Charlotte, Iron Scripter: North Carolina, Iron Scripter: East Coast, and so on. The hope is that the friendly competition will motivate members to learn and apply Windows PowerShell.
AD: We were also a part of the International PowerShell User Group Day. Aside from that, we have talked about holding joint, remote meetings with the Twin Cities group, and we had Steve Murawski of the Milwaukee Script Club join us.
What has been hardest part about starting the users group? What turned out to be easy?
AD: The hardest part has been spreading the word. Our group has been relatively small with a couple of regular attendees. I hope through some diligence, we will be able to grow the group a bit more.
JC: I thought finding members would be difficult; but honestly, finding a good day to hold the monthly meeting was a lot harder than I expected. I wanted to pick a day that didn’t interfere with other local groups; however, since Windows PowerShell crosses so many technologies and interests, that proved rather difficult. Oh, and lining up corporate sponsors has been a challenge. A lot of companies offer generous community programs, but it can take months to get their attention.
Would you consider your group successful?
AD: Yes, I would. The regular members are really what constitute a success in my eyes. The fact that they are showing up consistently shows that we must be providing some value. That said, I would love to see our group grow. We have 5 to 7 members at a typical meeting, and it would be great to see that number double or triple.
JC: I do consider the group a success. We have almost 60 members and a consistent attendance of 10-15 at each meet-up. I think there is a lot of work ahead to keep the group viable. One thing I’m watching for is fragmentation. With such a diverse base, it’s only natural for members to partition off by specialty.
Is there anything you would have done differently?
AD: Yes, definitely. Our facilities have been phenomenal, but our remote access has been very sub-par. We have tried Live Meeting, and it did not work out for our remote users. We are still experimenting with how we can reach a larger audience, but haven’t nailed down a good tool. I hope that we haven’t lost too many attendees due to technical difficulties!
JC: I mishandled the food sponsor one month. We had a conversation about sponsorship, but I didn’t follow up quickly enough. I had to scramble at the last minute to line-up food. It was a learning experience, and now I make sure to line-up food sponsors well in advance and follow up several times.
What one piece of advice would you give someone considering starting a group?
AD: Starting a group is a lot of work. Reach out as much as you can to the community for guidance and assistance. It will make your group a better experience for you and your members.
JC: Agreed. And in all decisions, choose what keeps the group relevant to your members. After all, it isn’t your group, it’s theirs.
Thank you, Jim and Adam. Wishing you much success with both users groups.
That is all there is to creating a Windows PowerShell Users Group. You may also want to review the Practical Tips for Starting a PowerShell User Group blog post and the Mark Schill Discusses PowerShell User Groups post for additional information about starting and maintaining a Windows PowerShell Users Group. Tomorrow we will announce the winners of the 2012 Scripting Games.
I invite you to follow me on Twitter and Facebook. If you have any questions, send email to me at firstname.lastname@example.org, or post your questions on the Official Scripting Guys Forum. See you tomorrow. Until then, peace.
Ed Wilson, Microsoft Scripting Guy