While I was doing a little research the other day, I came across a blog by a Gartner blogger whose name was Jonah Kowall. His blog title was, “Got Nagios? Get rid of it”. The link to the blog is here. Although the blog is more than a couple of years old, it continues to remain very relevant today and it brought to mind some broader points.
For those of you not familiar with Nagios, it is an open source network management and monitoring (NMM) solution. Mr. Kowall made the point that the usability and sophistication of the Nagios solution is pretty much zero and that it is rudimentary at best. His main point was that the implementation and ongoing management of the solution was far too manual and complex. He concluded with the advice that you would be better off getting a simpler tool and licking the easy stuff first before tackling the harder ones.
I found the blog interesting from several different perspectives. First, I wholeheartedly agree with his assessment of the Nagios solution, although I would have gone further and pointed out that many other solutions in this market space, proprietary and open source alike, suffer from the very same complexity and usability issues. Many of these solutions are so complex to implement, manage and use that they require training, paid training in some cases. Then there is the expense of the proprietary solutions on top of the complexity. The responses to Mr. Kowall’s blog surprised me. It is interesting today that people get emotionally attached to software solutions. OK, maybe it’s not. While I can’t completely dispute Mr. Kowall’s advice to get a simpler solution and lick the easy stuff first and then move on to the harder ones, I do not believe that this is the long term answer to the overall problem of solutions that are overly complex, poorly designed and expensive.
Let’s backup a minute and explore why these solutions are complex and expensive in the first place. Vendors typically follow a traditional development & release process where they put out a new release every several months or longer. Each release is a compilation of enhancement requests collected since the previous release. Some of these enhancement requests originate internally and some externally from the customer base. Once an enhancement goes in, it is unlikely to ever be removed. As the vendors put out release on top of release, the features and functions of the solution pile up. The user interfaces become cluttered and solutions become increasingly complex and monolithic. As this process progresses from release to release, the solutions require increasingly more effort and resources to maintain and enhance them. As resource costs increase, the vendors increase licensing costs in step. Some increase their licensing costs because they see the cost of their solution as somehow being representative of the amount of features and functions in their solutions. Complexity and cost. Don’t agree with me? Go download and read some of the implementation and user guides for some of these solutions. Go a little further and download some of the solutions that have trial downloads and note of the size of the downloads. You might be a little surprised when you find that many go well into the hundreds of megabytes.
Now why does this matter? There is an old saying about Microsoft Word that says 80% of users use 20% of the features and 20% use 80% of the features. As solutions become more complex and expensive, 80% of the users are going to become overwhelmed with the cost, product functionality and complexity at some point. The solutions will either eclipse their ability to install, use and manage them or they will no longer be able to afford them, or both.
What is the solution? I do not believe that turning a blind eye to the problem and seeking out simpler solutions and tackling the easier issues is the solution. This is merely a diversion that will not address the core problem. The solution requires a revolutionary change in thinking by vendors towards how they develop and architect their solutions. Solutions need to be architected with the end user in mind. The users need to be shielded from the complexity of the solutions. They also need to be given the capability to choose the functionality they need. Dropping a monolithic solution in their laps that has 80% more functionality than they need no longer works. The users need to be able to pick and choose the functionality they need, essentially customizing the solutions to their specific needs. This has already happened in mobile phone market, now it needs to happen in enterprise network management and monitoring solutions and other markets as well.
About the Author:
Lance Edelman is a technology professional with 25+ years of experience in enterprise software, security, document management and network management. He is co-founder and Director of Technology at Vallum Software and currently lives in Atlanta, GA.