96 comments

[ 2.9 ms ] story [ 151 ms ] thread
A bit ironic, considering how the latest gmail update enraged most of us.
No. No, it did not enrage "most of us".

It enraged a small number of people, who happen to be the ones that spoke up. The people who don't care, or who liked it, mostly didn't bother.

That's always an interesting effect, really annoying too if you're on the receiving end of the complaints. People tend to only speak up when they don't like something, so many times the amount of negative feedback overwhelms the positive, even if the vast majority are content with the product/change. If only people spoke up more often about their positive feelings...
I didn't speak up until just now but I was also enraged.
(comment deleted)
My wife and I were both enraged, but alas, we failed to speak up in the proper venue for our views to be counted. We apologize for our poor timing, but would like to document our rage now, for your convenience.
Likewise, I'll document my complete indifference.

(heavy gmail user)

I'll register my satisfaction. I like how well the "social" and "promotions" tabs keeps the bulk stuff out of my inbox without requiring me to maintain a ton of rules.
I agree, the new inbox categories are absolutely brilliant.

Not every gmail change is perfect, but I think they've really done a good job of it generally.

Any time you change an interface people are used to, you will enrage some of them. Particularly the heavy users. Even if the old interface was bad and the new one better. People who use software repeatedly adapt to any interface. Look at the insurance agents who whiz through character-mode mainframe applications to generate a quote. They figure out clunky interfacess and are able to use them productively. Change them, and suddenly they have to think about how to use the application again.

I keep trotting out the example of the Microsoft Office ribbon. In the old menu system of Office, I knew exactly where everything was. I didn't have to think about it. When the ribbon came out, I was lost. Using Office became a painful chore. I just abandonded it. Every time I have to use Office now, I do it with a taste of bitter hate in my mouth.

Not true. I don't have time to complain about most things that upset me. Of course, I will complain about the very worst things, but this is a pretty high bar.

I was upset by this but have not complained anywhere.

Just because it's not true for you, doesn't mean it's not true for everyone. I was rather indifferent about the changes.
How does your indifference to the changes speak to the fact that there were people who had a problem with the new interface that didn't speak up? Does your indifference somehow make the person you responded to cease to exist?
For what is worth, I like the new GMail.
Isn't "enrage" a bit strong for the feelings feel people in response to a website update? Or, are people really enraged?

Do people feel enraged when there is no more toilet paper or they are out of milk? I thought rage was more for racial injustice and displays of gross inconsideration... I'm just trying to figure out if my rage-dar needs a bit of a calibration.

I actually can't remember the last time I felt something I would call "rage". Am I missing out on something?!

I don't count myself among the enraged, but I understand why some people feel that way.

A tool that is pretty central to a lot of people's work lives was changed in a non-trivial way without warning, without their input, and with no way to go back. For people who are really busy and need email to be something that "just works", I could see how this would be really frustrating.

That's an unfalsifiable claim that rationalizes going ahead and doing what you were going to do anyway. For example, I'm going to use it today to justify farting on the bus.
Let's forget about the "most of us" : the reactions on this thread shows that this new UI is, at least, controversial. But it was a wrong comparison for another reason : Drupal being open source there's an escape way for any UX change.
I can't work out if...

"PDOException: SQLSTATE[42000] [1203] User bryanbra_drp1 already has more than 'max_user_connections' active connections in lock_may_be_available() (line 167 of /home4/bryanbra/public_html/includes/lock.inc)."

...is the punch line or not.

It's not, but I came here to ask the same thing before it finally loaded!
Exactly what I was wondering, especially as it's still not up after a couple of reloads.
Thanks for the quick cache link.

Heh, its a rant on Drupal. So the author is using Gmail as a "good thing" that would be made into a "bad thing" if it were implemented in Drupal.

Meta comment, I wonder when people using Gmail as an example of 'good' will figure out it doesn't have quite the approval rating they were thinking it had. Actual comment, its a known issue that programmers write things they like to use, not things other people like to use. It is one of the reasons programmers have an easier time figuring out modern technology that was built by other programmers, they already speak the underlying conceptual language. It is hard to see that gap unless you are a non-programmer.

