<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>farfromfearless &#187; Developement</title>
	<atom:link href="http://www.farfromfearless.com/category/developement/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.farfromfearless.com</link>
	<description>Personal blog of Chris Murphy</description>
	<lastBuildDate>Wed, 14 Jul 2010 13:18:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>How to Fix Your Broken CMS: Part 2</title>
		<link>http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-2/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-fix-your-broken-cms-part-2</link>
		<comments>http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-2/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 14:32:40 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Content Management]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[User Experience]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Content Management System]]></category>
		<category><![CDATA[Content Strategy]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Publication]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=502</guid>
		<description><![CDATA[Sometimes the "quick wins" on a project can turn out to be long-term losses. Has your CMS project turned into a win or loss for your organization? Perhaps it's time to take a step back and re-evaluate your CMS strategy or development roadmap.]]></description>
			<content:encoded><![CDATA[<div class="notice">
<p><strong>Author’s Note:</strong> Considering the subject matter and length of this particular article, I’ve decided to split it into two separate articles.</p>
</div>
<p><strong>Related Articles:</strong></p>
<ol>
<li><a title="How to Fix Your Broken CMS: Part 1" href="http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-1">How to Fix Your Broken CMS: Part 1</a></li>
<li><a title="How to Fix Your Broken CMS: Part 2" href="http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-2">How to Fix Your Broken CMS: Part 2</a></li>
</ol>
<h2>Background</h2>
<p>In <a title="How to Fix Your Broken CMS: Part 1" href="http://www.farfromfearless.com/2010/03/04/how-to-fix-your-broken-cms-part-1">Part 1</a> of this series, I wrote at length about the current state of CMS software in general, and proposed a dramatic shift in our attention from <em>features </em>to <em>user experience</em>. At the end of the article, I offered a possible direction in terms of how to build a better CMS, and how we might better fulfill end user expectations (needs vs. wants).</p>
<p>In Part 2 of this series, I’ll be addressing the elements of what I feel would make a truly effective CMS.</p>
<p>Read on…</p>
<h2>A Recipe For a Truly Effective CMS</h2>
<p>Rather than approach a CMS as the alpha and omega of managing content, we need to approach it fundamentally: as tools to support <em><strong>people </strong></em>(and their myriad flavours of an editorial process).</p>
<p>Keep it simple. Keep it lean. Keep it efficient.</p>
<h3>Ingredients</h3>
<p>We need a few ingredients:</p>
<ol>
<li>A system to facilitate the editorial workflow</li>
<li>A system to act as the delivery mechanism (loosely coupled with the presentation layer)</li>
<li>Enhanced user-profiles to determine access levels and the end user experience</li>
</ol>
<h3>Profiles</h3>
<p>Let’s begin with the last ingredient (the element that binds all others together): the user profile.</p>
<p>The fundamental need here is to deliver a user-experience designed for a wide range of end users without becoming homogenous, meaning that the interface with which an editor performs her job can differ dramatically from that of an content author.</p>
<p>Generally speaking, a single individual can act in one or all of the following capacities:</p>
<ol>
<li>The physical author of a piece of content</li>
<li>The reviewer of a body of content</li>
<li>The one delegated with the authority to promote content into another process</li>
</ol>
<p>Note: these are fairly general roles, and granular capabilities/responsibilities/access rights should be introduced to reflect the organization’s needs.</p>
<p>The goal of a profile is to allow users (and those governing the process) to determine their desired user-experience based on both their role in the workflow, including selecting or customizing the interface that is ideally suited for their job function.</p>
<p>Everything else can be considered excess unless it promotes efficiency or enables productivity.</p>
<p><strong>Example:</strong></p>
<p>For simplicity’s sake, let’s assume that we’re talking about a content author—we’ll use Karen McNally as our archetype—whose only responsibility is to <em>craft a piece of information</em> and then <em>promote it</em> into the workflow.</p>
<p>Karen’s profile grants her access to a collection of her work (material that is still considered a work-in-progress, e.g. a “draft”), which she can edit or revise as necessary. When the piece of content is crafted and ready for review, she promotes it into the workflow.</p>
<p>Karen Smith has now fulfilled her fundamental role and responsibility as a content author. It is now up to another person—Michael Bloor, our ‘editor’ archetype—to review and make suggestions that she can implement.</p>
<p>Michael will then review Karen’s recent draft, suggest changes, contribute to the subject matter, and later promote it back into the system where it is then promoted further into the production chain.</p>
<p><strong>What Karen likely sees in terms of an interface is a streamlined set of screens that:</strong></p>
<ul>
<li>Allows her to quickly access her work</li>
<li>Allows her to manipulate and edit her work, likely including suggestions for supporting material and media</li>
<li>Allows her to “check-in” her work into the editorial workflow</li>
</ul>
<p>In the example above, we know that Karen only needs a certain set of screens and features in order for her to fulfill her responsibility as a content author. At this point, the material is then subject to an editorial process that might repeat once or several times before it is then delegated to someone else in the workflow.</p>
<p>In her role, Karen has little interest in formatting for final presentation—that is someone else’s responsibility. She does care about ensuring some basic formatting to communicate the subject matter, and it’s likely that she does have an interest in providing other source material to support her work.</p>
<p><strong>As for Michael, he likely sees a set of of screens that:</strong></p>
<ul>
<li>Allows him to quickly access one or several drafts submitted to the editorial workflow</li>
<li>Allows him to make modifications and re-assign the draft back to the original author</li>
<li>Allows him to promote the draft into the production chain</li>
</ul>
<p>In Michael’s case, he has a narrow set of responsibilities; however, his profile provides him with similar screens as Karen along with a series of screens that she would not otherwise see. On top of this fundamental difference, Michael has enhanced privileges that allow him to promote content or delegate content for other systems/processes.</p>
<h3>The Delivery Mechanism</h3>
<p>It’s a fundamental truth that a website will undergo change at some point—it might not be today or tomorrow—but it will likely evolve either through the introduction of new content or other factors like a redesign.</p>
<p>In the case of a redesign, many aspects of a website are affected: the underlying architecture, the look and feel, and in all likely hood—the content.</p>
<p><strong>Considerations:</strong></p>
<ul>
<li>Most CMSs tend to be focused on short-term execution, e.g. getting a website developed and running</li>
<li>Most CMSs promote data-warehousing—a concept that is both dangerous in terms of potential liabilities for the organization, and inefficient in terms of productivity for the long-term users</li>
<li>Most CMSs are developer-centric and unfriendly to those who are not familiar with the developer’s philosophy around content management and the resulting methodology applied to the system in question</li>
</ul>
<p>What we’ve experienced are systems that are designed for short-terms success for a small group of users and long-term frustration for the intended users (Karen McNally and Michael Bloor in our previous example).</p>
<p>What we want is is a system that is still intended to facilitate the production of a website, but is a process that is <em>loosely coupled with the task of managing content</em>. This means that our once feature-bloated CMS should now be an efficient tool for <strong>developers</strong> and <strong>web-designers </strong>to execute the website’s look and feel and features without having to juggle data-entry at the same time.</p>
<p><strong>Essentials:</strong></p>
<ul>
<li>Integration with the editorial workflow</li>
<li>Light replication of data in the form of <em>content instances</em> that can be modified according to the rules of the presentation layer (the website)</li>
<li>A role-based interface for web-designers to execute the Information Architecture (IA) and Interaction Design (IxD) of the website, and apply presentation rules to content instances</li>
<li>A role-based interface for developers to visually access an manipulate data specifically related to the features and functionality of the website</li>
<li>An API for developers (font-end and back-end) to interact with content for enhanced presentation purposes or develop features for content dissemination</li>
</ul>
<p>The marketers behind most CMSs tend to advertise the ability to manage all of a site’s information in one place, but they forget that information does not begin and end with the CMS. Content needs to live on in a universally accessible and secure location and should in all likelihood be subject to both the organization’s <em><a title="Information Governance - Wikipedia" href="http://en.wikipedia.org/wiki/Information_governance">information governance</a></em> policies and <em><a title="Content Strategy - Kristina Halvorson, New Riders 2009" href="http://www.contentstrategy.com/">content strategy</a></em>.</p>
<p>Given the above, we must now assert that a website should not to be used as an organization’s information warehouse, and that the concept of a <em>content management system</em> is most definitely a misnomer.</p>
<p>The solution that manages the nuts and bolts of a website is a system designed to do exactly that (and perhaps a little bit more if you need it to), but it should not be responsible for the long-term management of content.</p>
<p>This now leaves us with answering the workflow issue.</p>
<h3>The Editorial Workflow</h3>
<p>The editorial workflow is a system designed to support the creation and governance of content. All of the objects that comprise content (subject matter, media, resources, etc) are managed and governed by this system.</p>
<p>We can expect that a system like this can get convoluted and complex very quickly, but let’s distil things down to essentials before we start thinking about the additional requirements that are needed to support the essentials.</p>
<p><strong>Essentials:</strong></p>
<ul>
<li>Integration with desktop systems/software (e.g. minimum: importing documents into the workflow; ideal: leveraging existing software like word processors to provide a familiar interface)</li>
<li>Version control and revision history to track the changes that are applied to a single unit of content</li>
<li>The ability to apply a strong taxonomy with support for folksonomy</li>
<li>The ability to link a unit of content with a collection of [supporting] source material (resource management)</li>
<li>The ability to promote a unit or collection of content from one user to another</li>
<li>Ensure access to the workflow is governed by user-profiles</li>
<li>Ensure that interfaces for the workflow customized according to roles and preferences</li>
<li>The ability to audit the collective content inventory (reporting)</li>
<li>The ability to provide data mappings</li>
</ul>
<p>The above list address both process and the need for flexibility for organizations that might have a strict or collaborative workflow.</p>
<p><strong>Some considerations:</strong></p>
<ul>
<li><strong>Not all content is created equal</strong>, meaning that while text is the easiest to manipulate and consume, the method of presentation for the subject matter is what people experience; organizations will produce content in many forms—text being the most common—and the workflow is there to track and move it along from one process to the next. Assembly and integration into the presentation layer should handled elsewhere, e.g. promoted to another process.</li>
<li><strong>The workflow overlays the repository and it’s complexity</strong>, meaning that while content is still created by people it needs to reside somewhere and in some mutable form—a database for all intents and purposes; however, that does not mean that the complexity of the database be reflected in the user-experience. Quite the opposite is needed.</li>
</ul>
<p>Sounds like a tall order? It’s not—the only thing that makes software complex is our unrealistic expectations. But we still need something to bridge the gap between the delivery mechanism and the editorial process.</p>
<h3>The Secret Sauce: Data-mapping (aka, our “bridge”)</h3>
<p>What is it?</p>
<p><a title="Data-mapping - Wikipedia" href="http://en.wikipedia.org/wiki/Data_mapping">Data mapping</a>* is the process of creating data element mappings between two distinct data models. Data mapping is used as a first step for a wide variety of data integration tasks including:</p>
<ul>
<li>Data transformation or data mediation between a data source and a destination</li>
<li>Identification of data relationships as part of data lineage analysis</li>
<li>Discovery of hidden sensitive data such as the last four digits social security number hidden in another user id as part of a data masking or de-identification project</li>
<li>Consolidation of multiple databases into a single data base and identifying redundant columns of data for consolidation or elimination</li>
</ul>
<p>* Source: <a title="Data Mapping - Wikipedia" href="http://en.wikipedia.org/wiki/Data_mapping">Wikipedia: Data Mapping</a></p>
<p>The point that we’re most interested in here is: <em>“Data transformation or data mediation between a data source and a destination”</em></p>
<p>What we want to do is map content that resides in the <em>editorial workflow</em> to areas in the <em>presentation layer</em> (the website templates, pages, parts, elements, what-have-you). This means that we are only referencing the source content, storing an <em>instance </em>of that content, and applying presentation rules derived from the presentation layer (the website).</p>
<p>Let me re-iterate that: <em>the intent is to avoid directly handling and manipulating the source material</em>.</p>
<p><strong>Further considerations:</strong></p>
<ul>
<li><strong>Instances of content are loosely-coupled</strong>, such that changes made to the source content do not necessarily affect the instance in the presentation layer until explicitly updated—we do this to preserve workflow and ensure governance</li>
<li><strong>Content changes are one-way</strong>, meaning that instances of content are just that—modification of the instances, such as formatting, do not necessarily affect the source content—we do this to maintain the integrity of the source content and ensure compliance with governance policies</li>
<li><strong>Instances are disposable</strong>, meaning that an instance of content might have a limited shelf-life; once decommissioned, the instance does not disappear completely. It still exists in it’s raw form in the editorial workflow</li>
</ul>
<p>The reason we implement data mapping is simple: A CMS is a <em>tactical system</em> and should be decoupled as much as possible from the workflow, which is an <em>operational system</em>.</p>
<h2>Effecting Change</h2>
<p>For the record, <em>this is why I think this approach would work</em>:</p>
<ol>
<li>The approach aligns with user’s needs (not wants)—we focus only on what the end user needs, and build only the features and systems that will help that end user be productive and efficient.</li>
<li>The approach bridges a fundamental gap between software and process—that is, it brings people back into the equation.</li>
<li>We are not re-inventing the wheel—that is to say that traditional models and workflows have continuously proven to work, and we can learn a lot from the hard lessons others have had to struggle through.</li>
</ol>
<p>I originally wrote this segment of the article to reflect the top <em>three reasons why this approach would work</em>. Instead, I changed my mind half-way through to reflect the crux of my argument: <strong>Content begins with <em>people </em>and ends with <em>people</em>.</strong></p>
<p>That is the single fundamental that we need to understand.</p>
<p>I wish I could simply say that the only reason why this approach would work is that, “<em>We need it to,” </em>but that would be pure fantasy. In the real world we’re faced with an infuriating mess of business requirements, politics, and budget constraints.</p>
<p>If we’re going to effect change, we need to build an effective business case that brings people back into focus, and only you—yes, you—can do that. If you’re a consumer, developer, or in a position to make these kinds of critical decisions, you have an opportunity (and responsibility to yourself and the people who work with you) to choose a better way.</p>
<h2>What’s Left?</h2>
<p>I’ll round this off with a challenge to the industry and to consumers. My hope is that someone with enough patience to have read through this rather long-winded series of articles, will embrace the fundamentals and concepts proposed here and evangelize them.</p>
<h3>A Message for CMS Developers &amp; Marketers</h3>
<p>I am not alone in feeling that software falls short of our expectations when it comes to managing content; after all, we see content published everyday and in all manner of forms.</p>
<p>It should not be this painful.</p>
<p>As a response to the <a title="CMS Matrix" href="http://www.cmsmatrix.org/">overwhelming volume of poor implementations of content management software currently being marketed</a>, I say this:</p>
<p>Forget the bloated features. Forget about development paths and methodologies; spare us the complexity. The act of managing content should not be obfuscated by deep click-paths or radical dependencies upon development skills or fanatic devotion to technology—it should begin and end with the end user (we, your <em>true customers</em>) in mind.</p>
<p>We want software that helps us do our jobs better, not by imposing what <em>you</em> feel should be our workflow and methodology—we’ll determine that, thank you very much—but by supporting our processes with tools designed to promote efficiency and with productivity in mind.</p>
<h3>A Message for CMS Users</h3>
<p>We <em>are</em> part of the problem and we need to make a full stop. We need to re-assess our current expectations of a CMS are and what is realistic.</p>
<p>Forget the marketing crap. You’ve been misled.</p>
<p>Your CMS is broken. You know it. I know it. But does your company’s leadership—the decision-makers who bought into the CMS know it? Does your IT group resent you for having to do your job on top of dealing with their own?</p>
<p>You need to speak up.</p>
<p>You need to find a way to <em>clearly articulate </em>why your CMS is broken, and influence your decision makers to move in the right direction: not by wasting more time and money on trying to fix what was broken from the beginning, but by stepping back and re-evaluating expectations.</p>
<p>You know that you hate wasting time and feeling incompetent and frustrated—its especially frustrating when you see it done so well in other forms. You want <em><span style="text-decoration: underline;">that</span></em>. And by ‘<em>that</em>’ you mean the process(es) that help traditional media get their content from concept to publication.</p>
<p>Adopting a better approach begins with knowing what you really need and tempering your expectations with pragmatism. You need to build a compelling business case for change.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How to Fix Your Broken CMS: Part 1</title>
		<link>http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-1/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-fix-your-broken-cms-part-1</link>
		<comments>http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-1/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 14:30:35 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Content Management]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[User Experience]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Content Management System]]></category>
		<category><![CDATA[Content Strategy]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Publication]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=503</guid>
		<description><![CDATA[Are you or your organization considering implementing a CMS? Do you have one in place already? Before you move ahead with your CMS project, you may want to take a few minutes to consider your expectations of a CMS before you commit your resources to the project.]]></description>
			<content:encoded><![CDATA[<div class="notice">
<p><strong>Author’s Note:</strong> Considering the subject matter and length of this particular article, I’ve decided to split it into two separate articles.</p>
</div>
<p><strong>Related Articles:</strong></p>
<ol>
<li><a title="How to Fix Your Broken CMS: Part 1" href="http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-1">How to Fix Your Broken CMS: Part 1</a></li>
<li><a title="How to Fix Your Broken CMS: Part 2" href="http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-2">How to Fix Your Broken CMS: Part 2</a></li>
</ol>
<p>In recent weeks I’ve been fielding a number of questions from prospective clients and visitors to my site regarding criterion for selecting the right CMS for their website. More often than not, I tend to direct them to an article I wrote previously on this particular subject: <a title="Top 3 Myths of Content Management Systems" href="http://www.farfromfearless.com/2009/02/06/top-3-myths-of-content-management-systems/">Top 3 Myths of Content Management Systems &#8211; Feb. 6th, 2009</a></p>
<p>The article offers some recommendations on selecting the right CMS for your organization, and some insights into common myths surrounding CMSs in general; however, the article does not necessarily provide the desired criterion for determining what makes a good CMS (or not).</p>
<p>The reality is that they are all pretty much the same—big (and getting bigger), feature-bloated, and a serious impediment for efficiency.</p>
<p>In short: your CMS can most certainly be considered a serious productivity killer.</p>
<p>From my perspective, the issues I’ve mentioned above stem from a series of false expectations on the part of CMS consumers that exploited by CMS developers by and large.</p>
<p>Read on…</p>
<h2>Background</h2>
<p>In my previous article I ranked the following as the <em>number one</em> myth surrounding CMSs:</p>
<blockquote><p>“Myth No. 1: A CMS Should Manage <em>Everything</em>”</p></blockquote>
<p>The statement asserts what I feel to be one of the most misleading notions of CMSs—the ability of a single software solution to <em>manage every aspect</em> of a website. After further consideration on this particular myth’s origins, I’ve come to realize that most of this stems from aggressive and misleading software marketing. And we—the consumers—are partially to blame for this.</p>
<p>Why?</p>
<p>For some absurd reason, we have this strange notion that a <em>single solution</em> is all we need, and in response, software vendors develop and market to that notion. The current market is saturated by systems both open-source and licensed and all of them tend to suffer from the same problem: feature-bloating.</p>
<p>Feature-boating is one of the tell-tale signs—to me—that a solution is trying to be too many things for too many people. The solution in question is trying hard to manage too many things when really it should only manage a handful of tasks or better: support a well thought out workflow that is tailored to the organization.</p>
<p>It seems to me that the software vendors—CMS developers in this case—tend to forget the end user and <em>their experience</em>.</p>
<h3>The Tired Debate(s)</h3>
<p>There are several ongoing debates about the merits and flaws of content management systems and content management in general. Chief amongst these debates are the following:</p>
<ul>
<li>Content Management Systems are for IT <em>only</em>:<br />
The notion of managing the assets and objects of a website are the sole responsibility of IT for the simple fact that it is seen as a <strong>technical task</strong> and not an <strong>operational responsibility</strong>.</li>
<li><em>Distribute</em> the responsibility of managing content:<br />
The notion of <strong>decentralizing</strong> content management and enabling “content owners”—those seen to be subject matter experts or authors—to take responsibility of conceptualizing and publishing their content.</li>
</ul>
<p>These are diametrically opposing views serve to illustrate the chasm dividing opinion as to how to circumvent the issue of poorly implemented CMSs. There are strong advocates of better practices and better approaches to managing content, with some strong arguments and <a title="Why content management fails - adaptive path - April 1, 2004" href="http://www.adaptivepath.com/ideas/essays/archives/000315.php">proposals</a> in favour of better processes.</p>
<h3>The Perspective</h3>
<p>For the most part these debates only touch the surface of the issue. The typical approach/solution is to look at the the type and makeup of the organization, its stakeholders, and their particular roles/responsibilities as it applies to the website’s business requirements. At that point, whomever is in charge of making the ‘big decision’ then selects a solution with enough features to address 80-90% of these business requirements.</p>
<p>The selection of a CMS is almost as politically driven as the content that it is supposed to manage.</p>
<p>The resulting solutions places the organization back into the same vicious cycle created by lack of infrastructure, inhuman methodologies, and an understandable fear of technology. As a result, expectations are not met and the organization falls prey to its old habits, falling back into old patterns.</p>
<p>And the familiar debate begins anew.</p>
<h2>A Different Approach to The Problem</h2>
<p>What if we’re looking at the issue from the wrong perspective? What if it’s not enough to simply circumvent the issue with more systems and software?</p>
<p>It seems to me that given the emphasis on trying to become software agnostic by re-focusing on process alone, or attempting to become software-gnostic by relying exclusively on the software, we overlook the fundamental problem: <em>the software we choose is still broken</em>.</p>
<p>What we should be doing is focus on the following:</p>
<ol>
<li><strong>A sound editorial process</strong>—a tailored (read: organization specific) workflow for getting content from concept to creation and eventually online.</li>
<li><strong>A better understanding of what is content vs. resources</strong>—the difference between the subject matter of a website and the assets and objects that help to communicate the subject matter.</li>
<li><strong>A shift in software development from <em>Features</em> to <em>User Experience informed by Content Strategy</em></strong>—a fundamental movement by software vendors to move away from creating <em>yet-another-CMS-with-identical-features-as-it’s-predecessors</em> (accepting that the market <em>will</em> buy into software that addresses a fundamental <em>need</em> rather than a <em>perceived</em> notion).</li>
</ol>
<p>The last two points—previously mentioned—are perhaps the two most underappreciated facets of building a better solution.</p>
<h2>Resources vs. Content</h2>
<p>In 2005 <a title="Adam Mathes" href="http://www.adammathes.com/">Adam Mathes</a> published an interesting paper titled, “<a title="Source vs. Resource Ontology - Adam Mathes, 2005" href="http://www.adammathes.com/academic/krfo/sourceresource.html">Source vs. Resource Ontology</a>”. In his paper, Mathes attempts to present a better definition of <em>resources</em> in the context of electronic documents on the web.</p>
<p>There are some interesting insights in his work, and I particularly appreciate his pragmatic view of what resources are perceived to be in the real world.</p>
<blockquote><p>A significant issue is that even pages we often refer to as being static are not in a strict sense, static, complicating things. &#8220;Small&#8221; edits over time, for example spelling corrections, change the resource content depending on your perspective. In many cases a &#8220;base&#8221; of static content is surrounded by dynamic content. For example, a news article that contains advertising. The &#8220;article&#8221; in one sense doesn&#8217;t change, but it is a dynamic resource in an important sense as the advertisements change. Other examples of small amounts of dynamic content in generally static resource include having the current day and time displayed on a page, even if the rest of the page is unchanged. <cite>Adam Mathes, 2005</cite></p></blockquote>
<p>This brings me to my point: we’ve been led to believe—through pervasive feature-focused marketing—that CMSs are able to effectively manage all aspects, assets, and objects of a website, e.g. “the content”. Resource are not <span style="text-decoration: underline;"><em>Content</em></span>. Resources are <em><span style="text-decoration: underline;">resources</span></em>, and a CMS is little better than a crippled operating system sitting on top of a very complex database.</p>
<p>“Content” in the context of a CMS is both erroneous and problematic. It is erroneous for the fact that the fundamental experience of web is still text-based, and this is evidenced by:</p>
<ol>
<li>Continued emphasis on producing text-based content first and media later;</li>
<li>Reliance on text-based search</li>
<li>Ease of access</li>
</ol>
<p>The notion is problematic for the following reasons:</p>
<ol>
<li>Content is abstracted to the point that a single piece of information cannot be distinguished from another by the fact that the “system” sees all as being equal. And often we see CMSs without strong implementations of a Taxonomy or Folksonomy solution to give the resources any meaning.<br />
<strong> </strong><strong>Note:</strong> abstraction is necessary where software is concerned—after all, defining meaning and purpose is a human’s task and not the sole province of the the software; however, you still need your software to support that fundamental task.</li>
<li>As we incorporate more resources to communicate the subject matter of our content, the software intended to manage the resources requires a proportionate amount of systems or features to “connect-the-dots”—meaning that a a software’s complexity can be directly linked to the degree of abstraction as previously described. What we end up with is more “power tools for developers” and less productivity for those responsible for the long-term management of content (read: real people).<br />
Victor Lombardi’s article on Boxes and Arrows is an excellent resource that presents a good case for <a title="Managing the Complexity of Content Management Systems - Victor Lombardi, 2004/02/09" href="http://www.boxesandarrows.com/view/managing_the_complexity_of_content_management">managing the complexity of content management systems</a>.</li>
<li>CMSs emerge on the market with nearly identical features and with only small variations on their approach—and yet again, we still experience the emphasis on short-term development and less on long-term strategy and governance.</li>
</ol>
<h2>Emphasise “User Experience &amp; Content Strategy” vs. “Software Features”</h2>
<p>So far, I’ve made reference to several sources that go back as far as 2004—what that simply indicates is that serious issues with CMSs are not an emerging trend. They are in my observation, a continuing trend. And we continue to support that trend.</p>
<p>We the consumers—being a fundamental contributor to the problem of CMSs—have made it acceptable for software vendors to saturate the market with products that miss the mark completely when it comes to addressing a fundamental aspect of content management: <strong>Content begins with <em>people</em> and ends with <em>people</em>.</strong></p>
<h3>The Impact of Poor CMS implementations</h3>
<p>If I am to sum up the impact of a poor CMS implementation it would be, quite simply: <strong>Frustration</strong> and <strong>Abandonment</strong>.</p>
<p>Both <a title="In Defense of the CMS - Erin Kissane 2010" href="http://incisive.nu/2010/in-defense-of-the-cms/">Erin Kissane</a>, and <a title="Stop Letting People Use Your CMS - Jeff Cram, 2010" href="http://www.cmsmyth.com/2010/02/stop-letting-people-use-your-cms/">Jeff Cram</a> blogged about their particular frustrations and perspectives on CMSs and CMS implementations and their impacts on the organization. What’s interesting in both articles is that we see the continuing trend of the CMS getting in the way of efficiency and productivity. While Cram’s article nicely illustrates the frustrations of a poor CMS implementation (are there any good ones?), Kissane urges us to refocus on workflow.</p>
<blockquote><p>…Create a workflow that works for your organization. Make sure your CMS supports that workflow. <cite>Erin Kissane</cite></p></blockquote>
<p>Users don’t care about the technology; they take it for granted that the technology will be there to support their jobs, but the sad reality is that the technology gets in the way. Again.</p>
<p>What users do care about is their <em>experience</em> with the CMS. Was it a good experience? Was it a bad experience? These are questions that influence decisions as to whether or not they will repeat the experience or abandon it.</p>
<p>When we talk about “user experience” in the context of a CMS, we’re talking about aspects like productivity, efficiency, and overall comfort level with the system in question. It is pretty clear to me that the vast majority of CMS developers take it for granted that their particular methodology of working with content (ahem, <em>resources</em>) is The Way To Go with little consideration for reality. And reality in this case is the end-user’s experience.</p>
<h3>On Software Features</h3>
<p>Software developers have proven that their ability to build pretty much anything in terms of systems to facilitate getting data into and out of a database. The feature lists of many of the available CMSs alone are enough to illustrate that point. But features alone do not make one CMS better than the next.</p>
<p>Unfortunately for the rest of us, those feature-bloated systems fall short in fulfilling expectations—one expectation in particular is that:<em> I as a subject matter expert or content author should be able contribute to the creation of a body of information, without getting lost in the nuts and bolts of my CMS or without fear of liability (read: breaking the system).</em></p>
<p>Packing more features into the CMS compounds the issue.<em> </em>Stop. Take a good look at the audience—the <em><strong>people</strong></em>—who end up with the task of actually using the CMS after the development team has implemented it.</p>
<p>When it comes to audiences, it doesn’t matter if it’s an individual, a small business, or an enterprise-level organization that is using the CMS—they all have at least one thing in common: the end users are <em><strong>people</strong> </em>who have jobs to do, not a heck of a lot of time to do it, and likely don’t have the patience to tackle the learning curb for that nifty new Cadillac of CMS [that is supposed to make their lives easier].</p>
<p>And when it comes to enterprise—there’s just a whole heck of a lot more of the same folks who share those same traits.</p>
<h3>On Content Strategy</h3>
<p>When it comes to the user experience with Content Management Systems, it has become increasingly difficult to discuss the topic without bringing <em><strong>Content Strategy</strong></em> into the conversation. And for good reason.</p>
<p>You cannot effectively implement a CMS solution without the Content Strategy to inform its use or role in the process.</p>
<p>There are some refreshing forward-thinkers out there like <a title="Kristina Halvorson - Brain Traffic" href="http://www.braintraffic.com/our-people/kristina-halvorson/">Kristina Halvorson</a>, who make a compelling case for the necessity of a Content Strategy to help organizations effectively define and identify their priorities for content, and to teach better/pragmatic ways of approaching <a title="Content Strategy for the web - Kristina Halvorson, New Riders 2009" href="http://www.contentstrategy.com/">content for the web</a>. In her book, Halvorson addresses the concept of a strong workflow to audit, capture, and produce better content through several phases.</p>
<p>What is compelling about her argument is that it is once again focused on <strong><em>people</em></strong>, not software.</p>
<p>Halvorson’s book, <em>Content Strategy for the Web</em>, does not cover—in full—CMS strategy (Software selection, design, and implementation)*</p>
<p class="small">* Content Strategy for the Web, Kristina Halvorson, 2010, <em>“What this Book Is Not”</em></p>
<h2>Fundamentals First</h2>
<p>Before we can start to improve the software we must also examine other models that have implemented a solid combination of software and process to provide a productive and efficient workflow that, well, works.</p>
<p><strong>Case Study: The Traditional Editorial Process (aka Publication Production):</strong></p>
<p>In an traditional news publication, the responsibility of conceptualizing/determining what is news worthy is left in the hands of the editors and may also be subject to a schedule [in the case of features].</p>
<p>It is the responsibility of the writing staff to develop the stories and craft them into something appropriate for the readership. Stories are then subject to editorial review and approvals, after which, it is promoted to the production cycle.</p>
<p>It is the responsibility of the production team to format the content into a presentable form—ready for mass consumption.</p>
<p>In the above example, we might see a single story evolve from concept to creation, and further evolution through review, contribution, and editing until it’s ready for publication. This is one flavour of the traditional editorial process, and may be present in more intricate or rudimentary forms in other organizations.</p>
<p><strong>What’s notable about this example:</strong></p>
<ul>
<li>A single story goes through a process and is handled by more than just one person (editorial process)</li>
<li>A single story is always subject to a form of governance (editorial responsibility)</li>
<li>The resulting story is then <em>delegated to another process</em> that shapes it according to the requirements of the medium (presentation)</li>
<li>The system described above is a collection of several processes—the system of <strong><em>Publication Production</em></strong>.</li>
</ul>
<p>What is still amazing to me is the fact that despite the evolution of software and the emergence of technology, <em>the editorial process is still relevant</em>. And they’ve been doing this every single day for decades without pause.</p>
<p><strong>That begs the question:</strong> why—with all of the technology and knowledge at our disposal—are the content management systems unable to effectively replicate the efficiency and scalability of a traditional publication system?</p>
<p><strong>The answer:</strong> software is the impediment—we the consumers and developers—expect software to do anything and everything with our content, forgetting that first and foremost that <strong>content begins with <em>people</em> and ends with <em>people</em>.</strong></p>
<p>What we want is a solution (or set of solutions) that enables <strong><em>people</em></strong> to contribute to an organization’s <strong><em>collective knowledge</em></strong>, and ensure that the responsibility of disseminating content is left in the hands of <strong><em>people</em></strong> who [should] know where it goes and how best to present it.</p>
<h2>A Little About the End Users</h2>
<p>We need to recognize a few things about the typical end user:</p>
<ol>
<li>Software developers have proven—<em>ad nauseum—</em>their ability to manipulate data in all kinds of interesting ways—the typical end user <strong><span style="text-decoration: underline;"><em>doesn’t care</em></span></strong>.</li>
<li>The typical end user <strong><span style="text-decoration: underline;"><em>doesn’t care</em></span></strong> about the fact that your CMS uses stored procedures or that you’re using ORM for database modeling.</li>
<li>The typical end user <strong><span style="text-decoration: underline;"><em>doesn’t care</em></span></strong> a wit about the technical marvels you—the software developer—have pulled off in order to make your CMS function the way it does.</li>
<li>The typical end <strong><span style="text-decoration: underline;"><em>user is concerned largely</em></span></strong> with the fact that they have a job to do and very little time to do it, but instead are starring dumbfounded at a screen loaded with all kinds of strange and confusing doodads that require a user-manuals thick enough to break windows.</li>
<li>Lastly, [most] <strong><em><span style="text-decoration: underline;">people care about people</span></em></strong>—human interaction is essential in organizations, and the reason workflows, work, is due to human interaction that drives the workflow.</li>
</ol>
<h3>Considerations</h3>
<p>This leaves us with a fundamental question to answer:</p>
<p><strong>Q: </strong>If the goal is to de-emphasise <em>feature development</em> and emphasise developing <em>better user-experiences </em>for the end user, how do we do that?</p>
<p><strong>A:</strong> We start by <em>clearly establishing expectations (wants vs. needs) </em>of what a CMS is and what it should do for us—the end users, and stop letting the software dictate our limitations.</p>
<h2>A Unifying Concept</h2>
<p>All of this talk about state-of-the-market and fundamentals is all well and good, but putting it to practice—truly developing and empowering CMS—is another thing altogether.</p>
<p>What we need is a unifying concept: the flux-capacitor to transcend the barrier of… well, you get the picture.</p>
<p><strong>What this means is:</strong></p>
<ol>
<li>If we’re going to start with the user, we need to ensure we address the end user’s fundamental expectations by providing an experience that is designed for <em>them, </em>and not a homogenized user experience that is meaningless—one size does not fit all.</li>
<li>Content should not be managed in a silo but as part of a <em>collaborative workflow</em>—informed by strategy*, regulated through governance, and supported by technology.</li>
<li>The system should <em>not enforce workflow </em>through strict methodology or present technical barriers but provide <em>flexibility</em>—allowing greater access to the process/system to effect productivity and promote efficiency.<strong> </strong></li>
</ol>
<p><strong>* I</strong> wrote earlier about the necessity of a CMS being driven by  strategy—forgive the double-speak—but when I talk about strategy in the  context of a CMS, I do mean both the Operational Strategy (the workflow,  logistics, etc) and the Content Strategy (the heart and soul of  Content).</p>
<p><strong>Let’s summarize what we’ve been talking about so far into a set of actionable principles:</strong></p>
<ol>
<li>A CMS should not be the start-point and end-point of a content creation process (the editorial workflow), in fact managing content should be considered an on-going process.</li>
<li>A CMS should be a system that allows <em>instances </em>of content to be formatted and manipulated according to the requirements of the presentation layer (the website). Instances by nature can be disposable.</li>
<li>A CMS should be—at the very least—a <em><strong>set</strong></em> of <em>loosely coupled systems</em>: the first to facilitate the editorial workflow; and the second to facilitate production/publication for the presentation layer</li>
</ol>
<p>With these concepts in mind, let’s focus on what’s needed executing the concept…</p>
<p><em>Cont’d,</em> <a title="How to Fix Your Broken CMS: Part 2" href="http://www.farfromfearless.com/2010/03/04/how-to-fix-your-broken-cms-part-2">How to Fix Your Broken CMS: Part 2</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2010/03/05/how-to-fix-your-broken-cms-part-1/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Out with the Old and in with Something Dramatically Different.</title>
		<link>http://www.farfromfearless.com/2009/04/06/out-with-the-old-and-in-with-something-dramatically-different/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=out-with-the-old-and-in-with-something-dramatically-different</link>
		<comments>http://www.farfromfearless.com/2009/04/06/out-with-the-old-and-in-with-something-dramatically-different/#comments</comments>
		<pubDate>Mon, 06 Apr 2009 13:00:00 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[WordPress Themes]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=399</guid>
		<description><![CDATA[<p>As some of you may have noticed by now, I’ve updated <strong>farfromfearless</strong>. I suppose “update” is a bit of an understatement. If you’re reading this post, it’ll be in the context of a dramatically new theme and structure.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-3.jpg"><img style="display: inline" title="WordPress Theme - Dusk - About" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-3-thumb.jpg" alt="WordPress Theme - Dusk - About" width="550" height="397" /></a></p>
<p>Change&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>As some of you may have noticed by now, I’ve updated <strong>farfromfearless</strong>. I suppose “update” is a bit of an understatement. If you’re reading this post, it’ll be in the context of a dramatically new theme and structure.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-3.jpg"><img style="display: inline" title="WordPress Theme - Dusk - About" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-3-thumb.jpg" alt="WordPress Theme - Dusk - About" width="550" height="397" /></a></p>
<p>Change is good.</p>
<h2>What’s New?</h2>
<p>A number of things have changed over the past few months &#8212; my current circumstances not withstanding &#8212; I’m now in the position where <a href="http://www.farfromfearless.com/about/">I&#8217;m able to take on consulting work</a> and wanted to communicate that fundamental change on many levels (the most obvious place to start being my blog, of course).</p>
<p>I’ve talked about shifting focuses on this site for the last couple of years, but never had the time or need to push the change forward. I do now and what you’re looking at is the result. Where before my blog mostly concentrated on the things that interest me (it still does), it’s taken second stage to the need to <a href="http://www.farfromfearless.com/portfolio/">showcase my work</a> in a meaningful way.</p>
<p>You can learn more about <a title="Chris Murphy - UxD/IxD Consultant" href="http://www.farfromfearless.com/about/">what I offer as a consultant here</a>, but if you’re more interested in the work I’ve done, you can take a look at <a title="Chris Murphy - Portfolio" href="http://www.farfromfearless.com/portfolio/">a cross section of that material here</a>.</p>
<h3>What To Expect</h3>
<p>I’ll still be continuing my series on WordPress Theme Development and the ongoing updates to some of the other minor series, but I will also be posting about the work I’ve completed in the form of case studies. My hope is that I can share some of my experience in a way that is meaningful (without putting me out of work <img src='http://www.farfromfearless.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  ).</p>
<h2>About This Theme</h2>
<p>This new WordPress theme is called <strong>“Dusk”</strong>, currently at version 0.5, as I’m quite sure there will be a number of tweaks to the design and features over the coming weeks.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-0.jpg"><img style="display: inline" title="WordPress Theme - Dusk - Home" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-0-thumb.jpg" alt="WordPress Theme - Dusk - Home" width="274" height="198" /></a><a href="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-2.jpg"><img style="display: inline" title="WordPress Theme - Dusk - Single" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-2-thumb.jpg" alt="WordPress Theme - Dusk - Single" width="274" height="198" /></a></p>
<p>It’s possible that I will release this theme to the public in a year or so when I’m ready to re-design – or perhaps I’ll market it as a premium theme (who knows). But I do plan to release it at some point as I have with my other themes.</p>
<h3>The Design Concept</h3>
<p>The inspiration for this new theme came largely from watercolour paintings – mostly the texture and the vibrancy of colours, but also the techniques involved in working with the medium.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-1.jpg"><img style="display: inline" title="WordPress Theme - Dusk - Footer" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-1-thumb.jpg" alt="WordPress Theme - Dusk - Footer" width="274" height="198" /></a><a href="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-4.jpg"><img style="display: inline" title="WordPress Theme - Dusk - Comments" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/dusk-4-thumb.jpg" alt="WordPress Theme - Dusk - Comments" width="275" height="198" /></a></p>
<p>I felt that it would be a strong juxtaposition to the more technical and rigid structure of the content – one balancing the other. The primary focus of this theme is showcasing my work first and my writing second. The layout for the main page was given a unique structure most appropriate to the type of blended content without overpower the other.</p>
<h3>Behind The Design</h3>
<p><strong>“Dusk”</strong> is based on the 960px grid concept and implemented using <a title="Blueprint: A CSS Framework | Spend your time innovating, not replicating" href="http://www.blueprintcss.org/">Blueprint CSS</a>. I’ve been focusing on <a title="Blueprint: A CSS Framework | Spend your time innovating, not replicating" href="http://www.blueprintcss.org/">Blueprint CSS</a> lately as it (amongst others) expedites some of the common CSS development tasks, allowing me to focus on ensuring the creative aspects of a design aren’t compromised. This of course assumes that the design adheres to the 960px grid concept (and this one does).</p>
<h2>Final Thoughts</h2>
<p>If you’re interested in how I might help your project succeed, <a href="http://www.farfromfearless.com/about/#services">I can help you in one capacity or another</a>. Don’t hesitate to ask <img src='http://www.farfromfearless.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2009/04/06/out-with-the-old-and-in-with-something-dramatically-different/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Top 3 Myths of Content Management Systems.</title>
		<link>http://www.farfromfearless.com/2009/02/06/top-3-myths-of-content-management-systems/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=top-3-myths-of-content-management-systems</link>
		<comments>http://www.farfromfearless.com/2009/02/06/top-3-myths-of-content-management-systems/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 20:42:10 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Developement]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Web Strategy]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Content Management Strategy]]></category>
		<category><![CDATA[User Experience]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=214</guid>
		<description><![CDATA[When it comes to choosing a CMS, its a challenge to know where to begin in terms of finding the software that is best suited for your needs -- particular as they may be.]]></description>
			<content:encoded><![CDATA[<p>Search Google for the term, “<a title="Content Management Systems - Google search results" href="http://www.google.ca/search?q=Content+Management+System&amp;ie=utf-8&amp;oe=utf-8&amp;aq=t&amp;rls=org.mozilla:en-US:official&amp;client=firefox-a">Content Management System</a>”, “<a title="Content Management Systems - Google search results" href="http://www.google.ca/search?hl=en&amp;client=firefox-a&amp;rls=org.mozilla%3Aen-US%3Aofficial&amp;hs=rQX&amp;q=CMS&amp;btnG=Search&amp;meta=">CMS</a>” or about any permutation of the concept you might think of, and you’ll get anywhere from 90,000 to 160,000 potential results. If only one percent of those results yield A to B-grade Content Management Systems, that is still a tremendous number of systems to attempt feature comparisons.</p>
<p>The math makes my head hurt already.</p>
<p>If any when you do manage to find a handful of solutions that you feel might answer your particular needs, your challenge will be in settling on one system out of many. How do you decide what stays and what goes?</p>
<p>Here are some of the top three myths that lead people astray:</p>
<h3>Myth No. 3 &#8212; A CMS is ready “<em>out of the box</em>”.</h3>
<p><strong>General Perception:</strong></p>
<p>Content Management Systems provide website administrators with everything they need to launch, manage, and maintain a website with little to no effort.</p>
<p><strong>Reality Check: </strong></p>
<p>Launching a website is never as easy as 1, 2, 3.</p>
<p>The level of effort and resources required to get a CMS up and running corresponds directly to the business requirements of the site, and size/complexity of the CMS.</p>
<p>Forget what was advertized on the box.</p>
<p>If you’re in a position where you’re still thinking about which CMS to go with, consider talking to customers who are actively using the software. Compare notes. Ask specifically about how key features worked for them or more importantly, what didn’t work for them and why.</p>
<p>This is a good opportunity to consider your own requirements for needing a CMS. It’s easy to get lost in all the hype and lose sight of why you needed it in the first place, so put your needs into writing and use your list as a guide post when evaluating features.</p>
<h3>Myth No. 2 &#8212; <em>Anyone</em> can use a CMS.</h3>
<p><strong>General Perception:</strong></p>
<p>“If you can use MS Word, you can use a CMS”.</p>
<p><strong>Reality Check:</strong></p>
<p>Understand that every CMS subscribes to a different philosophy when it comes to working with content. The methodology behind the workflow might make sense for one group and be totally alien to another, which makes it more difficult when you’re attempting to do feature comparisons (ultimately, they all follow a few common strategies).</p>
<p>It comes down to the User Experience.</p>
<p>You cannot legitimately equate the whole experience of using a CMS to something like MS Word. You <em>can</em> legitimately equate a <em>feature</em> of the CMS to MS Word (if it exists).</p>
<p>The User Experience between a system like “<a title="Joomla! Content Management System" href="http://www.joomla.org/">Joomla!</a>”, “<a title="Magnolia CMS" href="http://www.magnolia-cms.com/home.html">Magnolia</a>”, or “<a title="Drupal" href="http://drupal.org/">Drupal</a>” are dramatically different. I won’t get too deep into the how and why of things, but suffice to say that if your comparison between package was based only on side-by-side comparisons of their interfaces, you’d immediately see how different they are from each other.</p>
<p>Consider who will actually be using the CMS. Is it a group of developers or is it a group off general staffers tasked with the responsibility? Think about the end user here; it’s not the site visitor who will be directly affected by the CMS, but the people managing the content.</p>
<p>What kind of interface are they most comfortable using (WYSIWYG, form based, code)? Do any of them have working experience with HTML, CSS or a scripting language?</p>
<p>This is your red flag.</p>
<p>Stop.</p>
<p>Take a step back and look to your content team &#8212; get their input.</p>
<h3>Myth No. 1 &#8212; A CMS should manage <em>everything</em>.</h3>
<p><strong>General Perception:</strong></p>
<p>Content Management Systems are designed to manage all of a website’s content and features.</p>
<p><strong>Reality Check:</strong></p>
<p>Content Management Systems come in all flavours, but not one of them handles every facet of a website in an elegant manner (thus the reasons for Myth No. 2, 3).</p>
<p>I’m not quite sure how this myth started, but I’m sure anyone who has had the opportunity to work with a CMS understands this: there is an expectation that a CMS has the ability manage the content of every single asset, feature, function, or concept in a given website.</p>
<p>This is so – dangerously – far from the truth.</p>
<p>Think about it this way: <em>Your CMS does not define your website</em>.</p>
<p>Read that last sentence again. Memorize it for the next time you’re making recommendations to your clients or shopping around for yourself.</p>
<p>A CMS is designed to help you manage content, but unless engineered to be, two websites are never the same beast. Content volume, features, design, strategies can vary wildly, and so it is next to impossible to have a single CMS (out of the box) manage every aspect of a website without running into the need to extend, include plug-ins, or write unique code to support the site’s particular requirements.</p>
<p>Consider that feat the Holy Grail of all CMS.</p>
<p>Be realistic about what you need a CMS to do. Think about the content of your site, and if you haven’t already, consider bringing on a Content Strategist to help you define the Information Architecture.</p>
<p>An important thing you should try to understand is that you don’t need <em>one tool</em> to manage <em>everything</em> – in the real world, you need a toolbox full of the the most reliable, appropriate tools to help you manage your website content.</p>
<h3>Things to consider when you do manage to find a suitable CMS.</h3>
<p>It’s easy to get misled by the marketing and hype, and technical jargon around a CMS. If you can only remember three things before you start searching, keep the following in mind:</p>
<ol>
<li><strong>Find a tool that your organization can implement:</strong> Speak to your development team/IT to get a realistic scope on what it will take to get up and running. </li>
<li><strong>Realize <em>who</em> will actually use the software</strong>: Most importantly, interview your content management group to find out what their expectations (and level of experience) is with a CMS or similar software. </li>
<li><strong>Develop a content strategy:</strong> Interview the key stakeholders to find out what the common needs are, and what the business requirements are for the website – don’t engineer your content to fit the limitations of one tool. </li>
</ol>
<p>Ultimately speaking, a CMS is just one tool for the task of managing the content of your website, and sometimes you need different tools to do the job. There is no doubt that finding the right tool is going to be an easy task – expect a difficult road – but with a little forethought, some planning, and a good understanding of your needs (not wants), choosing a CMS will be less painful in the long run.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2009/02/06/top-3-myths-of-content-management-systems/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>FrogCMS &#8211; Content Management Simplified.</title>
		<link>http://www.farfromfearless.com/2008/11/10/frogcms-content-manage-simplified/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=frogcms-content-manage-simplified</link>
		<comments>http://www.farfromfearless.com/2008/11/10/frogcms-content-manage-simplified/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 21:57:30 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Content Management System]]></category>
		<category><![CDATA[RadiantCMS]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/11/10/frogcms-content-manage-simplified/</guid>
		<description><![CDATA[I don't normally blog about content management systems as these kinds of posts tend to degenerate into a my-cms-is-better-than-yours-palooza, but I wanted to give a shout out to a project that has been in the works for almost two years and has finally matured into something worth talking about.]]></description>
			<content:encoded><![CDATA[<p>Content Management Systems come in so many flavours, and while I don&#8217;t advocate any one system over another, I have no hesitation in saying that this product is one to keep an eye out for. Created by Quebec-based developer, <a title="Philippe Archambault" href="http://www.philworks.com/">Philippe Archambault</a> , FrogCMS is one of the few I would include in my web-designer&#8217;s toolbox. The system is not inherently original in it&#8217;s approach, being a derivative/port of another popular system called RadianCMS (developed on the Ruby Framework), but like RadiantCMS, it&#8217;s approach does appear to live up to it&#8217;s promise in simplifying the task of developing a scalable website by abstracting the components of a website into simple concepts: &#8220;pages&#8221;, &#8220;snippets&#8221;, &#8220;layouts&#8221;, &#8220;files&#8221;, and &#8220;comments&#8221;.</p>
<p>Here are a few screenshots of the product:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/FrogCMSContentManageSimplified_E103/frogcms_01.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/FrogCMSContentManageSimplified_E103/frogcms_01_thumb.jpg" alt="Pages" width="540" height="322" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/FrogCMSContentManageSimplified_E103/frogcms_02.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/FrogCMSContentManageSimplified_E103/frogcms_02_thumb.jpg" alt="Snippets" width="540" height="322" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/FrogCMSContentManageSimplified_E103/frogcms_03.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/FrogCMSContentManageSimplified_E103/frogcms_03_thumb.jpg" alt="Layouts" width="540" height="322" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/FrogCMSContentManageSimplified_E103/frogcms_04.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/FrogCMSContentManageSimplified_E103/frogcms_04_thumb.jpg" alt="Files" width="540" height="322" /></a></p>
<h2>Features</h2>
<p>Here are some of the features from the website:</p>
<p><strong>Unlimited hierarchically structured page navigation menu</strong><br />
The page navigation menu provides critical information and functions. It allows you to perform quickly common actions on pages and shows how information has been organized.</p>
<p><strong>Drag and drop page ordering</strong><br />
This function simplifies the organization of your site’s pages. It makes new sorting arrangements of pages possible.</p>
<p><strong>Flexible page content: body, sidebar, extended, summary</strong><br />
Each page can have its own customized parts (divisions). It can be ‘extended’ text for news, or ‘summary’ for article: you can define whatever you want, whenever you want. These can even be used for extended metadata fields.</p>
<p><strong>Per page layout customization</strong><br />
Pages can have their own layout, or can inherit the layout of the parent page, or they can reuse another page layout. This allows the site owner to make every page look exactly as desired.</p>
<p><strong>Simple and reusable content snippets</strong><br />
You can define ‘snippets’: small pieces of content used across several pages, like page headers or footers, or contact info, etc. This means less cut-and-paste text in your pages. This will reduce your modification time when you need to add, remove or change the text in it.</p>
<h2>Other</h2>
<ul>
<li>Password protected administration.</li>
<li>Simple user and permission management.</li>
<li>File manager (plugin) allows you to upload, browse and edit files.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/11/10/frogcms-content-manage-simplified/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How To Style Your Most Recent WordPress Posting</title>
		<link>http://www.farfromfearless.com/2008/09/06/how-to-style-your-most-recent-wordpress-posting/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-style-your-most-recent-wordpress-posting</link>
		<comments>http://www.farfromfearless.com/2008/09/06/how-to-style-your-most-recent-wordpress-posting/#comments</comments>
		<pubDate>Sun, 07 Sep 2008 02:52:55 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Developement]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[WordPress Posts]]></category>
		<category><![CDATA[WordPress Theme Design]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=167</guid>
		<description><![CDATA[One question that I'm asked most often is: "how do I get my most recent post to look different than my older posts?", and second to that is, "how do I show alternate colors in my posts?"]]></description>
			<content:encoded><![CDATA[<p>How you choose to style your blog postings is largely dependent on the theme you&#8217;ve selected to use on your blog, your writing style, as well as &#8212; perhaps &#8212; your skill at modifying the themes.</p>
<p>For the most part, you may be stuck with using the setup that the Theme Designer decided to adopt.</p>
<p>Blogs typically take one of three common approaches to displaying posts:</p>
<ol>
<li>Posts are displayed as excerpts with a &#8220;read more&#8221; link.</li>
<li>Posts are displayed with the full body of the posting.</li>
<li>Only one post is displayed with pagination available.</li>
</ol>
<p>The first approach &#8212; the most common of the three &#8212; is likely a result of the Theme Designer choosing to use the out-of-the-box functionality of the blogging software (and to be fair, it is likely the most efficient); however, not everyone wants a cookie cutter solution to displaying their posts.</p>
<p>The reality is such that you don&#8217;t actually need to do a lot of work to get your blog postings to appear the way you want them to. I can&#8217;t speak for other blogging software packages, but when it comes to WordPress, there are a many techniques you can apply to customize your postings.</p>
<h2>WordPress &#8211; The Loop</h2>
<p>The meat-and-potatoes of WordPress is &#8220;<a title="WordPress - The Loop" href="http://codex.wordpress.org/The_Loop">The Loop</a>&#8220;. If you&#8217;ve ever attempted to customize a WordPress theme, it&#8217;s likely you&#8217;ve encountered this The Loop (essentially a &#8220;while&#8221; loop). This is an example of a very simple loop (taken from the WordPress codex):</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> <span style="color: #0000ff;">if</span> (have_posts()) :</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span>    <span style="color: #0000ff;">while</span> (have_posts()) :</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span>       the_post();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span>       the_content();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>    endwhile;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span> endif;</pre>
</div>
</div>
<p>This is a better explanation if you&#8217;re not too familiar with code:</p>
<blockquote><p><strong>The Loop</strong> is used by WordPress to display each of your posts. Using The Loop, WordPress processes each of the posts to be displayed on the current page and formats them according to how they match specified criteria within The Loop tags.</p></blockquote>
<p>If you examine one of the template files of your theme you may encounter a more complicated version of the above snippet.  The Loop is where we are going to start to customize the appearance of your postings.</p>
<h2>Postings</h2>
<p>A post in WordPress is comprised of a number of elements such as the Title of the post, the Content of the post, and assorted information like the Date/Time, etc. In the common approaches, all of the postings share the exact same format and display identical information.</p>
<p>Boring.</p>
<p>But it doesn&#8217;t have to be this way. The developers of WordPress were smart enough to realize that while the majority of theme designers don&#8217;t mind this type of homogenous approach, there are a few Theme Designers out there who prefer not to follow this pattern. As such, WordPress is built with with the ability to modify how The Loop is applied.</p>
<p>There are several approaches to modifying The Loop, but the two that I prefer are:</p>
<ol>
<li>Use <a title="WordPress - query_posts(...)" href="http://codex.wordpress.org/Template_Tags/query_posts">query_posts</a> with counter and offset.</li>
<li>Use The Loop with counter and conditions.</li>
</ol>
<h2>The Loop With query_posts(&#8230;)</h2>
<p>It took me a while to understand what this feature did; quite simply put, it adds additional parameters in the The Loop to instruct WordPress on what to output.</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;?php query_posts(<span style="color: #006080;">'showposts=1'</span>); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> &lt;?php <span style="color: #0000ff;">if</span> (have_posts()) : <span style="color: #0000ff;">while</span> (have_posts()) : the_post(); ?&gt;</pre>
</div>
</div>
<p>The snippet above was taken from <a title="Lemon Twist v2.0 Updated WordPress Theme" href="http://www.farfromfearless.com/2008/01/11/lemon-twist-v20-updated-wordpress-theme/">one of my WordPress themes</a>. In the theme, I use the above approach to display ONLY my most recent posting in full. Here&#8217;s a simplified version of the markup I use:</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;!-- set main-entry --&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> &lt;?php query_posts(<span style="color: #006080;">'showposts=1'</span>); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span> &lt;?php <span style="color: #0000ff;">if</span> (have_posts()) : <span style="color: #0000ff;">while</span> (have_posts()) : the_post(); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span> &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"main-entry"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>     &lt;h2&gt;&lt;a href=<span style="color: #006080;">"&lt;?php the_permalink(); ?&gt;"</span> rel=<span style="color: #006080;">"bookmark"</span> title=<span style="color: #006080;">"Permanent Link to &lt;?php the_title(); ?&gt;"</span>&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h2&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span>     &lt;?php <span style="color: #008000;">//the post meta ?&gt;</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   7:</span>     &lt;ul <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"meta-top"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   8:</span>         &lt;li&gt;&lt;strong&gt;Posted:&lt;/strong&gt; &lt;?php the_time(<span style="color: #006080;">'F j, Y'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   9:</span>         &lt;li&gt;&lt;strong&gt;Author:&lt;/strong&gt;  &lt;?php the_author(); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  10:</span>         &lt;li&gt;&lt;strong&gt;Filed under:&lt;/strong&gt; &lt;?php the_category(<span style="color: #006080;">','</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  11:</span>         &lt;li&gt;&lt;?php <span style="color: #0000ff;">if</span>( get_the_tags() != NULL ) { the_tags(<span style="color: #006080;">'&lt;strong&gt;Tags:&lt;/strong&gt; '</span>,<span style="color: #006080;">', '</span>); }<span style="color: #0000ff;">else</span>{ echo <span style="color: #006080;">"&lt;strong&gt;Tags:&lt;/strong&gt; No tags set for this entry."</span>; }?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  12:</span>     &lt;/ul&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  13:</span>     &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  14:</span>         the_content(<span style="color: #006080;">'Read more...'</span>);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  15:</span>     ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  16:</span> &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  17:</span> &lt;?php endwhile; endif; ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  18:</span> &lt;!-- end main-entry --&gt;</pre>
</div>
</div>
<p>In this example, The Loop is executed only once and only once. The query_posts() function passes instructions to The Loop to show only one post (using query_posts(<strong>&#8216;showposts=1&#8242;</strong>)). While The Loop is executed, it will output all of the post&#8217;s information that I&#8217;ve specified using the appropriate Post tags.</p>
<p><strong>NOTE: </strong>I have set the container &lt;div&gt; class to &#8220;main-entry&#8221;. This references a rule in my CSS file that will style the output accordingly.</p>
<p>Unfortunately, you&#8217;re stuck with only one posting on your page. We need to display older postings as well, and ideally in a format that is different than the most recent.</p>
<p>As previously mentioned, The Loop was executed only once with the example above. This is a powerful feature of query_posts(), in that you have a tremendous amount of control over The Loop &#8212; in this case, how many times it is executed.</p>
<p>To render the older postings, you can do this:</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;!-- set past-entry --&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> &lt;?php query_posts(<span style="color: #006080;">'showposts=9&amp;offset=1'</span>); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span> &lt;?php <span style="color: #0000ff;">if</span> (have_posts()) : <span style="color: #0000ff;">while</span> (have_posts()) : the_post(); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span> &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"past-entry"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>     &lt;ul <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"dateblock left"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span>         &lt;li <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"top"</span>&gt;&lt;?php the_time(<span style="color: #006080;">'M Y'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   7:</span>         &lt;li <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"bottom"</span>&gt;&lt;?php the_time(<span style="color: #006080;">'j'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   8:</span>     &lt;/ul&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   9:</span>     &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"entry-content"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  10:</span>         &lt;h1&gt;&lt;a href=<span style="color: #006080;">"&lt;?php the_permalink() ?&gt;"</span> rel=<span style="color: #006080;">"bookmark"</span> title=<span style="color: #006080;">"Permanent Link to &lt;?php the_title(); ?&gt;"</span>&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h1&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  11:</span>         &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  12:</span>             the_excerpt();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  13:</span>         ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  14:</span>     &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  15:</span> &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  16:</span> &lt;?php endwhile; endif; ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  17:</span> &lt;!-- end past-entry --&gt;</pre>
</div>
</div>
<p>Aside from the simpler markup, the core difference between this second snippet and the first are the instructions/parameters in query_posts(), and the CSS class which is referenced.</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;?php query_posts(<span style="color: #006080;">'showposts=9&amp;offset=1'</span>); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> &lt;?php <span style="color: #0000ff;">if</span> (have_posts()) : <span style="color: #0000ff;">while</span> (have_posts()) : the_post(); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span> &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"past-entry"</span>&gt;</pre>
</div>
</div>
<p>If you combine both of the examples above, what you&#8217;ll find is that you&#8217;re actually running The Loop twice &#8212; in the first instance, The Loop only outputs the most recent post. In the second instance, it skips over the most recent  post completely, and outputs as many older posts as you defined in query_posts().</p>
<p><strong>NOTE:</strong> if you examine the parameters in the second query_posts() instance, you should see &#8220;<strong>showposts=9&amp;offset=1</strong>&#8221; &#8212; this will output <strong>10</strong> posts in total on your page, where <strong>9</strong> such posts are older.</p>
<h3>Styling The Posts</h3>
<p>What you need now are two CSS rules which define:</p>
<ol>
<li>&#8220;main-entry&#8221;</li>
<li>&#8220;past-entry&#8221;</li>
</ol>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> <span style="color: #008000;">/* CSS Snippet */</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> #post-container div.main-entry {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span>     background-color: #CCCCCC;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span>     color: #000000;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>     font-size: 1em;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span> }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   7:</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   8:</span> #post-container div.past-entry {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   9:</span>     background-color: #ffffff;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  10:</span>     color:#333333;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  11:</span>     font-size: .92em;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  12:</span> }</pre>
</div>
</div>
<p>The XHTML markup does not have to be different between these posts, and as you can see in the CSS snippet above, you can get away with as little as displaying a different background color, font color or a larger font size.</p>
<h3>The Caveat</h3>
<p>Yes, there is a downside to using query_posts(). Programmatically speaking, you should try to optimize the number of queries you execute against your database. Since WordPress is largely database driven, you can expect a high volume of requests on any given page. Using query_posts() should be done sparingly (I limit it&#8217;s use to the homepage of my blog).</p>
<p>Also, if you are wanting to support pagination, you will need to do a little more work to setup the query properly &#8212; you can <a title="WordPress - query_posts()" href="http://codex.wordpress.org/Template_Tags/query_posts">read more about it here</a>.</p>
<h2>The Loop With Counter &amp; Conditions</h2>
<p>The simplest method to determine and style your most recent post in contrast to your older postings is a pure implementation of &#8220;The Loop&#8221;. This implementation also relies on using a counter to keep track of how many posts you&#8217;re outputting (as determined by your WordPress settings), as well as a condition to determine which class to reference when styling the output.</p>
<p>Here is an example of this in action:</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span>     <span style="color: #0000ff;">if</span> (have_posts()) {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span>         <span style="color: #008000;">// the counter (initialized to 0 );</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span>         $n = 0;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>         <span style="color: #008000;">// the while loop</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span>         <span style="color: #0000ff;">while</span> (have_posts()) {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   7:</span>             <span style="color: #008000;">// the CSS class to apply</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   8:</span>             $<span style="color: #0000ff;">class</span> = ( $n == 0 ) ? <span style="color: #006080;">"main-entry"</span> : <span style="color: #006080;">"past-entry"</span>;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   9:</span> ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  10:</span>             &lt;!-- set post --&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  11:</span>             &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"&lt;?php echo $class; ?&gt;"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  12:</span>                 &lt;ul <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"dateblock"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  13:</span>                     &lt;li <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"top"</span>&gt;&lt;?php the_time(<span style="color: #006080;">'M Y'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  14:</span>                     &lt;li <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"bottom"</span>&gt;&lt;?php the_time(<span style="color: #006080;">'j'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  15:</span>                 &lt;/ul&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  16:</span>                 &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"entry-content"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  17:</span>                     &lt;h1&gt;&lt;a href=<span style="color: #006080;">"&lt;?php the_permalink() ?&gt;"</span> rel=<span style="color: #006080;">"bookmark"</span> title=<span style="color: #006080;">"Permanent Link to &lt;?php the_title(); ?&gt;"</span>&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h1&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  18:</span>                     &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  19:</span>                         <span style="color: #0000ff;">if</span>( $n == 0 ) {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  20:</span>                             the_content();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  21:</span>                         }<span style="color: #0000ff;">else</span> {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  22:</span>                             the_excerpt();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  23:</span>                         }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  24:</span>                     ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  25:</span>                 &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  26:</span>             &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  27:</span>             &lt;!-- set post --&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  28:</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  29:</span> &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  30:</span>             <span style="color: #008000;">// incriment the counter</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  31:</span>             $n .= 1;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  32:</span>         }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  33:</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  34:</span>     }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  35:</span> ?&gt;</pre>
</div>
</div>
<p>As you can see from the example above, we&#8217;ve taken a basic instance of The Loop and added in two variables:</p>
<ol>
<li><strong>$n</strong> &#8212; this is the counter used to determine which which is the most recent (starting at &#8220;0&#8243; &#8212; the first).</li>
<li><strong>$class</strong> &#8212; this is the CSS class that we want to reference (&#8220;main-entry&#8221; or &#8220;past-entry&#8221;).</li>
</ol>
<p>The method and approach to styling the post is the same as the examples in query_posts(). The XHTML markup can be re-used between new and older postings, but this is not required. With a little work you can supply The Loop with two different sets of markup to render.</p>
<h3>The Caveat</h3>
<p>While this implementation is rather straight forward, it can get complicated quickly if you want to include more and more variations between postings. Each variation requires a little more forethought, and the appropriate conditions to determine what to do and what to render. What you may end up with is a lot of messy markup that is difficult to read.</p>
<h2>Conclusion</h2>
<p>It doesn&#8217;t take a lot of work to modify your WordPress template to render your most recent posting in a unique fashion. In some cases, you can download plugins to help you style your postings; for me, having to rely on additional plugins seems more overhead than is necessary. The techniques outlined in this article are only two of many such approaches (and certainly a manual approach).</p>
<p>Don&#8217;t feel as if you have to select one over the other. In fact, your writing style and your choice of template play a large part in determining which method is most appropriate.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/09/06/how-to-style-your-most-recent-wordpress-posting/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>How To Quote Comments In A WordPress Comment List</title>
		<link>http://www.farfromfearless.com/2008/08/29/how-to-quote-comments-in-wordpress-comment-list/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-quote-comments-in-wordpress-comment-list</link>
		<comments>http://www.farfromfearless.com/2008/08/29/how-to-quote-comments-in-wordpress-comment-list/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 21:17:31 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Developement]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Code Snippet]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Quotes]]></category>
		<category><![CDATA[WordPress Commenting]]></category>
		<category><![CDATA[WordPress Comments]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=161</guid>
		<description><![CDATA[Sometimes it's the little details that make WordPress themes really shine, other times it's the little features you can add that make working with a WordPress theme a nice experience for readers.]]></description>
			<content:encoded><![CDATA[<p>I received an email from a reader this afternoon, asking about one of the commenting features that I built into the <a title="Download Lemon Twist 2.0.x" href="http://www.farfromfearless.com/2008/01/11/lemon-twist-v20-updated-wordpress-theme/">Lemon Twist</a> theme: quote comments.</p>
<blockquote><p>Hi Chris,</p>
<p>I’m really curious on how you got that quote feature on your comment section. Do you mind sharing your code?</p>
<p>Cheers,<br />
[<span style="text-decoration: line-through;">author name omitted</span>]</p></blockquote>
<p>While this is not a new feature by and large, it is one that I thought would bring a sense of discussion to the linear WordPress comment format much like how forums work. I&#8217;ve attempted to use threaded commenting plugins, but they are ugly and overly complicated for something that should be fairly straight forward.</p>
<p>In any case, this is the JavaScript snippet that I wrote (you need <a title="jQuery" href="http://jquery.com/">jQuery</a>, but comes with the theme)</p>
<pre>// attach a function to the quote comment link
  $('a.quote-comment').click( function() {
      var tb = $('#comment');
      var strQuote = $(this).attr('title');
      // assign the value
      tb.val('&lt;blockquote&gt;' + strQuote + '&lt;/blockquote&gt;');
      return false;
   });</pre>
<p>This is the result:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowtoQuoteCommentsinWordPressCommentList_ECB9/quote.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowtoQuoteCommentsinWordPressCommentList_ECB9/quote_thumb.jpg" alt="quote" width="540" height="173" /></a></p>
<p>There are a couple caveats to this feature</p>
<ol>
<li>You can only quote one comment at a time, as I didn&#8217;t build in concatenation.</li>
<li>It is not parameterized so you&#8217;ll have to customize it for your own theme.</li>
<li>Requires some additional styling (no big deal).</li>
</ol>
<p>If anyone wants to improve on this, feel free to share!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/08/29/how-to-quote-comments-in-wordpress-comment-list/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>WordPress Plugins For The Not-so-everyday Blog.</title>
		<link>http://www.farfromfearless.com/2008/08/25/wordpress-plugins-for-the-not-so-everyday-blog/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-plugins-for-the-not-so-everyday-blog</link>
		<comments>http://www.farfromfearless.com/2008/08/25/wordpress-plugins-for-the-not-so-everyday-blog/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 21:34:50 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Developement]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Comments]]></category>
		<category><![CDATA[Posts]]></category>
		<category><![CDATA[Social Bookmarking]]></category>
		<category><![CDATA[WordPress Plugins]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=145</guid>
		<description><![CDATA[The WordPress plugin section is rife with some great extensions for WordPress, each offering something unique that the WordPress "core system" doesn't offer out-of-the-box.]]></description>
			<content:encoded><![CDATA[<p>For those of you who aren&#8217;t familiar with plugins &#8212; WordPress offers the ability for software developers to extend the basic functionality of WordPress in order to display, perform or provide functionality that does not currently exist.</p>
<p>Sometimes you can have too much of a good thing, and WordPress is no exception. There are many plugins that offer surprisingly similar features with the exception that one might handle the same task in a slightly different manner.</p>
<p>Sifting through plugin lists isn&#8217;t fun either.</p>
<p>I thought I would share a <strong>short</strong> list of the WordPress plugins that I found to be useful without being too gimmicky.</p>
<h2>Posts</h2>
<p><strong>Plugin:</strong> the_excerpt Reloaded</p>
<p><strong>URL:</strong> <a title="http://guff.szub.net/2005/02/26/the_excerpt-reloaded/" href="http://guff.szub.net/2005/02/26/the_excerpt-reloaded/">http://guff.szub.net/2005/02/26/the_excerpt-reloaded/</a></p>
<p><strong>Description:</strong> Displays the excerpt of a posting (or uses the content of your post if no excerpt is available), and formats the excerpt accordingly.</p>
<p>This plugin was developed in 2005, and there are other similar plugins that have come along since, but I like this one simply because it works as advertised. If you&#8217;ve downloaded and installed my theme, you&#8217;ll notice that I use it in areas such as the main posting, and in the archive or past postings.</p>
<p><strong>Plugin:</strong> &#8220;Add to Any: Share/Save/Bookmark Button&#8221;</p>
<p><strong>URL:</strong> <a title="http://wordpress.org/extend/plugins/add-to-any/" href="http://wordpress.org/extend/plugins/add-to-any/">http://wordpress.org/extend/plugins/add-to-any/</a></p>
<p><strong>Description:</strong> Adding social bookmark features can be a bit of a pain, and implementations are inconsistent. This plugin takes the pain out of adding social bookmarking abilities to your postings using a very simple UI for the user to interact with.</p>
<h2>Comments</h2>
<p><strong>Plugin:</strong> Get Recent Comments</p>
<p><strong>URL</strong>: <a title="http://wordpress.org/extend/plugins/get-recent-comments/" href="http://wordpress.org/extend/plugins/get-recent-comments/">http://wordpress.org/extend/plugins/get-recent-comments/</a></p>
<p><strong>Description:</strong> Displays a formatted list of the most recent comments on your site. This plugin has a number of new features, but I typically use only the basic features &#8212; for me it&#8217;s a time saver, as well as a quick and easy way to implement a comment list without a lot of work.</p>
<h2>Archives</h2>
<p><strong>Plugin:</strong> SRG Clean Archives</p>
<p><strong>URL:</strong> <a title="http://www.geekwithlaptop.com/projects/clean-archives/" href="http://www.geekwithlaptop.com/projects/clean-archives/">http://www.geekwithlaptop.com/projects/clean-archives/</a></p>
<p><strong>Description:</strong> Displays a formatted list of your archived posts with additional functionality for animation and user interaction.</p>
<p>I just love the fact that I can take this plugin and output an archive with minimal fuss. I disable all of the additional features and apply my own CSS to customize the look and feel. It&#8217;s really quite easy, and if you&#8217;re into experimenting with some of the extra JavaScript features, you can come up with some fun results.</p>
<p>You don&#8217;t need a lot of plugins to enhance the features of your blog, and I personally recommend against relying heavily on plugins; instead, I do recommend that you pick plugins that effectively suit the features you need to communicate better on your blog.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/08/25/wordpress-plugins-for-the-not-so-everyday-blog/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How To Use Mail Merge In Microsoft Word 2007</title>
		<link>http://www.farfromfearless.com/2008/08/05/how-to-use-mail-merge-in-microsoft-word-2007/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-use-mail-merge-in-microsoft-word-2007</link>
		<comments>http://www.farfromfearless.com/2008/08/05/how-to-use-mail-merge-in-microsoft-word-2007/#comments</comments>
		<pubDate>Wed, 06 Aug 2008 04:16:39 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Developement]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[Grrr]]></category>
		<category><![CDATA[2007]]></category>
		<category><![CDATA[Black List]]></category>
		<category><![CDATA[Email Deployment]]></category>
		<category><![CDATA[Mail Merge]]></category>
		<category><![CDATA[MS Office]]></category>
		<category><![CDATA[MS Word 2007]]></category>
		<category><![CDATA[White List]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=141</guid>
		<description><![CDATA[Email deployments give me a headache. I hate doing them, and I hate watching other people doing them. But they are a necessary part of web-marketing and communications.]]></description>
			<content:encoded><![CDATA[<p>In a recent project that required a mass email deployment, I encountered one of the most overlooked issues when sending bulk emails within a large company from an external source: corporate black-list policy. Quite simply, this is an IT policy that protects a company&#8217;s email servers from being overwhelmed and exploited by malicious sources. It&#8217;s a good policy, and if properly implemented, it can quickly stonewall persistent spammers.</p>
<p>Given that I am not the only one to encounter this issue, I thought I would share my recent experience and a work-around.</p>
<p><strong>DISCLAIMER:</strong> Please note that I do not in any way advocate this as a permanent solution for any mass e-mail deployments on a budget. At best this article should be taken as <strong>a cautionary tale</strong>.</p>
<h2>The Task</h2>
<p>I developed an micro site for a client for an HR and team-building campaign. The micro site required internal users to claim their pre-assigned accounts through a simple &#8220;claim&#8221; URI provided in a email that was to be sent out after an internal event. One click; confirm the email address; accept a new user-defined password, and that was it. Simple and quick.</p>
<h2>The Issue</h2>
<p>The account claim workflow was simple, and my team and I had tested the system numerous times. We tested the standard exploits; we tested cross-location claims; we tested unorthodox methods of faking and breaking into the site. What we hadn&#8217;t tested as thoroughly was the e-mail deployment.</p>
<p>I made the assumption that we wouldn&#8217;t have issues with the email deployment since my team had done previous deployments for this particular client in the past. Easy peasy, right?</p>
<p>Not really.</p>
<p>The email was scheduled to deploy close to the end of the day yesterday. It went out. It came back. Rejected. As it turns out, I had also forgotten that the previous deployments were for <strong>external</strong> email lists &#8212; this was the first time we were handling a mass deployment to an internal employee list.</p>
<h2>The Drama</h2>
<p>By 9:30 this morning, I had a couple urgent notes from the client and spent the following hours following up with their IT department and our email service provider, along with our bulk e-mail distributor. It was then I found out that the email servers and the domain needed to be &#8220;white-listed&#8221; before any mass emails could filter through.</p>
<p>(You know those moments when you take a second and realized what a rookie mistake you just made &#8212; that was me this afternoon &#8212; email deployment cardinal sin numero uno).</p>
<p>By 4:00PM I was pretty much ready to hang myself after waiting for hours to hear back from the &#8220;deliverabily&#8221; department and the support desk to whom I submitted this rather urgent ticket. Not a fun day.</p>
<p>Desperate, I considered last resorts:</p>
<p>1. Have the client distribute the email themselves.</p>
<p>2. Set up a new account with a new provider specifically for this project.</p>
<p>3. Delay the deployment.</p>
<p>For various and obvious reasons, neither of the options were appealing to the client. The email deployment was 24 hours behind schedule at this point, and employees were chomping at the bit to claim their promised accounts on this micro site. It was time to fall back to some unorthodox means.</p>
<p>Enter Microsoft Word and Mail Merge (I feel dirty just writing this already).</p>
<h2>The Solution</h2>
<p>Mail Merge is one of those Microsoft Office features (there may be similar features in other products &#8212; I wouldn&#8217;t know), that is either loved or hated. I personally dislike it for the fact that it just wasn&#8217;t easy to use, and the lack of an intuitive workflow; however, it did come through for me today, so I&#8217;m going to cut it some slack.</p>
<p><strong>Before we get started, this is what you should know:</strong></p>
<ol>
<li>If your target company has an IT policy in place to deal with bulk emails and spammers, you <strong>need</strong> to contact them <strong>first</strong> in order to get your e-mail server &#8220;white-listed&#8221;. No solution, even the one I&#8217;m outlining here, will get through a well-implemented IT policy. Read that last statement again and remember it.</li>
<li>You will need to provide the IT administrators at the target company with at least two things: the static IP address (possibly range) of your email server, and your the domain you are sending from. e.g. sender<strong>@somedomain.com</strong> &#8212; you will likely be asked to verify this through some simple test emails.</li>
<li>You will want to setup a new mailbox or profile through your Exchange server (contact your system admin for help on this). This will prevent you &#8212; your email account &#8212; from receiving a potentially overwhelming volume of bounce-backs or auto responses, etc.</li>
<li>If you have MS Outlook installed, start it up as you will need it to connect with your email server to send emails.</li>
<li>Lastly, you are definitely going to need some patience.</li>
</ol>
<p>If you&#8217;ve done your due diligence and saw to it that the IT department of your target company has &#8220;white-listed&#8221; both your email server and domain, you can safely send a volume of emails through.</p>
<p>As with any bulk email deployments, you will also need a target list. Your list can come in one of several formats, the most common of which is a *.CSV formatted list.</p>
<p>I had several data fields in my list such as &#8220;first name&#8221;, &#8220;last name&#8221;, &#8220;email&#8221;, and &#8220;claimid&#8221;, so take some time before firing up MS Word to clean up your list.</p>
<p><strong>NOTE:</strong> for the purpose of this article, I am using MS Office 2007</p>
<h3>Step 1: Prepare your email list</h3>
<p>Assuming that your list was previously validated, here are a couple house-keeping tasks that you might want to deal with first:</p>
<ol>
<li>Ensure that your target list has the appropriate field/column headers.</li>
<li>Remove unnecessary fields.</li>
<li>Remove duplicates (mail merge helps you with this, but take the time to parse your list previous to using it).</li>
</ol>
<p>I&#8217;m sure there are a number of best-practices you should keep in mind when dealing with email lists, but that&#8217;s not what this article is about (and it&#8217;s clear that I am not an authority or I wouldn&#8217;t be writing this article).</p>
<p>You can create a *.CSV using any text editor, but the most popular method for businesses is to take an existing Excel spreadsheet and save it as a *.CSV formatted document. Doing this will essentially strip out any proprietary document format information, but preserve the data, its structure, and order.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/list.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/list_thumb.jpg" alt="Sample email list in MS Excel 2007" width="540" height="405" /></a></p>
<p>In this example I have two records (recipients) to whom I will send the email message to. I have four main fields which are denoted as follows (you can name and format them as you wish, this is just an example): [firstname], [lastname], [email], [claimid].</p>
<p>You will need all of the fields despite the fact that you may only use one or two of them for personalizing the email message.</p>
<p>The last step here is to save your *.XLS (*.XLSX if you&#8217;re using Office 2007) as a CSV, but before you do that, you should be aware that the application will display a couple of warnings regarding saving the file in a different format. To avoid multiple warning, simple delete out an unused worksheets from your document.</p>
<p>To save your file as a *.CSV you must do the following:</p>
<ol>
<li>Select File &gt; Save As.</li>
<li>When you see the &#8220;Save As&#8221; dialog, click on the &#8220;Save As Type&#8221; drop down and select &#8220;CSV (MS-DOS) *.csv&#8221; from the list. If you&#8217;re on a different platform (mac), select the appropriate encoding type (&#8220;CSV (Macintosh)&#8221;).</li>
<li>Click Save.</li>
</ol>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/save_as.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/save_as_thumb.jpg" alt="save_as" width="540" height="405" /></a></p>
<p>The first warning should pop up, which looks like this:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/warning_1.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/warning_1_thumb.jpg" alt="warning_1" width="540" height="115" /></a></p>
<p>Click &#8220;Yes&#8221; to finish saving your document. If you did not delete any unused worksheets as I mentioned earlier, you may be prompted with a second warning; get past them and save out your CSV or use another application if the experience is becoming frustrating.</p>
<h3>Step 2: Prepare Your Message</h3>
<p>If you&#8217;re planning on sending out a mass email, you&#8217;ll need to have a message to send, and fields to populate. At this point you can fire up MS Word. You should be presented with a new document. Compose your message (or copy and paste it from whatever document you had originally composed it in), and create personalization fields. For example:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/message.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/message_thumb.jpg" alt="Sample message in MS Word 2007" width="540" height="405" /></a></p>
<p>At this point it is safe to note that the Microsoft Office development team should seriously consider over-hauling this component for usability (their usability metrics be damned).</p>
<h3>Step 3: Import Your Email List</h3>
<p>This is the part that I had the most trouble with as I was both nervous about supplying the wrong fields, and generally hitting the wrong button that might cause MS Word to send the email &#8220;accidentally&#8221;. Zero points for usability Microsoft.</p>
<p>Jump back to MS Word and select the &#8220;Mailings&#8221; tab in the ribbon (if you&#8217;re using previous versions of MS Word, you&#8217;ll have to Google the location of that feature). Once you have selected the Mailing&#8217;s tab, you can click on the &#8220;Start Mail Merge&#8221; button to kick things off.</p>
<ol>
<li>When you click the &#8220;Start Mail Merge&#8221; button, you will be presented with a short menu of choices.</li>
<li>Select the option &#8220;Email Messages&#8221; from the list.</li>
</ol>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/mailings.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/mailings_thumb.jpg" alt="Sample Mailings Tab in MS Word 2007" width="540" height="405" /></a></p>
<p>Next, click on the &#8220;Select Recipients&#8221; button. You will be presented with three options in the drop-down list. Select &#8220;User Existing List&#8230;&#8221; from the options.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/existing_list.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/existing_list_thumb.jpg" alt="existing_list" width="540" height="256" /></a></p>
<p>You will be presented with a &#8220;Select Data Source&#8221; dialog. Browse to the location where you saved your *.CSV and select the file and click &#8220;Open&#8221;. If you still have your CSV file open in Excel or another application, you may receive a prompt to open a &#8220;Read-only&#8221; copy or create a &#8220;Local&#8221; copy. Select read-only as that is about the only action we&#8217;re performing with the file.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/sample_csv.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/sample_csv_thumb.jpg" alt="Sample Select Data Source dialog in MS Word 2007" width="265" height="222" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/mail_merge_recipients.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/mail_merge_recipients_thumb.jpg" alt="Sample of Mail Merge Recipeints dialong in MS Word 2007" width="265" height="195" /></a></p>
<p>If you&#8217;re curious to see the data you imported, click on &#8220;Edit Recipient List&#8221; in the main menu &#8212; you will get a dialog that lists the records in your *.CSV. There are a few useful aspects to this feature such as selecting and deselecting recipients, de-duping, sorting, and validation.</p>
<p>Moving on&#8230;</p>
<h3>Step 4: Customize The Message Format</h3>
<p>This next step is important (as are the following). You will need to personalize the email message along with some fields which are not readily apparent later on. The first thing you should do is customize the appearance of the recipient&#8217;s name. To do this, click on the &#8220;Address Block&#8221; button. You will receive a dialog that will assist you in choosing an appropriate format for the name. I&#8217;ve chosen the disable &#8220;Postal Code Insert&#8221; as those fields do not exist in my email list; however, the last option is worth considering &#8212; &#8220;Format address according to the destination country/region&#8221;. A sample of the output is displayed on the right-hand of the dialog.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/address_block.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/address_block_thumb.jpg" alt="address_block" width="540" height="285" /></a></p>
<p>Click &#8220;OK&#8221; when your settings are customized.</p>
<p>The next button beside &#8220;Address Block&#8221; (working from left to right), is &#8220;Greeting Line&#8221;. This feature allows you to create a greeting line such as: &#8220;Dear John Smith,&#8221; &#8212; going so far as to allow you to apply additional formatting. It can be useful for form messages, but for the purpose of this exercise, we&#8217;ll use the sample message and greeting like we created earlier.</p>
<p>The next thing you&#8217;re going to want to do (in fact, you can probably do this before some of the previous steps to personalizing the message), is match the fields in your CSV to the fields the typical Mail Merge expects. You can do this by clicking on the &#8220;Match Fields&#8221; button:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/match_fields.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/match_fields_thumb.jpg" alt="Sample Match Fields Button in MS Word 2007" width="265" height="199" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/fields.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/fields_thumb.jpg" alt="Sample Fields dialog in MS Word 2007" width="265" height="199" /></a></p>
<p>You will be presented with a small dialog which, if you&#8217;ve formatted your CSV properly will have automatically detected the matching fields, otherwise you will need to manually troll through the list and match the fields as needed. Since we have only a few fields to deal with, it shouldn&#8217;t be a big chore. If you recall, we have a fourth field &#8220;claimid&#8221;. We&#8217;ll get to that one in a moment.</p>
<p>Click &#8220;OK&#8221; to continue.</p>
<h3>Step 5: Personalizing The Email Message</h3>
<p>At this point the task is almost complete. You now have all the necessary mappings for your email list along with a working copy of your message. It is now time to insert the personalization fields.</p>
<p>To insert personalization fields perform the following steps:</p>
<ol>
<li>Select [firstname] from the greeting line (first line).</li>
<li>Click on the &#8220;Insert Merge Field&#8221; button. You will be presented with a list of fields matching your email list.</li>
<li>Select &#8220;firstname&#8221; from the list.</li>
</ol>
<p>What you should now see is the greeting line as it is customized with the fields. e.g.</p>
<p>Dear <strong>[firstname]</strong> [lastname], is now Dear <strong>«firstname»</strong> [lastname],</p>
<p>Repeat these steps for the last name and any other field you might want to insert into your message.</p>
<p><strong>NOTE:</strong> since MS Word 2007 automatically converts text that looks like a URI into an html link, you will need to ensure that the link remains as plain text, especially if you are adding a personalization field. Allowing the application to automatically format your links does not mean it is correct. e.g http://www.somedomain.com/<strong>«</strong>claimid» may be parsed as:</p>
<pre>&lt;a href="http://www.somedomain.com/"&gt;http://www.somedomain.com/<strong>«</strong>claimid»&lt;/a&gt;</pre>
<p>Once you are finished with this step, you may want to use the &#8220;Auto Check for Errors&#8221; feature located here:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/autocheck.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/autocheck_thumb.jpg" alt="Sample Auto Check For Errors dialog in MS Word 2007" width="540" height="405" /></a></p>
<p>There are three options &#8212; the first of which is likely the most useful (and grief-free).</p>
<h3>Step 6: Deploying The Email</h3>
<p>This IS the last step, after which I highly recommend you take a breather and get yourself a beer, if only to calm the nervousness of relying on this method of deployment &#8212; believe me, it&#8217;s understandable.</p>
<p>To send your email message, click on the &#8220;Finish &amp; Merge&#8221; button:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/send.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowToUseMailMergeInMicrosoftWord_111CC/send_thumb.jpg" alt="Sample Finish and Merge dialog in MS Word 2007" width="540" height="405" /></a></p>
<p>There are three options with this feature, but the one you&#8217;re going to want to use with this excercise is &#8220;Send E-mail Messages&#8221;. Selecting the last option will present you with a dialog (yet again); complete the dialog options before sending.</p>
<ol>
<li>Select the field you&#8217;ve mapped for the recipient&#8217;s email address.</li>
<li>Supply a relevant subject line.</li>
<li>Select a message format (text or HTML).</li>
<li>Select how many recipients are to receive the message.</li>
</ol>
<p>Click &#8220;OK&#8221; when you are done.</p>
<p>MS Word will now send your Mail Merged message(s) &#8212; individually &#8212; using MS Outlook. If you have not started the application, it will automatically prompt you to do so. To be safe, monitor your outbox and your sent messages to confirm that the email was deployed. Depending on the volume of email recipients in your list, you should have <strong>just as many individual emails</strong> sitting in your sent/outbox.</p>
<p>That&#8217;s it. You&#8217;re done. Go get a beer (I need one now after writing this).</p>
<h2>Conclusion</h2>
<p>As I warned in my earlier statements, this method is not ideal &#8212; and in all likelihood should be avoided at all costs unless you are in a serious bind.</p>
<p>I cannot guarantee the results of this method as it will vary from deployment to deployment. If you skipped past the first few steps and neglected to contact your target company&#8217;s IT administrators to conform to IT policy, you&#8217;re in for an inbox loaded with bounce-backs and delivery failures at best &#8212; at worst, you&#8217;re going to get a call from someone with a lot of very uncomfortable questions.</p>
<p>Again, there ARE repercussions if you avoid your due diligence; however, if you are attempting this method, you&#8217;re best off to apply it to low volume deployments. If you want anything larger than say 100 recipients, you&#8217;re better off using a service provider who can supply a smoother process, and help you navigate the pitfalls of email deployments.</p>
<p>You&#8217;ve been duly warned.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/08/05/how-to-use-mail-merge-in-microsoft-word-2007/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>How to BETTER Communicate Design Decisions to Clients</title>
		<link>http://www.farfromfearless.com/2008/07/23/how-to-better-communicate-design-decisions-to-clients/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-better-communicate-design-decisions-to-clients</link>
		<comments>http://www.farfromfearless.com/2008/07/23/how-to-better-communicate-design-decisions-to-clients/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 20:27:39 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Grrr]]></category>
		<category><![CDATA[Web Strategy]]></category>
		<category><![CDATA[Analytics]]></category>
		<category><![CDATA[guidelines]]></category>
		<category><![CDATA[Strategy]]></category>
		<category><![CDATA[Website Metrics]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=137</guid>
		<description><![CDATA[Communication is the cornerstone of building effective relationships. This is invariably true in business and when it comes to the business of website design and strategy, communication is critical.]]></description>
			<content:encoded><![CDATA[<p>In a recent recent article on Smashing Magazine, &#8220;<a title="How to communicate design decisions to clients" href="http://www.smashingmagazine.com/2008/07/22/how-to-communicate-design-decisions-to-clients/">How to communicate design decisions to clients</a>&#8220;, writer <a title="Brian D. Armstrong" href="http://www.startbreakingfree.com/">Brian D. Armstrong</a> laid out a five-point guideline on how to rationalize and present design for web-projects.</p>
<p>Mr. Armstrong opens with a fairly provocative statement:</p>
<blockquote><p>You may have noticed that in certain business and marketing circles there exists a <strong>“backlash” against the design community</strong>. Despite the rise of attractive, user-friendly solutions, in such circles unattractive designs have somehow managed to remain at the verge of acceptance.</p></blockquote>
<p>There are two things I would like to note about this broad-reaching statement: the backlash is not against the <strong>design community</strong>, but rather the <strong>agencies</strong>, <strong>vendors</strong>, and <strong>consultants</strong>. More specifically the backlash is a direct response to service-providers who are unable to provide solid end-to-end solutions to answer key business and marketing requirements.</p>
<p>Good or bad aesthetics aside, a business to business (B2B) or business to consumer (B2C) website that provides leads or successfully converts a prospect to a customer is more valuable by the simple fact that it does what it was intended to do: to market or to convert.</p>
<p>No amount of &#8220;business speak&#8221; by a <span style="text-decoration: line-through;">designer</span> agency/vendor/consultant can compensate for a poorly conceived product.</p>
<h2>&#8220;Pretty doesn’t mean effective: statistics are your friend!&#8221;</h2>
<p>Mr. Armstrong makes some good points in the article, the most notable &#8212; I believe &#8212; is this first guideline.</p>
<p>It is true that statistics are definitely your friend, but you have to be very careful on how you interpret the statistics.</p>
<p>The example given compares two websites from dramatically different industries. The first, <a title="2Advanced Studios" href="http://www.2advanced.com/">2Advanced Studios</a>, is a design firm while the second, <a title="Perry Marshall" href="http://www.perrymarshall.com/google/index.htm">Perry Marshall</a> is an author&#8217;s site. You might argue that they have similar business goals in mind, but the reality is that you cannot effectively compare these two businesses and glean true insight into what works and what does not.</p>
<p>Comparative statistics should be taken from competitor websites within the client&#8217;s industry or a related industry.</p>
<p>The adage: &#8220;What&#8217;s good for the goose&#8230;&#8221; does not apply here.</p>
<p>When refreshing an existing business website, your client will usually have a number of pre-conceived goals in mind.</p>
<p>The most typical goals are:</p>
<ul>
<li>Improve sales</li>
<li>Capture more leads</li>
<li>Build awareness (brand, industry issues, products &amp; solutions, etc).</li>
<li>Foster brand trust and build brand equity.</li>
</ul>
<p>Your client&#8217;s business goals should be your Rosetta Stone when interpreting and establishing your baseline metrics for success, and at this point aesthetics are a non-issue. This segues into Mr. Armstrong&#8217;s second guideline&#8230;</p>
<h2>&#8220;Every design should have a measurable goal&#8221;</h2>
<p>I have a particular issue with this statement:</p>
<blockquote><p>Saying that the goal is to “build the brand of XYZ” or “create an online presence” is basically meaningless to a business-minded person. <strong>A goal is only a goal if it is measurable</strong>.</p></blockquote>
<p>I agree that brand building might seem ephemeral and subjective, but there are quantifiable metrics for this &#8212; it <strong>does </strong>have meaning for a client.</p>
<p>A smart business will have clearly defined what constitutes effective brand recognition and build their brand&#8217;s equity on these definitions. The brand-building activities and their results are quantifiable (see &#8220;build brand awareness, Foster brand trust&#8230;&#8221;) &#8212; &#8220;Build the brand of XYZ&#8221; <strong>is</strong> a legitimate business goal.</p>
<p>That aside, &#8220;measurable goals&#8221; should be a reflection of the business goals, and if you can answer the challenge from a design perspective, and provide insight through incremental testing, etc. you will have built a stronger foundation for the client to determine their success metrics.</p>
<h2>&#8220;Your site should have one clear path&#8221;</h2>
<p>Mr. Armstrong suggests that:</p>
<blockquote><p>As a customer comes to your site, you want to be in complete control of the 1st thing they see, the 2nd, the 3rd, and all the way down until they accomplish your goal that you’ve set. In other words, they have entered your sites “funnel” or “chute”.</p></blockquote>
<p>In a perfect world we would all build sites that work on this principle. The reality is that entry points into a website vary from user to user, campaign to campaign, and search engine to search engine. The notion of strictly engineering the site to control your users and their behaviour is akin to trying to catch the wind.</p>
<p>On a business site, the most overlooked exercise is to determining what the audience wants from the website and compare it to what the website actually offers. What you should expect is a handful of common use-cases which illustrate the behaviour of the target audience and how they truly interact with the website.</p>
<p>If your client&#8217;s website offers only one service or product, then the primary audience will likely follow one common path, and Mr. Armstrong&#8217;s proposition can ring true; however, if your client&#8217;s website offer&#8217;s multiple products and solutions to several key audiences, the most effective thing you can do is develop a user-interaction strategy to help users qualify themselves quickly and funnel them to the right place regardless of their entry-point into the website.</p>
<p>E.g. from a user&#8217;s perspective: &#8220;I am this type of user, and I am looking for this type of content.&#8221;</p>
<p>Whatever strategy you take, the execution should remain simple, effectively changing the principle to : &#8220;Your site should drive your traffic effectively&#8221;.</p>
<h2>&#8220;Provide performance metrics&#8221;</h2>
<p>I would consider this an irresponsible statement:</p>
<blockquote><p>Finally, if you really want to impress business people, put together a little report of how a design performs. It doesn’t have to be fancy — maybe a little spreadsheet (those business types do love Excel) with some basic metrics you can pull off of Google Analytics like visitors, time on site, most popular funnel path, and even a goal conversion rate.</p></blockquote>
<p>I definitely agree that providing post-launch metrics are an effective means of helping to justify or support certain design decisions on a website, but this needs to be put into serious perspective: a responsible <span style="text-decoration: line-through;">designer </span>Agency/Vendor/Consultant will look first to ensure that the metrics support the design recommendations as it applies to the <strong>business goals</strong>.</p>
<p>To be clear: look to the business goals of the website FIRST &#8212; design decisions when it comes to websites should be considered with an eye towards <strong>better usability</strong> to support those business goals.</p>
<p>My biggest point of contention with this last guideline is that metrics are interpretive and can easily be used to disguise a poor architecture or site user-interaction strategy.</p>
<p>The value of certain metrics are largely determined by type of website, which in many cases is a reflection of the fundamental difference between a E-commerce website vs. a Lead Generation website. &#8220;Traffic Volume&#8221; for one site does not equate to &#8220;Lead Capture&#8221; on another.</p>
<p>Simply providing a spreadsheet and some screen captures is a easy way to obfuscate or skew the meaningful metrics. Be responsible and avoid polluting your client&#8217;s metrics without providing a deeper understand of the &#8216;why&#8217; behind the numbers.</p>
<h2>Conclusion</h2>
<p>What the last section of Mr. Armstrong&#8217;s article should have proposed is:</p>
<p>Much of the time, &#8220;business speak&#8221; can (and will likely) hamper true conversations and discussions around meeting business goals. I would suggest that rather than effect pretence, speak plainly.</p>
<p>When you are engaged with a client to develop or refresh their website, it is your responsibility to educate yourself and your client about what constitutes good design as it is applied to their project, and ultimately how the goals are quantified.</p>
<p>This is how an agency/vendor/consultant can add true value for a client.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/07/23/how-to-better-communicate-design-decisions-to-clients/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Separating the creative from the technical in web-design.</title>
		<link>http://www.farfromfearless.com/2008/06/24/separating-the-creative-from-the-technical-in-web-design/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=separating-the-creative-from-the-technical-in-web-design</link>
		<comments>http://www.farfromfearless.com/2008/06/24/separating-the-creative-from-the-technical-in-web-design/#comments</comments>
		<pubDate>Wed, 25 Jun 2008 04:45:17 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[challenge]]></category>
		<category><![CDATA[Creative]]></category>
		<category><![CDATA[solutions]]></category>
		<category><![CDATA[technical]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/06/24/separating-the-creative-from-the-technical-in-web-design/</guid>
		<description><![CDATA[The first lesson I learned when I started in web-design was that it was extremely difficult to separate the technical from the creative. This is the foundation of my design philosophy and something that comes up now and then in discussions around what it means to "do better work". Over the years, and with the rapid advances in web-technologies, the notion of "extremely difficult" has evolved into "extremely naive".]]></description>
			<content:encoded><![CDATA[<p>Web-design in all it myriad forms, can be characterized as the marriage of creative vision and technical implementation. But it is the limitations and resulting solutions for what can be achieved technically that &#8212; to me &#8212; is the truest definition.</p>
<p>Understandably, this is a touchy standpoint to take depending on who you talk to. From a design and creative perspective, one could argue that it&#8217;s all about the ideas; and from a development perspective, one could argue, equally, that the technology drives the creative.</p>
<p>I don&#8217;t see that either argument is truly wrong; rather, it has been my experience that creative ideas that steam ahead without regard for the technology required to execute the idea, have typically run amok. This is a lesson that I&#8217;m forced to re-iterate whenever I start on a new project.</p>
<h2>The road to project hell</h2>
<p>When I&#8217;m involved in any sort of discussion around creative for online media, one of my first questions is always, &#8220;how is it supposed to work?&#8221;</p>
<p>Depending on how that question is answered, three typical scenarios arise:</p>
<ol>
<li>People will hedge around the issue of technology and gloss over it with a dismissive, &#8220;let&#8217;s address that later &#8212; this is creative discussion,&#8221; response.</li>
<li>The &#8220;build it and they will come&#8221; syndrome rears its ugly head once again (this is, by far,  my personal favourite and one that I&#8217;d put money on if the occasion presents itself).</li>
<li>Technical members of a team are conveniently uninvited from the next few meetings until the concept is baked, and only once it&#8217;s ready to go into development are they brought back into the mix.</li>
</ol>
<p>Follow any of the above scenarios &#8212; unimpeded &#8212; to their natural conclusion, and the result is an uncomfortable, awkward discussion with the client about how the concept needs to be revisited.</p>
<p>This is the not-so-fun part where I usually get dragged back into the mix to help sort things out. For some reason &#8212; and despite my best efforts &#8212; the same issues come up time and again.</p>
<p>(At this point I usually excuse myself for a sanity check.)</p>
<p>Seriously, how many awkward client conversations does it take for folks to realize the pattern? How much more of a projects&#8217; profit margin need to be consumed before the red flags start to go up? What about the impact to public/client perception of the creative company as a whole?</p>
<h2>Rock the boat</h2>
<p>When it comes to online media, it is naive to foster the notion that separating the creative from the technical is sound practice.</p>
<p>If you find yourself in a scenario such as the ones I mentioned earlier, consider the following:</p>
<ol>
<li>Challenge the assumptions and address the issue head-on. There are solid technical solutions to creative challenges, and just because the problem cannot be solved one way does not immediately discount the possibility of it being solved in some other manner. Engage the creative process with a healthy amount of pragmatism.</li>
<li>Web-projects need strategy, planning, and enough time to execute effectively. Very few online experiences/applications are instant hits. The rare ones that are (<a href="http://www.twitter.com">Twitter</a>, <a href="http://www.facebook.com">FaceBook</a>, <a href="http://www.basecamphq.com">BaseCamp</a>, etc), have strategy and planning behind them, each with enough time to evolve. Do not be afraid to play the devil&#8217;s advocate and ask the tough questions.</li>
<li>Designing and conceptualizing in a silo is rarely ever effective. External input (partial or impartial) can be the difference between having to call a client and tell them you can&#8217;t execute on what you proposed, and taking the kernel of an idea and pushing it in a direction previously not considered. Keep your technical team involved as much as possible &#8212; they are the last ones who have to execute the concept.</li>
</ol>
<p>When asked, this is how I consider being able to &#8220;do better work&#8221;:</p>
<p>If a creative team can accept the notion that separating the creative from the technical is folly, the possibility of conceptualizing better ideas and solutions (stronger creative) is all the more tangible.</p>
<p>Perhaps I am over-simplifying the issue (clients do play a big role in contributing to the issue as well), and there are many other considerations, but all of that aside, at some point common sense needs to prevail.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/06/24/separating-the-creative-from-the-technical-in-web-design/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Working at an Advertising Agency or a Boutique Shop &#8211; which option is better?</title>
		<link>http://www.farfromfearless.com/2008/03/18/working-at-an-advertising-agency-or-a-boutique-shop-which-option-is-better/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=working-at-an-advertising-agency-or-a-boutique-shop-which-option-is-better</link>
		<comments>http://www.farfromfearless.com/2008/03/18/working-at-an-advertising-agency-or-a-boutique-shop-which-option-is-better/#comments</comments>
		<pubDate>Tue, 18 Mar 2008 19:16:44 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Grrr]]></category>
		<category><![CDATA[Agencies]]></category>
		<category><![CDATA[Creative]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Internships]]></category>
		<category><![CDATA[Work Experience]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/03/18/working-at-an-advertising-agency-or-a-boutique-shop-which-option-is-better/</guid>
		<description><![CDATA[It's internship season again and the queries are starting to flow in greater numbers. One of the most frequently asked questions I hear from students is, "am I better off working at an ad agency or a boutique shop?" This is usually followed up by, "is one better than the other?"]]></description>
			<content:encoded><![CDATA[<p>With all the stiff competition for limited placements in agencies, it&#8217;s not difficult to understand the concern over wanting to work for the best and at the best creative agency. To confuse students further, they now have much more to choose from in terms of creative agencies &#8212; so much so that it is more difficult to draw a clear distinction between a traditional ad agency and a boutique shop when it comes to web.</p>
<p>The creative industry has seen an incredible upsurge in companies adding &#8220;interactive&#8221; to their service offering, and along with that we have a number of other vendor companies which bill themselves as agencies with similar services.</p>
<p>If you are a student, you may want to consider that the idea of &#8220;working for the best&#8221; is more of a matter of determining where you can best hone your craft &#8212; in this case, web design or development.</p>
<h4>Is there a difference?</h4>
<p>Yes. But let&#8217;s take a step back for a moment and take a look at the question holistically.</p>
<p>The creative industry is comprised of many players, but you can draw a clean line right down the middle &#8212; I can say this because I&#8217;ve been on both side of that industry line.</p>
<p>The players fall into two distinct categories: the traditional Advertising Agency, and the Boutique Shops (vendors).</p>
<p>In the past, it was possible to make a distinction based on their portfolios, but given the current state of the creative industry, we need to consider what makes an ad agency versus what makes a boutique shop.</p>
<p>For the most part, ad agencies have a much broader service offering than a boutique shop. A traditional ad agency will typically offer their clients such services as: branding, messaging, conceptualization, and design. These types of agencies bill themselves as a &#8220;full service&#8221; agency as most of them include additional services like &#8220;media buying&#8221;. A full service agency also has the added benefit of several organization layers &#8212; management specifically designed to handle a large volume of projects.</p>
<p>The service offering of a Boutique Shop is considerably less. In most cases, a Boutique Shop will offer only a fraction of the services which an ad agency supports. The services are typically design, development, broadcast, post-production, etc. Companies like this have chosen to specialize in one field or another and offer their specializations to larger companies who outsource to them. A Boutique Shop does not [always] have the organizational layers to handle volume.</p>
<p>When it comes to Interactive Services such as web design and development &#8212; this includes flash, application programming, etc, &#8212; ad agencies typically rely on outsource partners to provide that specialization.</p>
<p>At this point I can already see the emails coming in to argue this particular point, but let me say this much: ad agencies can often provide &#8220;Interactive Services&#8221; through internal web-teams, but most of them do not. This as more to do with their particular focus in the industry (traditional media, print, etc).</p>
<h4>Why the distinction?</h4>
<p>The distinction has less to do with size than it does with capabilities. More specifically, it&#8217;s about the creative.</p>
<p>Advertising agencies want to own the creative on every level. Quality is obviously important, but the execution is not something they want to concern themselves with most times. The capabilities of an advertising agency are quite considerable, but again, this all relies upon their outsourcing relationships &#8212; printers, media, etc. An ad agency relies on the specializations of a vendor to help them execute a concept.</p>
<p>Boutique shops typically do not have the capability to execute a fully integrated campaign on a national level let alone a global scale. That is not to say that they can&#8217;t leverage serious partnerships to allow them to do that, but even then the campaigns are limited in scope &#8212; mostly online with limited if any offline components.</p>
<p>Interactive boutique shops know this. Quite honestly, most of them appear to be quite happy with this distinction. There are certain financial and client-related constraints which boutique shops do not have to worry about simply because they typically will not encounter them. On the flip side, you get the few who attempt to bill themselves as a full service &#8220;agency&#8221;. Well, nobody is being fooled, least of all the client (if they&#8217;re smart).</p>
<p>Don&#8217;t get me wrong &#8212; a boutique shop can be creative and have great ideas. Sometimes those ideas resonate so strongly that they propagate into a campaign idea or platform, which may or may not turn into a national or global campaign. But you get the idea.</p>
<p>Suffice it to say that what a boutique shop does is execute on components of a campaign. A boutique shop can do this quickly where ad agencies with internal web development teams might take longer &#8212; specializations remember?</p>
<h4>Which is better?</h4>
<p>Neither is better … or worse.</p>
<p>Ad agencies offer tremendous opportunity for creative development, where as a boutique shop might offer better opportunity for technical development. For students, an internship is an opportunity to challenge the way you think and work, and ultimately what you&#8217;ve learned. If you are a student, you may want to consider the company which offers you the best experience in terms of professional growth and opportunity, and not necessarily what looks best on a resume.</p>
<p>When it comes to interactive &#8212; web design and development &#8212; I strongly suggest interning with a creative company which will challenge the skills and theories you&#8217;ve learned in school. The work you may encounter as an intern is a direct reflection of the capabilities of a creative company (ad agency or boutique shop), so make the determination based on what you might end up working on, and what you can walk away with.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/03/18/working-at-an-advertising-agency-or-a-boutique-shop-which-option-is-better/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>WordPress Theme Design Part 3: Color and Contrast</title>
		<link>http://www.farfromfearless.com/2008/01/24/wordpress-theme-design-part-3-color-and-contrast/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-theme-design-part-3-color-and-contrast</link>
		<comments>http://www.farfromfearless.com/2008/01/24/wordpress-theme-design-part-3-color-and-contrast/#comments</comments>
		<pubDate>Thu, 24 Jan 2008 20:18:02 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Color]]></category>
		<category><![CDATA[Color Schemes]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/01/24/wordpress-theme-design-part-3-color-and-contrast/</guid>
		<description><![CDATA[In previous articles, I have written about colour and its importance when it comes to design. Since we're discussing design as it applies to WordPress themes, I thought it appropriate to revist the topic.]]></description>
			<content:encoded><![CDATA[<p>Color selection can be troublesome especially when it comes to designing for yourself. WordPress themes are no exception, and the exercise itself is possibly one of the more challenging aspects of creating a new theme. When it comes to design in general, there are some basic guidelines that you can follow to make things a little easier.</p>
<p>In my previous article &#8220;<a href="http://www.farfromfearless.com/2006/11/16/getting-emo-with-color/" title="Getting emo with color" target="_blank">Getting emo with color</a>&#8221; I discussed the benefits of understanding the emotional impact of color.</p>
<blockquote><p>&#8230;think about how certain colors can provoke a response. A combination of responses creates an experience. So when we design with color, what we’re really doing is designing an experience. So before you start mashing pixels together in your next design, ask yourself this one question: “What kind of experience do I want to create?” <a href="http://www.farfromfearless.com/2006/11/16/getting-emo-with-color/" title="Getting emo with color" target="_blank">Source: &#8220;Getting emo with color&#8221;</a></p></blockquote>
<p>When you&#8217;re designing your WordPress theme, consider what kind of experience you want your readers to have. This goes back to <a href="http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/" title="WordPress Theme Design Part 2: Web Typography" target="_blank">Part 2</a> of this series where I suggested asking yourself which type of blogger/writer you considered yourself. Knowing that is part of understanding how to develop an experience for your readers. If your articles are verbose then you may want to consider a color scheme that allows better readability over a longer period of time, or if you are brief, then a more flexible color scheme may be considered.</p>
<h4>A emotional user experience</h4>
<p>Color influences the User Experience in ways you might not immediately consider, and while color affects people in various ways, there are some generally accepted understandings:</p>
<ul>
<li>High-energy colors &#8212; colors that fall in the warmer part of the spectrum &#8212; tend to make readers feel restless. Certain combinations of colors can make readers feel agitated and that reflects in the amount of time they are willing to spent on a given page.</li>
<li>Low-energy colors &#8212; colors which fall in the cooler part of the spectrum &#8212; tend to leave readers feeling passive. Again, this is not necessarily a good thing as you are not engaging the reader (let&#8217;s hope your content is engaging).</li>
<li>Neutral colors &#8212; colors which are neither warm nor cool &#8212; make for a bland experience.</li>
</ul>
<p>Here are some examples of color schemes to illustrate color temperature. Keep in mind that not all of these sample pallets translate well for a design, but they are a good foundation to build on.</p>
<p><strong>Warm Colors:</strong></p>
<p><a href="http://www.colourlovers.com/palette/262435/affectionately"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/affectionately.png" alt="affectionately" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/257681/Alienor"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Alienor.png" alt="Alienor" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/213494/Hot_spice"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Hot_spice.png" alt="Hot_spice" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/260803/Mr._Camo_Pants"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Mr._Camo_Pants.png" alt="Mr._Camo_Pants" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/262466/S%C3%A6vik"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Svik.png" alt="Sævik" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/261965/Sphinx"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Sphinx.png" alt="Sphinx" height="124" width="175" /></a></p>
<p><strong>Cool Colors:</strong></p>
<p><a href="http://www.colourlovers.com/palette/262429/The_Lonely_Palm_Tree"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/The_Lonely_Palm_Tree.png" alt="The_Lonely_Palm_Tree" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/261046/from_pink_to_blue"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/from_pink_to_blue1.png" alt="from_pink_to_blue-1" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/213487/You_were_saying"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/You_were_saying.png" alt="You_were_saying" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/235767/Blow_Away"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Blow_Away1.png" alt="Blow_Away-1" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/255052/market_pepper"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/market_pepper.png" alt="market_pepper" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/3330/TrendyRobe"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/TrendyRobe.png" alt="TrendyRobe" height="124" width="175" /></a></p>
<p><strong>Neutral Colors:</strong></p>
<p><a href="http://www.colourlovers.com/palette/262452/Bad_News"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Bad_News.png" alt="Bad_News" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/213483/Blind_man_dream"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Blind_man_dream.png" alt="Blind_man_dream" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/262467/Dream_Home"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Dream_Home.png" alt="Dream_Home" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/246892/Green_Envy"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Green_Envy.png" alt="Green_Envy" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/257623/in_the_earth"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/in_the_earth.png" alt="in_the_earth" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/234744/Missed"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Missed.png" alt="Missed" height="124" width="175" /></a></p>
<p><strong>Note:</strong> All samples were taken from <a href="http://www.colourlovers.com/" title="COLORLovers" target="_blank">COLOURLovers</a>.</p>
<h4>Contrast is key</h4>
<p>Take a look through <a href="http://www.smashingmagazine.com/2008/01/08/100-excellent-free-high-quality-wordpress-themes/" title="100 Excellent Free WordPress Themes" target="_blank">SmashingMagazine.com&#8217;s collection of WordPress themes</a>. What you&#8217;ll notice is that the color palettes fall equally on both sides of the spectrum (with a bare handful that are monochromatic). But what you may not immediately recognize is that each of them employs contrast to a high degree.</p>
<p>Contrast is a tool that works well to deliver focus add tension in a design. Developing contrast is not always as straightforward as designating a big block of white space (literally) as the content area. In order to develop a good balance between your color scheme and necessary contrast for your readers, you need to figure out a few things:</p>
<ul>
<li>On average, how long are your articles? The longer the article, the longer it takes for your readers to consume it. In a case like this, low contrast makes it quite difficult for a reader to maintain their attention and adds undue physiological strain.</li>
<li>Is there functionality or features in your sidebar that are absolutely integral to the reading experience. I&#8217;m not only talking about ad space here, I&#8217;m also talking about search features, or a list of recent or related articles, links, etc. If the sidebar features are not integral to the reading experience, you may want to make sure they recede into the background through lower contrast.</li>
<li>What is relevant in terms of content? Do you want your latest article to stand out from the rest? Consider that readers interested in your blog will be visiting through varying methods(RSS, Organic Search, Track-backs, etc.), which means you may want to ensure they get what they are looking for quickly.</li>
</ul>
<h4>Tools of the trade</h4>
<p>In my previous article, &#8220;<a href="http://www.farfromfearless.com/2006/11/16/getting-emo-with-color/" title="Getting emo with color" target="_blank">Getting emo with color</a>&#8220;, I mentioned a few tools that can help you in developing color schemes. Here is a site that I personally love: <a href="http://www.colourlovers.com/" title="COLORLovers" target="_blank">COLOURLovers</a>.</p>
<p>The samples generated by the community are great to experiment with and it also helps to see what others are doing as well. But be careful, these are color schemes and do not necessarily reflect a real-world application, just an aesthetic.</p>
<p>Fortunately, there are tools out there that can help you in terms of gauging contrast. Take a look at Jon Snook&#8217;s &#8220;<a href="http://snook.ca/archives/accessibility_and_usability/colour_color_co/" title="Color (color) contrast check" target="_blank">Colour (color) contrast check</a>&#8221; article. Jon provides a nifty little utility for evaluating the contrast of your color selections. The example page lists two other utilities which you can play around with as well. <a href="http://www.456bereastreet.com/archive/200709/10_colour_contrast_checking_tools_to_improve_the_accessibility_of_your_design/" title="10 colour contrast checking tools to improve the accessibility of your design" target="_blank">456Bereastreet.com complied a list of additional utilities</a> which are both desktop and web applications.</p>
<p>I can&#8217;t tell you which color schemes work best &#8212; that is for you to decide; however, I can tell you that regardless of the color scheme you end up with, it is wise to ensure that you provide contrast in the right places for the right reason. Understand your goals and design accordingly.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/01/24/wordpress-theme-design-part-3-color-and-contrast/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>WordPress Theme Design Part 2: Web Typography</title>
		<link>http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-theme-design-part-2-typography</link>
		<comments>http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/#comments</comments>
		<pubDate>Fri, 18 Jan 2008 22:13:49 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[Theme Design]]></category>
		<category><![CDATA[Typographic Color]]></category>
		<category><![CDATA[Typography]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/</guid>
		<description><![CDATA[WordPress theme design -- like most disciplines in web design -- bridges many fields of contemporary graphic design. I say that lightly since web design as a discipline involves many other aspects uncommon to traditional graphic design. However, that does not immediately exempt web designers from certain priciples such as those which govern good typography.]]></description>
			<content:encoded><![CDATA[<p>In the previous installment of this series, I covered how we can harmonize and control the layout of our design by making consistent use of a strong column measure. In turn, the column measure gave us the foundation for our visual grid. With that invisible grid in mind, a designer can ideally lay out the components of their WordPress theme and ensure that we meet some basic requirements such as good readability, and a clutter-free visual experience.</p>
<p>For this installment, I&#8217;m going to focus on another issue that tends to plague web designers &#8212; typography.</p>
<p>Before we get started, it&#8217;s best that we get a few misconceptions out of the way:</p>
<ol>
<li>Typographic principles for Print Design cannot be applied to Web Design;</li>
<li>Good typography requires images;</li>
<li>Users only care about content;</li>
</ol>
<p>For the most part, point three is correct; however, let&#8217;s put this into a little more context. Users care about your content &#8212; or at least you hope they do if they&#8217;re browsing your site &#8212; but that does not preclude you from developing a better reading experience for them by applying some straight-forward approaches to typography. I personally hate going to a site only to find that fonts are so tiny on my screen that I have to crank up my font settings in my browser to read it. It is equally annoying if I really want to read the content and am forced to resort to that. It doesn&#8217;t hurt to make things a little easier for your readers.</p>
<p>As for the second point, my response to that is typically &#8220;know your audience&#8221;. I say that because every site is different. Content on one site might require that images be used in place of text, whereas on another site, it is far more important to the audience that content be easily accessible (select, copy, paste, etc). Arguably, it is easier to share text-based content, than it is to share graphical content. Understand who your audience is, and cater to them as appropriate.</p>
<p>Finally, most typographic principles used in print translate beautifully to screen. We have far more advanced tools to develop a better reading experience with CSS-based layouts, which control everything from positioning to formatting. While I don&#8217;t want this to turn into an in-depth discussion about usability and web standards, I will say that applying good typographic practices enhances both web usability and accessibility efforts.</p>
<p>Let&#8217;s get started.</p>
<h2>Issue: Poor reading experience for users</h2>
<blockquote><p>For too long typographic style and its accompanying attention to detail have been overlooked by website designers, particularly in body copy. In years gone by this could have been put down to the technology, but now the web has caught up. The advent of much improved browsers, text rendering and high resolution screens, combine to negate technology as an excuse. <a href="http://webtypography.net/intro/" title="Web Typography" target="_blank">Source: webtypography.net</a></p></blockquote>
<p>I could not have said it any better.</p>
<p>When it comes to developing a good reading experience for your users, typography is an important aspect that needs as much consideration as colour and layout. A good reading experience should leave your users free to do one thing: read. If you can present your content in a way that makes it both easy to read, and requires less from the user than scrolling, you&#8217;ve accomplished what many websites fail to do.</p>
<p>Good typography in your design opens up your layout and makes a normally &#8220;grey&#8221; page appear friendly and light.</p>
<p><strong>Something to think about:</strong></p>
<p>It is inevitable that you will come across older sites &#8212; and even new websites &#8212; which still seek to compact as much copywriting into a given area as possible. It is not uncommon to hear feedback along the lines of &#8220;keep the content above the fold&#8221;; every time someone must say this, a kitten dies somewhere. <a href="http://www.boxesandarrows.com/view/blasting-the-myth-of" title="Blasting the Myth of the Fold" target="_blank">I counter that kind of feedback with this.</a> With current web standards, there is no harm in scrolling a page. It is a natural browsing behaviour; again, this is a good case where it pays to know your audience.</p>
<h4>Density or &#8220;Typographic Colour&#8221;</h4>
<p>First off, you need to ask yourself what kind of blogger you are. Are you the type of blogger that publishes short paragraphs with a smattering of links? Are you the type of blogger that prefers to drop lots of images and media with brief explanations? Or are you a copious writer given to generous use of copy, media and links?</p>
<p>If you can identify what kind of writer you are, then you&#8217;re half way to understanding your audience. People visit your blog for any number of reasons, but the foremost amongst those reasons is your content. They like what you have to say, what you have to show them, and the information you can point them to.</p>
<p>For the purposes of this article, let&#8217;s assume you&#8217;re like me &#8212; a copious writer. You love your words and your blog is the perfect place to share them.</p>
<p><strong>Given the assumption, here are a few considerations:</strong></p>
<ol>
<li>Large amounts of copy on a screen or piece of paper turn your normal white space in a big grey mass. In traditional typography we call this &#8220;typographic colour&#8221;. More specifically this is the density of your paragraphs in relation to the space you have given the paragraphs. You can lighten things up by adjusting the &#8220;leading&#8221; (<a href="http://www.w3schools.com/css/pr_dim_line-height.asp" title="CSS line-height property" target="_blank">line-height</a> in CSS), and the &#8220;Kerning&#8221; (<a href="http://www.w3schools.com/css/pr_text_letter-spacing.asp" title="CSS letter-spacing property" target="_blank">letter-spacing</a> in CSS).</li>
<li>Colour as a tool plays a much more important (though subtle) role in good typographic design. You have many colours to choose from, but when it comes to presenting content that is intended to be read, contrast between the background and the type is essential. The better the contrast, the less work is required of the reader to focus and interpret what is on screen. Pick colours that are harmonious with your overall design, but also have a high-degree of contrast. This does not mean you have to stick to black and white; as long as the colour has enough contrast to it, you should be fine. &#8220;Cooler&#8221; colours (colour temperature, not &#8220;cool factor&#8221;) for type work best across most screens.</li>
<li>The typeface, its size, its leading and kerning all affect the readability of your content. Choose a typeface and set its properties to ensure that it is legible. I cannot stress this aspect enough. I have had one too many debates with designers who transition from Print to Web, arguing that 9pt to 10pt type is more than sufficient for on-screen legibility (this is one of those exceptions where print and web typographic principles do not marry so well). I end these long-winded debates with this consideration: in contemporary graphic design, a designer must design for the medium. The same holds true for web designers. We have to design for the medium, and in our case the medium is the screen. <a href="http://webtypography.net/Rhythm_and_Proportion/Vertical_Motion/2.2.1/" title="The Elements of Typographic Style Applied to the Web" target="_blank">Here is an article that also talks about adjusting typography for the web</a>. It also covers parts of the previous discussion in relation to the column measure.</li>
</ol>
<p>Here are some examples of density, and how typographic control can affect the legibility of your body copy:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_01.png"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_01_thumb.png" alt="typography_01" height="146" width="256" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_02.png"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_02_thumb.png" alt="typography_02" height="146" width="256" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_03.png"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_03_thumb.png" alt="typography_03" height="146" width="256" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_04.png"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_04_thumb.png" alt="typography_04" height="146" width="256" /></a></p>
<p>You can see from the thumbnails how the leading affects the density of copy on the page. The tighter the leading (and other type properties) the more dense a single paragraph appears to a reader.</p>
<h4>Putting it into practice</h4>
<p>Spend the time and go through the motions of playing around with typographic colour in your design application, or if you prefer to deal with your typography in CSS you can use tools like <a href="http://www.fonttester.com/" title="Font Tester" target="_blank">Font Tester</a> or <a href="http://typetester.maratz.com/" title="TypeTester.com" target="_blank">TypeTester</a>. The benefit of these online tools is that you are very quickly able to see the results of your tests as they appear on screen &#8212; in a browsing environment. The more time you spend on determining your typographic styles in the design phase of creating a WordPress theme, the better off you will be later in the development process.</p>
<h4>Design for the medium</h4>
<p>Keep in mind that for web, it is easier to scale back than it is to scale up. We don&#8217;t have the restrictions of paper or other physical media &#8212; we do have to contend with other issues (we&#8217;ll cover that later), but for the most part you&#8217;re better off starting larger at first and scaling back if you have to.</p>
<p>Here are some sites that are some examples of web typography that illustrate the design principles I have been talking about in this article:</p>
<ul>
<li><a href="http://www.clearleft.com/about/" title="http://www.clearleft.com/about/">http://www.clearleft.com/about/</a></li>
<li><a href="http://www.simplebits.com/" title="http://www.simplebits.com/">http://www.simplebits.com/</a></li>
<li><a href="http://www.whatdoiknow.org/" title="http://www.whatdoiknow.org/">http://www.whatdoiknow.org/</a></li>
<li><a href="http://slideshowpro.net/" title="http://slideshowpro.net/">http://slideshowpro.net/</a></li>
</ul>
<h4>Some Considerations:</h4>
<p>Feedback is always nice to have. If possible, solicit some of your readers about their thoughts on your typographic choices, but remember to put your questions into the proper context:</p>
<ul>
<li>&#8220;Is it easier to read my articles if I do this or that?&#8221;</li>
<li>&#8220;Does the page feel lighter to you if I chose this colour or that colour?&#8221;</li>
<li>&#8220;Can you scan the page quickly and find what you need?&#8221;</li>
</ul>
<h4>Further Reading:</h4>
<p><a href="http://webtypography.net/toc/" target="_blank">&#8220;The Elements of Typographic Style Applied to the Web&#8221;</a> is a site that I have found infinitely useful as a reference and as a sounding board for decisions I make in terms of my typographic design. I encourage anyone who has an interest in web typography to read it &#8212; it&#8217;s not a long read &#8212; quite brief in fact. Keep in mind that as a designer, you the final call on decisions &#8212; don&#8217;t get caught up in the stress of &#8220;I have to adhere strictly to the rules or my design sucks&#8221;. Instead, think about your audience. Put yourself in their shoes and consider what works best for them in regards to your content.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>WordPress Theme Design Part 1: Best practices when designing a new theme</title>
		<link>http://www.farfromfearless.com/2008/01/14/wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme</link>
		<comments>http://www.farfromfearless.com/2008/01/14/wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme/#comments</comments>
		<pubDate>Mon, 14 Jan 2008 21:05:57 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Columns]]></category>
		<category><![CDATA[Grids]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[Theme Design]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/01/14/wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme/</guid>
		<description><![CDATA[Designing themes for WordPress is something that I've fumbled through in the past year. It is a fun and engaging exercise that challenged me in terms of how I look at usable design and how it's implemented. My blog is and will always be a sort of playground and proof of concept for my learning experiences; as such, I thought I would share a series of lessons that I learned over the course of the past year that may help others develop better WordPress themes.]]></description>
			<content:encoded><![CDATA[<p>An issue facing developers currently is compatibility. Older WordPress themes are becoming less and less popular, which is not necessarily due to design so much as the lack of support for newer features such as &quot;Widgets&quot;, emerging &quot;Plug-ins&quot;, and the big one: deprecated/unsupported template tags.</p>
<p>The reality is that most older WordPress themes (older than v2.x) can be upgraded to be compatible with newer versions of the WordPress software, but it does take a little effort to figure out what works and what doesn&#8217;t &#8212; sometimes creating a new theme is far more attractive than having to parse through old code. I hate having to revisit old code &#8212; yes, I am one of those people &#8212; but since I&#8217;m developing a theme that I want to share with people, I want to ensure they get the best out of what I can develop. In order to do that I needed to make sure my WordPress themes are as future proof and flexible as I can make them.</p>
<p>For the first part in this series, I&#8217;m going to focus on <a title="Wikipedia - K.I.S.S" href="http://simple.wikipedia.org/wiki/K.I.S.S." target="_blank">the &quot;K.I.S.S&quot; principle</a>.</p>
<p>Now, I know there are articles galore which expound on this principle, but when it comes to WordPress or most weblog systems, designers tend to throw it right out the window. Complexity does not always equate to good visual design.</p>
<p>To kick off this series, I&#8217;m going to focus on a fundamental design problem, which ultimately compounds other issues later on in the development process.</p>
<h2>Issue: Inconsistent &quot;Column Measure&quot; and the visual &quot;Grid&quot;:</h2>
<p>This is a design issue which plagues the majority of designers. Column measures form the foundation for your design &quot;grid&quot;. The implied &quot;grid&quot; lends harmony to your layout and an invisible structure &#8212; a framework &#8212; you can use to communicate visual priorities of content and components on a page. There is no hard and fast rule that says you should always use one, two, three or four column layouts. It really comes down to what you need to illustrate the content and functionality on your pages without pushing it to the point of clutter.</p>
<h4>Understanding the column measure</h4>
<p>In short, a column measure refers to the width of &quot;continuous text&quot;. This is most evident in magazine and newspapers where the ability to flow text into multiple columns is possible. With current development standards and web-technology this is not such an easy thing to do (it&#8217;s possible with a lot of hacking). However this does not preclude you as a designer from developing a rough column measure to aid in your layout.</p>
<p><strong>Note: </strong>What is also handy (and we&#8217;ll talk about this in later articles), is the typographic settings derived from this measure. <a title="The Typehead Chronicles - Measure for Measure" href="http://www.rightreading.com/typehead/measure.htm" target="_blank">Here is a good article explaining &quot;column measure&quot;</a>.</p>
<h4>Designing your &quot;Column Measure&quot;</h4>
<p>The old carpenter&#8217;s adage &quot;Measure twice. Cut once&quot; holds true for design on so many different levels. In the case of WordPress theme design &#8212; determine your column measures first.</p>
<p>When you first run Photoshop (or whichever program you prefer), fight the urge to start throwing pixels onto your canvas. Instead, focus on setting out your guides. Here is a sample of the column guides I typically start with all my web-layouts:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/DesigningWordPressthemeslessonslearneda_8C47/1024_column_measure.png"><img height="202" alt="1024_column_measure" src="http://www.farfromfearless.com/wp-content/uploads/DesigningWordPressthemeslessonslearneda_8C47/1024_column_measure_thumb.png" width="540" /></a></p>
<p>The darker grey areas indicate where content would flow and the lighter grey areas indicate margins or padding you may wish to apply. I stick to a 20px padding practice (10px on the left and right side). The space remaining provides your gutters. The pink rules between columns indicate possible borders.</p>
<p>In terms of designing the column measure, I tend vary my widths anywhere between 250px to 300px &#8212; this typically lends a fair amount of space for design elements and copy, as well as enough room for extra white-space where possible.</p>
<p><strong>A few things you may notice about the column sample:</strong></p>
<ul>
<li>Between all three columns, I allot for a 1px border (the pink rules). I do this because it is a pain to have to factor in borders in the design after you&#8217;ve committed to your column widths. This may seem odd at first because the combined column widths end up being 601px and 902px respectively &#8212; naturally these aren&#8217;t numbers you expect to see, but these numbers end up giving you better control when you want to divide the columns. </li>
<li>The columns loosely follow the CSS box model. This is vitally important if you&#8217;re designing for web standards. Being able to foresee ahead of time, how the box model affects a layout is a handy tool, not to mention that it takes the guess-work out determining margins and padding for your divs. The remaining space after any margins or padding is 280px &#8212; that&#8217;s a pretty decent amount of space to put towards content or blocks of functionality like categories, bookmarks, search boxes, etc. </li>
<li>I allot a minimum of 10px outside of the layout for effects like drop shadows and such. My &quot;Lemon Twist&quot; theme is a good example of where that extra little space comes in handy. </li>
</ul>
<p>Your columns are just vertical spaces which you can use to flow your content into. You can bridge or merge those columns, thereby creating interesting design elements; however, don&#8217;t let the columns restrict you &#8212; the grid that is derived from this is a very helpful tool which allows you to create designs such as what you might see with the following sites:</p>
<ul>
<li><a title="http://www.ndesign-studio.com/" href="http://www.ndesign-studio.com/">http://www.ndesign-studio.com/</a> </li>
<li><a title="http://www.snook.ca/jonathan/" href="http://www.snook.ca/jonathan/">http://www.snook.ca/jonathan/</a> </li>
<li><a title="http://archgfx.net/blog/2007/geek/blogging/bus-full-of-hippies-for-wordpress" href="http://archgfx.net/blog/2007/geek/blogging/bus-full-of-hippies-for-wordpress">http://archgfx.net/blog/2007/geek/blogging/bus-full-of-hippies-for-wordpress</a> (see screenshot) </li>
<li><a title="http://www.lifespy.com/2007/illacrimo-theme-release/" href="http://www.lifespy.com/2007/illacrimo-theme-release/">http://www.lifespy.com/2007/illacrimo-theme-release/</a> (see screenshot) </li>
</ul>
<h4>Putting it into practice:</h4>
<p>Once you have your columns roughed out, start playing with blocks rather than fully fleshed out designs. With building blocks you alleviate the complications of the aesthetic, giving you much better focus on of proportion, balance, flow and tension.</p>
<p>Bridge your columns &#8212; which design elements might benefit from doing this? What happens when you swap the position of your sidebar and your reading area. If advertising is a feature of your weblog, where is it most effective to generate clicks and views? Does your navigation work best in a sidebar or at the top?</p>
<p>Play around with the layouts. When you get to a point where you&#8217;ve blocked out your layout, them dive into design.</p>
<h4>Things to consider:</h4>
<p>Remember, the primary purpose of a weblog is for people to read &#8212; I know there are some folks out there who may feel otherwise; however, the majority of people visiting your weblog are there to find content, read it, and move on (or share it, but I&#8217;ll save that for later). Whatever you can do in your design to accommodate that most basic of requirements, the better.</p>
<p><strong>Here are some questions that may help you:</strong></p>
<ol>
<li>Think about how many columns you really need to layout your content &#8212; can you simplify? </li>
<li>What are you columns being used for &#8212; articles, advertising, photos, etc.? </li>
<li>Are there going to be exceptions to the layout that might affect your column structure, such as banners, forms, long headlines, embedded media, etc.? </li>
<li>As a reader, do you prefer to have a wide reading column, or a narrow one? </li>
</ol>
<p>Try to answer as many of those questions before hand and avoid some of the design pitfalls later.</p>
<p>Ultimately the content and the functionality are up to you. By keeping most of these things in mind you will make it far easier to maintain the integrity of your design as well as work to make it future-proof.</p>
<h4>Further Reading:</h4>
<ul>
<li><a title="http://www.wpdesigner.com/2007/06/19/web-typography-column-widths/" href="http://www.wpdesigner.com/2007/06/19/web-typography-column-widths/">http://www.wpdesigner.com/2007/06/19/web-typography-column-widths/</a> </li>
<li><a title="http://webtypography.net/Rhythm_and_Proportion/Horizontal_Motion/2.1.2/" href="http://webtypography.net/Rhythm_and_Proportion/Horizontal_Motion/2.1.2/">http://webtypography.net/Rhythm_and_Proportion/Horizontal_Motion/2.1.2/</a> </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/01/14/wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
