Opinions of development tools vary widely in the IT industry. Some people swear by them. They couldn’t imagine working without a development tool. Others refuse to use them. Typically, these people have had a bad experience with a development tool, and assume that all development tools are alike. (Hint: They’re not.)
A good development tool can drastically increase productivity and let anyone in your office develop web applications. A bad development tool can be a waste of time and money. How do you know which is good and which is bad? Ask the right questions. Here are 3 of the most important questions to ask before buying a development tool:
How is pricing determined?
Pricing options vary greatly from tool to tool. Some charge per seat. Others charge per seat, but have different levels of seats (developer, user, etc…). Still others charge per seat, but also have concurrent user limits. For example, you might buy 50 user seats, but it limits you to 5 concurrent users at any given time. Finally, some vendors charge per database and let you have all the users you want.
Besides the user fees, some vendors also charge additional fees. The most common additional fees are distribution fees and run-time fees. A distribution fee means that you must pay the vendor if you distribute a generated application to another company. A run-time fee means you must pay the vendor fees for every employee using an application generated with their tool. These fees ensure that the vendor still makes money even if you only have one or two developer seats.
Who supports it?
The answer might seem obvious: Doesn’t the vendor support their own tool? Don’t be so sure. Sometimes support is outsourced to a call center. Other times, the vendor keeps support in-house, but staffs the support department with unqualified phone reps. Obviously, you don’t want either of these options. You want a vendor with a qualified and experienced support staff.
Now, the problem is this: The vendor won’t tell you that they have horrible support. How do you find out before you buy? Here’s how: Make sure you speak to references particularly about the specifics of their interaction with the support staff. You’ll quickly learn just how capable their support staff is.
What happens if the vendor goes under?
This is perhaps the most important question you can ask. If the vendor goes under, will you be stuck with worthless and unmaintainable software? It could happen if you buy the wrong development tool.
How do you avoid this problem? This is where the difference between open and closed architecture really stands out. Some development tools generate completely proprietary applications, built on the vendor’s own proprietary language. Because of this, the vendor is the only one who can maintain these applications. But, if they go out of business, you’re stuck with unmaintainable software. If your business depends on those applications, they’ll need to be completely replaced.
Other development tools generate applications built on open architectures and frameworks, which are easily maintainable. For example, a development tool that generates Java-based applications means those applications are easily maintainable by any Java developer. Thus, you’re not tied to that vendor, and if the vendor goes under, it won’t damage your business.
Development tools can really save your company a lot of time and money…if you get the right one. The key is knowing which questions to ask. First, make sure you understand the pricing structure. Hidden fees can quickly turn the cheapest option into the most expensive option in a hurry. Secondly, make sure you test the support staff before you buy. A bad support staff will waste your time and cause endless frustration.
Finally, you must learn about the tool’s architecture. Does it generate proprietary code? If so, you’ll be in a world of trouble should that vendor ever go out of business. Do you really want your company’s success to depend on a vendor?
These are 3 of the most important questions to ask before buying a development tool, but there are many more which I plan on covering in future posts. Of course, feel free to add your own in the comments.