Coincidentally, shortly after I wrote the article for the GUI vs. CLI poll I came across a related topic. PowerShell did not only make the renaissance of the command line possible, the marketing buzz around it also tempts Windows administrators who never wrote a line of code before to program scripts to “automate” administration tasks. I would like to cite a paragraph from Robert B. Laughlin’s (winner of the Nobel Prize in Physics) book “A different Universe” (p. 68) that I am currently reading. (I highly recommend this book to everyone who is interested in Physics and the Philosophy of Physics).

One of the more interesting trends of the computer age is that physical science students are increasingly unwilling or unable to write computer code. I was very upset when I first observed this and took stern measures in my department to counteract it, much to the students’ chagrin, for I myself am very good at coding and consider it something any self-respecting technologist should know how to do. Eventually, however, I realized that the students were right and I was wrong, and stopped the crusade. Computer programming is one of those things in life, like fixing one’s own car, that is fascinating, fun, useful–and unacceptably time-consuming. The truth is that it is no longer cost-effective for most well-educated people to program their own computers, or even to learn how to do so. The wise use of a time is to spend a few bucks to buy a program that does what one wants, or in extreme cases, search the internet for free software.

If you replace “physical science students” with “system administrators” you have more or less the same situation in today’s IT departments. Only most recently some administrators seem to be enticed by the powers of PowerShell to write their own code again.

I’ve often seen IT pros making the same mistake that Laughlin made at first. They believe that “any self-respecting IT pro should know how to code” and programming certainly also is “fascinating, fun, and useful”.

But as Laughlin correctly acknowledges, it is also “unacceptably time-consuming” and therefore, as far as IT departments are concerned, unacceptably expensive. The point here is that professional developers can do the job for a much lower price, especially if the program is not only used in one IT department , but in hundreds or thousands around the globe.

In the early days of networking, you simply had no other choice than to write your own scripts to get the job done. But those times are over. Rest assured that almost every “automation problem” you face has been already encountered by other admins somewhere else. And then, it is most likely that someone wrote a program to solve the problem which you can buy or perhaps even get for free on the web.

Thus, don’t make the mistake just because “PowerShell rocks” of wasting your time with coding if you could as well solve the problem in minutes with a downloadable tool. We live in a more and more specialized world. Programming and system administration were once just one discipline. But both fields have developed and are now highly complex; they are now two very distinct disciplines. To be successful you have no other choice than to focus on just one of them. Of course, if you are a developer working in an IT department, then PowerShell is now the first choice when it comes to programming Windows scripts.