As the economy continues to improve, allowing us to feel a sense of hope that the worst is behind us, it's still critical for business owners to make sure they're making smart decisions about technology. After all, if the recession taught us anything, it's that we must be cognizant of cash flow, and make sure that our purchases are really worth the money and will help our businesses to realize maximum ROI.
The technology industry has held a great interest for me since the early 80s, and in that time, I've learned that some tools are "one hit wonders" and will come and go without fanfare, while others become truly integrated and vital to business operations.
The tools that prove themselves critical are the ones that keep a company running smoothly; tools that provide efficiency, security and convenience. I've come up with a list of three tools that are critical to my company and help things run smoothly around here. I'm sure there are more than these three, but if I stop and think about which tools have helped me the most, these definitely rise to the top.
Critical Tool No. 1 - Command Line Interface
The unique and invaluable command line interface (CLI) is one tool that I can't live without. CLI is defined as a means of communication between a program and its user, based solely on textual input and output. Commands are input with the help of a keyboard or similar device and are interpreted and executed by the program. Results are output as text or graphics to the terminal.
CLIs usually provide greater flexibility than graphical user interfaces (GUIs), which requires the use of a mouse pointer to click on options, at the cost of being harder for the novice to use.
The simplest way I can explain the benefits of the CLI is to relate it to iTunes. There have been occasions when I've needed to edit the album name for all songs in that album. Initially, I thought that I had to select each song individually, type in the desired album title, and repeat this for every track. After a couple minutes of this tedious process, however, I realized that by selecting all the tracks, right-clicking and selecting "Get Info," I could type in my desired album title and each song would be updated instantly. A command line interface works in this same way.
The more efficient CLI is a bit like a "macro on steroids" -- a macro being a set of instructions that is represented in an abbreviated format. It's used whenever a large vocabulary of commands or queries, coupled with a wide or arbitrary range of options, can be entered more rapidly with text than with a pure GUI.
A GUI uses windows, icons and menus to carry out commands such as opening files, deleting and moving files, etc. Many GUI operating systems are controlled by using a mouse, although the keyboard can also be utilized with shortcuts or arrow keys.
While a GUI's simpler format is more accessible to new users, the CLI requires a bit more memorization and familiarity in order to successfully navigate and operate the interface. However, once a user has this familiarity down, there are benefits to the CLI that make it, in my opinion, a great deal more efficient than its graphical opposition.
CLI users need only to execute a few lines on their keyboard to perform a task, so they are able to get tasks done much faster than even an advanced GUI user. The CLI interface also enables a user to easily script a sequence of commands to perform a task or execute a program. While GUIs can allow users to create shortcuts, the graphical interface doesn't even come close in comparison to the "macro on steroids" effect that a command line interface has.
I prefer the CLI, but people who are more visual or who prefer a more "user-friendly" system will likely lean toward a graphical user interface. The important thing is to determine the exact task you are trying to accomplish and consider both options to decide which interface would be best for you.
Critical Tool No. 2 - Nagios
Read the rest here...