Outside of the HipsterNews clique you'll find a great deal of people who like gmail very much, because it is a better interface than their old hotmail or Outlook Express inboxes.
Of the people I know who dislike Gmail very much, the comparison isn't to Outlook or Hotmail, it is to Gmail of 3 - 4 years ago.
I think that's the real goal of the post: if gmail was built with Drupal it would be always broken :D
not Drupal fan but that error is not even Drupal related, seems like the database is running out of connections (HN spike)
It's more than likely Drupal related! Front end cache would have helped there.
Are you insinuating that Drupal lacks page caching? Because that would be a patently false statement.
Without cache, Drupal would never run as it drinks database connections in the hundreds per user request.
"Hundreds per user request" is just wrong. Generally, Drupal opens a single connection per request (and does not use any kind of connection pooling). Perhaps you mean that Drupal issues hundreds of queries per connection? (Which is definitely much closer to the truth).
Yes I was going overboard but indeed it is truly hundreds of queries and sometimes numerous connections per user.

Some sites I have had to deal with on initial inspection have 250+ queries per user (sometimes the same ones over and over due to plugins/modules) and people wonder why after 10 users it breaks the database/site.

Without cache on wordpress you might be in trouble, without cache on Drupal you don't run.

Still, Drupal is orders of magnitude more useable than other PHP frameworks like Joomla. The PHP that is fun is using microframeworks like limonade, flight etc if PHP is used.

No, but Drupal's out-of-the-box page cache caches pages in... the database.

Even with pages cached in Memcache, Drupal would open a DB connection by default (it's possible to override this using page_cache_without_database, but not everyone is going to do that).

Using something like Varnish as the primary page caching mechanism would work around this, albeit with some trade-offs.

Generally though, the fault with issues like this is often that the MySQL connection limit is set lower than it needs to be. Often, this is set at a level far below that which would actually cause the DB server to become overloaded, and it just starts rejecting further connections even if capacity exists to handle more.

EDIT: typos

I chose my words carefully. Not wanting to get too technical. I was not insinuating that Drupal hadn't it's own caching.

Page runs on Drupal > Drupal uses database > Database connections were exhausted. I was suggesting caching up front to bypass calls to the database (not specifying a particular piece of caching software).

At the time I was looking at the page through a 3rd party cache. I didn't realise the page had inline comments, those would of course complicate the problem.

It's not polite to mock (or get to the HN front page) a drupal site. We all know this boy is a little slow...
I was wondering the same thing.

But people here are funny: "oh, it is giving max_user_connections errors, let me keep refreshing the page to see if it shows up"

I expect most people would refresh after seeing the big word 'error' and not read any of the rest.
This is a great illustration of the difference between sites built with a CMS approach versus a custom built one, say using a web framework such as Django or Rails. It is usually easy for a non-programmer to build sites using a CMS but the end-user can often understand that it was obviously cobbled together using several clunky pieces. The result is often a poor user experience in terms of the user interface, functionality and performance.
And you know what the funny thing is? Drupal's UI/UX is usually often vastly superior to most other popular content management systems.

I've had the 'pleasure' of working with a variety of content management systems over the course of my career and Drupal is easy-peasy-lemon-squeezy. You wouldn't believe the shit that is out there, especially in the Enterprise world.

Edit: I mean, I hate PHP with a fiery passion and it would never be my language of choice for a project, but I'd still rather be forced to use Drupal and its clunky EAV-Design than abominations such as Typo3 (also PHP/Typoscript), Joomla (also PHP), DotNetNuke (holy crap, please kill me now, this must be the worst CMS of all time), LifeRay Portal (Java)...

I have worked with DotNetNuke, and while I agree that it is horrible, I have to say that HP/Autonomy/Interwoven's Teamsite/Livesite CMS is hands-down the worst piece of software (note: 'piece of software', not just 'CMS') that I have ever used. When you consider that companies will spend 7 figures for that POS, it boggles the mind...
I used some IBM CMS that was so bad I quit the job after two days.

Of course, the fact that I was hired into a content management position when I applied for an entirely different one, and wasn't told until the day I rocked up didn't help matters.

When you consider that companies will spend 7 figures for that POS, it boggles the mind...

Yes awful..... so exactly which companies are paying upwards of a million for this?

I just got an idea for a startup, I call it it Terrib.ly

All customer support by Roy Trenneman

Have you tried ProcessWire? It's lightweight and as flexible as Drupal, with a simple jQuery-like API.
at first I thought this was a jab at drupal... then I see it's drupal failing itself. I don't think it's scaling well to YC traffic.
it would be the same no matter what, especially if the author doesn't use caching :).
In fact this post on HN is not only an interesting article but also a test of the author to see how drupal behaves in heavy load so that he can write another article ;-)
at first I thought this was a jab at drupal... then I see it's drupal failing itself. I don't think it's scaling well to YC traffic.
there is a difference between an web-app and web-site, drupal is a CMS, it is meant to build web-sites. Or am I wrong about what drupal is? This is the same as tons of people that use wordpress as the best CMS, wordpress is good fit for many of those cases, but not all
This is going to be bigger in the upcoming Drupal 8, but Drupal can already be used as more than just a CMS. HTML is just one interface it can provide, along with JSON/REST/XMLRPC/SOAP etc.

