Defending PowerShell and Windows

I’ve come across more anti-Microsoft claims masquerading as “Linux is better” advocacy. I’ve written about this before, explaining that some of the praise many Linux-converts heap on Linux applies to Windows as well. It’s disingenuous to say “I can do this on Linux so Windows sucks” if you can also do the same on Windows.

Here’s the run down on what I’ve addressed previously. These are things that apply to both Linux and Windows: you can update your system as often as you want, you can have an obscene uptime, you can run free and open source software, you can make your system look as fancy as you want it to be, both platforms have security risks (and mostly the result of applications rather than something specific to the OS), both can be automated to do certain things at certain times (cron versus scheduled tasks), and you can be as observant or ignorant of running processes as you want to be. There’s really not much you can do on Linux that you can’t do in Windows.

I know because I use both. I use XP and Vista. I use Linux. I also use FreeBSD. I run a lot of the same applications across the board. I browse with Firefox and Opera (no Opera in FreeBSD). I use sylpheed across the board. I use pidgin (Windows and Linux) and Skype (Windows and Linux). I have Lua, Ruby, and MzScheme on all my computers (the full DrScheme in Windows). I use (g)vim on all computers. I have GIMP on all computers. I use GnuPG on all computers. I use Abiword and Open Office across platforms. I also have some audio processing software like audacity across platforms, though I tend to only use it in Windows because I have more RAM in my Windows computers.

The latest involves claims about what can and can’t be done in Windows vis-a-vis console, piping, and (of all things) a claim that Windows’ PowerShell is a “derivative of BASH.”

Umm, no.

First, Linux has no shell. Linux is a kernel — a component of an operating system, which is made complete with the GNU utilities. The shells available for Linux are much more powerful tools than the default Windows console. I can’t deny that.

Second, there’s little or no need in a GUI-centric environment like Windows for there to be a crazy-powerful shell. Power users have been able to find them for Windows, whether from vendors, running Cygwin, or (now) PowerShell.

The default command console in XP retains many DOS commands. More can be done with the XP console, including running scripts and various programming languages (I run MzScheme and Ruby’s IRB in console all the time). There are also console applications widely available (Pine/Alpine MUA comes quickly to mind).

So how does PowerShell rate against other shells? See for yourself. There are similarities, there are major differences. PowerShell doesn’t appear to be geared for those who wish computing hadn’t evolved past 1990 and DOS 5. It’s oriented towards the Windows environment.

It’s not going to be an apples-to-apples comparison because the paradigms between Linux and Windows are different: Windows is GUI-centric, Linux is agnostic.

Yes, I wrote that. Linux is agnostic. Linux is a blank canvas. Linux doesn’t make shell operation mandatory. It’s helpful to know how to do rudimentary commands in the shell, but it’s not required. GNU tools can be accessed via shell or via GUIs. Many Linux desktop users don’t care about the power of their shells — it’s there as a bail-out just like the command shell in Windows. They really only want to boot into a graphical environment, work with icons, etc. Hence the popularity of GUI-based distros like Ubuntu and PCLOS for desktop use. Why are these increasingly popular, especially among former Windows users? Because they boot with splash, auto-configure (as much as possible), and load X. They can manage system processes and handle file management via tools with familiar interfaces (ahem, derivatives of Windows?).

I can’t do anything to help those who emote whenever they see or hear the word Microsoft except to point out areas where they’re misinformed. Windows does have a shell. It’s very useful and powerful, and it can be used to accomplish the same kind of work as a shell in a Linux environment. But PowerShell doesn’t make the kind of pretenses to be the alpha and omega of shells: it doesn’t have to. Microsoft isn’t competing against GNU BASH, they’re providing a tool for their environment so their power users have even more flexibility — the flexibility so many Linux advocates think Windows users don’t have.


Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your 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 )

Google+ photo

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

Connecting to %s

%d bloggers like this: