I'm so tired of taking over sites where the former "developer" used a Drupal or Joomla installation.
It is inevitable that the requirements of a custom web app will eventually exceed the capability of these systems. Knowledge of a particular CMS does not a developer make! These are tools in a toolbox and should be used as such. I hate it when people sell themselves as freelance "programmers", but really they only know how to use a particular CMS. So lets write a book and encourage this behavior - bluagh..
Ah the ever popular Request for Citation, the easy but ultimately ineffective method of deflecting anecdote.
What, do you expect someone to have some case study that considers which percentage of all websites ever created outgrow their CMS? Argh, as if! Anecdote is the best you'll get in this type of discussion. Guess what? IT pros get paid based on their knowledge of anecdote; it's called experience.
I agree with OP. Many of these CMS have fairly limited use cases. As soon as you outgrow that you have to hack its core, which often produces less-then-stellar results. Then you have to learn the (in the case of Drupal) byzantine and poorly documented API.
Use Drupal if you want a blog or some kind of a news site where content is published for people to read and comment on. If you want something more, then creating software to fit your need IS NOT reinventing the wheel. It's building for your particular use case. Don't use a hammer when you need a sawzall.
If you want a skyscraper you wouldn't make the mistake of piling prefab houses on top of one another to reach the desired height (after all, the walls are built! Why, it'd be reinventing the wheel to build walls!) If you want an eCommerce site or some other relatively complex or specialized app, then don't make the mistake using an overgrown blog site. The time you save doing things that *are* wheel reinvention (authentication, user profile, other plumbing functions) will be lost when you need to kludge something together to stay withing the framework and still fit your needs, and then have to support said kludge.
Then you have to learn the (in the case of Drupal) byzantine and poorly documented API.
This is where I stopped using Drupal.
Well, sort-of. I also had a GPL issue where I had to keep arms-length from a proprietary system in order to integrate with a Drupal system, but mainly it was trying to make Drupal scale. I don't mean scale in the sense of multiple servers, but "scale" in the sense of keeping track of a system of sufficient size. At some point you've got dozens and dozens of modules of varying quality
I agree with OP. Many of these CMS have fairly limited use cases. As soon as you outgrow that you have to hack its core
Or write a module that has the functionality you're looking for. It's not that much harder than writing it for your homebrew web app, plus other people will be able to benefit from what you've developed afterwards.
Tired of crappy CMS' (Score:4, Interesting)
I'm so tired of taking over sites where the former "developer" used a Drupal or Joomla installation.
It is inevitable that the requirements of a custom web app will eventually exceed the capability of these systems. Knowledge of a particular CMS does not a developer make! These are tools in a toolbox and should be used as such. I hate it when people sell themselves as freelance "programmers", but really they only know how to use a particular CMS. So lets write a book and encourage this behavior - bluagh..
Re:Tired of crappy CMS' (Score:2)
It is inevitable that the requirements of a custom web app will eventually exceed the capability of these systems.
Citation? What percentage of these systems outgrow their CMS? I'm not much of a programmer but even I've extended drupal.
Re:Tired of crappy CMS' (Score:4, Insightful)
Ah the ever popular Request for Citation, the easy but ultimately ineffective method of deflecting anecdote.
What, do you expect someone to have some case study that considers which percentage of all websites ever created outgrow their CMS? Argh, as if! Anecdote is the best you'll get in this type of discussion. Guess what? IT pros get paid based on their knowledge of anecdote; it's called experience.
I agree with OP. Many of these CMS have fairly limited use cases. As soon as you outgrow that you have to hack its core, which often produces less-then-stellar results. Then you have to learn the (in the case of Drupal) byzantine and poorly documented API.
Use Drupal if you want a blog or some kind of a news site where content is published for people to read and comment on. If you want something more, then creating software to fit your need IS NOT reinventing the wheel. It's building for your particular use case. Don't use a hammer when you need a sawzall.
If you want a skyscraper you wouldn't make the mistake of piling prefab houses on top of one another to reach the desired height (after all, the walls are built! Why, it'd be reinventing the wheel to build walls!) If you want an eCommerce site or some other relatively complex or specialized app, then don't make the mistake using an overgrown blog site. The time you save doing things that *are* wheel reinvention (authentication, user profile, other plumbing functions) will be lost when you need to kludge something together to stay withing the framework and still fit your needs, and then have to support said kludge.
Re: (Score:2)
This is where I stopped using Drupal.
Well, sort-of. I also had a GPL issue where I had to keep arms-length from a proprietary system in order to integrate with a Drupal system, but mainly it was trying to make Drupal scale. I don't mean scale in the sense of multiple servers, but "scale" in the sense of keeping track of a system of sufficient size. At some point you've got dozens and dozens of modules of varying quality
Re: (Score:1)
I agree with OP. Many of these CMS have fairly limited use cases. As soon as you outgrow that you have to hack its core
Or write a module that has the functionality you're looking for. It's not that much harder than writing it for your homebrew web app, plus other people will be able to benefit from what you've developed afterwards.
Re: (Score:0)
There is no anecdote here, just a blanket statement with absolutely nothing to back it up. Not one single anecdotal example.