This means you could have a native app and a website powered by the same Drupal install. Or, you could ditch the theming and templating layer entirely and create your own.

I think Drupal was built to be a "content management framework" and not a "content management system". Out of the box, a system like Wordpress is substantially more limiting that a system like Drupal. You see Drupal projects like OpenScholar that are built with Drupal but are highly customized and don't really even look like Drupal. It's certainly possible to build a full-fledged web app with Drupal, whereas CMS systems typically have one core function. You can use Drupal as a CMS, but it does other stuff.

For most CMS use-cases I've come across, I'd rather use Wordpress. It's simpler for most website needs and provides substantially better default UI to editors.

Drupal is a CMS, but a highly extensible one. Yes, you can replace any just about any core feature. I needed a register for a new account feature that integrated with other parts of our site, so I rolled my own. I'm not super familiar with Wordpress but i didn't get the impression that it scaled to large sited with lots of pages (we have about 1000 static pages)
I don't really understand this article. You compare the core node add/edit form with GMail's email compose form - and that's it? That's all Drupal can do? No, it's not even close. I understand that the core UI elements in Drupal are pretty bad, but why not mention how easy it is for a developer to clone that compose form? Why even use a node form to do the comparison (you're not creating content here). This just takes an unfair stab at Drupal without going in to any details at all.
> I understand that the core UI elements in Drupal are pretty bad, but why not mention how easy it is for a developer to clone that compose form?

Have you got any guide you can point to which shows how to do this in Drupal? The interface has been putting me off using it for a long time.

Thanks!

I don't have a guide on-hand but my advice, if you're new to Drupal, would be to take a few weeks and really explore the power of it (via contributed modules and some of your own development; if possible). The same thing scared me away initially (that was 8 years ago), but I've learned to love the power and complete flexibility that this platform offers.

Since we're talking about messaging, try out the Private message module. Right off the bat, you'll get a much cleaner form than the ugly node form. Private messages are also fieldable so you can add additional fields like attachments, labels, etc. Using the API (hook_form_alter()), you can do anything you want to any form at all. Then once you introduce a good theme, the possibilities are as endless as any other solution.

I'd also take a look at some of the Drupal 8 backported modules for Drupal 7 (if you're going to use 7). They introduced a number of great UI changes and made some of them available for Drupal 7 via modules.

