By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
438,664 Members | 1,623 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 438,664 IT Pros & Developers. It's quick & easy.

Whether to use CMS or to build from scratch?

P: n/a
I've been thinking lately about whether to use opensource CMS such as
Joomla or to build something from scratch.

I am good with PHP/ MySQL but only little bit familiar with Joomla.

I want to know when to use CMS and when to code from scratch? How do I
make such a decision? Need some expert advice.

Thanks

Feb 13 '07 #1
Share this Question
Share on Google+
8 Replies


P: n/a
white lightning wrote:
I've been thinking lately about whether to use opensource CMS such as
Joomla or to build something from scratch.

I am good with PHP/ MySQL but only little bit familiar with Joomla.

I want to know when to use CMS and when to code from scratch? How do I
make such a decision? Need some expert advice.

Thanks
You may want to try pmWiki. This will give you a realy nice base. I
happen to use it for my site once I had to give up my JSP\Servlet based
website.

I find that it is very flexible. It has a lot of add on modules
(recipes) to enhance your site. You can also easily add on your own
modifications (php).

Main link is here:
http://www.pmichaud.com/wiki/PmWiki/PmWiki

Link for all of its recipes from their cookbook:
http://www.pmwiki.org/wiki/Cookbook/Cookbook

All of the Themes (skins) you can use
http://www.pmwiki.org/wiki/Cookbook/Skins

--
Thanks in Advance... http://weconsultants.prophp.org
IchBin, Pocono Lake, Pa, USA http://ichbinquotations.awardspace.com
__________________________________________________ ____________________
'If there is one, Knowledge is the "Fountain of Youth"'
-William E. Taylor, Regular Guy (1952-)
Feb 13 '07 #2

P: n/a
white lightning wrote:
I've been thinking lately about whether to use opensource CMS such as
Joomla or to build something from scratch.

I am good with PHP/ MySQL but only little bit familiar with Joomla.

I want to know when to use CMS and when to code from scratch? How do I
make such a decision? Need some expert advice.
Much depends on how soon you need things up and running, even if a CMS can't
do exactly what you want, you can in most cases write a module that will do
what you need to have done.

It's only if you need to do things that are really special and which you can't
do with a module in a already made CMS, then start to think of making
something from scratch.

Of course if there are things you need to test when it comes to your coding,
then you can start from scratch too, but usually it's enough to just make
something small for testing something new instead of writing a new CMS.
--

//Aho
Feb 13 '07 #3

P: n/a
white lightning wrote:
I've been thinking lately about whether to use opensource CMS such as
Joomla or to build something from scratch.

I am good with PHP/ MySQL but only little bit familiar with Joomla.

I want to know when to use CMS and when to code from scratch? How do I
make such a decision? Need some expert advice.

Thanks

That depends on the problem you're trying to solve.
If you want to have a CMS package that's your own - build it.
If you just want to know CMS inside and out - build it.
If you want to learn every aspect of LAMP - build a CMS.

But if you're like an IT guy somewhere, and you just need to get
a website going, then reinventing the wheel might not be your
best choice.
Feb 13 '07 #4

P: n/a
white lightning wrote:
I've been thinking lately about whether to use opensource CMS such as
Joomla or to build something from scratch.

I am good with PHP/ MySQL but only little bit familiar with Joomla.

I want to know when to use CMS and when to code from scratch? How do I
make such a decision? Need some expert advice.

Thanks
What are your motivations?

In purely business terms, an established package lets you deliver to
customers faster. You accept a small learning curve, because its still far
smaller than trying to establish a familiarity with the problem domain by
responding one-by-one to customer demands, especially if the customers are
expecting slick up-to-date sites.

The other common motivation is simply that programmers like to code, so we
code. Why take a 3 hour flight to LA when I can walk there myself in only
4 months!

--
Kenneth Downs
Secure Data Software, Inc.
(Ken)nneth@(Sec)ure(Dat)a(.com)
Feb 14 '07 #5

