Wow it has been a little over three years since I first saw PowerShell (then Monad) demo’d at PDC 2003 on Wednesday, October 29th in a session inconspiciously named "ARC334 Building Manageable Apps: Admin Scripting and Automation". In room 515AB of the L.A. Convention center I was blown away by what I saw. I had been in search of a replacement for CMD and KornShell that was "Windows-oriented" for a while. What I really wanted was a C# Shell. Well PowerShell has turned out even better than I could have hoped at that time. I never envisioned having an "interactive .NET Shell" or (REPL).
Of course back at PDC 2003 and in early betas the syntax wasn’t fully baked. In the beginning,🙂, we used to specify cmdlets like so:
While the "/" key is easier to reach while typing it also introduces problems if you want to handle both "\" and "/" for path separators. Sanity prevalied and now we use "-" instead to separate noun from verb. Over the whole beta process the PowerShell team has been incredibly transparent and open to suggestions from the community. In many cases, they directly sought out the opinion of the community on tough design decisions like whether to use "<" and ">" for stream redirectors or for comparison operators. The community spoke and declared "<" and ">" sacrosanct for stream redirectors. We were also asked about PowerShell enforcing verb names and verb prefixes on 3rd party cmdlets and the community spoke out against this and the team listened. Many defects submitted by the community have been fixed and other tweaks to the product were made based on community feedback like the addition of $true, $false and $null constants. I have to commend the team for really taking customer-oriented development to heart. I also congratulate them on an awesome shell that is already a staple of my daily interactions with my PC and which also lays a solid foundation for future enhancements.
If you haven’t taken PowerShell for a test drive, I encourage you to. The install is very small if you already have the .NET 2.0 framework installed (which itself is only about 25 MB). The documentation included with the product is great and there are some really good books coming out in the next couple of months. You can download the bits from here:
Also be sure to check out the PowerShell Team Blog and the very active newsgroup microsoft.public.windows.powershell that is patrolled by most of the PowerShell MVPs. We are there to help you get started and get productive with PowerShell.