Continuing with my earlier point, I don't have specific examples to give, but I've built so many complex web applications using Drupal with beautiful interfaces/UIs that you wouldn't even be able to recognize what was powering it. The complete allure of Drupal to me is that you can be literally anything (for the most part), and you can do it incredibly fast.

This is a really poor article, in my opinion.

Thanks - I used Drupal a lot from v4.4-4.7 and then was responsible for the security of a handful of 4.5-4.7 and v6 sites. Neither task endeared me to it, but I know Drupal 8 is going to be pretty different, so seems a good one to look at.

The flexibility's great, but the code hooks felt like a maintainability nightmare ("just what's affecting this now? It's 6 months since I last looked at this module..."). A tradeoff I guess. I was also burned by broken modules (submitted a couple of patches, but it did defeat the point of off-the-shelf features), but Wordpress et al are no better at that either!

Does it cause you to reflect a bit that you're accusing Acquia of not understanding the potential of Drupal and of just trying to spread FUD to attack it?
No. First, I'm not accusing Acquia of anything. I'm simply saying that I don't agree with the article, understand the real point of it, and I think it was poorly written. I'm completely failing to see the connection or proper comparison of GMail's compose form to Drupal's not-so-pretty node forms. I think it does nothing but make Drupal look bad without giving any information at all.
I'm not at all a big fan of Drupal, having quit it at 5...but my perception is that all things considered, this is not a bad interface compared to what most clients expect for their own website...and I'm not saying that in a woo-hoo! kind of way...It's sad that people don't reflect more on how much a clunky admin UI can heavily hamper their content production.

I run a pretty simple instance of Wordpress for my blog, but I've updated my custom, hacked-up Jekkyl site far more often than that, as well as my Tumblr (to say nothing of what I put out on Twitter, or, I guess, HN). CMS UIs matter, and kudos to the OP for trying to preach on that.

If GMail were built with Drupal, nobody would have ever heard of it, because it would suck and would have never gotten the kind of traction that GMail actually did.
I don't have experience with Drupal...but these problems couldn't be solved with CSS?
Clearly you're not familiar with the markup that Drupal shits out.
Who uses the default admin theme?
It has to be this way. There's not a reliable way to optimize design for such a CMS, they have to create generic designs. However you can always create custom designs for your (let's say) mail application.
Was healthcare.gov built with Drupal? I know lots of DC/Political sites are build using it (a horrid platform in my opinion). All I can find is the team is known for using it: http://www.theatlantic.com/technology/archive/2013/06/health...

EDIT: Looks like they went custom While Jekyll eliminates the need for a full-blown content management system for Healthcare.gov (and with it, related costs) people managing the site still need to be able to update it. That's where Prose.io comes in.

Prose.io is an open-source content editor developed by Development Seed that gives non-programmers a clean user interface to update pages. "If you create content and run Jekyll, it requires content editors to know code," said Cole. "Prose is the next piece. You can run it on your on own servers or use a hosted version. It gives access to content in a CMS-like interface, basically adding a WYSIWYG [What You See Is What You Get] skin, giving you a text editor in the browser."

To non-technical users, Prose.io looks much like the standard "What you see is what you get" interface, familiar from Wordpress or Microsoft Word, with a couple bells and whistles, such as mobile editing.

As has previously been noted, this is a poor article.

It compares a default Drupal install against a finished (as finished as Gmail can be, considering they keep tampering with it) product.

I bet Gmail looked pretty janky before the front-end devs got hold of it too.

Thanks to Drupal's module-based architecture and the massive community around it there's few limits on what one can do with it - it's rare that a module doesn't already exist for what you want to achieve.

It's not a poor article because most people who build Drupal sites do not bother to change the default editing interface. I've seen the node edit screen of Drupal sites built by some of the biggest, most successful Drupal shops, and they all looked like out of the box Drupal. Most still had the "promote to front page" checkbox, even though it did not do anything.

This author (who is a huge Drupal proponent) is encouraging people to spend some design time and energy on the edit interface.