P: n/a
On Feb 14, 1:31 pm, Kenneth Downs <knode.wants.t...@see.sigblock>
wrote:
white lightning wrote:
I've been thinking lately about whether to use opensource CMS such as
Joomla or to build something from scratch.
I am good with PHP/ MySQL but only little bit familiar with Joomla.
I want to know when to use CMS and when to code from scratch? How do I
make such a decision? Need some expert advice.
Thanks

What are your motivations?

In purely business terms, an established package lets you deliver to
customers faster. You accept a small learning curve, because its still far
smaller than trying to establish a familiarity with the problem domain by
responding one-by-one to customer demands, especially if the customers are
expecting slick up-to-date sites.

The other common motivation is simply that programmers like to code, so we
code. Why take a 3 hour flight to LA when I can walk there myself in only
4 months!
That's exactly what I was trying to find out. I personally like to
code. I feel that's more challenging and I feel like I'm in full
control of what I am doing. But if I start coding things from scratch,
as you said, it might take me 4 months to build a fairly complex site
whereas if I use Joomla, that'll probably do the same job in a week.
If someone uses Joomla to create a website, they can do it quicker and
cheaper. If I start coding, it'll be slower and expensive. Something
made with Joomla may cost $2000 whereas if I code from scratch, the
same thing would have to be charged no less than $8000.

So does that mean, is pure coding a thing of the past with the
introduction of powerful CMS such as Joomla? What are your thoughts?

Feb 14 '07 #6

P: n/a
white lightning wrote:
I've been thinking lately about whether to use opensource CMS such as
Joomla or to build something from scratch.

I am good with PHP/ MySQL but only little bit familiar with Joomla.

I want to know when to use CMS and when to code from scratch? How do I
make such a decision? Need some expert advice.
I'll do one better than most replies, I'll explain why I use a package
and why I don't.

For my clients who want storefronts I generally use OSC (actually and
OSC derivative called OSCMax that we have further modified). It does
about 95% of what I need done and it is VERY stable. That's the biggest
issue. The last thing I want is something as a base that is going to
undergo a massive change or require a massive fix. Why? Because when I'm
done making the modifications I need to make my customers happy (and
every version of anything open source will need modifications to make
your customers happy) and for adding features I can mostly keep away
from the primary tables making it easy to update. ***and that's the
key*** See every piece of open source, sooner or later, will have to be
upgraded, and the more you have messed with the base code, the more pain
there is in the upgrade. A great example of painful upgrading is PHPbb
which lacks the structure to gracefully be modified.

Okay, now back to CMS and why we created SiteControl rather than use
open source. Every client has a set of CMS needs that are core, and then
they have a set that are unique to their specific cases. The problem is
that most CMS systems create massive projects that try to reach the
largest user base. 99% of my clients don't need a calendar system. In
fact, only one out of all my projects does and they needed only a simple
announcement calendar. So why have a massive system that has tons of
stuff in it to handle and manage calendaring?

So, we built ourselves so we could create a system that has "packages"
that our user community can pick and choose from. Some of these are open
source packages that we have modified into the product. Others are built
specific to our clients needs. Every client wants a "contact us" page,
so that is a core module that we include in every package. On the other
hand, only those that need a links page will buy the links module.

In addition, we offer a multiple number of "navigation" modules that we
can integrate. So a client can have "top navigation" "side navigation"
"footer navigation" expanding navigation or static. Mouseover navs or
dhtml navs or image navs, all with the simplicity of just changing one
module.

The best part is that clients that host with use all have "common
elements". That means that when we add feature sets to a component that
they have, we roll the component out across the server and all clients
get the upgrades and updates. Since we control the components the
components degrade gracefully for clients that want to maintain the site
as it was, but those that want to use the new features can start to at
any time.

