Programming languages are a lot like cars. Each has a specific purpose, dictated by the model type and its uses, and each has its aficionados and its naysayers. Some people love station-wagons, others prefer sleek sports cars, and still others like pickup trucks. Scripting is no different. Name any language and there will be a dearth of developers who love and hate it.
With that in mind, however, it’s important to know that while prejudices and preferences are common and even expected, they should not dictate your goals as an IT manager. All IT managers should be familiar with scripting, especially in the languages most-used by their organization or its partners. An in-depth understanding of Java may be the most important part of your job or a passing familiarity with PHP could be all you really need to deal with your contractors. Bottom line: IT management needs to understand programming, even if not the specific language being utilized at the moment.
It is not uncommon at all for legacy systems to be layered in languages with core functions in old COBOL with top layers of C++ and Java to finish off the pie. Even if that old architecture is on its way out, understanding the scripting languages used and how they can or should be utilized to transport key data and information to a new system is still important.
Scripting Can and Must Be Learned for an It Manager
The gist of this is that IT managers must learn programming skills. Scripting can often be self-taught. Any IT person with enough understanding to manage a network or server probably has the core understanding needed to learn a Scripting language (or three). Not every is good at self-learning, however, so there’s no shame and no lack of structured sources for learning. For most already employed and needing to learn to brush up, community colleges and tech institutes are the best places to go. They’re low cost, aren’t heavy on pre-requisites or regimented requirements, and are generally easily accessible.
Besides learning to program in order to manage developers or contractors, it is also important in any IT setting to facilitate task automation, troubleshooting, macro building, and various enhancements. The manager who can tell those who contact her that she can probably quickly implement a tweak to something in a couple of hours is more valuable than the one who says it will take a week to get the outsourced help on it.
Knowing all of this, there are two major environments most IT managers are working within (some in both): Windows and anything with “nix” on the end (Unix, Linux, etc).
Windows Scripting Language
For those in a Windows environment, be it a network of machines or a server and clients, PowerShell is probably the most important thing for an IT manager to be thoroughly familiar with. This is the runtime shell in the .NET system and is by far the most common thing an IT manager on a network will need to interface with. Most of the management interfaces in the Windows Server environment are shortcuts to PowerShell scripts.
In PowerShell, the most common language is going to be C# and/or VB.NET. For the self-teacher, C# is far easier as it has more resources while VB.NET is often a staple in classes teaching Windows languages.
Finally, for those who are dealing primarily with Web applications on Servers, the best choice is likely ASP.NET MVC. This is replacing WebForms and is a far more robust setup for new apps. Internal Server applications can be written in OutSystems Agile, which works well with existing infrastructures on Windows Server networks.
Scripting Choices In UNIX/Linux
While very tricky and hard to master, C is by far the most common core language used in UNIX, Linux, etc. Being (at the very least) familiar with it is a necessity for administrators. Several languages similar to C that are easier to learn include Python, Perl, and Ruby. A lot of network and systems management utilities are written in one of those three languages, though Perl is largely becoming obsolete in favor of the others. The nice thing here is that once you learn one of those three, the other two are easy to add to your repertoire.
Scripting in bash or another shell is an important skill to have as well. If you understand Python or Perl, you can quickly learn shell scripting to complement that. Finally, knowing Python or Ruby is a step towards fully utilizing a one-two Web development framework – either Python+Django or Ruby+Rails.
Whatever You Do, Do Something
It’s entirely possible to manage an IT department or infrastructure with no programming skills at all. Not easy, but perfectly possible. The number one talent of anyone in management is utilizing resources. If you’re best used managing infrastructure through underlings, then so be it. But you cannot be hurt by spending the time to learn Best Scripting Language.So Do let us know which other Scripting Tools are you using for your IT needs at your workplace through your comments.
About the author
Michael Dorf is a professional software architect, web developer, an open-source enthusiast, and more recently, a WordPress addict. He has been creating software and teaching courses at LearnComputer.com for a dozen of years. Michael blogs about Hadoop, Java, Android, PHP, MySQL, WordPress, and other cutting edge technologies that define today’s web. Michael holds a M.S. degree in Software Engineering from San Jose State University, a B.S. degree in Computer Science from San Francisco State University, and a B.A degree in Political Science, Public Service from UC Davis.