First Impressions

I've just spent some time playing with Drupal Commons and thought I'd post some feedback on my first impressions. To put this in context, I should explain that I'm looking for a solution to provide collaboration tools in our company intranet. This needs to include single sign-on, blogs, wikis, groups, document sharing, calendaring (for booking meetings etc) and a staff directory. Additional project management tools would be preferable, but I guess this would be possible via the other features.

In terms of features, Drupal Commons comes very close to offering what I need - and with a bit of additional development, it looks like it could check all the boxes. However, it feels to me like an unfinished solution at the moment, and I really don't think it's ready for real-world corporate usage.

My main concern is usability. In particular, the interface has no interactivity (which makes it feel rather out-of-date) and each of the sections feels like an add-on rather than an integrated part of a complete application. Here are some specific observations:

  • The dashboard doesn't seem to allow any customisation. I would expect to be able to drag and drop elements to change the layout, or at least have a modify button.
  • Although the FAQ says it is possible to create subgroups, there are no examples of this on the site, so it isn't clear to me how this works. Given that the number of groups would likely become very large over time, they really need to be well structured to keep the site manageable and easy to navigate.
  • The links to all types of content look the same, which can be quite confusing. For example, the search results can contain blog posts, groups, discussions etc, but the only way to tell them apart is with some small text - even though they are completely different in nature. I would suggest some bold icons to distinguish between them. Ideally, the information shown should also vary according to the content type.
  • Pages within the different sections of the site also look virtually the same, which gives you no sense of where you are. The breadcrumbs help, but they don't seem very consistent (see below) and they're not very visual.
  • The user search results show nothing except the username, which really isn't very helpful. Also, what if I want to search by job title, location, projects etc?
  • The calendar is particularly unintuitive. You cannot click on a day to create a new event. When you click "Add a new event", the events details come last. Also, if you navigate via "Community > Calendar", the location when creating an event is shown as "Home > Create content" rather than "Home => Calendar => Create event". This makes it look like an after-thought to a CMS rather than part of a social networking application.
  • The HTML editor in which I'm writing this post is configured to use double spacing. As a web developer, I know this is because the return key generates a new paragraph tag, but normal users don't know this. This is a minor point, but it suggests to me that there hasn't been any usability testing.
  • From what I can see, there is no auto-save while I'm writing this. I can't find a spell-check either, so I take no responsibility for any mistakokes.

I've also taken a look at the Drupal code base and was similarly unimpressed. From what I can see, it's completely procedural, and seems to have a heavy reliance on global variables. This suggests it hasn't been updated since the launch of PHP5, which was many years ago. I was expecting to find a collection of classes with class diagrams to help me understand how they relate to each other, but instead it looks like a steep learning curve to read all of the documentation (which can't be printed or downloaded) and to examine each of the core modules. There isn't even any code-level documentation, such as PHP-Doc.

Sorry to make so many negative comments, but I'm really quite dissapointed. I'm a strong supporter of open source software and have made numerous contributions myself, but in order for open source to present a viable alternative to commercial software, the developers need to think like a business in terms of usability etc - both for the end user and other developers.

I sincerely hope Acquia will take some of these comments onboard, and I'll definitely check back when the next release is available.

Comments

wolfflow

Hi, @marcusjhdon , thank you

Hi, @marcusjhdon , thank you very much for your IMHO very good and constructive feedback. From me personally it gave me a very good additional insight in what all is important to focus on Drupal Commons usability. I'm sure that Acquia will appreciate that too and of course the only objection to your feedback is that AFAIK Drupal Commons just is online for about 2 or 3 Weeks and I can imagine that a considerable planning and implementing as some basic and fundamental testing period of time has been invested from the Acquia Team.

Thanks and Kind Regards 

jay

Comment response

