More often than not, business owners aren’t the ones deciding on a platform to implement their business solutions. Typically, these decisions are made by in-house developers leading the project or technology professionals with development backgrounds. If neither role exists within a given company, the technology house implementing the solution can make that decision.
Which decision maker is the soundest choice for business owners? In most cases, the answer is simple.
So, what are my options?
Being a developer myself, with years of experience in architecting solutions for businesses of various sizes and verticals, I believe the focus for a business owner needs to be on the following criteria:
- Percent of actively deployed enterprise business solutions in a given technology platform
- Percent of growth a technology platform has seen over a given period of time
This criteria allows us to see the relative support of a given platform today. Every five years or so, these numbers undergo major changes due to the growth of “ease-of-use” and support of a given platform as it relates to changing business demands. Technologies that were huge in the ’90s (PERL, Powerbuilder, FoxPro) are on the decline and have been for some time. For the most part, their use has been limited to supporting legacy applications.
The TIOBE Programming Community index indicates the popularity of a programming language in any given month. The ratings are based on the number of skilled engineers worldwide, courses and third party vendors. Popular search engines, including Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu, are used to calculate the ratings. However, the TIOBE index does NOT rate the best programming language or the language in which most lines of code have been written.
Here’s a look at the usage index through April 2012:
(click on image for a closer look)
Top 5 Languages:
Although other languages/platforms have their merits, the decision for a business owner should be more in terms of whether or not they can support a given platform on a long-term basis (3-5 years). Since the growing trend is to move enterprise applications to a web-based platform, using languages like C/C++ may not be the optimal choice. That being said, major platforms for consideration should be Java, C# (Microsoft .NET) and PHP.
The Gate6 Decision Process
Gate6 has carved out a process based on years of experience building small- to large-sized applications. In the graphic below, I’ve over simplified our set of decision points to avoid getting too technical.
(click on image for a closer look)
The following items are also considered throughout this process:
- How many concurrent users will be using the application after 1-1.5 years? Most business owners tend to come up with a very optimistic answer to this question. Unless this is a rewrite of an existing application with a large user base, one should consider a more realistic number. Remember, we are talking about concurrent users, not total users.
- What is the realistic growth plan for the application usage? Based on business projections, if the growth plan is exponential, the complexity of the project and its deployment infrastructure goes up. This would lead to a more enterprise-based solution.
- What end-user devices will the application be used from (initially and in 6-12 months)? If the application is a purely web-based one (and will continue to be), the criteria defined in the decision flowchart can be used. If we anticipate growing into a complex mobile client, assume the application will head towards an enterprise-style solution.
The decision process defined above is based more on simple decision points so that business owners can make sound (and realistic) decisions for the project they’re undertaking. As always, the Gate6 business and technology teams are ready to help you get your vision in place.