An example of this was the "contact us" module. It had the ability to
include a pull down "reason" that the client could update at will. One
client wanted to be able to have the system send an e-mail to a
different person based on the reason code. So, we updated the code and
the database to allow e-mail addresses to be associated to reasons in
the selection list. When we pushed the code out to all the clients we
saw some immediately start to take advantage of the new feature. One
created multiple contact us pages (allowed and supported in SiteControl)
for each different project. This allowed them to have people in "Project
A" be listed by title and have web-users send them e-mail, and do the
same thing for "Project B" where as before all e-mail went to one
"Project" box for each project and then someone forwarded it to the
right person based on the reason code. Other clients did not want to use
the new feature, and their code degraded with no issues to the same as
it was before the code upgrade. They didn't see any difference except an
optional field on the backend that they could ignore.

So, the question you ask is best answered by what you want to maintain
and manage. If you want to have a large CMS system out there (the more
code there is out there, the greater possibility that it will break) or
do you want to be able to build to suit?

A shopping cart system like OSC is VERY different than a CMS system. In
a shopping cart system there are a set of very common tasks that almost
every cart will have to perform. In a CMS system each clients needs are
far different and in some cases 75% of an open source project will be
unneeded (yet will have to be maintained).

So, that sort of covers the process I went through in making a
determination on what would be open source and what would be hand built.
And yes, when we use open source we do give back (I wrote the initial
recover carts program for OSC). But, even when you look at what we give
back, it follows our philosophy of not messing with the core tables of
an application :-) Some open source applications are built so that can
be done, with ease, those are the ones I recommend that you consider if
you do consider open source.
Feb 14 '07 #7

P: n/a
white lightning wrote:
On Feb 14, 1:31 pm, Kenneth Downs <knode.wants.t...@see.sigblock>
wrote:
>white lightning wrote:
>>I've been thinking lately about whether to use opensource CMS such as
Joomla or to build something from scratch.
I am good with PHP/ MySQL but only little bit familiar with Joomla.
I want to know when to use CMS and when to code from scratch? How do I
make such a decision? Need some expert advice.
Thanks
What are your motivations?

In purely business terms, an established package lets you deliver to
customers faster. You accept a small learning curve, because its still far
smaller than trying to establish a familiarity with the problem domain by
responding one-by-one to customer demands, especially if the customers are
expecting slick up-to-date sites.

The other common motivation is simply that programmers like to code, so we
code. Why take a 3 hour flight to LA when I can walk there myself in only
4 months!

That's exactly what I was trying to find out. I personally like to
code. I feel that's more challenging and I feel like I'm in full
control of what I am doing. But if I start coding things from scratch,
as you said, it might take me 4 months to build a fairly complex site
whereas if I use Joomla, that'll probably do the same job in a week.
If someone uses Joomla to create a website, they can do it quicker and
cheaper. If I start coding, it'll be slower and expensive. Something
made with Joomla may cost $2000 whereas if I code from scratch, the
same thing would have to be charged no less than $8000.

So does that mean, is pure coding a thing of the past with the
introduction of powerful CMS such as Joomla? What are your thoughts?
I find CMS's don't save me much time at all. I still have to write all
the PHP, ASP or whatever code. I still have to write the HTML.
Something that takes me 2 weeks to write for a CMS generally would take
me about 2 weeks to write myself.

CMS's are nice in that they allow you to design the page once and
continue to use them. But you can do the same thing with templates and
include files.

Now I'm not saying CMS's are bad. They aren't. They're just a
different way of doing things. If they work for you, by all means go
for it. They just don't do anything for me except complicate things.

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
Feb 14 '07 #8

P: n/a
white lightning wrote:
I want to know when to use CMS and when to code from scratch?
To paraphrase Kelly Martin (SecurityFocus.com), using a third-party CMS is
like drilling your own teeth: it's sometimes scary not being able to see
what's going on, in case something goes wrong.

--
Toby A Inkster BSc (Hons) ARCS
Contact Me ~ http://tobyinkster.co.uk/contact
Geek of ~ HTML/SQL/Perl/PHP/Python*/Apache/Linux

* = I'm getting there!
Feb 15 '07 #9

This discussion thread is closed

Replies have been disabled for this discussion.