Like many homeowners today, Im a big proponent of DIY, or do-it-yourself, home maintenance and upgrades. Im a regular customer of my local home improvement stores for everything from tools to lumber to doors to paint to plumbing supplies.
Most of the chores I do fit in the classic category of daily maintenance and dont require much in the way of special skills. But, several times a year, I tackle projects that most other homeowners would rather leave to the professionals.
For example, last year I replaced nearly all the fencing that encloses my property. Now, installing fences isnt an easy job, and I knew that a good professional would be able to put the fence in so it would be very straight and very stable.
But I had done fence work myself before, and I was confident that my work would be good enough. And since the cost of using a professional would double to triple the cost of installing it myself, I decided to save the money and go with a "good enough" job over a "good" job.
Now that I think about it, many of the things I do for my home come down to this very decision—between a good job and a good enough job. If the cost of a good job is not significantly greater than doing it myself, I often decide to pay to have the work done. But when the cost is too high, Im more than happy to settle for good enough (and also to get the side benefits of pride in doing something myself and having intimate knowledge of how the work was done).
And (you knew this was coming) a similar approach often can work in the world of corporate IT.
Many technology projects in a company can be done by internal people. And, often, these projects can be handled by low-cost commercial or even free open-source products that will do a good enough job at meeting the project requirements without having to resort to expensive external consultants or high-cost commercial applications.
I regularly talk to IT managers who have built highly effective systems for collaboration, portals, intranets and even SOAs (service-oriented architectures) using internally built applications, free open-source products or some combination of the two.
Most of the time, these systems work very well, meeting all corporate requirements at a deployment cost well below what many "professional" solutions would have cost. And, since theyve done it themselves, company IT staffers have a much deeper understanding of how these systems work than they would if an outside group had done the deployments.
However, while these types of solutions can work well in many cases, just as in the home, there are some situations in which a business may not want to go the DIY route.
For example, there are several things around the house that I would never dream of doing. When I had to have a large retaining wall on my property rebuilt, I knew the overall workload and the skills required were well beyond my reach. Also, when it comes to situations such as working on gas lines or doing work on my steep roof, I know that the risks of serious injury or disaster are too high for me to DIM (do it myself). Also, there are some jobs, such as painting the house, that would take me months to do but that a professional could do in a week.
Similarly, IT managers need to know when a technology project is beyond their skills. If your needs are so specific and unique that you cant find products on the market that will accommodate them, and if you dont have the in-house development skills to create such products, then a professional outsider is often the only option.
And some jobs are so critical to business that going the DIY route could open you up to system failures or security breaches that are the business equivalent to a gas leak or a fall from a roof.
So, knowing when to go the DIY route involves weighing the benefits of an affordable system that youve deployed yourself against the risks of failure. In many cases, a DIY technology project will be an excellent fit for your company projects. But, in other cases, it will be worth it to fork over the money for the expertise, support and peace of mind that comes with a professional.
Labs Director Jim Rapoza can be reached at firstname.lastname@example.org.