One of the challenges we face when building a new product is the selection of the technology. Finding a balance between a homogeneous or mixed solution can be difficult. On the one hand, a single vendor is easier to work with. However, on the contrary, you want to avoid lock-in, and single vendor solutions often lack the features of one built using multiple tools.
All-In-One Solutions
In my experience, a single technology solution almost never works for custom solutions. Tools like Microsoft Access, FileMaker, and others that offer all-in-one solutions can be useful. However, their use is limited, and customization can be painful, if not impossible. That being said, simple applications like general accounting, address books, and catalogs are entirely possible with these tools. These are solutions that need little customization and follow a sort of template solution. These tools work, but often the end solution would have been cheaper to buy off the shelf.
The cost of these solutions tends to be low as you can find resources that know the tool and have proven experience in it. They know how to stay in the “safe” areas of customization and upgrades are often painless.
Best-Of-Breed Solutions
Another approach is to find the best tool for each feature or aspect of your solution. This method often allows heavy customization and the ability to create your solution precisely. However, there is a cost of integration. The tools have to be made to work together. Sometimes the “glue” used to put these disparate pieces together can be complicated to create and fragile once completed. A change to any part of the solution could potentially bring down the system. Upgrades become risky, and the pressure to leave things as they are can be enough to freeze the solution from enhancements and upgrades.
The cost of these solutions can be very high. In fact, this often is only a path open to enterprises and companies with a significant number of development resources. It is very rare for one person to know more than a few of these sort of technologies. Thus, there is often a need for at least a resource or two per technology. Note that I said, “at least.” Projects may require dozens of resources in each technology silo. Keeping everyone busy during implementation requires substantial planning. Therefore these projects can be challenging to manage.
Finding The Sweet Spot
There are more than two ways to view this problem. So let’s look at the middle road. Tools rarely are limited to a particular solution. Thus, they will have strengths that can be used to solve other problems. For example, a database can include business logic. However, the front-end or User Interface tools can perform some as well. Neither of these tools is likely to be the best way to implement business logic. Nevertheless, it is possible.
The key to selecting your technology stack is to find the best tools for your most significant problems. These are the uses that will occur most often in your solution and have the highest impact for the customer. To put this simply, make sure your key selling points are the features that work the best. Likewise, these areas of focus should be the most stable, scalable, and easy to maintain. You are not likely to spend enough time on ancillary features to focus on those solutions.
Not Too Much and Not Too Little
A single technology is rarely going to cover all of your needs. However, a technology stack of three or four tools in tandem is very common. This stacks can cover a lot of solutions without having to break the bank finding implementation resources. When you use your technology choices in moderation it can keep costs down while still providing a complete solution. It is a win-win for the company and the customer.
Leave a Reply
You must be logged in to post a comment.