Hi, Marcus. Thanks for your comments. I'll take a moment to reply with some brief thoughts.

  • Customizable dashboard. This is on the near-term horizon of being bundled in Commons, and is likely available to you immediately.  See this discussion. I would encourage you to not consider this a "blocker" for adoption, given it's near-term availability.
  • Subgroups. I don't know what FAQ you're referring to; we don't currently advertise subgroups as an R1 capability.  However, this (too) may have the same availability implications as the dashboard.  See this discussion.  Again, I would encourage you to not consider this a blocker.
  • Visual indication of link type. We do provide the type of indication you suggest in the "Recent Content" block. We didn't add this indication in search results because there are several search technology possibilities available to Drupal Commons users, and we didn't have time to cover all possibilities in R1.  However, this should be straightforward for the Acquia Search option (which is what we use on this site).  Thanks for the suggestion; we'll do it, though it seems a minor point on which to disqualify Commons...
  • Visual indication of location in IA. We're increasingly realizing we do not have a good way to communicate a key assumption in our design: That we didn't over-design the interface with lots of eye-candy / visual indicators because the more eye-candy we have, the more a given enterprise customer will have to "unwind" in order to incorporate their own branding.  I explain that here.  You can add various types of visual indication of location-in-IA if/when you implement your own branding; there's plenty of hooks in the theming layer to do so.
  • User search. It is already possible to search by title, location, etc.; simply use the "Filter" control on this page. (Note that you can put that control in a different location, use different font size or graphics, etc., when you implement your own theme incorporating your own branding.) Oh, and oes, results only return a name; we could stand to improve this, but currently this is what Drupal core provides, and we didn't push beyond what Drupal itself provides, I'm afraid.
  • Calendar. Not to pick a bone, but it seems like you have a design bias about how to implement events. You want clicking a day to create an event; we instead want clicking a day to display the existing events for that day. Which of these is unintuitive? The answer is probably 50/50. In re: your Create Content breadcrumb point: there's a bunch of breadcrumbs we set in order to create Commons; this looks like one we missed.  It's a 10 second configuration selection that you yourself can make if you feel strongly about it.  (See /admin/build/path/list or /admin/build/path/add to make any breadcrumb changes you want.) Thanks for the bug report.
  • HTML editor. Yes, of course the editor generates a <p> tag when you hit return, and it doesn't add any HTML when you simply keep typing and let it wrap text itself. I'm not sure what the bug is here... What should it do?
  • No auto-save. True. This is a pretty rare, and difficult thing to do in an HTML editor within a browser page. Please point me at another social business application that does it; I'd like to investigate how it'd done.
  • Drupal code. There are few tens of thousands of Drupal programmers who would disagree with your assessment.  Although Drupal does not make thorough use of the native OOP features of PHP, the Drupal code base and API does reflect some principles found in object-oriented programming and design. It would probably be useful to talk to a qualified Drupal programmer to this, or to peruse one or more of the numerous Drupal coding books.

Thanks for your support of open source.  You do seem to have significant thoughts about usability; it would be great if you'd come join the Commons community, and offer your contributions to improve the usability of Commons! You're certainly welcome, and contributions are encouraged.

I hope my comments here help you see a bit further beneath the surface, and will have you working with Commons now - vs. waiting for a "next release."  Cheers!

vegardjo

Auto save + calendar

Hia Jay, interesting discussion here!

Just like to comment on the auto save feature, as one application that does this very well is Wordpress (while not a social business application it's still a WYSIWYG in a browser page with auto save). There's also the Autosave module for Drupal, haven't tried it myself but it allegedly works with CK if you add a patch to the WYSIWYG module first. 

As for calendars I agree with Marcus, it's not as intuitive as it could be. I find the Calendar in Open Atrium much more usable. 

marcusjhdon

Hi Jay. Thanks for your

Hi Jay.

Thanks for your detailed response. Here are my follow-up thoughts:

  • Customizable dashboard. Good to hear, I'll definitely watch out for this.
  • Subgroups. This is the FAQ I was referring to. However, I've just realised it says this module needs to be installed.
  • Visual indication of location in IA. I totally understand your point about the minimalist design, but I would suggest adding this one feature to demonstrate the functionality.
  • User search. Good to know there is another way to search users. I'm slightly concerned by the limitations of the core that you describe, but I can only assume this is easy to extend - I have to read a book on Drupal first!
  • Calendar. No design bias - I actually right-clicked first hoping to get a menu of options. My point was more about the lack of interactivity and the fact it feels like an add-on. IMHO this feature needs to be greatly extended, ideally to allow syncing with external calendars and mobile devices, which is what many corporate users (who are used to Exchange etc) want. Many of the best email applications provide this functionality, and I think an application aimed at improving collaboration should at least keep step with them. Zoho Calendar is a good example of a nice, clean interface.
  • HTML editor. Presumably, most users would expect it to work like a word processor. I'm not sure what WYSIWYG editor DC is using, but the fix for TinyMCE is to either configure it to use <br> tags, or to set the stylesheet to remove the margin and padding from paragraph tags. There's a good explanation here.
  • No auto-save. Can't comment on other social applications, but most webmail applications do this (which is something I have much more experience of). Check out Roundcube for a simple, open source example. The more forward-thinking applications are now even storing content locally, rather than on the server (something available natively in Mozilla browsers I believe). This allows users to continue working in off-line mode, which is an important development in my opinion - especially in terms of making Saas applications more attractive. I believe Zoho is a good example of this too.
  • Drupal code. I knew that would touch a nerve :) Most of our own legacy code-base is also procedural, but to be fair it's also many times larger than Drupal, and it takes a long time to re-factor millions of lines of code! Also, I'm not an OO snob, and I'm well aware it's possible to create well structured, secure and very efficient applications using procedural code. So, I'll reserve final judgement until I've studied Drupal in more depth.

