As we’ve seen there is a lot of product teams within Microsoft adopting PowerShell:
As people start to become aware of the power of PowerShell, we can see vendors starting looking to leverage this also:
Lists taken from PowerShell Home page
I can see that as each product team and vendor take up this new technology they are going to create their own cmdlets to make administration tasks easier. Now I think this is a good thing, the adoption, creating tools to make life easier. However I see a problem that could arise from this.
We are going to see the PowerShell landscape changing from machine to machine depending on what products are installed. Are we going to start seeing scripts fail because they have been written with cmdlet dependencies?
So what’s the solution to this? Should cmdlets be deployed as addons to all PowerShell installations to keep the landscape uniform? What would be the impact on this?
If I’m on a non-exchange 2007 server, and I have the exchange cmdlets installed should they work regardless, so long as they can reach the exchange server in question?
Or is the solution to have our scripts smarter, and exit nicely when the cmdlet isn’t available? This still leaves us with a fractured landscape, and I can see as more products adopt PowerShell a larger difference from installation to installation. Or am I just looking at this all wrong?