×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Drupal's Creator Aims For World Domination

timothy posted about a year ago | from the drupally-drupally-drupally-onward dept.

Open Source 192

angry tapir writes "Open-source content management system Drupal has come a long way since it was initially released in 2001. Drupal now runs 2% of the world's websites — but Drupal's creator Dries Buytaert thinks that this could easily grow to 10%. I caught up with Dries to talk about Drupal's evolution from a pure CMS to a Web platform, cracking the enterprise market, and the upcoming release of Drupal 8, which features significant architectural changes — incorporating elements of the Symfony2 Web framework to replace Drupal's aging architecture."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

192 comments

Navigation (4, Interesting)

cgt (1976654) | about a year ago | (#43135665)

Does it have a sane menu system yet?

Re:Navigation (4, Insightful)

narcc (412956) | about a year ago | (#43135777)

No. Both to your question and any other "Does it have a sane ______ yet?" questions.

As far as I can tell, the only reason to use Drupal is that it's easy to find and hire people who are familiar with it.

Re:Navigation (0)

Anonymous Coward | about a year ago | (#43135921)

As far as I can tell, the only reason to use Drupal is that it's easy to find and hire people who are familiar with it.

That sounds like a good reason to me. Drupal's so much more than just a CMS. Yes, the fact it's written in PHP is a bit of a pain but if you want rapid website or application development in a mostly-secure, mostly-performant and readily supported and extensible framwork, then it's well worth looking it.

Re:Navigation (5, Insightful)

Rhaban (987410) | about a year ago | (#43136087)

it's easy to find and hire people who are familiar with it.

who *think they* are familiar with it.

Drupal looks easy to extend for a beginner developper because, like php, you don't have to do something right to have it work.
So it's really quick to have a mess of a codebase that leads to an unstable site that's a nightmare to maintain.

But if you really know the insides of it, you can craft a something beautiful that runs smoothly and is easy to work with. It's not perfect, and "real" coders will look at its non-use of OOP with contempt, but it's pretty good at what it can do.

And, let's be honest for a second: it's one of the least horrible open source CMSs out there (at least in the php world, I don't really know about Java or python or other CMSs).
If you want a good pphp cms, you have Drupal or Ezpublish. There's wordpress that wants to be a cms but isn't quite there, Joomla is a joke, Typo3 is from another time... The perfect software doesn't exist.

Re:Navigation (5, Informative)

ios and web coder (2552484) | about a year ago | (#43136361)

Drupal is the best of the "big 3" CMSes. Hands down.

However, it has a Matterhorn learning curve, and I choose not to use it in most of my work; opting for WordPress.

The thing about Drupal is that it has an extremely solid extension mechanism. Lots of good hooks, and thoughtful design.

I write plugins for all 3 CMSes. I am extremely familiar with what it takes to extend each. Drupal and WP can be extended with a single file that allows me to provide a powerful administrative interface, content filter and module system.

Joomla, on the other hand, requires -I am not exaggerating- ten times as much work as either Drupal or WP, and, subsequently, ten times as many "problem nodes," for juicy, fat bugs.

For example, if I want to handle AJAX responses, Drupal and WP each offer a simple hook to intercept program execution at a point between CMS setup (authentication, module initialization, etc.) and HTTP output (I need to output prior to any headers being sent out). Since I can use the same module file, I can preserve object context. Also, they each have a very simple CSV options/preferences system that abstracts the database behind a basic functional interface.

In Joomla, I am forced to write an entire system plugin, and use a pretty hairy database "semaphore" system to communicate context. I also need to write a content plugin in order to allow a shortcode ability. In both Drupal and WP, the content filter is simply another functional interface in the same context.

However, for the kind of extensibility that Joomla offers, only Drupal can match it, and Drupal has that learning curve, so it tends to be popular amongst folks that want a heavily-customized site, with less knowledge, than Joomla.

Re:Navigation (3, Informative)

ios and web coder (2552484) | about a year ago | (#43136369)

However, for the kind of extensibility that Joomla offers, only Drupal can match it, and Drupal has that learning curve, so it tends to be popular amongst folks that want a heavily-customized site, with less knowledge, than Joomla.

Whoops. Posting before coffee.

Switch "Joomla" and "Drupal."

As noted, there is no such thing as a "perfect" CMS. Much as I may grouse, Joomla is extremely popular, and I need to support it. For many folks, Joomla is the "perfect" CMS.

Re:Navigation (1)

Rhaban (987410) | about a year ago | (#43136733)

I don't know how Joomla has evolved since I last used it several years ago (just after the introduction of joomla 1.5), but its flaws were blockers for me.

It had almost no extensibility (new features had to be written almost like external applications, integrability with the core of the cms was minimal), no adaptability (you couldn't add a field to a content form without modifying half a dozen files, and there were no way to have different content types. Also you couldn't change the site structure: you had to hav all your content under a 2-levels hierarchy of sections and category), and no inter-operability between extensions (an extension like jacl, which brought almost-decent acl capabilities to joomla, was unable to work with community manager, a widely used extension that implemented the concept of use groups).

And it used an MVC object structure that looked like the software architect had no idea of the goal of an mvc structure, but had read in a blog that mvc is good.

Re:Navigation (3, Informative)

ios and web coder (2552484) | about a year ago | (#43136843)

And it used an MVC object structure that looked like the software architect had no idea of the goal of an mvc structure, but had read in a blog that mvc is good.

I'm pretty sure that it was designed by fairly young JAVA folks. The patterns are extremely similar to many academic exercises in JAVA.

Young folk are willing to work very hard, and hit the Kool-Aid like there's no tomorrow. It can be quite amusing to read some of the Joomla discussion forums.

Also, I think that they switch architects fairly frequently, so they tend to rewrite the whole damn system on a regular basis. Keeping a plugin compatible between all the various Joomla versions is a nightmare. The fact that I have to provide four different modules to do what one single file can do in other CMSes means that my installer is a real Rube Goldberg machine.

Re:Navigation (1)

foniksonik (573572) | about a year ago | (#43136865)

It's been a while but try modx. Powerful event system, easy to extend. Good dev community. The maintainer is in Dallas and is a nice guy (more than one guy but he's the head honcho).

Re:Navigation (3, Insightful)

ios and web coder (2552484) | about a year ago | (#43137153)

Thanks for the tip. I have heard very good things about TextPattern [textpattern.com] and EZ Publish [ez.no] . However, the issue is that the folks who use my code are primarily "big 3" users; with a distressing number of Joomla users.

It has to do with "market penetration" and "community support," as much as good code, ease of extensibility, etc.

Re:Navigation (5, Informative)

alreaud (2529304) | about a year ago | (#43138209)

Drupal being "best" is in the eyes of the beholder. If you already are familiar with CMS and mySQL, then Drupal is the best. But if you have very little experience, Wordpress is by far the easiest. For my own sites, I use Drupal, but for client sites, I use Wordpress because it's easier for non-technicals to operate. That being said, Drupal has an upgrading catch. I'm running 6.28, I think, and find it impossible to port over to version 7 without manually porting over the database table by table. There should be a way to port content tables to new versions without a lot of pain and suffering...

Re:Navigation (0)

Anonymous Coward | about a year ago | (#43135945)

I was recently asked to revisit Drupal, contrary to my own inclination. I have to say, it has come a long way from the horrifying experiences I'd had with it years ago.

From a neatness, polish, and ecosystem perspective, it's not (the far more popular) Wordpress. But as anyone would tell you, it really is much more flexible. Integrating a 3rd party membership system in Wordpress that matches even primitive additions to Drupal is a bit like grafting together a bird and a pig. One is just very obviously a blogging site with lots of available plugins and one is a real website framework.

I am still hoping for a nice, new system, without any architectural cruft, that's not done in PHP. I'd like to see it done in Python, but I can't immediately leverage someones buggy weekend project with zero 3rd party support. It's going to take a couple years for something to become a useful alternative. I look forward to that day, though.

Re:Navigation (0)

Anonymous Coward | about a year ago | (#43136101)

This project already exists and it is called Django!

it will never happen (-1)

Anonymous Coward | about a year ago | (#43135673)

And thats all i have to say on the matter.

Re:it will never happen (0)

Anonymous Coward | about a year ago | (#43135705)

I just spend an awful lot of time learning Drupal 7.

It's really one hell of a huge bloated POS while magnificent at the same time.

Drupal 8 seems even bigger like it has gone full retard, is it safe to assume it will be even more bloated?

What's so good about Drupal 8 or are the core devs just deluded?

Re:it will never happen (2)

gigaherz (2653757) | about a year ago | (#43135867)

Based on the content in the surrounding comments, it's safe to assume the devs are just deluded.

Re:it will never happen (3, Informative)

phyrz (669413) | about a year ago | (#43136653)

Check out the lastest 8.x version by going to http://simplytest.me/project/drupal [simplytest.me] and choosing 8.x. The site will install 8.x-dev for you and you can play with it.

Some things to look at:

- In place editing
- CKeditor in core
- Responsive out of the box (check the new admin menu)
- Views in core

There's a heap of scary awesome changes going on in the backend though

- replacing lots of sub systems with Symfony components
- RESTFUL services by checking a checkbox.
- TWIG as a templating engine
- Configuration management initiative
- HTML5 and mobile
- Far better multilingual support than previous versions.

check out http://groups.drupal.org/drupal-initiatives [drupal.org] for more info.

PHP (0)

neonmonk (467567) | about a year ago | (#43135717)

The world needs less bloated PHP content "management" systems.

Re:PHP (4, Insightful)

Anonymous Coward | about a year ago | (#43135743)

A bloated CMS is bloated no matter what language it's written in. That's like blaming the hammer for the house being crooked. :)

Re:PHP (0)

Anonymous Coward | about a year ago | (#43135783)

There is the difference that with a standard PHP setup, the whole framework must be parsed from the code and bootstrap itself (establish database connections and such) for each page view. With RoR, Django, etc., those things are only done once upon application startup and all pages are then served by the running application. Much faster.

Re:PHP (3, Insightful)

Alain Williams (2972) | about a year ago | (#43136097)

There is the difference that with a standard PHP setup, the whole framework must be parsed from the code

Look at APC [php.net] - compile once and cache the code thereafter

establish database connections

Find out about Persistent connections [php.net]

for each page view. With RoR, Django, etc., those things are only done once upon application startup and all pages are then served by the running application. Much faster.

I am not saying that PHP does not have its problems, but it is a good web platform. PHP's main problem is that there is a low barrier to entry, so people who do not have much clue can produce something ... that looks good, but is buggy with horrible security problems.

Re:PHP (0)

Anonymous Coward | about a year ago | (#43136407)

You do not have any clue about the difference between languages and frameworks. There are a lot of frameworks including one is almost direct port of RoR as is told by the site. RoR and Django are frameworks, dude!

Re:PHP (0)

Anonymous Coward | about a year ago | (#43135801)

The difference is memory persistence. PHP code is reevaluated for each page call and also needs to reestablish database connections and so forth each time. Other languages don't suffer from that.

Re:PHP (1)

shitzu (931108) | about a year ago | (#43135911)

This is not a language issue. It is an architecture issue. No one forbids you to run php script once and serve multiple pages from it. There are even several well known implementations - google fastcgi for instance.
You are effectively saying that the english language sucks because people swear a lot nowadays.

Re:PHP (0)

Anonymous Coward | about a year ago | (#43135983)

PHP was designed to have an easy way to drop some automation into HTML, without having to use Perl or C for something as simple as basic form processing or a counter. Only later were descent language features added, and it was also only later that PHP gained the ability to serve multiple pages from one call. In that sense it is a language issue, because the language's design advocates not to follow this design pattern.

Re:PHP (1)

shitzu (931108) | about a year ago | (#43136437)

Language does not advocate you to follow anything. Just because humans invented the language to coordinate attacks agains mammoths does not mean using a language advocates hunting.
The only reason why php is often served the way it is - a script that is compiled every time - is because it is convenient and often even practical to do so in a virtually hosted environment.
Look - i am no fan of php - i am just pointing out that "PHP code is reevaluated for each page call" is simply a false statement.

Re:PHP (2)

Seumas (6865) | about a year ago | (#43135813)

Even though our government uses Drupal (or, rather, the people they pay tens of millions of dollars per website to make that end up just being done with Drupal), I tend to advise people against it as often as possible. The whole PHP foundation of it just doesn't cut it for me. Granted, it's a decent system -- especially for free -- but the PHP part gives me discomfort after watching it on the web for the last decade and a half.

I tried Python based (1)

future assassin (639396) | about a year ago | (#43135831)

but seems you have to have the framework already installed on the server. i love Drupal and Ubercart but was looking for non PHP alternatives.

Re:PHP (4, Interesting)

dejanc (1528235) | about a year ago | (#43135893)

PHP is not getting a lot of love, especially here on Slashdot, and Drupal is one of the reasons to blame. Sure, PHP has its fair share of design flaws, but ever since version 5, it's a decent enough language to code in and can get a lot of done.

The problem is with Drupal, Wordpress, Joomla and other very popular CMSs and frameworks which are all a strange mix of procedural and oo code, and lack a proper distinction between model, views and controllers.

Its problems are certainly not the things that are often quoted, like mysql_real_escape_string (which just follows C api [mysql.com] and is deprecated anyway), or inconsistent naming conventions. The problems are deeper - things like lack of threads comes to mind.

Still, the reason why I like PHP is that with a good framework (e.g. Zend Framework 2 is promising, but there is also CakePHP, FuelPHP, CodeIgniter, etc.) you can build a very solid application. Procedural PHP is actually a fantastic and very powerful template engine [php.net] and otherwise you can write relatively clean and easy to read code in it if you structure the program correctly. It's very simple to deploy (especially compared to e.g. RoR) and has extensions for pretty much any database or graphics library or anything else a web developer may need.

Re:PHP (0)

Anonymous Coward | about a year ago | (#43136459)

Avoid FuelPHP unless you don't ever want to test your code. You might get the impression that nothing but static functions exist, reading their libraries.

Cake ain't so bad. Needs some love in the ORM layer. And no, I do not mean that it needs Doctrine. CodeIgniter is somewhat less developed AFAICT.

I took a look at the tests for the Zend App Controller once. It had six separate functions to reset parts of the global state. Some classes from Zend may be useful, but I couldn't recommend it as a complete solution to anything.

Re:PHP (1)

dejanc (1528235) | about a year ago | (#43137171)

I took a look at the tests for the Zend App Controller once. It had six separate functions to reset parts of the global state. Some classes from Zend may be useful, but I couldn't recommend it as a complete solution to anything.

I presume you are talking about Zend Framework 1? I stayed clear from it, but I just started playing around with ZF2 and so far it looks nice. It gives impression of over-engineered framework, but after a couple of days with it, it's actually very powerful. I am still to start writing unit tests for it, but it looks like they gave it a lot of thought and that it will be very usable.

Re:PHP (0)

Anonymous Coward | about a year ago | (#43136669)

Why the fuck would you need threads in a web scripting language?

Re:PHP (2)

Xest (935314) | about a year ago | (#43136847)

Because sometimes web sites are used to trigger some form of processing behind the scenes that you don't want the user to have to sit and wait for and that might otherwise result in a time out anyway?

Re:PHP (1)

Ash Vince (602485) | about a year ago | (#43138217)

Because sometimes web sites are used to trigger some form of processing behind the scenes that you don't want the user to have to sit and wait for and that might otherwise result in a time out anyway?

You can do this if you cough up and buy Zend Server. Zend keep this as a paid for add on it seems

Drupal is the reason we have PHP developers (1)

Su27K (652607) | about a year ago | (#43136805)

There is no reason to use PHP unless you want to use Drupal, which is much bettern than the open source CMS in other platform/languages (DotNetNuke, Java CMS based on portlet API)

And Drupal has very good separation between data, business logic and presentation, this is one of its strong points, using the theme system you can completely replace the presentation of a module without touching the module's insides; using hooks you can tweak the business logic to your liking while reusing everything else.

Re:PHP (0)

Anonymous Coward | about a year ago | (#43136915)

PHP is not getting a lot of love, especially here on Slashdot, and Drupal is one of the reasons to blame.

I assure you, Drupal is far down the list of complaints against PHP on /.

Re:PHP (1)

mortonda (5175) | about a year ago | (#43136919)

Sure, PHP has its fair share of design flaws,

I think you seriously understate what's wrong with PHP [veekun.com] . Beside all the things that is mentioned in that article, I love how you suggest several php frameworks that attempt to be like Rails but all built on such a flawed language.

And Rails is not hard to deploy any more... that argument is several years out of date.

Re:PHP (1)

Ash Vince (602485) | about a year ago | (#43138297)

Sure, PHP has its fair share of design flaws,

I think you seriously understate what's wrong with PHP [veekun.com] . Beside all the things that is mentioned in that article, I love how you suggest several php frameworks that attempt to be like Rails but all built on such a flawed language.

And Rails is not hard to deploy any more... that argument is several years out of date.

Rails is great, providing you are willing to do everything exactly the way you are supposed to according to best practice. The problem is that some times in the real work you have to do things wrong (either to meet a deadline or just because you are stuck interfacing with a shit legacy system that nobody will pay to rewrite) and then Rails just refuses to play ball.

Short cuts are a part of commercial development unfortunately, that is why so much commercial stuff is written in PHP.

I always compare Rails to Pascal: A great language for learning best practice but lack the flexibilty that comes with languages like PHP or C in comparison to Pascal.

Re:PHP (4, Informative)

Xest (935314) | about a year ago | (#43136013)

To be fair, as PHP CMS' go, Drupal is one of the better ones.

Things like Joomla really are bloated in that they basically dictate how your site must be, and sure you can change that but you have to jump through so many hoops you're probably better off just starting from scratch unless you want anything other than their boiler plate.

Drupal at least was much more modular and generic and so made it easy to pick and choose what you do and don't use, and to decide how you wanted to do things so you could do more, and do them your way. As such I'd say it isn't bloated because you can strip it down to a fairly bare bones setup and it is fairly quick and easy to do, and fairly bare bones to start with even.

But at the end of the day it's still a PHP CMS and when you have Python now (a dynamic language that has at least some solid CS understanding behind it) then there's little point using any of the PHP CMS'. I've always been a best tool for the job type of person, but as time has gone by I've found that the jobs where PHP is the best tool have rapidly begun to dwindle towards extinction, simply put, there always just seems to be a better option now.

Personally though the more large projects I've done with dynamic interpreted languages the more I prefer to stick to compiled. They're great for getting something up and running quickly but when your code base reaches any reasonable size then it's far more useful to have the compiler catching things before execution that can only turn up as uncommon and hard to reproduce bugs with a dynamic language and as your project grows, the more the scope for that increases. This means that for larger projects, compiled languages actually often make development quicker because less time is wasted debugging. Beyond small projects interpreted languages quickly start lose their benefits, though this is in part also because compiled languages like Java, C#, or even C++ seem to have better, more mature toolsets built for them.

But regardless, whether you sit on the interpreted or compiled side of the fence there's little place for PHP now given that it doesn't even have for example, any proper threading support, the sort of thing which is becoming more and more important, and is outright essential to some applications.

Re:PHP (1)

drinkypoo (153816) | about a year ago | (#43137635)

But at the end of the day it's still a PHP CMS and when you have Python now (a dynamic language that has at least some solid CS understanding behind it) then there's little point using any of the PHP CMS'.

mod_php is everywhere. more ISPs actually support mod_perl than mod_python. If I expect to be able to shop around for hosting I'm not even going to consider a Python CMS. As well, name a Python CMS with even 80% of the functionality of Drupal...

Who cares (-1)

Anonymous Coward | about a year ago | (#43135729)

Ruby is a platform. Not drupal. Same shit as sharepoint.

Blah.

Let me be the first to say it (1)

Anonymous Coward | about a year ago | (#43135771)

I, for one, do not welcome our new Drupal overlords. I will choose death before being forced to slave away in their underground PHP datacaves.

6% of what? (-1)

Anonymous Coward | about a year ago | (#43135775)

All high-school and college student's first attempts at bloating the world with "Look at me mommy! I'm a programmer!"

unstable (0)

Anonymous Coward | about a year ago | (#43135785)

seems like every version of drupal features significant architectural changes

Re:unstable (0)

Anonymous Coward | about a year ago | (#43137065)

Sounds like a great pair to the Linux desktop, then.

WILL HUEY LEWIS FIND HIS NEW DRUG IN DRUPAL ?? (-1)

Anonymous Coward | about a year ago | (#43135793)

One that won't him sick ??
Won't make him feel three feet thick ??

That would be the news he could use !!

WordPress (4, Informative)

gaspyy (514539) | about a year ago | (#43135875)

For better or worse, WordPress has more marketshare than all other CMS-es combined.
See http://w3techs.com/technologies/details/cm-wordpress/all/all [w3techs.com] for an up-to-date look.

Many people still think of WordPress as a blogging platform, but it's really so much more nowadays. Security is not worse than with other solutions, it's just that (like with Windows), popularity attracts attention (and attacks), and usually poorly-made plugins are the problem (the timthumb vulnerability was the most notorious one).

I worked with many CMS solutions over the years - Allaire Spectra (anyone remember it?), DotNet Nuke, Typo3, CMS Made Simple, Joomla, Drupal, even hosted solutions like Squarespace and a bunch of others I can't even remember, but WordPress was the only one I could really develop for (functionality, themes, etc.)

Re:WordPress (0)

Anonymous Coward | about a year ago | (#43136039)

For better or worse, WordPress has more marketshare than all other CMS-es combined.

Purely because of all of the blogs hosted on Wordpress.com. Outside of that how many big organisations are choosing Wordpress as their CMS?

As a CMS Wordpress is better than it was and easy to use for blogging. Go beyond that and you have a lot more work to do than with Joomla & especially Drupal because you're moving outside the original operational parameters.

IMO Drupal is the most feature rich & extensible of the "PHP big 3".

Re:WordPress (3, Informative)

ios and web coder (2552484) | about a year ago | (#43136623)

I posted up there, somewhere about this.

I tend to use WP for my own sites. It is not as extensible as Drupal, but I can get a really well-crafted site up and going within a day. I would not recommend WP as an engine for, say, the White House. They made a good call with Drupal there. I believe that they actually added security code to Drupal, and returned it to the repository.

Joomla is clearly an engine written by recent grad JAVA lovers that hate PHP. Drupal was clearly written by folks very familiar with PHP, and a great deal of coding experience in the real world.

PHP? <shrug />. I use it, because it is important that folks actually be able to USE what I write. I'm not even slightly interested in pushing a coding philosophy. I need as many folks as possible to be able to install and run my code. I won't get that in any dynamic, database-driven server language other than PHP.

PHP is a suckass OO language. I tend to use OO as a Model layer or as a namespace. A lot of the rest tends to be procedural. I sometimes ROTFLMAO, when I see some of the conversations around the Joomla camp. It's like architects boasting about using mud daub to build a skyscraper.

"Drupal now runs 2% of the world's websites" (1)

snowtigger (204757) | about a year ago | (#43135883)

Keeping track of that many webservers have to be very time consuming tasks.

A fractal of bad design (4, Informative)

Serious Callers Only (1022605) | about a year ago | (#43135909)

I've worked with Drupal for cms websites and seen it used on other customer sites. You should never use it, seriously. It's remarkably similar to early php in being a fractal of bad design. [veekun.com] They are slowly trying to improve it, but their attempts at improvements are woeful. Some problems (which they've attempted to address, but many of which still plague users):

Hundreds of tables with the most Byzantine schema you can imagine, even for incredibly simple needs
Attempts to allow customers to define the db schema by adding fields etc
Code in the db - that anyone ever thought this is a good idea is a huge red flag
Upgrades are often incompatible
A horribly broken plugin system and ecosystem, resulting in sites which load hundreds of plugins to support simple tasks, and therefore have a huge attack surface and a huge amount of unmaintained, scarily bad code. I've seen sites with hundreds of these modules loaded.the learning curve is huge and the code extremely fragile due to the above decisions
Content is all stored in 'nodes' which are infinitely flexible, and therefore infinitely opaque and difficult to work with
There are no pros or professionals working with Drupal - anyone who was a pro would have run a mile a long time ago, so don't listen when someone says 'oh well you just don't know drupal well enough'

I dread to think what would happen if security professionals looked carefully at many drupal sites due to the above, particularly the modules situation. The closer you look at the code, the worse it gets

If you're thinking of using it for a php cms, think again, look at Wordpress for example - the code is relatively clean (though it is still php of course), the plugins are better maintained and fewer are required, upgrades for security are no hassle, and they didn't come up with crazy ideas like code in the db in the first place. I'd personally choose other options/platforms, but at least with Wordpress the environment is pretty sane for a small time cms, easy to adapt and friendly for an end user.

Re:A fractal of bad design (0)

Anonymous Coward | about a year ago | (#43136041)

You sound terribly negative.

I've used Drupal professionally for around 5 years and found it an immensely powerful and flexible content management and web development framework.

I've used Drupal to build scalable and high-traffic websites for a number of government and corporate IT projects.

It has a good secure software architecture and thriving community and is well suited to many web development projects.

Get over yourself, Drupal rocks :)

Re:A fractal of bad design (3, Informative)

Serious Callers Only (1022605) | about a year ago | (#43136123)

Have you ever used anything else? If so what? Nothing else I've used is so badly organised and so badly put together (Play, Rails, Sinatra, Flask, hell even Wordpress), save perhaps TYPO3, that was pretty bad (shudder). I wouldn't often be so negative about a web framework, and the devs are obviously keen and trying to improve, but the hubris involved in talking of world domination when your product is just awful in so many ways is quite incredible.

If you haven't tried other frameworks in a while, I do think you should try some other frameworks and languages, and then come back to Drupal with an understanding of how things can be better, then perhaps set about improving it. Frankly part of the problem with Drupal is the many people who have invested so much time learning all the unnecessary APIs and working around its idiosyncratic code and db schemas, or fixing upgrades that leave modules behind that they can no longer find it in themselves to suggest the radical improvements required. Drupal is broken, in so many ways, you should at least acknowledge that there are issues if you want to be taken seriously.

That to me is a big part of the problem with the Drupal ecosystem - unwillingness to listen (even in small part) to quite justified criticism and an insistence that anyone criticising is somehow to blame for the problems they have encountered. If you want Drupal to thrive, try actually listening to criticisms and acting on them - it has an awful software architecture for a start, to say that it has a good one is laughable, I mean they only just started try to clean up the mess with fields, and to do that they've introduced CCK! Have you looked at the drupal core or do you mainly set up and tweak sites?

Ultimately, the main problem I have with it is a philosophical one though, which has driven a lot of the bad decisions on design: the designers seem to think that end users can effectively specify a complex system involving a db and code, which they only partially understand, through the browser and by choosing modules written by other people. That's what has led to massively complex 'general purpose' code to deal with all the possible permutations, to code in the db, CCK and many other problems in Drupal, and it's not going away as they don't seem to have learned the lesson from previous debacles. The result is a complex tangle of poorly understood code which interacts in unpredictable ways and tries to be everything to everyone and ends up satisfying nobody's needs very well without lots of extra work. In other frameworks all that extra work is just not required, the framework helps, not hinders. Here's a report from someone in the trenches who has realised this:

http://benbuckman.net/drupal-excessive-complexity [benbuckman.net]

Usable code isn’t a luxury, it’s critical to attracting and keeping developers in the project. I saw a presentation recently on Rapid Prototyping and it reminded me how far Drupal has come from being able to do anything like that. (I don’t mean the rapid prototype I did of a job listing site - I mean application development, building something new.) The demo included a massive data migration accomplished with 4 lines of javascript in the MongoDB terminal; by comparison, I recently tried to change a dropdown field to a text field (both identical strings in the database) and Drupal told me it couldn’t do that because “the field already had data.”

All that said, I'm not saying this because I have some axe to grind about Drupal (though it has wasted a few months of my life debugging client issues), but because beginner Drupal developers deserve to know that there are much better options out there. Drupal does not rock, in any way.

Re:A fractal of bad design (1)

ios and web coder (2552484) | about a year ago | (#43137083)

Try to play with the Atlassian product line [atlassian.com] databases. Makes Drupal look like a cakewalk.

However, the whole idea is to avoid direct database access. That's a good security best practice anyway.

In Joomla, I am forced to directly interact with the DB (in the installer). Maybe 3.0 is different, but I have finally been able to farm off the Joomla plugin to someone who is a lot more familiar with (and likes) Joomla.

Re:A fractal of bad design (1)

Kagetsuki (1620613) | about a year ago | (#43137143)

You just said everything I would have liked to say but wouldn't have been able to write without just getting angry and swearing. Seriously, everyone who's hooked on Drupal needs to try out some other things. Me and my team do a lot of Rails and it's what I like the best, but I'm not going to claim it does everything and I know it has a place. If you've got a team of Java or Scala developers who live in eclipse use Play. Little real-time apps use node.js. Client wants a simple blog in a week? It's hard to beat Wordpress. But Drupal is a system I can't imagine ever using for anything again.

Re:A fractal of bad design (1)

drinkypoo (153816) | about a year ago | (#43137581)

Client wants a simple blog in a week? It's hard to beat Wordpress. But Drupal is a system I can't imagine ever using for anything again.

Wordpress is responsible for so vastly much more of the sadness on the internet than Drupal that it's not even funny. You might be web developers and so have your own preference, but people I know who work for ISPs say that the WP sites cause vastly more problems than the Drupal sites. I cannot picture ever using wordpress for anything.

WordPress and security? (2)

kasper_souren (1577647) | about a year ago | (#43136137)

I've used both WordPress and Drupal for a good number of years. I hate PHP and Drupal is definitely not as much fun to work with as say Meteor.com with CoffeeScript. But there are still quite a few sites I would build in Drupal any day. And well, I'm okay with people tearing down Drupal, but I chuckled when reading "I dread to think what would happen if security professionals looked carefully" and then "look at Wordpress for example".
WordPress probably has the worst track record out there in terms of the number of hacked websites. The number of noobs using WP probably has something to do with it. But when comparing the two ecosystems it seems that the Drupal community is also way nicer and more aware of licensing issues (GPL is actually enforced), people actually care about their code working properly and safely. WordPress plugins often seem merely to be written for a quick buck (even with obfuscated code at times).

Re:WordPress and security? (2)

Serious Callers Only (1022605) | about a year ago | (#43136247)

WordPress probably has the worst track record out there in terms of the number of hacked websites

Wordpress has also had the most scrutiny by far - I suspect that and their installed base is the reason they've had more exploits, and that should make the code at the present time far more secure as they've had a trial by fire when becoming popular. I agree it's not my first choice for security but I wouldn't be so sure about Drupal.

In contrast, many of the Drupal modules I've seen (and there are many on most sites, one client site had 200 installed!) have not been updated in a long time, break on every update, and are of a quality which makes me seriously doubt that security was a concern. Unlike WP many of these are used on a lot of sites (WP you can get away with a caching plugin, perhaps attachments, and that's about it).Many people are stuck on older insecure Drupal installs with no way of upgrading because their site breaks when they do. Core code is so complex that I highly doubt there are not significant undiscovered vulnerabilities - Drupal has many different ways to hook in dynamic content e.g. Core blocks, Context module, and Panels, hook_page_alter and then the render API, the rendering pipeline is extraordinarily complicated.

Have you used something like Rails and would honestly pick Drupal over it to build some sites?

Re:A fractal of bad design (1, Interesting)

Aethedor (973725) | about a year ago | (#43136183)

Wordpress 'clean'?? Seriously??

The only place where I use Wordpress is in my 'Secure Web Progamming' course. Wordpress is a beautiful example of how NOT to write your code. It has no MVC structure and has no single entry-point. The Wordpress developers probably never heard of functions, because every file is one big piece of lineair code. It offers no secure API for plugins, hence the very long list of insecure plugins. Wordpress is nothing more than a piece of junk that should be avoided by EVERYONE!

You want a good example of a secure, clean and solid PHP framework? Try Banshee [banshee-php.org] .

Re:A fractal of bad design (1)

Serious Callers Only (1022605) | about a year ago | (#43136197)

Wordpress 'clean'?? Seriously??

If you've ever looked at Drupal, you'd know what I mean : ) Personally Wordpress is not my first choice, but they have kept the architecture relatively stable and simple and it is great for end-users who just want a custom theme as that is their focus. If all they want is basically a blog with some static pages I think it's quite a good choice - many, many websites fall into that category.

The Wordpress developers probably never heard of functions, because every file is one big piece of lineair code.

I'm afraid this damages your credibility somewhat for me. Functions are the things with 'function' in front of them, and there are rather a lot, even in WP!

If you're looking at building an actual app with MVC and a better architecture I'd seriously look at a better language than PHP, Wordpress is actually not bad for PHP code.

Drupal rocks (1, Insightful)

amoeba47 (882560) | about a year ago | (#43136241)

Drupal definitely has a "cleaner" code base and better software architecture than Wordpress and a better security track record to support that. Wordpress may currently win on usability, pervasive in the "blogosphere" and provides an ease of cobbling together a site.
However, I think, If you take the time to learn the Drupal API, you will find it preferable, particularly as a developer.
Over the last ~10 years, I've used a range of similar open-source CMS products, from Typo3, Plone, Xoops, Joomla, Wordpress and Drupal and out of all of them, I prefer Drupal. I think in particular, I like the flexibility and extensibility of the Drupal codebase, as well as the Drupal development community.

Re:Drupal rocks (3, Interesting)

Serious Callers Only (1022605) | about a year ago | (#43136325)

Drupal definitely has a "cleaner" code base and better software architecture than Wordpress

I'd be interested to see some concrete examples, I have a hard time understanding why you would say that, save perhaps that Drupal has far more *abstraction* - that's not the same as being cleaner and leads to greater complexity if overdone. I don't really want to defend WP as it's not my idea of brilliant architecture (far from it), but they have kept it much simpler and procedural than Drupal, which is incredibly complex when it comes to rendering or even the simplest helper modules. For example:

Drupal date module: 14kloc (YES > 14,000 lines)
WP date helpers/calender: circa 1kloc
Rails date helper: 970 sloc (doesn't include visible calendar, I'd use jquery-ui for that)

Yes the above helpers probably do less, but the contrast is stark, and sometimes less is more (security, maintenance, readability). I didn't count the loc of some clients sites I've looked at, but wouldn't be surprised if it was in the hundreds of thousands for relatively simple sites due to core and modules.

Re:Drupal rocks (1)

Xest (935314) | about a year ago | (#43137125)

"but they have kept it much simpler and procedural than Drupal, which is incredibly complex when it comes to rendering or even the simplest helper modules. For example:

Drupal date module: 14kloc (YES > 14,000 lines)
WP date helpers/calender: circa 1kloc
Rails date helper: 970 sloc (doesn't include visible calendar, I'd use jquery-ui for that)"

I'm not sure what you're even trying to say with this, it's as if you think number of lines in a file or set of files is somehow an example of bad code.

Where is the comparison of features? what about code style? which ones are better commented?

Comparison of lines of code is utterly meaningless, literally, completely and utterly meaningless in terms of judging quality unless you can somehow prove alongside that that the code does less, is more poorly laid out, is less secure, and is more poorly commented.

Re:Drupal rocks (1)

drinkypoo (153816) | about a year ago | (#43137561)

The drupal date module actually does stuff. If you're comparing kloc without comparing functionality, you're trolling.

Yes the above helpers probably do less, but the contrast is stark, and sometimes less is more (security, maintenance, readability).

And sometimes more is more, like when there's documentation in the code.

Re:Drupal rocks (1)

BadMrMojo (767184) | about a year ago | (#43137723)

To be fair, the Drupal date module isn't just "the simplest helper module."

Off the top of my head, those 14k lines of code also include:

  • a system-wide API for other modules to reuse - the most important part
  • a few administrative UI variants
  • hooks into several common extensions including
    • Context
    • Views
    • Feeds
    • Migrate
    • Tokens
    • ... and I'm probably forgetting several others
  • tests for each
  • Markups and styles for front-end
  • hooks to override any of the above
  • administrative options to override most of the above without a single line of code

It's not quite the same thing as a WP plugin that lets you add Date fields to posts.

Re:A fractal of bad design (1)

Aethedor (973725) | about a year ago | (#43136261)

I'm afraid this damages your credibility somewhat for me. Functions are the things with 'function' in front of them, and there are rather a lot, even in WP!

I know what functions are. Yes, the Wordpress code does use functions, but still every file is nothing more than a single list of instructions which makes it hard to read.

Just compare the Wordpress code with the Banshee code and you'll see the difference.

Re:A fractal of bad design (1)

Swampash (1131503) | about a year ago | (#43136433)

Wordpress is a beautiful example of how NOT to write your code. It has no MVC structure and has no single entry-point. The Wordpress developers probably never heard of functions, because every file is one big piece of lineair code.

Along with a bunch of other shit that users couldn't care less about.

It's easy to set up. There's a vibrant user community. The content management interface is easy to understand. End of story.

Re:A fractal of bad design (0)

Anonymous Coward | about a year ago | (#43136373)

... resulting in sites which load hundreds of plugins to support simple tasks...

Hundreds of plugins? That'd be operator error, and a typical noob mistake on any modular platform.

I dread to think what would happen if security professionals looked carefully at many drupal sites due to the above, particularly the modules situation. The closer you look at the code, the worse it gets

Oh no, better run tell the folks at whitehouse.gov, because obviously you're way smarter than they are ;-)

Drupal for the win (1)

Ice Station Zebra (18124) | about a year ago | (#43136467)

I choose Byzantine schema over everything stored in two tables any day of the week. I pick allowing the customer to add fields via actual database tables rather than stuffing them into a "meta" table in a serialized form. If by code in the DB you mean having a rules/actions engine that is defined with data from the DBI pick that over hand coding anyday. Upgrades incompatible? I pick testing your upgrade rather than blindly upgrading a production site.

Re:Drupal for the win (2)

Serious Callers Only (1022605) | about a year ago | (#43136979)

That to me is a big part of the problem with the Drupal ecosystem - unwillingness to listen (even in small part) to quite justified criticism and an insistence that anyone criticising is somehow to blame for the problems they have encountered.

I choose Byzantine schema over everything stored in two tables any day of the week. I pick allowing the customer to add fields via actual database tables rather than stuffing them into a "meta" table in a serialized form. If by code in the DB you mean having a rules/actions engine that is defined with data from the DBI pick that over hand coding anyday. Upgrades incompatible? I pick testing your upgrade rather than blindly upgrading a production site.

Q.E.D.

Re:Drupal for the win (1)

Ice Station Zebra (18124) | about a year ago | (#43137299)

Yes, unwillingness on your part to realize that a larger group of people might actually be smarter than your mothers basement commentary.

Re:A fractal of bad design (2)

Xest (935314) | about a year ago | (#43136991)

It sounds like your complaints are mostly related to the thing that makes Drupal good - it's rather generic nature.

The problem with a lot of other PHP CMS' like Joomla is that if you want anything other than a basic website with a fairly fixed layout, then, well, you can't.

Drupal's generic nature may make it a bit more awkward to understand sometimes, but with that comes flexibility.

I notice a lot of developers struggle with generic, reusable designs in this manner because the abstract nature of such designs make them a little harder to understand, but for those who do get why generic is good - code reuse, testability and so forth, it's a godsend and allows us to build things we simply couldn't without starting from scratch if we were handed a fixed framework where we're not given the flexibility to do what we need.

Beyond that your complaints seem to be more about poorly written plugins rather than any inherent problem with Drupal, but I think that reflects the nature of the PHP world in general more than anything - what can you expect from a community where the tutorials still often build up SQL queries as strings and avoid parameterised SQL, and where most developers are the "my first dynamic website" types rather than seasoned professionals. You're bound to end up with a security headache.

P.S.: I'm not sure why you talk about the fractal of bad design article in terms of "early PHP", it still applies, that article was only written about a year ago or so I believe.

Re:A fractal of bad design (1)

Serious Callers Only (1022605) | about a year ago | (#43137943)

I notice a lot of developers struggle with generic, reusable designs in this manner because the abstract nature of such designs make them a little harder to understand,

Those benighted, simple developers who value simplicity in an API even have a phrase for those who live on a higher plane - Architecture Astronaut.

http://www.joelonsoftware.com/articles/fog0000000018.html [joelonsoftware.com]

If you're arguing that abstraction and the attendant complexity are usually good, I'm afraid a lot of smart people disagree. I've used systems with far better domain abstractions (named in the thread), in fact I find it hard to think of a system with a worse set of abstractions.

The newer versions of drupal, which have added things instead of refining them, remind me of this article. I do feel that most full-time Drupal devs could do with stepping away from the madness despite their huge investment in time learning it, and checking out other frameworks and languages (if you think all PHP CMSs are the same, look at other options). It's fine to think Drupal is the best CMS available, but you should do so from a position of knowledge having evaluated the other options, and if criticisms are made, accept them where they have some foundation (however small), and try to improve it. There is no need to start a holy war on behalf of Drupal the one true universal module loader.

Re PHP I actually think the last year or two they have shown signs of sanity with things like the new password API and changes in the latest version, perhaps they read that article and took it to heart!

Re:A fractal of bad design (1)

bill_mcgonigle (4333) | about a year ago | (#43136997)

Quite so - the ecosystem is a mess.

My experience has been related to patching up broken modules, finding out that there's no support for separate writing and reading databases (needed for scaling and load balancing), finding out that the core is database agnostic but modules regularly inline MySQL-specific code, etc.

I actually read TFA to see if any of this is fixed. What I learned instead is that:

1) Drupal 8 will be bold. That was oft-repeated.
2) Drupal 8 will have a WYSIWYG editor in core.
3) Drupal 8 will be built on Symfony which sounds like it might have a sane architecture. They say that Drupal developers who learned to hack on Drupal will be hopelessly lost but that Drupal developers who are professional engineers who took CS and have a general understanding of web development frameworks will be just fine. So 98% of Drupal developers will probably stay on Drupal 7 until 2018.

Re:A fractal of bad design (1)

Su27K (652607) | about a year ago | (#43137015)

"Hundreds of tables with the most Byzantine schema you can imagine, even for incredibly simple needs": How is one hundred tables constitute bad design? What is the Byzantine schema you're talking about? The table schema is fairly straight forward.

"Attempts to allow customers to define the db schema by adding fields etc": Allow custom content types with fields is the major reason we use Drupal, how else can you add custom content with specific attributes to the site? This function is for site builders, not for site maintainers, you just need to use roles correctly and lock out the ones who is not supposed to use this function.

"Code in the db - that anyone ever thought this is a good idea is a huge red flag": I don't remember seeing code in Drupal core tables, 3rd party modules used to have this but it has been strongly discouraged since 7.

"Upgrades are often incompatible": Haven't seen this but I agree upgrading has the danger of breaking the site, but I think this is true for every piece of software.

"A horribly broken plugin system and ecosystem, resulting in sites which load hundreds of plugins to support simple tasks,": I guess a very complicated site may use hundreds of modules, but I never seen or developed one. You certainly do not need hundreds of modules to do a simple site, this is just false. Drupal's module ecosystem is one of the reasons we choose Drupal, each module is aiming to provide a very narrow feature set and does it very well, this is much better than the huge components in Joomla which is just not customizable.

"and therefore have a huge attack surface and a huge amount of unmaintained, scarily bad code.": I don't follow this logic, there's no difference in terms of attack surface whether you use one big component or 5 small modules, as long as they provide the same features. As for unmaintained, scarily bad code, this could exist for any CMS that allows 3rd party to write extensions. I haven't encountered much bad code in my work with Drupal, and if you subscribe to the security mailing list, you get regular security updates on the vulnerabilities found in modules.

"I've seen sites with hundreds of these modules loaded.the learning curve is huge and the code extremely fragile due to the above decisions": Learning curve is big, and you could break the site if you don't know what you're doing, but the reward is you can fine tune the site to your needs with little efforts.

"Content is all stored in 'nodes' which are infinitely flexible, and therefore infinitely opaque and difficult to work with": I don't see any difficulty in working with nodes, it's pretty straight forward.

"There are no pros or professionals working with Drupal - anyone who was a pro would have run a mile a long time ago, so don't listen when someone says 'oh well you just don't know drupal well enough'": Where's the proof for this? If there're no pros working with Drupal, who contributed the thousands of modules for Drupal?

Re:A fractal of bad design (1)

Serious Callers Only (1022605) | about a year ago | (#43138069)

I don't see any difficulty in working with nodes, it's pretty straight forward.

Usually people pick abstractions based on the domain they're working with (DSL), so they'd have one products table and perhaps some joins to things like customers, orders etc. Instead drupal might have nodes and then lots of joins to them, like say 65 tables (count em!) of uc_products, uc_price_per_role_option_prices, etc etc. just to sell some products. That's because the CMS and modules try to do all things for all people. All those abstractions leak through to the front end and you end up managing nodes etc when you really want to get on selling stuff and managing your things (which are never really nodes). Nodes are used for things as disparate as any posting, such as a page, poll, article, forum topic, or blog entry and god knows what else, it's an abstraction too far IMHO.

It's not difficult if you've never seen anything else and think things have to work this way and that the system should bend you to its will and not vice versa.

Where's the proof for this? If there're no pros working with Drupal, who contributed the thousands of modules for Drupal?

Who indeed.

PS Use blockquote elements

Unrealistic Expectations (1)

pspahn (1175617) | about a year ago | (#43136027)

It's probably a rather safe assumption that most of the Drupal implementations that give it a bad name were done by developers who "also use Drupal", and were rushed out the door due to limited budget.

This is not a problem inherent in Drupal, necessarily, but rather these types of projects will tend to gravitate towards Drupal (and the sales departments that whore out their developers).

I have no doubt that if you took a team of experienced Drupal developers, gave them a proper budget and appropriate schedule, they could produce a decent piece of work. Good luck finding someone willing fork out money for that.

I have a former employer that had no qualms about selling Drupal sites to clients, even though none of the devs were really familiar with it as a platform.

Drupal rocks! (5, Interesting)

amoeba47 (882560) | about a year ago | (#43136157)

As a web developer with ~10 years professional experience, the last of 5 of which have been with Drupal, I say Drupal rocks.
Drupal is a great fit for many web development projects. It's 100% GPL open-source software with a thriving development community.
It has a solid a reliable core architecture extensible via a modular plugin system.
Although there's a learning curve, it's worth it.
Like every release, Drupal 8 is making taking steps to improve on the previous, for D8 these include.

1. Integration with the Symfony PHP framework.
This lowers the barrier to entry to Drupal by allowing developers familiar with the Symfony framework to easy transition to building Drupal websites, leveraging the power of both.
2. Enforcing MVC architecture
Drupal 8 includes a new, non-php, default templating engine called "Twig" ( http://twig.sensiolabs.org/ [sensiolabs.org] ). No more PHP code in templates.
3. Pure core Drupal 8 includes more in core to achieve the functional requirements, without the need for additional plugins. For example, Panels style layout builders and the Views style report query builder as well as the ctools framework are now in core, along with the usual frameworks such as the Entity and Field API.

I've used Drupal with a wide variety of government and corporate IT projects.
Common server architecture includes, Linux, Nginx, Postgres/MySQL, PHP5, APC, Memcache and Varnish.
If you're looking for a solution for your next web development project that's easy to set up, and supports and extensible and scalable architecture, checkout Drupal, it rocks!

Re:Drupal rocks! (1, Informative)

Anonymous Coward | about a year ago | (#43136193)

Oh look, Dries Buytaert has an account on Slashdot!

Re:Drupal rocks! (1)

Aethedor (973725) | about a year ago | (#43136273)

... checkout Drupal, it rocks!

No, sorry. Can't do. My doctor doesn't allow it. My heart and brain are still recovering from my first contact with Drupal code 4 years ago.

Re:Drupal rocks! (2)

stridebird (594984) | about a year ago | (#43136753)

2. Enforcing MVC architecture
Drupal 8 includes a new, non-php, default templating engine called "Twig" ( http://twig.sensiolabs.org/ [sensiolabs.org] ). No more PHP code in templates.

Now how exactly does that enforce an MVC architecture? Anyway, PHP is a great templating language and I use it in MVC. Twig is also nice, they use that on Lemonstand. Plus Drupal shouldn't enforce a templating language; that's not core.

With Drupal 7 I probably tried to make the mistake of attempting to understand how the system works. var_dump is not your friend here. The render array that gets dragged through each request is absolutely byzantine and fairly hopeless as a tool to understand the system. I was coming at it with a design-led brief and the design requirements could not be met out the box; attempts to bend various aspects of the output were not very successful. The system was dropped in favour of a bespoke framework based on a revved-up version of codeigniter. Another friend, however, has successfully deployed a D6 site to support his business and has had a great experience on the whole; his advantage, though, is that he understood that his site would be developed within the available modular functionality and the constraints of the templating and general front-end system of drupal. Then again, he knows he has to upgrade sometime soon, and he's tried and he's failed once already.

Drupal online is also a mess. Whilst the core drupal.org pages and the technical documentation found there is a good start, things rapidly deteriorate as you search wider and join the lost millions blindly seeking a way out of the deadends drupal has led them into, all raking across the same hodge podge of dupes, ignorance, ridiculous bravado, outright falsehoods and version hell.

And all that bloody clicking. It's not efficient and it hurts after a while.

Re:Drupal rocks! (1)

phyrz (669413) | about a year ago | (#43137279)

re MVC - DBTNG is a pretty solid db layer, adding TWIG as a templating engine disallows adding PHP on the View layer. hook_menu has always been a controller of sorts, and the move to Symfony routing solidifies that.

MVC is nothing special anyway.

Re:Drupal rocks! (0)

Anonymous Coward | about a year ago | (#43136971)

Have you ever tried to create an i18n site with Drupal? Then you hit rock bottom... Even in Drupal 7 you still have to resort to a full stack of 3rd party modules to get it working (does Drupal 8 have full i18n support in core?). Drupal does have it's benefits, but there are some major features missing (or badly implemented) as well.

Drupal vs WordPress (2)

Lord Satri (609291) | about a year ago | (#43136431)

What Dries say in this article:

"The "sweet spot" for Drupal is larger sites rather than smaller ones. "I think when people think big websites, they usually think Drupal, and when they think small blogs or limited small websites in complexity then they think WordPress," Buytaert said.

"At Acquia we never compete with WordPress. We don't see them ever. I'm sure the smaller Drupal shops run into them, but in the enterprise we never run into WordPress."

"I think with small sites I'm not willing to give up on them but I think we just need to say we're more about big sites and less about small sites, but then the small sites are still very useful to get people into the community," Buytaert said."

I would have liked to know that before... I moved from Slashcode to Drupal years ago on the advice of a few. While I can appreciate how Drupal is flexible and powerful, now I understand that what I really needed, as a non-expert and for my small website, was just WordPress. But too late, won't do another painful migration anytime soon...

What annoys me most with Drupal: no straightforward way to update major versions (e.g. from 6.x to 7.x), especially since a lot of user-contributed modules doesn't exist in the new version or require a lot of work to do so. The admin interface is pretty bad. The user community is much much smaller than WordPress (thinking of mature/maintained user-contributed modules here). Etc.

Re:Drupal vs WordPress (3, Interesting)

phyrz (669413) | about a year ago | (#43136577)

There's been a lot of discussion in the Drupal community recently about making major updates easier by offering backwards compatability, the consensus (best as I could tell) was that web technology is moving so fast that we need to be able to refactor quickly, though maybe in a few releases (6 years or so) Drupal will have completed the move to Symfony / OO and it will be worth looking at then.

I love Drupal & its community - I've been working with it professionally for 8 years or so, and the constant improvement in the tools keeps things interesting for me. I spend most of my time working on edge cases where modules don't quite work together and I submit a lot of small patches to improve them. I've got a lot better at grokking other peoples code - a talent I think is more valuable than 'writing my own cms from scratch', though I've done that before too. I also dabble in various other techs after hours to keep up with new languages, and run my blog on Wordpress. Wordpress horrifies me from a technical perspective, but I just want to post content, and using it keeps me focused on that, as opposed to tweaking my Drupal install all the time.

I used to freelance for smaller clients, but now i just refer them to Wordpress folks. They get better bang for their buck, and I don't have to deal with annoying budget overruns. Drupal is insanely good for big business who need complex workflows, asset management, community management, service integration and migration. Its really hard to build something that complex in a way that makes sense, stays stable and provides an upgrade path (however difficult that may be) and security support.

I feel your pain though :)

Lambda the Ultimate (1)

teknomage1 (854522) | about a year ago | (#43136441)

The most depressing thing about Drupal is that http://lambda-the-ultimate.org/ [lambda-the-ultimate.org] , a website devoted to discussing the latest in programming languages research, is a drupal site. How on earth can a site that decries the unsoundess of C code, and can discuss the relationships of monads to any of three different effects calculi use PHP to run their site? Mind boggling.

Accurate estimate (-1, Flamebait)

degeneratemonkey (1405019) | about a year ago | (#43136655)

I do suppose his estimate of 10% share could be attainable: Surely more than 10% of all web developers are incompetent.

Drupal? It's Liferay in PHP (1)

gshegosh (1587463) | about a year ago | (#43136751)

Probably every big piece of s...oftware is the same. Messy, overengineered, slow, uncomprehensible... Such is Liferay and such is Drupal, only Drupal is also written in the PH "fractal of bad design" P.

My two cents... (0)

Anonymous Coward | about a year ago | (#43136859)

I'm more of a web designer than developer, but from every experience I've had in designing (and developing) in Drupal, I have to say that no other system in the world even comes close to being as well engineered as Drupal. Hands down. I do believe this is where all websites are going anymore...

Drupal is fun and it's easy to get up and running with minor amounts of time. Upgrades are cake, the community it comes from is one of the best in the world and history of IT, the modules you can use with it provide amazing capabilities that would normally take months / years to make by yourself from the ground up (generally speaking), and it's relatively simple to configure once you've done it once or twice (or not at all). The API is even easy to work with once you understand the fundamentals of things like preprocessing, the theme layer, template.php, the API manual / website, etc.

Sorry, but Drupal rocks.

Most comments here prove... (0)

Anonymous Coward | about a year ago | (#43137103)

...that none of you have a clue about what you are talking about because of the "armchair expert" mentality. It is clear from your posts that many did not even try the most recent stable edition of Drupal, or the upcoming D8.

Also, many above complain about PHP as if it's some kind of a menace, while forgetting that most of the Web runs it (whether you like it or not) because it works and it works really well. Not to mention you have no real evidence PHP is "that" bad aside from regurgitating opinions you read elsewhere.

It's a typical closed minded and boxed slashdot mentality (ie. "But does it run Debian?") which does not really help anyone reading your comments.

Buytaert thinks that this could easily grow to 10% (1)

Anonymous Coward | about a year ago | (#43137377)

10% = World Domination?

The "Developers" CMS (0)

Anonymous Coward | about a year ago | (#43137739)

Plain and simple, CMS's ( of any language ) are for the laymen/DIY types. If you can write software, there is no reason to use a CMS. The only reason Drupal has been given the name "Developers" CMS is because it takes so much more effort to use... but at the end of the day you are a Droopal user, not a software developer. Clicking ain't coding.

Pickle Proclaims Ascendancy (0)

Anonymous Coward | about a year ago | (#43138239)

Pickle, "I will RULE the WORLD."

Sponge Bob, "Yea, like good luck with that."

Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...