Apparently his site is built with Drupal. This is very meta.
In drupal we trust.. Wait for drupal 8 it's going to be Legen.......wait for it ............DARYYYYYYY!!!!!!!
PDOException: SQLSTATE[42000] [1203] User bryanbra_drp1 already has more than 'max_user_connections' active connections in lock_may_be_available() (line 167 of /home4/bryanbra/public_html/includes/lock.inc).

That's exactly what would happen because Drupal is a piece of crap that can't scale past 20 users without some serious hacking

Am I the only one who thought the UI was surprisingly good, for being autogenerated? I'm not a CMS expert, but it looks fairly similar to something that mind come out of django's admin.

If a framework can give you that kind of a UI "for free" before you start working on customizing it, that's pretty interesting.

OTOH, I'll join the crowd in chuckling at their scaling problems. The funny thing is PHP is absolutely excellent for scaling. Call it a one trick bastardized pony, but if there's one thing PHP does well it's serving dynamic HTML pages using a mysql database while being 100% stateless. It's framework bloat that causes abominations like Magento.

Check out http://www.techempower.com/benchmarks/#section=data-r7&hw=i7... raw PHP shows up in the top 10, shoulder to shoulder with java, scala, and c++. To compare apples to apples (web frameworks), a popular php framework called codeignitor shows up about 35 spots ahead of something called "stripped rails" I'm not sure where fully clothed rails shows up because counting rows in that table is a PITA.

Call it a fractal of bad design and I won't blink twice (especially considering the latest fun I had with the fact that building a query string from an associative array is a third party library while splitting a query string into an associative array is builtin), but compare its performance to literally any other scripting language (including our beloved openresty nginx + lua stack).

PHP does one thing very well, I seem to remember that being part of something called "The UNIX philosophy".

Full disclaimer:

  1. I hate writing PHP, the best way to write PHP is to avoid
  stepping on land mines and use interfaces, OOP, and closures.
  2. I write PHP (and golang) for a living, but have 
  professionally written python, java, perl, and TCL at various 
  times. I'm also doing everything I can to get away from PHP 
  while maintaining business continuity (mustache for views, new 
  services in go).

</rambling>

[edit] formatting and grammer.

I don't think this post is shitting on PHP - Symfony, Laravel, Fuel, etc, all produce better content manipulation screens than Drupal does. Drupal's ecosystem has a lot of problems, the biggest of which being that they can no longer attract the kind of deveopers that are willing to fix the problems endemic to the ecosystem.
> I don't think this post is shitting on PHP - Symfony, Laravel, Fuel, etc, all produce better content manipulation screens than Drupal does.

No, they don't. They don't produce them at all - that's left to the developer.

It's entirely possible to make a totally custom form UI in Drupal just like in Symfony et al. It just comes out-of-the-box with a default one.

I guess you're not familiar with the CRUD generation tools present in almost every PHP framework since 2008?
Find one that lets you say "I just want an image upload field here" via a single button like Drupal does and we'll talk. Drupal's doing a lot more than your average scaffold.
Symfony has had that functionality since 1.1, and all it requires is a one line yaml change.
Either I've missed massive parts of Symfony or we're not talking about remotely the same thing. Look at the Drupal screenshot in the article. It'd a full on widget, with add/remove controls, multiple upload, drag-to-reorder, etc. all with a couple clicks.

I've used a wide variety of PHP frameworks and none of them do that sort of stuff with a line of YAML. Comparing the default node form of Drupal to a completely custom UI built in a framework is absurd.

I'm still trying to figure out why we're comparing frameworks like Symfony to a CMS like Drupal. If I want something that gives me an image upload tool without writing any code, I might choose Drupal. If I want something that doesn't even have any concept of 'images', because my application doesn't deal with images at all, then I'll use a framework (like Symfony) to build my app.
I realized I had gotten a bit off topic. OTOH while the post wasn't defecating on PHP (sorry, I can't swear I'm in Utah) the crowd seemed like they were.
Yeah, I have to agree. I made a Drupal-based website before I knew anything about PHP or web-development, a site based on user-contributed content. Drupal let me design the limitations on the content users could contribute, control the strategy for what gets promoted to the front page (and which users get permissions to push stuff to the front page), divvy up content into a variety of taxonomy with completely different structure (maps/mods/scripts/content for a game), provide comment-moderation tools to users, etc.

