Ryan Edgell

Open Source or Custom Development?

With interaction between websites and their users at an all-time high, many pre-built scripts are being developed and offered as either open-source or commercial products. Everything from e-commerce solutions to content management systems can be quickly found and implemented into your site’s environment.

First, what is “open source?” According to http://www.opensource.org for something to be considered open source it must adhere to the following 10 criteria:

1. Free Redistribution

2. Available Source Code

3. Derived Works Allowed

4. Integrity of The Author’s Source Code

5. No Discrimination Against Persons or Groups

6. No Discrimination Against Fields of Endeavor

7. Distribution of License

8. License Must Not Be Specific to a Product

9. License Must Not Restrict Other Software

10. License Must Be Technology-Neutral

For more information on the above list please visit: www.opensource.org/docs/definition.php

While using an open-source solution is acceptable, why not consider custom development? “Are you kidding?!? That would cost a fortune!” some might say.

If you break it down, that’s not always the case. A custom-developed solution can sometimes save your money while getting you exactly what you want.

When you do finally find an open-source application on the web that fits your needs, you will want to customize it so that it matches your website. Doing so can be done with a fairly basic knowledge of HTML, but there is only so much you can do by replacing images and making edits to a style sheet (assuming it has one).

You’ve now spent the better part of a day making new images and editing colors of fonts and links, how does it look? Does it look like part of your site? Probably not –but at least you didn’t pay for anything.

Still not satisfied? If you are going to customize the application to fit into your site design, then you are at least going to need a basic understanding of the programming language in which it was developed. Most online applications are developed in pieces to reduce the amount of redundant code and to speed up the development process. These sections are then broken down into functions to again further reduce redundant code. Breaking an application down like this greatly reduces the amount of work a programmer needs in order to accomplish tasks. Often, figuring out the structure a programmer used to achieve his/her goal can be a time-consuming task.

If you haven’t figured out where this is all leading yet, let me explain: In the time you would be able to fully customize an open-source or a pre-built online application, you will have such a level of a basic understanding of the development language you could probably create the application yourself. With a little help from some online forums perhaps, or advanced tutorials; but getting to that level would have already cost you at least one to three months of head aches, sleepless nights, and stomach ulcers.

Maybe you’re thinking, “I’ll just find an open-source application and hire someone else to customize it for me!” All things considered, it may sound like a winning solution, but one thing that developers universally hate is to have to go through another programmer’s code. All developers have their own style and methods they use to construct an application. “There is more than one way to skin a cat,” and the same is true with development.

Because of these issues, having a pre-built application customized will probably lead to some surprising estimates. In most cases, with a little extra money you can have an application built specifically for your site with the features you want.

Having your application built for you makes it yours. It fits your site, it does what you want, and it looks good doing it! The pros and cons are obvious, but only when you take into account the depth of your needs. What will you do when the time comes for you to make the decision?

Creative fields: Opinons and News

Logged in as . logout »

Stumble It
Add to Del.icio.us

Did you like this post?

Digging and sharing is a great way to say thanks!

Leave a Reply