5 ms·
Agree, so very strongly. Got about 4 weeks into a client project with Drupal and scrapped it in favor of Django. I've been continually mystified every time I se
by mikeocool 16y ago
Agree, so very strongly. Got about 4 weeks into a client project with Drupal and scrapped it in favor of Django. I've been continually mystified every time I see folks singing its praises, but you bring up a fair point, it provides a lot of out of the box functionality. Extending or changing that functionality just turns out to be a nightmare.
- spyrosk 16y agoWhat about hybrids like Silverstripe? Has anyone used it (or something similar) for large-ish projects? Although personally I use mostly CakePHP, I began playing with it lately and it seems to me that it has a lot of potential. Basic CMS functionality is provided out of the box, but I really like the way you can extend the core classes and integrate your own functionality into it, without losing the typical ease of use, even for non developer maintainers/users.
- mashmac2 16y agoWhat differentiates Silverstripe from something like Django? It seems to me like Django offers 'Basic' CMS functionality, althought how you define that is up to you :)
- metachris 16y agoI personally prefer frameworks that get out of my way over Django which forces a lot of idioms onto you. Like web.py, and if it's your taste add Jinja and SQLAlchemy and you've got a decent stack to quickly iterate.
- knieveltech 16y agoDrupal has a learning curve like the Matterhorn, plain and simple. Based on observations made over the last four years I'd say the majority of projects started using Drupal with competent developers who have little or no prior experience with the CMS typically fail. The odds improve drastically as a team's familiarity with Drupal grows.
- ams6110 16y agoDrupal is a CMS, not a general purpose web app platform. There are a few Drupal modules that are essential do doing anything remotely "custom" and the most important of these I would consider to be CCK, Views and Panels. Many of the better modules integrate with Views. The top 20% of Drupal modules are decent, the remainder are to varying degrees quite amateurish. If you find yourself writing a lot of PHP on a Drupal project, you're doing it wrong. It's not just that the learning curve is steep, it's that the internals are a steaming pile. The code is straight out of the last decade: large PHP functions sprinkled with SQL queries built up from concatenated strings. It's no surprise that SQL injection vulnerabilities are still being found on almost a weekly basis in one module or another. There is absolutely no transaction management; the assumption is that a Drupal site will be modified by a few and viewed by many. The functionality of Drupal is powerful. But stick to using modules and maybe a little bit of PHP helper code. If you are implementing a lot of custom logic in PHP, you're better off using a more conventional (modern) web app framework.
- knieveltech 16y agoI think we're on the same page more or less but there are a few points I'd like to clarify: 1. I'm aware that Drupal is a CMS. 2. I don't find myself writing a lot of custom code on my Drupal projects and that's the entire point (for me anyway) of using it as a dev framework. 3. You have a few thousand developers of various skill levels submitting modules and the quality is absolutely going to vary from module to module, this is unavoidable. Learning to vet your modules carefully and taking a less is more approach with module installation is part of the learning curve. 4. Drupal's internals are a steaming pile compared to what, exactly? Ever taken a look at Wordpress's core code? All code sucks.
- rfugger 16y ago> Drupal's internals are a steaming pile compared to what, exactly? Ever taken a look at Wordpress's core code? All code sucks. Yes, and I'm sure Joomla's code is terrible as well. On the other hand, I can most often peer into Django's internals comfortably and see exactly how it is working, and extend that as needed.