3 ms·
Drupal is the logical extension of the whole CMS movement of the late 90s that was predicated on the idea that web functionality could be commoditized. At the
by dasil003 14y ago
Drupal is the logical extension of the whole CMS movement of the late 90s that was predicated on the idea that web functionality could be commoditized. At the time it made sense because developing web software was new and no one knew how to do it very well.
These days it's easy to look at Drupal and just write it off as antiquated and horribly clumsy compared to the Railses and Nodes of the world, but Drupal is still going strong because custom software is not the be-all-end-all of web development. Drupal serves a huge market of people who simply could not afford an A-grade site built from scratch with one of the many low-level frameworks out there.
Drupal's high-level abstraction is, as you point out, incredibly restricting, but at the same time it enables you to check off a huge list of functionality from a project without writing a single line of code. As far as the architecture is concerned, it's actually pretty brilliant for what it is. The power to weight ratio is certainly an order of magnitude higher than Wordpress or any other CMS that I'm familiar with.
If you take the time to really learn the internals and how all the hooks interact, I think you can be quite a bit more productive than any Rails developer, albeit with considerable more restriction into the shape of the final product (again, client type and project requirements matter here). You probably can command an obscene salary as well given the number of Drupal sites out there and the difficulty of maintenance. Personally, I hate Drupal and consider it an evolutionary dead-end, but I have respect for its architecture and the type of work it enables.
- nnq 14y ago> Drupal serves a huge market of people who simply could not afford an A-grade site built from scratch with one of the many low-level frameworks out there. ...same can be said for WordPress, that actually "evolved into" a CMS from a humble blogging platform. And when freelancing, I made the "mistake" of offering customers a "custom coded Django based solution" at the same price one would charge for a WordPress based solution (functionality via custom theme/plugin). Boy, it was confusing for customers! The ones that knew about technology and prices couldn't know what to make of it, and it ended up lowering their confidences in what I had to offer! I just didn't fit in with their mental models of technology and prices - especially when you add the fact that I charged per project or per feature and not by the hour (they couldn't imagine that using what they seemed as a more expensive technology with allow me to do the job in less time and with less effort). I think we're approaching the point where a chinese/indian dev will end up stitching up a Rails/Django solution at the same WP-level < $40 / hour...