Drupal Modules are Cool. But It’s Still About the Content

Anybody who has spent more than 15 minutes of research on the Drupal content management system (CMS), can see that the modules and the community developing them are incredibly valuable to the systems success.  Every week, new modules get pumped into drupal.org, constantly solving, improving and securing all the most common (e.g. Views Module) to the most specific (e.g Video Chat Module) web development challenges.

For designers and developers this sometimes poses a problem.  One who is classically trained in design, frontend development, or backend development has been conditioned to solve problems using the most intuitive and optimized work-flow with which they’ve had previous experience.  This results in conversations that start with statements like “LinkedIn uses this really cool UI pattern in their sign up process…”.  From there, they begin building from the ground up with subject to the constraints of time and budget.

With modular architecture, these proven rules don’t always apply because you’re not starting from scratch.  Your starting point is a series of cogs that, when combined right, create a desired outcome at a fraction of the cost.  Yet, when not combined properly, a Drupal site becomes “clunky”. The spirit of the functionality may be there, but its implementation is only as good as the architecture that the specific, individual module creator originally envisioned.

This poses a problem for Interaction designers because we are focused on what users remember from their experience with content, not necessarily the means to access it.  If that experience feels like a series of unrelated cogs instead of a unified vision, that negatively affects a user’s ability to both find information and the perceived value of the brand.

This can result in a very large ecosystem of developers that create well-constructed systems of cogs, instead of fully-realized content- and user-centric visions.  This is not unique to Drupal, as this problem is found in almost every CMS platform.  Developers and designers are empowering their clients to dream their wildest dreams, but in the process, brands and users are losing as the conversations about what role a website serves gets lost in a disconnected litany of functionality. Fully functional “templates,” available for free or purchase, offer one solution to overcoming this problem.

To use an analogy, it’s like restricting yourself to only using certain types of LEGO pieces.  When I play LEGOs with my nephews, they pick out all the coolest pieces they can find and slap them on the set they’re making. They’ll say, “Uncle John, check out this ship I just made!” followed by a systematic counting of laser guns they stuck all over it.

You can think about modules in the same way you think about these cool LEGO pieces.  On top of the Drupal core are certain pieces that have been designed to meet a lot of your building needs.  When one of our clients is looking for us to build a website, it’s easy to want to put together all the coolest pieces that we have found along the way.  It’s also easy to get wrapped up in the cool factor of each piece and market it that way.  Ultimately, we lose track and vision for what the website should communicate and how effectively it achieves it’s business goals.

Finesse of a Drupal website is tied directly to the steering wheel of the team producing it, and that often comes down to the modules they choose to utilize to achieve those results. Here at Duo, we stick to a core set of proven modules with the support of our friends over at Acquia.  It creates an environment where we can be more disciplined with our site architecture because we know what the final output and experience will be from each tool.

By limiting our core tool set, we allow ourselves to focus more on the quality of the implementation, keep a certain level of discipline, and most importantly from an Interaction Design perspective, focus on the content.  Instead of letting the conversation move to the means, let’s instead keep the conversation on the content and the types of users trying to access it.

Add a Comment 

WordPress Search Spam

Our blog was recently affected by a rather clever little hack, and when I went searching for ways to remove it, I couldn’t find much. Here’s a brief writeup of what happened and how I fixed it.

Our Director of Internet Marketing Strategy, Sonny Cohen, spends some of his time searching Google and other search engines for keywords relative to our business. He began noticing that some of those results, while they would return pointers to our blog, were laced with keywords and links to various male enhancement drugs. When I searched our blog for these references, I couldn’t find anything.

Here’s what I was seeing when I would search our blog for the phrase “test”:

But here’s what Google was seeing when it did the same search:

You may notice that the URL in that is to a local file. There are two ways you can see what your site looks like to Google. One is to change the User Agent on your browser to match that of the Googlebot. The other is to use the Webmaster Tool’s “Fetch As Googlebot” lab utility. I used the latter, and saved the resulting report as an HTML file and then opened that file in Chrome.

So why is Google seeing different results than anyone else who visits my site and runs that query? Something different must be happening when Google visits. I started running through the execution path of WordPress. The first file that is accessed is index.php. All this file does is turn on a theming variable and load wp-blog-header.php. So I moved on to that file. It looked like this:

if ( !isset($wp_did_header) ) {
$wp_did_header = true;
require_once( dirname(__FILE__) . '/temp.php' );
require_once( dirname(__FILE__) . '/wp-load.php' );
wp();
require_once( ABSPATH . WPINC . '/template-loader.php' );
}

