Powershell and Automation Newsletter May 2018


I ran my first 10961C course last month, and it’s significantly changed from the previous ‘B’ version that some of you have been on. First of all, there’s more emphasis on the practical uses of powershell, with a longish module on managing AD and the windows firewall. Also, they’ve got rid of the massive Thursday lab. There’s a bit on powershell get and module management, and a very short sections on using REST and HTML calls. In the course, we ran up against some confusion (not least of it mine) regarding the use of the operands –like, -contains and –in. here’s a pair of articles that hopefully will clear most of that up:

-contains vs –like:


-contains vs –in:


so to find a section of a string within a longer string, you need to use –like. To find an object in a collection of objects, you need to use –contains or –in, depending on which way round you want to write it.

I’ve had a few people ask me if I do python. The short answer is “yes, I *do* do python”. I suspect what most people mean is “do I run python courses?” and the answer is – no I don’t. I tried running a couple of things in the past, and the takeup was poor and the retention even worse, so I largely gave up. However… it’s a couple of years on now, and times are changed so…

If enough people express an interest, and tell me of a problem they have they could use python to solve, and commit to then using python to solve that problem after a course, then I will pester my boss to let me develop and deliver a short (two or three day) python course. Possibly on a raspberry pi, so we can all play with sonic pi instead of something more useful.



Amen, brother.

Hot News

Microsoft are changing the way they publish office 365 endpoints, and now the recommended way to manage changes is powershell scripting. Paul Cunningham has an article on it here. I would assume that the azure rss feed is going, too. However you manage your firewalls with regard to office 365 ad azure, you’re going to need to review these changes and decide how you’re going to do it in the future.

The powershell summit videos have all been published… HOORAY! It’s literally the best box set you will watch this month. I have bought a family pack of walkers crisps and the family are away this weekend! Now all I need to do is get my chromecast working.

Powershell core 6.1 preview version 2 is out.

Useful and interesting links

PSConfEU: http://www.psconf.eu/

The videos from this year’s conference have just started going up, and can be found on the psconfeu youtube channel. So far, my pick would be this one – be the automator, not the automated. Perhaps not as good as “breaking bad”, but definitely better than watching old episodes of “murder, she wrote”. All the demo code used at the conference is available on the psconfeu github repository.

PSUGUK: https://www.meetup.com/PowerShell-London-UK i was forced to miss the April meetup, as they had a limited edition orchard pig cider on in the chequers in Stevenage old town, and it turns out the video they recorded is only suitable for lip-readers. Luckily Jaap is thoroughly conscientious about sharing his stuff, so the slides and demo code for his session are on his github repository. This month’s session is a powershell best practices refresher, so probably useful to everyone. Certainly me. May17th at dotmailer, under the shard.

Winops 2018: the date has been announced – 15th and 16th November – sign up to the mailing list here. I found the workshops far more interesting than the talks, last year, so I’ll wait and see who they’re announcing as speakers before I fully commit. I notice that it’s a Thursday and Friday this year as well, so no space for the powershell day, like last year. Hopefully that’ll take place regardless, another week.

This is proper useful – using fiddler as a proxy to examine API requests: http://www.brianbunke.com/blog/2018/05/02/proxy-to-fiddler/ works for https too (allegedly).

Blog Articles

Kevin Marquette has written a thought provoking and useful article (and accompanying module) on converting the errors held in $error[0] into breakpoints within a script, automatically. No more searching through and wondering which line threw the red mess all over your screen. Just run convertto-breakpoint and hey-presto!

Mike Robbins has written great article after great article in the last month – there’s a whole series of stuff on parameter validation, ad how to functionalise it so you don’t have to have great wads of regex goop in your otherwise elegant and attractive script, here and here. But my favourite is probably his “tips for writing award winning functions and modules” presentation given at the powershell and Devops summit last month. The video, code examples and powerpoint is all available, there. There will be a prize for the first script in the posh repo that follows all his hints and tips. I’m quite happy to award it to myself, so get busy.

Richard siddaway has written a whole bunch of interesting articles this month, and his talk “script blocks decoded” has been published:

The main blog – look for posts on positional parameters and PowerShell join ad split statements.

I want to call outa  couple of posts on writing and using troubleshooting packs – one and two. Post two is a really interesting use of pester for developing automated troubleshooting tests in WinRM – it could easily be applied to almost anything. Fascinating.



Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s