You guys definitely deserve congratulations for creating Drupal Commons, and I've no doubt it will mature into a very powerful product. However, I still believe it's got a long way to go before it can truly compete with something like Jive. If you were able to offer all of the same features (ideally "out of the box"), I believe it would win hands down over other, proprietary, closed source and expensive applications.

jay

Thanks for staying engaged!

I also appreciate your comments above.

You conclude from the list above that Commons has a ways to go to compete with Jive.  I'd be interested to see your comparison of Commons with Jive when it comes to the issues you list above.  Does Jive provide auto-save of content in the HTML editor? How about editor behavior? (You'll note that both Commons and Jive use CKeditor - so if you're finding differences, it's merely in configuration, and you have full control of that in Commons). Does Jive have right-click calendaring the way you suggest?

And most importantly, can you even see the code for Jive?  :-)

And finally, are the differences between the two worth six figures in software licensing fees?

marcusjhdon

I've just been trying the

I've just been trying the online demo of Jive, so here are the answers to your questions:

Does Jive provide auto-save of content in the HTML editor?

- Yes

How about editor behavior?

- It's configured to use single spacing via paragraph tags and the stylesheet.

Does Jive have right-click calendaring the way you suggest?

- No. Maybe I'll suggest it to them!

Please note that these suggestions were just things that occured to me while testing, which each contributed to my "first impressions". None of them are particularly important, I was just trying to illustrate the type of developments I would like to see - and I suspect other potential users would too. I'm also looking at a lot of other applications, and the list is growing all of the time. Here is my current list, which others may find useful:

Software - open source
http://www.elgg.org/
http://www.phpfox.com/
http://www.phpizabi.net/
http://www.precurio.com/
http://www.telligent.com/
http://www.socialengine.net/
http://www.acquia.com/products-services/drupal-commons
http://www.liferay.com/

Software - closed source
http://www.socialtext.com/
http://www.ngenera.com/
http://www.thoughtfarmer.com/
http://www.spartasocialnetworks.com/
http://www.concursive.com/
http://www.axerosolutions.com/

Software - hosted
http://www.ning.com/
http://www.huddle.com/
http://www.kickapps.com/
http://www.bluekiwi-software.com/
http://www.groupsite.com/
http://www.elgg.com/
http://www.smallworldlabs.com
http://www.socialnetworkserver.com
http://www.cubetree.com/
http://www.igloosoftware.com/
 

vegardjo

Open Atrium

Seems to me that you should definitely add Open Atrium to your testing list, a different intranet tool also created as a Drupal distribution, but executed quite differently from Commons. 

JB Ingold

In the open source list I would also add BuddyPress

I think it's a very very important competitor in public facing community

See the event I organize in France with more than 100 people (Drupal and Wordpress users) attending http://jbingold.com/content/rencontre-des-deux-mondes-wordpress-et-drupal

But there is some also reference as entreprise use (in the bank sector in France)

JB Ingold

Very interesting feeback and conversation :)

@marcusjhdon @jay  @wolfflow That really great to see such a nice feedback and opening up

I copy and pasted the link to http://groups.drupal.org/node/86209#comment-274134 in the hope it will boost the interest in this conversation in the Drupal Community.