temp.php? Never heard of it, let’s see what’s inside:

eval (gzinflate(base64_decode(
'vVhtc9pGEP6emfwHRfUUmGLg9IbkhNrUJrZnEsfFOGmKXc1ZOoMmQqInYYea/Pfu'
.'nnjRG6aZzNRj0Em7++yzu3erOw5/fXM4HU9fvnj5Ym8cRnFnz77q9T/2+sPK2WBw'
...snip for length...
.'6reTZEAXdDrl4QNzE/3F3Wy+iKjPxFe0gH7G+ML1IiecBfHiY+LyWLhsVmDlrQ7g'
.'cvonDPkW65UOKh6zCWuM44kvFr6Ialmvw1/fHP4L'
)));

Now that looks evil. Obfuscated code can’t be good. I decided to see what it does by replacing the “eval” with “print” and then I ran “php test.php” from that directory. The results are very long, but you can see them here.

Basically, the program tries to determine if we are a real person or a search engine bot by looking at things like our IP address and our user agent. If it determines we are human, it goes ahead and returns the standard header. If we’re a bot, it serves the content in “theme.html” which is identical to the second screenshot above.

So to clean things up, I removed the reference to temp.php from wp-blog-header.php, deleted the file temp.php and deleted the file theme.html.

Add a Comment (2)

Reusing Conference Content – Our Video Experiment

One of our experiments with the Web Content Conference was to video record all of the breakout sessions. Admittedly, we hadn’t completely planned out what we would do with the content once we had it. But we knew we had only one chance to capture the live event  Our annual conference is always a work in process so, well, we’d figure it out. When set free, content finds its own level. We had all the time after the conference to consider how to free it.

Content Delivery Network

Throwing these videos up on our YouTube or Vimeo account would’ve been easy, free and social. But our videos were too long for these services.  Instead we are storing the videos using Amazon  Simple Storage Service (Amazon S3) and Amazon Cloudfront as our content delivery network.  Because this is streaming media, we’re using  Real Time Messaging Protocol (RTMP). These services charge for storage and bandwidth.

Delivering  Content

Once the video was uploaded, we started posting the videos individually to our company blog. For each we wrote a short summary and then embedded the video into the post. Because we found that each video actually loaded on the page when the blog was accessed, page load times were unacceptably slow. So we used the “more” feature in our WordPress blog and embedded the video “below the fold”. Now the blog visitor can read the short summary and only when they click the “read the rest of this entry” does the video load. Not perfect, but good enough. And we were learning.

Kristina Halvorson at Web Content 2010

Web Content 2010 Video in a branded wrapper and embed code provided

Packaging the Product

We went back to the drawing board and created a friendlier “wrapper” for the video, branding the video frame with video session title, presenters name,  company logo and a prominent start button. To encourage viral distribution we also included the embed code which brings the video, the quick start usability and branding assets. Now any person can lift the video and place it wherever they’d like.  We created a video page on the conference website. Pretty cool.

Content Lives

Web Content 2010 was a great event. And as most who attend conferences know, the presentations are rich chum for stimulating dialogue among the attendees. There is tons of great actionable  information in these videos.  Special thanks to our presenters for giving us the permission to video and release their valuable information.  If you were unable to attend the Web Content Conference and/or web content is your thing, watch the videos. And pass them on. We’ve given you the tools.

Add a Comment 

Web-First, Assumptions Last: Christian Science Monitor Goes Online – Video

Equal parts success story and cautionary tale, veterans of web-based content management Kelly Tetterton and Fred Salchli explain the process of building an online web-first platform for renowned newspaper Christian Science Monitor, and the issues it raised. Delving into the ideas and assumptions each team brought to the table, they show how the human, real-life factor involved in large-scale content migration and CMS implementation can influence as much, if not more than more technical considerations.

In the end, a widget can’t fix everything, but checking your assumptions, doing your research, and above all clear communication can not only launch your website, but help everyone walk away satisfied and happy.

Read the rest of this entry »

Add a Comment 

How Extensive Is Your Experience?

It is common for law firm websites to speak about themselves with hyperbole.  Self-important adjectives litter the site content.  Firm’s with exceptional people are one-upped by those with truly exceptional people.  Knowledge is only valid if it is genuine. Experience, it seems comes in a variety of flavors as well. Some firms have wide experience.  For others it is deep experience.  But the most common benchmark of experience is that it be extensive.  Does your firm claim extensive experience?

