In-house development VS using standard tools
There will be a point in your business development where you will need to decide between developing a system in-house or using an existing system. Here are a few tips to ease this difficult decision.
Developing your business implies creating new tools to support your expansion. Be it a new CRM, a newsletter, a new website with online payment function or a CMS, you will need to decide whether you go with a standard tool or a unique one.
For your newsletter, you might decide to use pre-existing solutions such as Apsis or Mailchimp. Your payment system could be handled by a program such as Google Checkout or Amazon payment. Your CMS could use Wordpress, Drupal or Joomla.
All those solutions exist and provide all the tools you might need.
Another approach would be to develop it yourself.
How to decide? Keep in mind that your ultimate goal is to have a system that helps you to easily update your content without the need for any technical knowledge, from any computer with internet access and without installing any software.
Using standard tools
That is what most people will choose. Using standard tools and customize them to your needs can be very efficient and cost-effective.
Why should you choose standard tools?
The usage of existing tools such as CMS or newsletter management systems is usually faster, easier and requires no specific knowledge.
Developing a system in-house
Few people only decide to develop their system in-house. Usually, large corporations with consequent budgets would choose this option.
Personally, I have always developed all my tools in house. Recently I have created a CMS for website, a Newsletter sending tool with tracking functions and a complete payment system for an E-commerce platform.
Why would anyone choose to develop a tool that could easily be purchased?
Creating a tool in house requires to have in-house programmer and takes much longer time than using standard systems. Moreover, it requires your programmer to document the entire program and to have serious project management skills.
On the other hand, your program will be more flexible, fit your needs perfectly, use your design, require no investment and will be unique, different from your competitors.
How to choose
The decision can be quite simple to make.
You must analyze three aspects: your budget, your needs and your ability to deal with the problem in-house.
If you decide to go with a standard system, you will need to buy it. Consider your budget carefully: will you be able to handle the extra cost? Installation, maintenance, upgrade?
Do you need something really specific? Could you use a standard system? Will your needs change and evolve over time?
Do you have enough programming knowledge within your company? How many programmers do you have? If a programmer leaves, will the others be able to follow-up on the project development? Are your programmers able to handle proper documentation (please read my article "The importance of an efficient coding structure" if you are not sure about this point)?
Generally, using standard tools is more suitable for 90% of companies. Start creating your own systems only if you have extremely specific needs, very low budget or a passion for in-house development. It will require your entire team to participate, give feedback, point out obvious problems and help in the constant improvement of your system.
If you decided to go ahead with the creation of your own customized tool, let us know and share your experience below!
Last update: 2017-05-24 Tags: in-house software program development template CMS