Skip directly to content

Starting at the middle

on Fri, 09/07/2012 - 13:05

Working on the design for Spark and Drupal 8 has involved a lot of thought and research on site building in Drupal which has led me to a few interesting conclusions, one of which I want to illustrate here.

In WCM platforms there are basically two different approaches to site building; bottom up and top down. Bottom-up means basically build-it-from-scratch. That's essentially where Drupal 7 core is right now. The user must download, install, configure, choose modules and a theme, create content types, layouts, views etc. The process is time consuming and requires a certain level of expertise but presents few obstacles to what is possible assuming the user has the time to discover or create the right code.

The top-down approach gives the user an out-of-the-box site they can then customize. This is essentially where Drupal Gardens and many of the other SaaS site building platforms exist. The user is presented with a frictionless process for setting up a site which presents pre-configured "features" a theme and even placeholder content, all in one sitting. After that the user theoretically has the ability to customize the site. The drawbacks here are that the features the site provides are limited and may not match the users needs and the ability to customize is also limited. The promise of the top-down approach is that it removes work for the user, which is true if the user is happy with what they get out-of-the-box. In practice, however, the out-of-the-box site often does not match the vision the user has for the site they want. They are then forced to spend nearly as much time stripping away what they don't want and re-creating it as they would have spent building from scratch.

An alternative to these two would be what I call "starting at the middle". This approach would bring the user halfway to the goal, removing much of the tedious set-up work involved in the bottom-up approach, as well as the need to "strip away" unwanted cruft created in the top-down approach. This could be accomplished by identifying the commonalities that exist in what we call the "80% use case" that is the attributes that 80% of users require in a site.

Let's take the example of layouts. In Spark we are working on gridbuilder and layout modules which gives the user some powerful tools for building a set of responsive layouts using drag and drop interactions. Instead of presenting the user with a blank slate and expecting them to build responsive layouts from scratch we are doing a few things which follow the "start at the middle" approach.
 

  • We pre-configure the 80% use case for breakpoints (smartphone, tablet, standard)
  • We pre-configure a default set of regions with names that map to common web layout patterns (header, sidebar, footer etc.)
  • We pre-populate each new layout with a subset of the default regions
  • We give the user a set of default "starter" layouts that they can clone and alter to make their own.

By doing this we remove hours of development time per layout and accelerate the site building process dramatically. These improvements can be cumulative. Say for instance that we pre configure several more content types than currently exist in core and apply one of our preconfigured layouts as the default to those content types. Now the user has a site that by default has a richer set of features and is responsive out-of the-box. At the same time, within a few clicks, the user can change the layout or apply a different one. There's no laborious "stripping out" of theme markup.

Ok, so I'm getting a little ahead of myself but hopefully you see how the concept could scale to the rest of Drupal. By contrast let me give you an example of a Drupal admin UI that uses the "bottom-up" approach, the infamous field UI. Leaving aside the well known usability issues if the "start at the middle approach" were employed what you would have would be:
 

  • Several pre-configured fields mapping to 80% use cases eg: "date", "price", "quote" etc.
  • Several pre-configured "starter" content types mapping to 80% use cases that the user could clone to create their own
  • Default layouts applied to the content types
  • Pre-existing "sample" nodes for each "starter" content type with placeholder text so that the user could make sensible layout and style choices in the absence of real content.

Of course there will be those who still want to take the bottom-up approach. The important thing to remember is that nothing in the above example precludes the experienced Drupalist from going straight for the "boolean" field because they know what it is and how to use it. What it does do is to remove the necessity of having that knowledge from the site builder until they absolutely need it, leaving them a clear and rapid route to building everything else.

Comments

salediablo's picture

"Even if some readers have misinterpreted the original intent and I thank them. Outstanding works of infinite possibilities. More outstanding works is the more likely to be http://www.salediablo3.com misunderstood. Centuries, everyone in the interpretation of" A Dream of Red Mansions ",

coco33119's picture

Diablo 3 the PVP system finally began to test, although there is still no integral and ranking such function, but it is sufficient. D3 gold think Blizzard to do so is also a smart water testing.   At least, the addition of the PVP mode, give the players more game power, have more power to collect equipment, such as D3 gold.  In the past, why do we brush equipment? For property accumulation? For hit priceless equipment?

manda's picture

Thank you for the great article I did enjoyed reading it, I will be sure to bookmark your blog and definitely will come back from again. I want to encourage that you continue your great job, have a good day. I agree along with you. This post is actually inspiring. Nice post and many types of a person tell you is up to date as well as really enlightening, i must book mark the actual web page in order to can come right here just as before to study anyone, as you've performed a great employment. 30 Rock Seasons 1-7 DVD Box Set | Lie to Me Seasons 1-3 DVD Box Set | Star Wars The Clone Wars Seasons 1-5 DVD Box Set | The Tudors Seasons 1-4 DVD Box Set | Cheap monster beats outlet | Cheap monster beats headphones

manda's picture

The next time I read a blog, I hope that it doesn’t disappoint me as much as this one. I mean, I know it was my choice to read, but I actually thought you’d have something interesting to say. All I hear is a bunch of whining about something that you could fix if you weren’t too busy looking for attention. The Wire Seasons 1-5 DVD Box Set | Entourage Seasons 1-8 DVD Box Set | The Batman - The Complete Animated Series | Fringe Season 1-5 DVD Box Set | CSI Las Vegas Seasons 1-13 DVD Box Set | Monster Beats Headphones for Sale

lana132's picture

I wonder how you got so good. This is really a fascinating blog, lots of stuff that I can Get into. One thing I just want to say is that your Blog is so perfect!I’m no expert, but I think you just made the best point. You obviously know a lot about what you’re talking about, and I can really get behind that. Thanks for being so upfront and so honest about the subject matter. I really feel like I have a better understanding now. The Golden Girls Seasons1-7 DVD Box Set | The Good Wife Seasons 1-4 DVD Box Set | The Carrie Diaries Season 1 DVD Box Set | Army Wives Seasons 1-7 DVD Box Set | The OC Seasons 1-4 DVD Box Set

lana132's picture

I love reading through your blog, I wanted to leave a little comment to support you and wish you a good continuation. Wishing you the best of luck for all your blogging efforts. This is very significant blog for us; I think the representation of this blog is actually superb one. I am pretty much pleased with your good work. Married With Children Seasons 1-11 DVD Box Set | The Victoria's Secret Fashion Show DVD | Criminal Minds Seasons 1-8 DVD Box Set | Full House Season 1-8 DVD Box Set | Charmed Seasons 1-8 DVD Box Set

Post new comment