Cmdlets are high level, task-oriented abstractions. The implementation of cmdlets can talk to anything: Web services, COM objects, WMI objects, .NET objects – anything. Depending upon how developers design their API, they can make it easier or harder to write cmdlets. Now that you can write cmdlets in PowerShell itself, here are some tips for designing your API so that it can be easily scripted against...