views:

29

answers:

1

Hey guys,

This is not a technical question but being newbie I'm not sure about it.

If I wanted to start an ecommerce website say for selling books - I have plenty of options like using osCommerce,prestashop,opencart,spree,ubercart etc etc. Or I can build the site on my own.

The obvious question is why would you want to build something when something is already readily available to use and will save you all the time.

My hesitation is when I build something from grounds up - I have full control over it. Tomorrow if something breaks, I know exactly where to go and fix it. I guess I would just feel more confident.

But I get the feeling I'm being naive. For example if your vision is to build a website like Amazon, would you write the code for it yourself or use one of the open source platforms.

Thanks for your advice

+3  A: 

Writing your own will:

  • Take longer. The open source stuff is already written, and your competitor will ship in the meantime.
  • Have more bugs. The open source stuff has been debugged.
  • Be more expensive to maintain. See "take longer" and "has more bugs" and you'll have no help.
  • Be less feature-ful. You probably cannot keep up the pace with many developers, and some will inevitably be lower priority.
  • Have no outside help. There's no possibility of help from the outside world if you write your own. You might be able to turn to StackOverflow (etc) for the open source libraries.

To address your 'benefits' of writing your own:

  • Open source is open, provided you don't pick a project with a wacky license, you have the source, so you have full control over it. No point to "build your own".
  • "if something breaks, I know exactly where to fix it"... yes. If you write it, it will probably break more often, if you ship it at all... but then you'll know where to fix it. I'd guess that any open source library with a modest level of complexity will probably be easier to learn to debug than to rewrite.

Remember, once you've taken control over the market, you can rewrite parts or all of your uses of this framework to address constraints, but if you take too long to develop it at all, you won't have any users that will care.

If it wasn't clear from my points, I'm pro "use and contribute to existing good software" and against "reinvent the wheel and NIH syndrome".

Stephen
I think you pretty much cleared all the doubts I had :) - so I wont waste other people's time answering this question. Thanks a lot for sharing your insight :)
Gublooo
@Gublooo : Glad I could help ;)
Stephen