Yes, it was kind of ugly, but consider I didn't write a single line of code... no css, no javascript, no php, no sql, nothing but HTML content? That's pretty slick.

I'm no longer involved with the site we built (http://quadropolis.us), but it still has an active userbase and has a beautiful hoard of stuff (although I'm a little disappointed they've conflated maps and model content now).

long time drupal users here, it's not the easiest one to use, sure, however it remains to be the most flexible one, which I like. waiting for drupal8, and a bit concerned about its performance, hope it will be fine in the end.
Flexible compared to what? Any crud generator that I've worked with creates a better UI than Drupal, is almost completely customizable, and also loads faster.

Drupal is not a good piece of software.

Compared to other CMSs. Sure you can custom code with a crud like rails or similar, but that isn't particularly useful for some types of sites that Drupal is well suited for. We have about 1000 static pages that have to be edited passed though a workflow for approval by non tech users, and about 30 or so modules with custom custom code. These things could be done with rails, but we'd still be building it if we tried.
Could you customise that admin screen (or tidy up all admin screens) easily? I don't mean change the CSS, I mean restyle it... not to GMail, but to something less 'computer-generated'?
I used to bitch about Rails.

Then I got a Drupal project.

Drupal is a heaping, steaming pile of shit.

Now I happily work with Rails again.

Thanks Drupal!

I've used drupal, and it has its place.

That said, I think the drupal community is the single worst offender in the "our software can do anything and everything and is perfect and you never need to use another one and you can't tell me otherwise" camp

"Drupal doesn't scale well" is met with "there are sites doing XX mn pageviews a month in drupal. Not, "Yeah, it is really optimized for sites that will have less than 30,000 users and less than 500,000 pageviews a month."

It is software that tries to be all things to all people -- that's fine, its a swiss army knife. But I really hate the fact that when you tell a drupal-fan that "This problem really needs a cleever" they try to tell you that the saw blade on the back could do that fine.

I learned web dev by way of Wordpress -> Drupal -> Django. Of those, I still use and love Wordpress and Django -- they're great tools for their respective jobs. Drupal? I personally just can't use it. You can't trust the drupal community to accurately participate in a conversation about "what is this optimized for" (they always say "everything!"), so you have to fact check every claim and that takes as long as building it in django.

> That said, I think the drupal community is the single worst offender in the "our software can do anything and everything and is perfect and you never need to use another one and you can't tell me otherwise"

The original post is a direct criticism of Drupal from someone in the Drupal community.

That's the problem with stereotypes and generalizations.

That there are people in the drupal community who are circumspect does not invalidate the overall point that the drupal community on aggregate/average is far less circumspect than the average open source community.

I have used Drupal several times in commercial and personnel projects. If you can use it wisely, it increases your productivity a lot. In my perspective if you can solve problem with something and if customer happy with I just use it. Drupal has some horrible design decision which makes your life hard, but wait which framework/CMS is perfect! Don't RoR or Django have some downsides? Developer needs to know internals and act accordingly. I know what problems Drupal have and I am not sailing near that coasts. At the end of the day this makes everybody happy.
> If Gmail were built with a stock install of Drupal and nobody took even a little time to customize it

There. I fixed the title for you. I've built some Drupal sites in years and you can do a lot better than the shit form you have in the screen shot. There is a fabulous module that allows your node edit form to be in tabs on the left just like all the rest of form (less scrolling). There is a module that lets you create your own fields elements. You don't have to have forms like you show. If all you have to offer skill-wise is being able to install Drupal and use the edit node form... I don't think you have enough skill to build Gmail.

Sure, Drupal is not perfect but it does a lot of things and you can do a lot of things with it.