Wednesday, October 7, 2009

Drupal as social media platform, what's needed next?

I came to the Drupal community with (to the best of my recollection) Drupal 4.6. That makes me a sort of old timer though really there was a lot of Drupal releases before my time. In the 4.6 days most extension of Drupal meant writing modules whereas you youngsters today don't know how easy you have it with Views and CCK ... What drew me to Drupal was the tagline "Community Plumbing" as I was looking for a platform with which to build online communities or what's now known as social networking. My vision is the use of online community to create positive social change.

I just watched this interesting presentation from DrupalCon Paris (2009) - Social Media: What We Need Next ..

I can't agree more though he didn't really come down to specific suggestions. He created a strawman argument that Drupal is in a place in the adoption curve where it's facing a chasm that will determine whether Drupal stay's "small" and secondary, or whether it hits the real big time. Right now Drupal is widely seen as being geek friendly where it's not so easy to do simple things but is simple to do hard things (if you add the right modules like Views and CCK).

Yeah. Very true. e.g. if your goal is "blogging" then Wordpress is probably better suited because it does good quality blogging out of the box. Drupal does adequate blogging out of the box however but that's not good enough because Drupal's user experience and configuration is more like a box of parts rather than a polished product. Wordpress on the other hand is, for all its flaws, focused on solving a particular area ("blogging") and it does that really well.

In most cases someone new approaching a gizmo will be put off if their first step is an installation guide telling you how to put the parts together. What's worse with Drupal is depending on the users goal they may need contributed modules and that involves a number of hairball steps to learn how to navigate the contributed module repository, evaluate which ones are any good, wade through inadequate or nonexistent or wrong documentation, and figure out how the whole thing would work.

Someone wanting to implement a given solution .. they can see the problem in their mind but unless they spend a lot of hours trying out different modules they won't know which modules are best for what and won't have much of a clue on how to get to the solution.

But back to the presentation..

He posited there are two ways the Drupal community is thinking to go:- a) create a "solution" / "product", b) be a "framework" with which others can build solutions

e.g. Does the Drupal community move to a "Core" Drupal distribution on top of which others build Distributions of Drupal? This would be like how the Linux kernel is just an operating system and it requires Distribution teams to assemble all the pieces of a an OS usable by mortals. Or does the Drupal community focus on a given solution and build Drupal for that solution.

I can see value to either. But what must come out the other end is a better product-like user experience.

The easiest direction which I think the Drupal community is already going towards is something like this:-

  • Core Drupal as one tarball
  • The Drupal site would also distribute one or more product-like Drupal distributions, one of which could be a Generic Drupal that's in the vein of the existing Drupal distributions, another could be a Blogging Specialized Drupal.

It would take until Drupal 8 to really implement this, perhaps, unless they're thinking to really bite the bullet and get this model going for Drupal 7. I recently did a D7 install and it offered a couple installation options that hint of this direction. I don't remember the terminology but one option was a slimmed down core Drupal whereas the other was presented as a fancier full Drupal. The admin area of the slimmed down Drupal was very much like current Drupal whereas the admin area of the fancier full Drupal used a wholly different theming and user experience.

Now.. I want to get back to my specific use case: Building communities. Despite the tagline of "Community Plumbing" it isn't such a great platform for building community websites. Community websites in the old days were simply forums, and in the the forum implementation in the core Drupal tarball is a competent forum in the old style. That is except it has behavior differences from popular forum systems and in practice it turns off people who like the behavior of popular forum systems. In any case modern social networking sites are much more interactive and provide a bunch of stuff that Drupal doesn't offer.

No comments:

Post a Comment