Teaching Powershell

This topic contains 9 replies, has 9 voices, and was last updated by  Jerry 4 months ago.

  • Author
  • #77880

    Steve Moss

    As the only Powershell scripter in my organization, I would like to spread the good news and teach interested coworkers the basics of Powershell. Some of them are programmers and some are system administrators. I had thought of a 1-2 hour intro, with other sessions if there is interest.

    Is a 1-2 hour intro enough to get people started?
    How about creating a Sandbox for play and experimentation?
    What are the essentials that should be covered? Commands, Objects, ISE?

    I apologize for the vagueness of this, but I'm just trying to make sure I am headed in a productive direction.

    How have you taught Powershell or how would you?


  • #77884

    Don Jones

    Learn Windows PowerShell in a Month of Lunches is actually designed to be used as a class book, with each chapter taking about an hour. It's pretty much the "essential" topics and includes labs and solutions.

    • #77887

      Steve Moss

      Thanks, I was wondering about that. This probably should have gone in another section, but I had wondered if anyone might want to share their teaching experiences at the summit.

    • #77895

      Paul DeArment Jr

      I can't stress how correct Don is (of course when is he never correct :D)

      At my previous job I was just getting ready to start up a class on this very thing. (Right before another company gave me an offer I just couldn't refuse)

      How we had it structured was that everyone got a copy of the book Powershell In A Month Of Lunches. Instead of doing it in one month we did it in two months (so one week of reading spread over two weeks). The reason for this was just scheduling wise for us. Thankfully I had one other person on board helping me and he took over the reigns on it when I left. Basically we prepared two class discussions – 1. exactly what was in the book in case people had questions on that weeks reading/labs, and 2. a more advanced – this is how we can apply what we went over to our everyday work.

      Now at my place there were two of us who had any sort of programming background – and everyone else was pure systems so I don't have any information on how to structure it for those people. But in all seriousness use the book – it is the best launchpad you can use and one I have recommended countless times. I keep a copy at my desk now a days and loan it to coworkers when I get the "hey how would you start learning powershell" question.

  • #77958


    Speaking from experience, I would keep the sessions/lessons around 1 hour, that way you keep your audience interested and "alert", going longer, especially if the crowd is a bunch of noobies, will not be effective since the "information overload" might be too much to handle.

    I also agree with the replies above, Don's book is a perfect base for something like this.

  • #78025

    James Petty

    However, speaking from experience, if you are going to teach lessons from the book to a group, lunch time is not the best time to do it.

  • #78758

    Darren Rolfe

    Hi Steve,

    I've just started training my co-workers on PowerShell. I've trained over 200 techies in the past.

    My approach is to give them an introduction to PowerShell with an overview of the following:

    Commands and Aliases
    Script Blocks

    This takes 90-120 mins.

    Next I go through PS Remoting with them which will probably be another hour or so. Then I'll do some DSC with them. After that, I'll introduce some best practices on PowerShell scripting. I'm not big on complex PowerShell examples or spending hours and hours preparing stuff. I'd just rather give the basics and help out after that. Most techies are curious people and based on past experince, end up teaching me something, which is great.

    Hope this helps.

  • #82079

    Grant Hallam

    I've been "training" my offshore team on powershell and mainly focus on what is useful to them on their daily work. I've had so many coworkers do courses in the past that promptly forgot 98% of it (very depressing) as they couldn't seem to make the jump to translating their daily work to the console. Actually managed to get them excited.
    So big take away::: always bring the examples and reasoning back to their daily work. Something real to get the buy-in.

  • #84497

    Michael Bender

    I teach PowerShell and Toolmaking in the classroom w/ Don and Jeff's books, and can pile on that their books are a place to start. I cannot tell you the number of students (prior to use having an effective PowerShell class) that said how much the MoL books helped them to learn PowerShell.

    I'd be happy to chat with you at the summit about teaching adults PowerShell.



  • #93739


    A bit late to this discussion, but here are some additional thoughts. Set up a Shared OneNote notebook that all your 'trainees' have access to after the class. Use this to share the results of the things they are working on. Create Notebook sections for various specialties (e.g. AD stuff, Server stuff, VMWare, DSC, Pester, Cloud, etc.).

    THEN setup follow-up meetings at least once a month to keep the momentum going. Take time to look at newly added entries and have folks explain how/why they posted what they did and the problems they encountered. You'll get a lot of one-liners at first, but soon, you'll be seeing modules, functions, etc. And then consider sharing with the greater community [Caveat: 'As your company guidelines allow'.]

    These things keep folks invested AND allow your organization to develop scripts/code that really works 'inside' your organization. You can also use the time to ask what 'real-world' problems folks are running into and continue to develop your team by having everyone help each other.

    (Use PoSH for good things... so we can have nice things.)

You must be logged in to reply to this topic.