
If Gmail were built with Drupal - porker
http://bryanbraun.com/2013/11/09/if-gmail-were-built-with-drupal
======
jmedwards
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.

~~~
gabemart
Google's cache is up:
[http://webcache.googleusercontent.com/search?q=cache%3Ahttp%...](http://webcache.googleusercontent.com/search?q=cache%3Ahttp%3A%2F%2Fbryanbraun.com%2F2013%2F11%2F09%2Fif-
gmail-were-built-with-
drupal&oq=cache%3Ahttp%3A%2F%2Fbryanbraun.com%2F2013%2F11%2F09%2Fif-gmail-
were-built-with-
drupal&aqs=chrome..69i57j69i58.4387j0j7&sourceid=chrome&espv=210&es_sm=122&ie=UTF-8)

~~~
ChuckMcM
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.

~~~
na85
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.

~~~
ChuckMcM
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.

------
arocks
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.

~~~
kitsune_
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)...

~~~
untothebreach
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...

~~~
girvo
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.

------
thatthatis
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.

~~~
leonk
> 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.

~~~
thatthatis
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.

------
drawkbox
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...](http://www.theatlantic.com/technology/archive/2013/06/healthcaregov-
code-developed-by-the-people-and-for-the-people-released-back-to-the-
people/277295/)

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._

------
danso
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.

------
shanemhansen
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...](http://www.techempower.com/benchmarks/#section=data-r7&hw=i7&test=query)
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.

~~~
debacle
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.

~~~
ceejayoz
> 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.

~~~
debacle
I guess you're not familiar with the CRUD generation tools present in almost
every PHP framework since 2008?

~~~
ceejayoz
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.

~~~
debacle
Symfony has had that functionality since 1.1, and all it requires is a one
line yaml change.

~~~
ceejayoz
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.

------
rasmusbe
"Error. The website encountered an unexpected error. Please try again
later."... lol :)

~~~
tfb
I added "cache:" before the URL in chrome:
[http://webcache.googleusercontent.com/search?q=cache%3Abryan...](http://webcache.googleusercontent.com/search?q=cache%3Abryanbraun.com%2F2013%2F11%2F09%2Fif-
gmail-were-built-with-drupal)

------
mattkevan
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.

~~~
snowwrestler
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.

------
jack-r-abbit
> 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.

------
jol
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

~~~
ssharp
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.

~~~
abruzzi
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)

------
lectrick
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!

------
buremba
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.

------
bbayer
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.

------
tangue
A bit ironic, considering how the latest gmail update enraged most of us.

~~~
Filligree
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.

~~~
pdx
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.

~~~
skj
Likewise, I'll document my complete indifference.

(heavy gmail user)

~~~
mseebach
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.

~~~
snogglethorpe
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.

------
mstefff
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.

~~~
porker
> 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!

~~~
mstefff
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.

~~~
porker
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!

------
SippinLean
I don't have experience with Drupal...but these problems couldn't be solved
with CSS?

~~~
freshyill
Clearly you're not familiar with the markup that Drupal shits out.

------
ausjke
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.

~~~
debacle
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.

~~~
abruzzi
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.

------
thejerz
Apparently his site is built with Drupal. This is very meta.

------
tpainton
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.

~~~
username42
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 ;-)

------
hawleyal
Who uses the default admin theme?

------
fashamsi
In drupal we trust.. Wait for drupal 8 it's going to be Legen.......wait for
it ............DARYYYYYYY!!!!!!!

------
pyGuru
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.