The phrase extensive experienceNow it’s not that I don’t believe it when I read of a professional’s extensive experience. It’s just that this really doesn’t tell me anything. Worse, it doesn’t tell me anything different from the next guy who also has extensive experience. In fact, I would argue, my baseline is extensive experience. Now tell me how you’re better.

If you Google the phrase “extensive experience” there are over 6 million website pages where this value is claimed.  Using the search tool on several law firm websites, I discovered an “extensive experience” ratio of about  35% – 50% (# of appearances of “extensive experience”/attorney). So making this claim doesn’t so much separate one professional from the pack as much as it defines the pack. (Check your firm’s ratio and let me know!)

But the problem with this “extensive experience” language is not merely that it is linguistic laziness. Rather, this laziness results in failing to detail the richness, complexity and detail which this phrase references. And in so not doing, opportunities are lost for using this missing content.  You won’t be found in a search engine because, frankly, nobody is looking for “extensive experience.” And you won’t be discovered in your site search because, well, almost half of all attorneys have the same vague amount of experience. And it is all extensive.

Yes, I understand that, often, considerable descriptive detail must be concealed for privacy considerations.  Yeah, so? Content developers (copywriters) simply have to work harder to anonymize those involved. But, with a little effort, it is possible and essential to provide sufficient detail to make the stories comprehensible and relevant – and content rich.

Go the extra mile to gather the detail that elicits that sense of extensive experience. Boil it down to 3 to 5 cogent bullet points of industry and matter relevance. And post it. Your site visitor will have a better experience. This will result in more web pages consumed and possibly a longer time on the site with more opportunity for engagement. And search engines will devour the details for their ranking algorithms.  And you know how I know this? I have extensive experience.

Add a Comment (2)

Ben Brown Builds an Online Community – Video

You may not be aware of it, but your website probably has a community: the people that read, utilize, and otherwise interact with your pages. They’re out there, and they’re talking. It’s up to you to figure out what they’re saying, what it means, and how you can use it to make your site better. Software engineer and online community veteran Ben Brown shows you how to creating a culture that encourages the kind of behavior you want to see and rewards users for their engagement.

Brown explains how to communicate with your visitors, and in doing so avoid easy mistakes (he has a few real-life examples), advocate on-topic discussion, and reach the point where users can police themselves. From what text you put on buttons to where you should put your mission statement, Brown illustrates how your online community is a creative force to be observed, reckoned with, and harnessed for mutual benefit.
Read the rest of this entry »

Add a Comment 

Jeff MacIntyre Describes a Methodology for Content Strategy – Video

Talking about the importance of content on websites is definitely good and often useful, but what happens next — what do we do when the discussion’s over, and it’s time to get down to the actual work of improving information? In “Audit, Plan, Build, Grow: A Methodology for Content Strategy”, experienced content strategist Jeff MacIntyre explains the methodology behind organized, people-centric, and ultimately effective content strategy.

Thoroughly analyzing and understanding what’s there and adapting as necessary to content management systems, company hierarchy, and audience; these processes help us do more of the work we want to do, and do it well. Using Predicate, his content and editorial strategy consultancy, as a reference base, Jeff uses real-life examples to illustrate the importance of having a plan, and how it not only benefits both company and client, but paves the way for a bright content future.

Read the rest of this entry »

Add a Comment 

Our 5-Way Drupal June Juggernaut Covers Four States

In the month of June Duo Consulting sent me out for 6 days of speaking at 5 events across 4 states!

The month kicked off with the Web Content Conference which is chronicled in a previous blog.

From there I went to the SouthEast LinuxFest where I had the privilege to address a good sized crowd of Linux lovers. This was an opportunity for me to do a whole new topic, “How Drupal is Expanding the Role of OpenSource in Government, Private Industry and Beyond.” The presentation started off with a brief boasting about how the community and the software has grown exponentially in the last few years. 600% growth in DrupalCon attendance from 2008 to 2010 and a 35% growth in contributed modules (defined) from 2009 to 2010 were among the impressive numbers I demonstrated.

I then spent some time showing off the Drupal-based WhiteHouse.gov site and its many interactive features. I explained how these features were in keeping with the recent Open Government Initiative (defined). After showing off more government, entertainment, and other sites I closed with some Q & A which showed that the room’s interest level in Drupal was high.

The following day was a Drupal Camp using the same facilities as the LinuxFest. This was an awesome opportunity for the LinuxFest attendees to sit in front of Drupal Ninjas and learn from the pros. I polled the audiences a few times and it was clear that many of the attendees were at their first-ever Drupal event. We attracted people from SC, NC, and Georgia, and beyond. One thing I have certainly noticed is that Linux users love Drupal, but the sites they build are rather bland and often void of any of the cool functionality that Drupal affords. Hopefully the DrupalCamp has sparked some creativity!

The following week I landed at our nation’s capital to help organize the first [hopefully, annual] Drupal LibraryCamp. We chose the DC area because the American Library Association Annual Conference was being held there the following day. We had 16+ people join us in the Arlington Central Library as we enjoyed presentations from experts in the field of how Drupal is serving libraries across the country. After lunch Cary Gordon and I took the group through a crash course on Drupal as a community and a Drupal primer. What I really enjoyed most about the event was seeing the people connect. I’m not in any way associated with the Library world of Drupal, but I did get to see these dedicated individuals sharing their stories and growing their skills and understanding. Much appreciation was shared for Duo Consulting who sponsored my involvement in organizing and attending the event.

Two time zones away to the West, DrupalCamp Colorado was calling me. Oddly enough, this camp was the same weekend as the Chicago DrupalCamp. Since other Duo folks were attending the Chicago event,  Duo elected to dispatch me to the mountains! Luscious scenery aside, DrupalCamp Colorado was a win on many levels. I gave my usual Advanced CCK+VIEWS session where I was honored to have over 33% of the camp attendees join me! I had lower expectations for my second day session. I wasn’t sure how many would show up for “Getting Street Creds / How to be an active Drupal Citizen!” But sure enough, I had 30ish people listening to me rant about how to be a Drupal Zealot.

I broke down the Drupal Community Involvement model into three alliterations as I encouraged the group to be Visible, Valuable and Volunteer. Some took my Twitter advice before I had even finished. They started tweeting about being at the camp and listening to my session! Many came up afterwards very thankful that they now knew that they could be valuable members of the Drupal Community. Being the first time I’d given this session, I was way stoked at the results! I look forward to giving this presentation in Dallas in August for the hybrid OpenCamp and DrupalCamp Dallas.

Add a Comment (1)

Kristina Halvorson On the Emerging Power of Content Strategy – Video

Although it’s gone by many names and through many iterations, the practice of content strategy has been around for over a decade. However, content strategist Kristina Halvorson would argue that it’s just beginning to come into its own, both as an essential component of a usable, lasting website, and as a process and strategy in its own right.

The importance of content is often underplayed, overlooked, or seen as something to work around, and a result is often disorganized and lacking, dragging down a potentially impressive site. Drawing on a wealth of personal experience, pioneers in the content strategy movement, and even Pixar’s touching eco-dystopia Wall-E, Kristina spoke with clarity, passion, and humor, outlining content’s frequent role in website creation, how it got pigeonholed there, and what we can do to make sure what’s actually on a website isn’t something shoved between 11th-hour design tweaks and launch. The CEO of Brain Traffic, a Minneapolis-based team of content strategy consultants, she believes in content strategy’s power to benefit user, company, and the Internet as a whole. Click “Read the rest of this entry” to see the video.
Read the rest of this entry »

Add a Comment (1)

Blogging for Business Development – Or A Better Solution

In a recent  Legal Marketing Association listserv discussion, legal marketer Larry Bodine opined that “IMHO, the whole purpose of blogging is business development.” I don’t agree that the business development objective squeezes out every other.

Perhaps I’ve been spending too much time with people involved in any number of open source movements.  But in these communities, the idea of sharing ideas through any number of tactics, including blogging is to hypothesize, postulate and otherwise endeavor to move the ball – forward, preferably.  Whether it be legal marketing or Drupal module development, to begin a long list, there are a lot of methodologies subject to exposure, evaluation and opinion. Tossing those ideas out there via social media may have a business development benefit, but if they elicit thought and  stimulate expressed opinion the synergies of two-heads being better than one begins to kick in.

In the same discussion thread, law marketer Jayne Navarre says, “The most successful bloggers I know put their personality into it and even stick their neck out a little bit to make it provocative, conversational and distinctive.”  Again, I don’t know if bloggers only “stick their neck out” for the reasons Jayne says.  Rather, or maybe additionally, it is because we have a point of view which might not be yours. And if it’s an interesting enough presentation, you perceive it as provocative.

Marketers, of course, pressed for ROI for any tactic requiring resources, seize social media and blogging for all of its business development potential.  That’s ok. But let’s not forget that there is really nothing wrong with simply making a contribution to your industry or profession. And, in fact, specifically striving for the latter may achieve the former.

Add a Comment (7)