<?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>SayingItFirst &#124; Naperville SEO/SEM Internet Marketing Technology Company</title>
	<atom:link href="http://sayingitfirst.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://sayingitfirst.com</link>
	<description></description>
	<lastBuildDate>Thu, 23 May 2013 21:31:00 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Where Does Social Fit in the Sales Cycle?</title>
		<link>http://sayingitfirst.com/2013/05/23/where-does-social-fit-in-the-sales-cycle/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=where-does-social-fit-in-the-sales-cycle</link>
		<comments>http://sayingitfirst.com/2013/05/23/where-does-social-fit-in-the-sales-cycle/#comments</comments>
		<pubDate>Thu, 23 May 2013 21:31:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sayingitfirst.com/2013/05/23/where-does-social-fit-in-the-sales-cycle/</guid>
		<description><![CDATA[<p>Today&#8217;s guest author is Nichole Kelly, author of How to Measure Social Media. She covers a range of topics about digital marketing strategies. Social media is so common nowadays, you might assume every business is clamoring to use it at the earliest possible opportunity. Surprisingly, however, that’s often not [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<p><a class="colorbox" href="http://www.rignite.com/wp-content/uploads/2015/04/Sales-Funnel.jpg" rel="wp-prettyPhoto[g2804]"><img class="alignleft size-full wp-image-2934" alt="Sales Funnel" src="http://www.rignite.com/wp-content/uploads/2015/04/Sales-Funnel.jpg" width="240" height="240" /></a><span style="color: #999999"><small>Today&#8217;s guest author is Nichole Kelly, author of How to Measure Social Media. She covers a range of topics about digital marketing strategies.</small></span></p>
<p>Social media is so common nowadays, you might assume every business is clamoring to use it at the earliest possible opportunity. Surprisingly, however, that’s often not the case.</p>
<p>Convincing management that your company should be active on social media takes more than just good old-fashioned “Hey, let’s put on a show” enthusiasm. <em>Executives care about impact on sales volume, revenue and cost. </em>And since management teams are held accountable for financial success, they need to understand how social media management will affect their company’s bottom line before they’ll give it their full support.</p>
<p><b>How do you do that?</b></p>
<p>Well, the best way is to show them where social media fits in the sales funnel. Nothing illustrates the sales and revenue-generation process to executives like a sales funnel. So use it to explain the benefits of social media to management teams in a language they can understand.</p>
<p>Traditionally, the sales funnel starts when a prospective customer does something that triggers your sales process — scheduling a meeting with a salesperson, say, or responding to a pay-per-click ad. The advantage of social media, however, is that it allows your company to “extend” its sales funnel by adding three additional stages to the beginning, thus allowing you to beat your competition to prospects and more opportunities to convert prospective clients.</p>
<p>The five categories of the social media sales funnel define where a prospect is in the buying cycle. They also provide a clear list of metrics to measure activities within each stage. When trying to measure ROI it’s important to understand that you will have to connect social media activities to their impact on revenue. This is possible, but I could write a whole separate post on that. So for this post, we’ll focus on the one thing you can absolutely measure today: cost. So let’s go through each category, step by step:</p>
<h2>Social Media Sales Cycle Category 1: Exposure</h2>
<p>The exposure section of the sales funnel focuses on brand reach. Here the idea is that the more your brand is seen, the more people are likely to remember it. This is essentially the first stage in measuring brand awareness, and in some ways it’s the most important, since the more people you put into the top of the funnel, the more opportunities your company will have to create sales.</p>
<p>In PR and online advertising, exposure is measured in “impressions.” Circulation, viewers or listeners are common measures of impressions in public relations; in social media, fans, followers or subscribers are often used. Bear in mind that in either area, impressions don’t equate to people actually noticing your ad — just because your add pops up during “Here Comes Honey Boo Boo” or on Aunt Janet’s Jon Bon Jovi Facebook fan page, it doesn’t mean somebody will actually hear or see it. We’re simply talking about potential here.</p>
<p>Social media does offer one important advantage over traditional media in this regard: It gives you the chance to significantly increase the number of people who are exposed to your brand at a fraction of the cost.</p>
<h3 style="padding-left: 60px">Key Performance Indicator:</h3>
<p style="padding-left: 60px">1. Cost per impression</p>
<h2>Social Media Sales Cycle Category 2: Influence</h2>
<p>The influence section of the funnel describes people who were exposed to your brand by an influencer in your industry. This is a separate category from exposure because those who are exposed to your brand by an influencer convert more readily than those who are simply exposed to your brand. In this way, discovering a brand through an influencer is more like learning about a company through a friend.</p>
<p>As businesses have begun to recognize the power of influence, there’s been a need to measure how influential people are. Companies such as Klout are not only using algorithms to attempt to measure influence, but they’re also creating a marketplace where you can search for influencers in topics that are relevant to your industry.</p>
<p>To quantify the value of influencer outreach, you measure how many influencers mention your brand, estimate the reach achieved through those efforts, and in the next category of the funnel — engagement — measure the response the company receives.</p>
<h3 style="padding-left: 60px">Key Performance Indicators:</h3>
<h3 style="padding-left: 60px"><span style="font-size: 16px;font-weight: 400">1. Cost per site visit</span></h3>
<p style="padding-left: 60px">2. Cost per conversion</p>
<p style="padding-left: 60px">3. Conversion rate</p>
<h2>Social Media Sales Cycle Category 3: Engagement</h2>
<p>There has been a lot of debate over exactly what engagement means, but for the purposes of this discussion we will say that engagement describes when somebody takes physical action to interact with your brand during a particular timeframe.</p>
<p>It’s at this stage that you can start quantifying who is engaging with your brand. This is where the value of social media really starts to widen management’s eyes, as it is particularly well suited for this purpose.</p>
<p>What’s more, by its very nature social media facilitates and encourages two-way interactions with brands. So it enjoys a significant advantage over traditional media, which simply isn’t equipped for that level of interaction.</p>
<p>Engagement is placed one level further into the sales funnel because the theory is that people are more likely to buy from your brand if they have taken the time to engage with it. The big difference between exposure and engagement is physical action. Engagement is measured based on the end user having to physically take an action to engage with your brand, for example, clicking on something, typing a comment or sharing a message. Because there are numerous ways someone can engage with a brand on social networks, the ease of getting the data to quantify engagement varies greatly from channel to channel.</p>
<h3 style="padding-left: 60px">Key Performance Indicators:</h3>
<p style="padding-left: 60px">1. Cost per engagement</p>
<p style="padding-left: 60px">2. Cost per site visit</p>
<p style="padding-left: 60px">3. Cost per inbound link</p>
<p style="padding-left: 60px">4. Cost per click</p>
<h2>Social Media Sales Cycle Category 4: Action/conversion</h2>
<p>This stage of the new social media sales funnel is actually where most companies would traditionally begin. It’s solely dedicated to qualified leads and prospective customers who go on to purchase your products or services.</p>
<p>Two types of leads are generated through social media:</p>
<p>1) those who are ready to buy now (hard leads)</p>
<p>2) those who have provided their contact information in exchange for content you’ve made available (soft leads)</p>
<p>Once you get to this stage in the funnel, the metrics are the same, but the response is evaluated independently for each social media channel that is used.</p>
<h3 style="padding-left: 60px">Key Performance Indicators:</h3>
<p style="padding-left: 60px">1. Cost per hard lead</p>
<p style="padding-left: 60px">2. Cost per soft lead</p>
<p style="padding-left: 60px">3. Conversion rate</p>
<h2>Social Media Sales Cycle Category 5: Customer retention</h2>
<p>This is probably the most overlooked area of measurement for marketing channels. For some reason, once companies get a customer, they tend to move on and forget to measure the customer’s life cycle. Retention is crucial for determining the overall profitability of customers you generate.</p>
<p>Once prospects have become customers, you use different marketing activities to put them back into the top of the funnel, where they go through the buying stages to make future purchases. Although they go back into the funnel, they tend to go through the stages much more quickly because there is already a familiarity with your brand. If you kept them happy during their first experience, they are more likely to buy again.</p>
<p>You can make more money from existing customers in two core ways:</p>
<p>1) encouraging them to spend more at each transaction<br />
2) encouraging them to purchase more frequently</p>
<p>As a result, you actually perform two types of analyses for existing customers. Similar to action/conversion, the metrics used to evaluate customer retention do not change with each channel. Instead, you measure the performance of each channel to see whether one channel is performing better than another.</p>
<h3 style="padding-left: 60px">Key Performance Indicators:</h3>
<p style="padding-left: 60px">1. Cost per client serviced</p>
<p style="padding-left: 60px">2. Retention rate</p>
<h2><b>Final thoughts</b></h2>
<p>Chances are, once you’re able to explain the benefits of social media through the use of the sales funnel, management will be on board with implementing social media in its operations. This is good news, as social media allows companies to extend the sales funnel and attract customers earlier in the buying cycle, essentially bringing opportunities to the door when traditional marketing would close them out.</p>
<p><em>Are you measuring the effectiveness of your social media efforts?  What metrics have been helpful to you in getting executive buy-in?</em></p>
<p>Source: <a href="http://feedproxy.google.com/~r/Rignite/~3/6MTeHtl-0nU/where-does-social-fit-in-the-sales-cycle" class="colorbox" title="Where Does Social Fit in the Sales Cycle?">Rignite</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://feedproxy.google.com/~r/Rignite/~3/6MTeHtl-0nU/where-does-social-fit-in-the-sales-cycle"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Where%20Does%20Social%20Fit%20in%20the%20Sales%20Cycle%3F%20http://feedproxy.google.com/~r/Rignite/~3/6MTeHtl-0nU/where-does-social-fit-in-the-sales-cycle"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/23/where-does-social-fit-in-the-sales-cycle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building The New Financial Times Web App: A Case Study</title>
		<link>http://sayingitfirst.com/2013/05/23/building-the-new-financial-times-web-app-a-case-study/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=building-the-new-financial-times-web-app-a-case-study</link>
		<comments>http://sayingitfirst.com/2013/05/23/building-the-new-financial-times-web-app-a-case-study/#comments</comments>
		<pubDate>Thu, 23 May 2013 15:52:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sayingitfirst.com/2013/05/23/building-the-new-financial-times-web-app-a-case-study/</guid>
		<description><![CDATA[<p>When the mockups for the new Financial Times application hit our desks in mid-2012, we knew we had a real challenge on our hands. Many of us on the team (including me) swore that parts of interface would not be possible in HTML5. Given the product team&#8217;s [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>When the mockups for the <a class="colorbox" href="http://apps.ft.com/ftwebapp/postlaunch.html">new Financial Times application</a> hit our desks in mid-2012, we knew we had a real challenge on our hands. Many of us on the team (including me) swore that parts of interface would not be possible in HTML5. Given the product team&#8217;s passion for the new UI, we rolled up our sleeves and gave it our best shot.</p>
<p>We were tasked with implementing a far more challenging product, without compromising the reliable, performant experience that made the first app so successful.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/promo-compr.png" rel="wp-prettyPhoto[g2803]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/promo-500-compr.png" alt="promo-500-compr" width="500" height="315" class="alignnone size-full wp-image-126495" /></a></p>
<p>We didn’t just want to build a product that fulfilled its current requirements; we wanted to build a foundation that we could innovate on in the future. This meant <strong>building with a maintenance-first mentality</strong>, writing clean, well-commented code and, at the same time, ensuring that our code could accommodate the demands of an ever-changing feature set.</p>
<p>In this article, I’ll discuss some of the changes we made in the latest release and the decision-making behind them. I hope you will come away with some ideas and learn from our solutions as well as our mistakes.</p>
<h3>Supported Devices</h3>
<p>The first Financial Times Web app ran on iPad and iPhone in the browser, and it shipped in a native (<a class="colorbox" title="PhoneGap" href="http://phonegap.com/">PhoneGap</a>-esque) application wrapper for Android and Windows 8 Metro devices. The latest Web app is currently being served to iPad devices only; but as support is built in and tested, it will be rolled out to all existing supported platforms. HTML5 gives developers the advantage of occupying almost any mobile platform. With 2013 promising the launch of several new Web application marketplaces (eg. <a class="colorbox" title="The Chrome Web Store" href="https://chrome.google.com/webstore">Chrome Web Store</a> and <a class="colorbox" title="The Mozilla Marketplace" href="https://marketplace.firefox.com/">Mozilla Marketplace</a>), we are excited by the possibilities that lie ahead for the mobile Web.</p>
<h3>Fixed-Height Layouts</h3>
<p>The first shock that came from the new mockups was that they were all fixed height. By “fixed height,” I mean that, unlike a conventional website, the height of the page is restricted to the height of the device’s viewport. If there is more content than there is screen space, overflow must be dealt with at a component level, as opposed to the page level. We wanted to use JavaScript only as a last resort, so the first tool that sprang to mind was flexbox. Flexbox gives developers the ability to declare flexible elements that can fill the available horizontal or vertical space, something that has been very tricky to do with CSS. Chris Coyier has a <a class="colorbox" title="Old Flexbox and new Flexbox" href="http://css-tricks.com/old-flexbox-and-new-flexbox/">great introduction to flexbox</a>.</p>
<h4>Using Flexbox in Production</h4>
<p>Flexbox has been around since 2009 and has <a class="colorbox" title="Flexbox has great support on mobile" href="http://caniuse.com/flexbox">great support</a> on all the popular smartphones and tablets. We jumped at the chance to use flexbox when we found out how easily it could solve some of our complex layouts, and we started throwing it at every layout problem we faced. As the app began to grow, we found performance was getting worse and worse.</p>
<p>We spent a good few hours in Chrome Developers Tools’ timeline and found the culprit: Shock, horror! — it was our new best friend, flexbox. The timeline showed that some layouts were taking close to 100 milliseconds; reworking our layouts without flexbox reduced this to 10 milliseconds! This may not seem like a lot, but when swiping between sections, <strong>90 milliseconds of unresponsiveness is very noticeable</strong>.</p>
<h4>Back to the Old School</h4>
<p>We had no other choice but to tear out flexbox wherever we could. We used 100% height, floats, negative margins, border-box sizing and padding to achieve the same layouts with much greater performance (albeit with more complex CSS). Flexbox is still used in some parts of the app. We found that its impact on performance was less expensive when used for small UI components.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/layout-time-with-flexbox_mini.jpg" rel="wp-prettyPhoto[g2803]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/layout-time-with-flexbox-500_comp.png" alt="layout-time-with-flexbox-500_comp" width="500" height="297" class="alignnone size-full wp-image-126465" /></a><br /><em>Page layout time with flexbox</em></p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/layout-time-without-flexbox_mini.jpg" rel="wp-prettyPhoto[g2803]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/layout-time-without-flexbox-500_comp.png" alt="layout-time-without-flexbox-500_comp" width="500" height="297" class="alignnone size-full wp-image-126466" /></a><br /><em>Page layout time without flexbox</em></p>
<h3>Truncation</h3>
<p>The content of a fixed-height layout will rarely fit its container; eventually it has to overflow. Traditionally in print, designers have used ellipses (three dots) to solve this problem; however, on the Web, this isn’t the simplest technique to implement.</p>
<h4>Ellipsis</h4>
<p>You might be familiar with the <code>text-overflow: ellipsis</code> declaration in CSS. It works great, has <a class="colorbox" title="text-overflow browser support" href="http://caniuse.com/text-overflow">awesome browser support</a>, but has one shortfall: it can’t be used for text that spans multiple lines. We needed a solution that would insert an ellipsis at the point where the paragraph overflows its container. JavaScript had to step in.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/ellipsis_mini.jpg" rel="wp-prettyPhoto[g2803]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/ellipsis-500_mini.jpg" alt="ellipsis-500_mini" width="500" height="656" class="alignnone size-full wp-image-126485" /></a><br /><em>Ellipsis truncation is used throughout.</em></p>
<p>After an in-depth research and exploration of several different approaches, we created our <a class="colorbox" title="FTEllipsis" href="http://github.com/ftlabs/ftellipsis">FTEllipsis</a> library. In essence, it measures the available height of the container, then measures the height of each child element. When it finds the child element that overflows the container, it caps its height to a sensible number of lines. For WebKit-based browsers, we use the little-known <a class="colorbox" title="webkit-line-clamp" href="http://dropshado.ws/post/1015351370/webkit-line-clamp"><code>-webkit-line-clamp</code></a> property to truncate an element’s text by a set number of lines. For non-WebKit browsers, the library allows the developer to style the overflowing container however they wish using regular CSS.</p>
<h3>Modularization</h3>
<p>Having tackled some of the low-level visual challenges, we needed to step back and decide on the best way to manage our application’s views. We wanted to be able to reuse small parts of our views in different contexts and find a way to <strong>architect rock-solid styling that wouldn’t leak</strong> between components.</p>
<p>One of the best decisions we made in implementing the new application was to modularize the views. This started when we were first looking over the designs. We scribbled over printouts, breaking the page down into chunks (or modules). Our plan was to identify all of the possible layouts and modules, and define each view (or page) as a combination of modules sitting inside the slots of a single layout.</p>
<p>Each module needed to be named, but we found it very hard to describe a module, especially when some modules could have multiple appearances depending on screen size or context. As a result, we abandoned semantic naming and decided to name each component after a type of fruit — no more time wasted thinking up sensible, unambiguous names!</p>
<p><strong>An example of a module’s markup:</strong></p>
<pre><code class="language-markup">
&lt;div class="apple"&gt;
  &lt;h2 class="apple_headline"&gt;{{headline}}&lt;/h2&gt;
  &lt;h3 class="apple_sub-head"&gt;{{subhead}}&lt;/h3&gt;
  &lt;div class="apple_body"&gt;{{body}}&lt;/div&gt;
&lt;/div&gt;
</code></pre>
<p><strong>An example of a module’s styling:</strong></p>
<pre><code class="language-css">
.apple {}

.apple_headline {
  font-size: 40px;
}

.apple_sub-head {
  font-size: 20px;
}

.apple_body {
  font-size: 14px;
  column-count: 2;
  color: #333;
}
</code></pre>
<p>Notice how each class is prefixed with the module’s name. This ensures that the styling for one component will never affect another; every module’s styling is encapsulated. Also, notice how we use just one class in our CSS selectors; this makes our component transportable. Ridding selectors of any ancestral context means that modules may be dropped anywhere in our application and will look the same. This is all imperative if we want to be able to reuse components throughout the application (and even across applications).</p>
<h4>What If a Module Needs Interactions?</h4>
<p>Each module (or fruit) has its own markup and style, which we wrote in such a way that it can be reused. But what if we need a module to respond to interactions or events? We need a way to bring the component to life, but still ensure that it is unbound from context so that it can be reused in different places. This is a little trickier that just writing smart markup and styling. To solve this problem, we wrote FruitMachine.</p>
<h3>Reusable Components</h3>
<p><a class="colorbox" title="FruitMachine layout engine" href="http://github.com/ftlabs/fruitmachine">FruitMachine</a> is a lightweight library that assembles our layout’s components and enables us to declare interactions on a per-module basis. It was inspired by the simplicity of <a class="colorbox" title="Backbone: Application framework" href="http://backbonejs.org/">Backbone</a> views, but with a little more structure to keep “boilerplate” code to a minimum. FruitMachine gives our team a consistent way to work with views, while at the same time remaining relatively unopinionated so that it can be used in almost any view.</p>
<h4>The Component Mentality</h4>
<p>Thinking about your application as a collection of standalone components changes the way you approach problems. Components need to be dumb; they can’t know anything of their context or of the consequences of any interactions that may occur within them. They can have a public API and should emit events when they are interacted with. An <strong>application-specific controller</strong> assembles each layout and is <strong>the brain behind everything</strong>. Its job is to create, control and listen to each component in the view.</p>
<p>For example, to show a popover when a component named “button” is clicked, we would not hardcode this logic into the button component. Instead “button” would emit a <code>buttonclicked</code> event on itself every time its button is clicked; the view controller would listen for this event and then show the popover. By working like this, we can create a large collection of components that can be reused in many different contexts. A view component may not have any application-specific dependencies if it is to be used across projects.</p>
<p>Working like this has simplified our architecture considerably. Breaking down our views into components and decoupling them from our application focuses our decision-making and moves us away from baking complex, heavily dependent modules into our application.</p>
<h4>The Future of FruitMachine</h4>
<p>FruitMachine was our solution to achieve fully transportable view components. It enables us to quickly define and assemble views with minimal effort. We are currently using FruitMachine only on the client, but server-side (NodeJS) usage has been considered throughout development. In the coming months, we hope to move towards producing server-side-rendered websites that progressively enhance into a rich app experience.</p>
<p>You can find out more about FruitMachine and check out some more examples in the <a class="colorbox" title="FruitMachine layout engine" href="http://github.com/ftlabs/fruitmachine">public GitHub repository</a>.</p>
<h3>Retina Support</h3>
<p>The Financial Times’ first Web app was released before the age of “Retina” screens. We retrofitted some high-resolution solutions, but never went the whole hog. For our designers, 100% Retina support was a must-have in the new application. We developers were <strong>sick of maintaining multiple sizes and resolutions of each tiny image</strong> within the UI, so a single vector-based solution seemed like the best approach. We ended up choosing <a class="colorbox" title="Why icon fonts are awesome" href="http://css-tricks.com/examples/IconFont/">icon fonts</a> to replace our old PNGs, and because they are implemented just like any other custom font, they are really well supported. SVG graphics were considered, but after finding a <a class="colorbox" title="Android SVG support" href="http://caniuse.com/svg">lack of support</a> in Android 2.3 and below, this option was ruled out. Plus, there is something nice about having all of your icons bundled up in a single file, whilst not sacrificing the individuality of each graphic (like sprites).</p>
<p>Our first move was to replace the Financial Times’ logo image with a single glyph in our own custom icon font. A font glyph may be any color and size, and it always looks super-sharp and is usually lighter in weight than the original image. Once we had proved it could work, we began replacing every UI image and icon with an icon font alternative. Now, the only pixel-based image in our CSS is the full-color logo on the splash screen. We used the powerful but rather archaic-looking <a class="colorbox" href="http://fontforge.org/">FontForge</a> to achieve this.</p>
<p>Once past the installation phase, you can open any font file in FontForge and individually change the vector shape of any character. We imported SVG vector shapes (created in Adobe Illustrator) into suitable character slots of our font and exported as WOFF and TTF font types. A combination of <strong>WOFF and TTF file formats are required to support iOS</strong>, Android and Windows devices, although we hope to rely only on WOFFs once Android gains support (plus, WOFFs are around 25% smaller in file size than TTFs).</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/icon-font-large-compr.png" rel="wp-prettyPhoto[g2803]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/icon-font-500-compr.png" alt="icon-font-500-compr" width="500" height="463" class="alignnone size-full wp-image-126488" /></a><br /><em>The Financial Times’ icon font in Font Forge</em></p>
<h4>Images</h4>
<p>Article images are crucial for user engagement. Our images are delivered as double-resolution JPEGs so that they look sharp on Retina screens. Our image service (running <a class="colorbox" title="ImageMagick" href="http://www.imagemagick.org/">ImageMagick</a>) outputs JPEGs at the lowest possible quality level without causing noticeable degradation (we use 35 for Retina devices and 70 for non-Retina). Scaling down retina size images in the browser enables us to reduce JPEG quality to a lower level than would otherwise be possible without compression artifacts becoming noticeable. <a class="colorbox" href="http://filamentgroup.com/lab/rwd_img_compression/">This article</a> explains this technique in more detail.</p>
<p>It’s worth noting that this technique does require the browser to work a little harder. In old browsers, the work of scaling down many large images could have a noticeable impact on performance, but we haven’t encountered any serious problems.</p>
<h3>Native-Like Scrolling</h3>
<p>Like almost any application, we require full-page and subcomponent scrolling in order to manage all of the content we want to show our users. On desktop, we can make use of the well-established <code>overflow</code> CSS property. When dealing with the mobile Web, this isn’t so straightforward. We require a single solution that provides a “momentum” scrolling experience across all of the devices we support.</p>
<h4>overflow: scroll</h4>
<p>The <code>overflow: scroll</code> declaration is becoming usable on the mobile Web. Android and iOS now support it, but only since Android 3.0 and iOS 5. IOS 5 came with the exciting new <code>-webkit-overflow-scrolling: touch</code> property, which allows for native momentum-like scrolling in the browser. Both of these options have their limitations.</p>
<p>Standard <code>overflow: scroll</code> and <code>overflow: auto</code> don’t display scroll bars as users might expect, and they don’t have the momentum touch-scrolling feel that users have become accustomed to from their native apps. The <code>-webkit-overflow-scrolling: touch</code> declaration does add momentum scrolling and scroll bars, but it doesn’t allow developers to style the scroll bars in any way, and has limited support (iOS 5+ and Chrome on Android).</p>
<h4>A Consistent Experience</h4>
<p>Fragmented support and an inconsistent feel forced us to turn to JavaScript. Our first implementation used the <a class="colorbox" title="TouchScroll JavaScript scrolling library" href="https://github.com/davidaurelio/TouchScroll">TouchScroll</a> library. This solution met our needs, but as our list of supported devices grew and as more complex scrolling interactions were required, working with it became trickier. TouchScroll lacks IE 10 support, and its API interface is difficult to work with. We also tried <a class="colorbox" href="https://github.com/joehewitt/scrollability">Scrollability</a> and <a class="colorbox" href="https://github.com/zynga/scroller">Zynga Scroller</a>, neither of which have the features, performance or cross-browser capability we were looking for. Out of this problem, FTScroller was developed: a high-performance, momentum-scrolling library with support for iOS, Android, Playbook and IE 10.</p>
<h4>FTScroller</h4>
<p><a class="colorbox" href="https://github.com/ftlabs/ftscroller">FTScroller</a>’s scrolling implementation is similar to TouchScroll’s, with a flexible API much like Zynga Scroller. We added some enhancements, such as CSS bezier curves for bouncing, <code>requestAnimationFrame</code> for smoother frame rates, and support for IE 10. The advantage of writing our own solution is that we could develop a product that exactly meets our requirements. When you know the code base inside out, fixing bugs and adding features is a lot simpler.</p>
<p>FTScroller is dead simple to use. Just pass in the element that will wrap the overflowing content, and FTScroller will implement horizontal or vertical scrolling as and when needed. Many other <a class="colorbox" href="https://github.com/ftlabs/ftscroller#options">options</a> may be declared in an object as the second argument, for more custom requirements. We use FTScroller throughout the Financial Times’ Web app for a consistent cross-platform scrolling experience.</p>
<p><strong>A simple example:</strong></p>
<pre><code class="language-javascript">
var container = document.getElementById('scrollcontainer');
var scroller = new FTScroller(container);
</code></pre>
<h4>The Gallery</h4>
<p>The part of our application that holds and animates the page views is known as the “gallery.” It consists of three divisions: <code>left</code>, <code>center</code> and <code>right</code>. The page that is currently in view is located in the center pane. The previous page is positioned off screen in the left-hand pane, and the next page is positioned off screen in the right-hand pane. When the user swipes to the next page, we use CSS transitions to animate the three panes to the left, revealing the hidden right pane. When the transition has finished, the right pane becomes the center pane, and the far-left pane skips over to become the right pane. By using only three page containers, we keep the DOM light, while still creating the illusion of infinite pages.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/the-gallery_mini.jpg" rel="wp-prettyPhoto[g2803]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/the-gallery-500_mini.jpg" alt="Web" width="500" height="559" class="alignnone size-full wp-image-126493" /></a><br /><em>Infinite scrolling made possible with a three-pane gallery</em></p>
<h3>Making It All Work Offline</h3>
<p>Not many Web apps currently offer an offline experience, and there’s a good reason for that: implementing it is a bloody pain! The application cache (AppCache) at first glance appears to be the answer to all offline problems, but dig a little deeper and stuff gets nasty. Talks by <a class="colorbox" title="Offline rules: Bleeding edge web standards at the Financial Times" href="http://bdconf.com/ft">Andrew Betts</a> and <a class="colorbox" title="Appcache Douchebag" href="http://www.youtube.com/watch?v=cR-TP6jOSQM">Jake Archibald</a> explain really well the problems you will encounter. Unfortunately, AppCache is currently the only way to achieve offline support, so we have to work around its many deficiencies.</p>
<p>Our approach to offline is to <strong>store as little in the AppCache as possible</strong>. We use it for fonts, the favicon and one or two UI images — things that we know will rarely or never need updating. Our JavaScript, CSS and templates live in <a class="colorbox" title="localStorage" href="https://developer.mozilla.org/en-US/docs/DOM/Storage#localstorage">LocalStorage</a>. This approach gives us complete control over serving and updating the most crucial parts of our application. When the application starts, the bare minimum required to get the app up and running is sent down the wire, embedded in a single HTML page; we call this the preload.</p>
<p>We show a splash screen, and behind the scenes we make a request for the application’s full resources. This request returns a big JSON object containing our JavaScript, CSS and <a class="colorbox" href="http://mustache.github.io/">Mustache</a> templates. We <a class="colorbox" href="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/eval"><code>eval</code></a> the JavaScript and inject the CSS into the DOM, and then the application launches. This “bootstrap” JSON is then stored in LocalStorage, ready to be used when the app is next started up.</p>
<p>On subsequent startups, we always use the JSON from LocalStorage and then check for resource updates in the background. If an update is found, we download the latest JSON object and replace the existing one in LocalStorage. Then, the next time the app starts, it launches with the new assets. If the app is launched offline, the startup process is the same, except that we cannot make the request for resource updates.</p>
<h4>Images</h4>
<p>Managing offline images is currently not as easy as it should be. Our image requests are run through a custom image loader and cached in the local database (<a class="colorbox" title="IndexedDB" href="https://developer.mozilla.org/en-US/docs/IndexedDB">IndexedDB</a> or <a class="colorbox" href="http://www.html5rocks.com/en/tutorials/webdatabase/websql-indexeddb/">WebSQL</a>) so that the images can be loaded when a network connection is not present. We never load images in the conventional way, otherwise they would break when users are offline.</p>
<p><strong>Our image-loading process:</strong></p>
<ol>
<li>The loader scans the page for image placeholders declared by a particular class.</li>
<li>It takes the <code>src</code> attribute of each image placeholder found and requests the source from our JavaScript image-loader library.</li>
<li>The local database is checked for each image. Failing that, a single HTTP request is made listing all missing images.</li>
<li>A JSON array of Base64-encoded images is returned from the HTTP response and stored separately in the local database.</li>
<li>A callback is fired for each image request, passing the Base64 string as an argument.</li>
<li>An <code><img></code> element is created, and its <code>src</code> attribute is set to the Base64 data-URI string.</li>
<li>The image is faded in.</li>
</ol>
<p>I should also mention that we compress our Base64-encoded image strings in order to fit as many images in the database as possible. My colleague <a class="colorbox" href="http://labs.ft.com/2012/06/text-re-encoding-for-optimising-storage-capacity-in-the-browser/">Andrew Betts goes into detail</a> on how this can be achieved.</p>
<p>In some cases, we use this cool trick to handle images that fail to load:</p>
<pre><code class="language-markup">
&lt;img src="image.jpg" onerror="this.style.display='none';" /&gt;
</code></pre>
<h3>Ever-Evolving Applications</h3>
<p>In order to stay competitive, <strong>a digital product needs to evolve, and as developers, we need to be prepared for this</strong>. When the request for a redesign landed at the Financial Times, we already had a fast, popular, feature-rich application, but it wasn’t built for change. At the time, we were able to implement small changes to features, but implementing anything big became a slow process and often introduced a lot of unrelated regressions.</p>
<p>Our application was drastically reworked to make the new requirements possible, and this took a lot of time. Having made this investment, we hope the new application not only meets (and even exceeds) the standard of the first product, but gives us a platform on which we can develop faster and more flexibly in the future.</p>
<p><em>(al)</em></p>
<hr />
<p><small>© Wilson Page for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/23/building-the-new-financial-times-web-app-a-case-study/" class="colorbox" title="Building The New Financial Times Web App: A Case Study">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/23/building-the-new-financial-times-web-app-a-case-study/"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Building%20The%20New%20Financial%20Times%20Web%20App%3A%20A%20Case%20Study%20http://www.smashingmagazine.com/2013/05/23/building-the-new-financial-times-web-app-a-case-study/"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/23/building-the-new-financial-times-web-app-a-case-study/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Layout Optimization: Centering Elements With Flexbox Is As Easy As Pie</title>
		<link>http://sayingitfirst.com/2013/05/22/layout-optimization-centering-elements-with-flexbox-is-as-easy-as-pie/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=layout-optimization-centering-elements-with-flexbox-is-as-easy-as-pie</link>
		<comments>http://sayingitfirst.com/2013/05/22/layout-optimization-centering-elements-with-flexbox-is-as-easy-as-pie/#comments</comments>
		<pubDate>Wed, 22 May 2013 18:31:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sayingitfirst.com/2013/05/22/layout-optimization-centering-elements-with-flexbox-is-as-easy-as-pie/</guid>
		<description><![CDATA[<p>Flexible box layout (or flexbox) is a new box model optimized for UI layout. As one of the first CSS modules designed for actual layout (floats were really meant mostly for things such as wrapping text around images), it makes a lot of tasks much easier, or [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Flexible box layout (or flexbox) is a new box model optimized for UI layout. As one of the first CSS modules designed for actual layout (floats were really meant mostly for things such as wrapping text around images), it <strong>makes a lot of tasks much easier</strong>, or even possible at all. Flexbox’s repertoire includes the simple centering of elements (both horizontally and vertically), the expansion and contraction of elements to fill available space, and source-code independent layout, among others abilities.</p>
<p>Flexbox has lived a storied existence. It started as a feature of Mozilla’s XUL, where it was used to lay out application UI, such as the toolbars in Firefox, and it has since been rewritten multiple times. The specification has only recently reached stability, and we have fairly complete support across the latest versions of the leading browsers.</p>
<p>There are, however, some caveats. The specification changed between the implementation in Internet Explorer (IE) and the release of IE 10, so you will need to use a slightly different syntax. Chrome currently still requires the <code>-webkit-</code> prefix, and Firefox and Safari are still on the much older syntax. Firefox has updated to the latest specification, but that implementation is currently behind a runtime flag until it is considered stable and bug-free enough to be turned on by default. Until then, Firefox still requires the old syntax.</p>
<p>When you specify that an element will use the flexbox model, its children are laid out along either the horizontal or vertical axis, depending on the direction specified. The widths of these children expand or contract to fill the available space, based on the flexible length they are assigned.</p>
<h3>Example: Horizontal And Vertical Centering (Or The Holy Grail Of Web Design)</h3>
<p>Being able to center an element on the page is perhaps the number one wish among Web designers &mdash; yes, probably even higher than gaining the highly prized parent selector or putting IE 6 out of its misery (OK, maybe a close second then). With flexbox, this is trivially easy. Let’s start with a basic HTML template, with a <a class="colorbox" href="http://jsfiddle.net/pnNqd/">heading that we want to center</a>. Eventually, once we’ve added all the styling, it will end up looking like <a class="colorbox" href="https://dl.dropboxusercontent.com/u/444684/flexbox/flexbox1.html">this vertically and horizontally centered demo</a>.</p>
<pre><code class="language-markup">
&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
   &lt;meta charset="utf-8"/&gt;
   &lt;title&gt;Centering an Element on the Page&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
   &lt;h1&gt;OMG, I’m centered&lt;/h1&gt;
&lt;/body&gt;
&lt;/html&gt;
</code></pre>
<p>Nothing special here, not even a wrapper <code>div</code>. <strong>The magic all happens in the CSS:</strong></p>
<pre><code class="lang-css">
html {
   height: 100%;
} 

body {
   display: -webkit-box;   /* OLD: Safari,  iOS, Android browser, older WebKit browsers.  */
   display: -moz-box;   /* OLD: Firefox (buggy) */ 
   display: -ms-flexbox;   /* MID: IE 10 */
   display: -webkit-flex;    /* NEW, Chrome 21+ */
   display: flex;       /* NEW: Opera 12.1, Firefox 22+ */

   -webkit-box-align: center; -moz-box-align: center; /* OLD… */
   -ms-flex-align: center; /* You know the drill now… */
   -webkit-align-items: center;
   align-items: center;

    -webkit-box-pack: center; -moz-box-pack: center; 
   -ms-flex-pack: center; 
   -webkit-justify-content: center;
   justify-content: center;

   margin: 0;
   height: 100%;
   width: 100% /* needed for Firefox */
} 

h1 {
   display: -webkit-box; display: -moz-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   display: flex;
 
   -webkit-box-align: center; -moz-box-align: center;
   -ms-flex-align: center;
   -webkit-align-items: center;
   align-items: center;

   height: 10rem;
}</code></pre>
<p>I’ve included all of the <strong>different prefixed versions in the CSS above</strong>, from the very oldest, which is still needed, to the modern and hopefully final syntax. This might look confusing, but the different syntaxes map fairly well to each other, and I’ve included tables at the end of this article to show the exact mappings.</p>
<p>This is not exactly all of the CSS needed for our example, because I’ve stripped out the extra styling that you probably already know how to use in order to save space.</p>
<p>Let’s look at the CSS that is needed to center the heading on the page. First, we set the <code>html</code> and <code>body</code> elements to have 100% <code>height</code> and remove any margins. This will make the container of our <code>h1</code> take up the full height of the browser’s window. Firefox also needs a <code>width</code> specified on the body to force it to behave. Now, we just need to center everything.</p>
<h4>Enabling Flexbox</h4>
<p>Because the <code>body</code> element contains the heading that we want to center, we will set its <code>display</code> value to <code>flex</code>:</p>
<pre><code class="lang-css">
body {
   display: flex;
}</code></pre>
<p>This switches the <code>body</code> element to use the flexbox layout, rather than the regular block layout. All of its children in the flow of the document (i.e. not absolutely positioned elements) will now become flex items.</p>
<p>The syntax used by IE 10 is <code>display: -ms-flexbox</code>, while older Firefox and WebKit browsers use <code>display: -<var>prefix</var>-box</code> (where <var>prefix</var> is either <code>moz</code> or <code>webkit</code>). You can see the tables at the end of this article to see the mappings of the various versions.</p>
<p>What do we gain now that our elements have been to yoga class and become all flexible? They gain untold powers: they can flex their size and position relative to the available space; they can be laid out either horizontally or vertically; and they can even achieve source-order independence. (Two holy grails in one specification? We’re doing well.)</p>
<h4>Centering Horizontally</h4>
<p>Next, we want to horizontally center our <code>h1</code> element. No big deal, you might say; but it is somewhat easier than playing around with <code>auto</code> margins. <strong>We just need to tell the flexbox to center its flex items.</strong> By default, flex items are laid out horizontally, so setting the <code>justify-content</code> property will align the items along the main axis:</p>
<pre><code class="lang-css">
body {
   display: flex;
   justify-content: center;
}</code></pre>
<p>For IE 10, the property is called <code>flex-pack</code>, while for older browsers it is <code>box-pack</code> (again, with the appropriate prefixes). The other possible values are <code>flex-start</code>, <code>flex-end</code>, <code>space-between</code> and <code>space-around</code>. These are <code>start</code>, <code>end</code>, <code>justify</code> and <code>distribute</code>, respectively, in IE 10 and the old specification (<code>distribute</code> is, however, not supported in the old specification). The <code>flex-start</code> value aligns to the left (or to the right with right-to-left text), <code>flex-end</code> aligns to the right, <code>space-between</code> evenly distributes the elements along the axis, and <code>space-around</code> evenly distributes along the axis, with half-sized spaces at the start and end of the line.</p>
<p>To explicitly set the axis that the element is aligned along, you can do this with the <code>flex-flow</code> property. The default is <code>row</code>, which will give us the same result that we’ve just achieved. To align along the vertical axis, we can use <code>flex-flow: column</code>. If we add this to our example, you will notice that the element is vertically centered but loses the horizontal centering. Reversing the order by appending <code>-reverse</code> to the <code>row</code> or <code>column</code> values is also possible (<code>flex-flow: row-reverse</code> or <code>flex-flow: column-reverse</code>), but that won’t do much in our example because we have only one item.</p>
<p>There are some differences here in the various versions of the specification, which are highlighted at the end of this article. Another caveat to bear in mind is that <code>flex-flow</code> directions are <code>writing-mode</code> sensitive. That is, when using <code>writing-mode: vertical-rl</code> to switch to vertical text layout (as used traditionally in China, Japan and Korea), <code>flex-flow: row</code> will align the items vertically, and <code>column</code> will align them horizontally.</p>
<h4>Centering Vertically</h4>
<p>Centering vertically is as easy as centering horizontally. We just need to use the appropriate property to align along the “cross-axis.” The what? The cross-axis is basically the axis perpendicular to the main one. So, if flex items are aligned horizontally, then the cross-axis would be vertical, and vice versa. We set this with the <code>align-items</code> property (<code>flex-align</code> in IE 10, and <code>box-align</code> for older browsers):</p>
<pre><code class="lang-css">
body {
   /* Remember to use the other versions for IE 10 and older browsers! */
   display: flex;
   justify-content: center;
   align-items: center;
}</code></pre>
<p>This is all there is to centering elements with flexbox! We can also use the <code>flex-start</code> (start) and <code>flex-end</code> (end) values, as well as <code>baseline</code> and <code>stretch</code>. <a class="colorbox" href="https://dl.dropbox.com/u/444684/flexbox/flexbox1.html">Let’s have another look at the finished example</a>:</p>
<p><a class="colorbox" href="https://dl.dropboxusercontent.com/u/444684/flexbox/flexbox1.html"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/figure1.1_mini.jpg" alt="figure1.1_mini" width="500" height="354" class="alignnone size-full wp-image-126384" /></a><br /><em>Simple horizontal and vertical centering using flexbox. <a class="colorbox" href="https://dl.dropboxusercontent.com/u/444684/flexbox/flexbox1.html">Larger view</a>.</em></p>
<p>You might notice that the text is also center-aligned vertically inside the <code>h1</code> element. This could have been done with margins or a line height, but we used flexbox again to show that it works with anonymous boxes (in this case, the line of text inside the <code>h1</code> element). No matter how high the <code>h1</code> element gets, the text will always be in the center:</p>
<pre><code class="lang-css">
h1 {
   /* Remember to use the other versions for IE 10 and older browsers! */
   display: flex;
   align-items: center;
   height: 10rem;
}</code></pre>
<h3>Flexible Sizes</h3>
<p>If centering elements was all flexbox could do, it’d be pretty darn cool. But there is more. Let’s see how flex items can expand and contract to fit the available space within a flexbox element. Point your browser to <a class="colorbox" href="https://dl.dropbox.com/u/444684/flexbox/flexbox2.html">this next example</a>.</p>
<p><a class="colorbox" href="https://dl.dropboxusercontent.com/u/444684/flexbox/flexbox2.html"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/figure1.2_mini.jpg" alt="figure1.2_mini" width="500" height="336" class="alignnone size-full wp-image-126386" /></a><br /><em>An interactive slideshow built using flexbox. <a class="colorbox" href="https://dl.dropboxusercontent.com/u/444684/flexbox/flexbox2.html">Larger view</a>.</em></p>
<p>The HTML and CSS for this example are similar to the previous one’s. We’re enabling flexbox and centering the elements on the page in the same way. In addition, we want to make the title (inside the <code>header</code> element) remain consistent in size, while the five boxes (the <code>section</code> elements) adjust in size to fill the width of the window. To do this, we use the new <code>flex</code> property:</p>
<pre><code class="lang-css">
section {
   /* removed other styles to save space */
   -prefix-box-flex: 1; /* old spec webkit, moz */
   flex: 1;
   height: 250px;
}</code></pre>
<p>What we’ve just done here is to make each section element take up 1 flex unit. Because we haven’t set any explicit width, each of the five boxes will be the same width. The <code>header</code> element will take up a set width (277 pixels) because it is not flexible. We divide the remaining width inside the <code>body</code> element by 5 to calculate the width of each of the section elements. Now, if we resize the browser window, the section elements will grow or shrink.</p>
<p>In this example, we’ve set a consistent height, but this could be set to be flexible, too, in exactly the same way. We probably wouldn’t always want all elements to be the same size, so let’s make one bigger. On hover, we’ve set the element to take up 2 flex units:</p>
<pre><code class="lang-css">
section:hover {
   -prefix-box-flex: 2;
   flex: 2;
   cursor: pointer;
}</code></pre>
<p>Now the available space is divided by 6 rather than 5, and the hovered element gets twice the base amount. Note that an element with 2 flex units does not necessarily become twice as wide as one with 1 unit. It just gets twice the share of the available space added to its “preferred width.” In our examples, the “preferred width” is 0 (the default).</p>
<h3>Source-Order Independence</h3>
<p>For our last party trick, we’ll study how to achieve source-order independence in our layouts. When clicking on a box, we will tell that element to move to the left of all the other boxes, directly after the title. All we have to do is set the order with the <code>order</code> property. By default, all flex items are in the 0 position. Because they’re in the same position, they follow the source order. <a class="colorbox" href="https://dl.dropbox.com/u/444684/flexbox/flexbox3.html">Click on your favorite person in the updated example</a> to see their order change.</p>
<p><a class="colorbox" href="https://dl.dropboxusercontent.com/u/444684/flexbox/flexbox3.html"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/figure1.3_mini.jpg" alt="figure1.3_mini" width="500" height="347" class="alignnone size-full wp-image-126388" /></a><br /><em>An interactive slideshow with <code>flex-order</code>. <a class="colorbox" href="https://dl.dropboxusercontent.com/u/444684/flexbox/flexbox3.html">Larger view</a>.</em></p>
<p>To make our chosen element move to the first position, we just have to set a lower number. I chose <code>-1</code>. We also need to set the header to <code>-1</code> so that the selected section element doesn’t get moved before it:</p>
<pre><code class="lang-css">
header {
   -prefix-box-ordinal-group: 1; /* old spec; must be positive */
   -ms-flex-order: -1; /* IE 10 syntax */
   order: -1; /* new syntax */
} 

section[aria-pressed="true"] {
   /* Set order lower than 0 so it moves before other section elements,
      except old spec, where it must be positive.
 */
   -prefix-box-ordinal-group: 1;
   -ms-flex-order: -1;
   order: -1;

   -prefix-box-flex: 3;
   flex: 3;
   max-width: 370px; /* Stops it from getting too wide. */
}</code></pre>
<p>In the old specification, the property for setting the order (<code>box-ordinal-group</code>) accepts only a positive integer. Therefore, I’ve set the order to <code>2</code> for each section element (code not shown) and updated it to <code>1</code> for the active element. If you are wondering what <code> aria-pressed="true"</code> means in the example above, it is a WAI-ARIA attribute/value that I add via JavaScript when the user clicks on one of the sections.</p>
<p>This relays accessibility hints to the underlying system and to assistive technology to tell the user that that element is pressed and, thus, active. If you’d like more information on WAI-ARIA, check out “<a class="colorbox" href="http://dev.opera.com/articles/view/introduction-to-wai-aria/">Introduction to WAI-ARIA</a>” by Gez Lemon. Because I’m adding the attribute after the user clicks, this example requires a simple JavaScript file in order to work, but flexbox itself doesn’t require it; it’s just there to handle the user interaction.</p>
<p>Hopefully, this has given you some inspiration and enough introductory knowledge of flexbox to enable you to experiment with your own designs.</p>
<h3>Syntax Changes</h3>
<p>As you will have noticed throughout this article, the syntax has changed a number of times since it was first implemented. To aid backward- and forward-porting between the different versions, we’ve included tables below, which <strong>map the changes between the specifications</strong>.</p>
<table id="price_list">
<caption><span style="color:#FF8000">Specification versions</span></caption>
</p>
<tr>
<td><strong>Specification</strong></td>
<td><strong>IE</strong></td>
<td><strong>Opera</strong></td>
<td><strong>Firefox</strong></td>
<td><strong>Chrome</strong></td>
<td><strong>Safari</strong></td>
</tr>
<tr>
<td>Standard</td>
<td>11?</td>
<td>12.10+ *</td>
<td>Behind flag</td>
<td>21+ (<code>-webkit-</code>)</td>
<td></td>
</tr>
<tr>
<td>Mid</td>
<td>10 (<code>-ms-</code>)</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>Old</td>
<td></td>
<td></td>
<td>3+ (<code>-moz-</code>)</td>
<td>&lt;21 (<code>-webkit-</code>)</td>
<td>3+ (<code>-webkit-</code>)</td>
</tr>
</table>
<p>* Opera will soon switch to WebKit. It will then require the <code>-webkit-</code> prefix if it has not been dropped by that time.</p>
<table id="price_list">
<caption><span style="color:#FF8000">Enabling flexbox: setting an element to be a flex container</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>Block-level flex</strong></td>
<td><strong>Inline-level flex</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>display</code></td>
<td><code>flex</code></td>
<td><code>inline-flex</code></td>
</tr>
<tr>
<td>Mid</td>
<td><code>display</code></td>
<td><code>flexbox</code></td>
<td><code>inline-flexbox</code></td>
</tr>
<tr>
<td>Old</td>
<td><code>display</code></td>
<td><code>box</code></td>
<td><code>inline-box</code></td>
</tr>
</table>
<table id="price_list">
<caption><span style="color:#FF8000">Axis alignment: specifying alignment of items along the main flexbox axis</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>start</strong></td>
<td><strong>center</strong></td>
<td><strong>end</strong></td>
<td><strong>justify</strong></td>
<td><strong>distribute</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>justify-content</code></td>
<td><code>flex-start</code></td>
<td><code>center</code></td>
<td><code>flex-end</code></td>
<td><code>space-between</code></td>
<td><code>space-around</code></td>
</tr>
<tr>
<td>Mid</td>
<td><code>flex-pack</code></td>
<td><code>start</code></td>
<td><code>center</code></td>
<td><code>end</code></td>
<td><code>justify</code></td>
<td><code>distribute</code></td>
</tr>
<tr>
<td>Old</td>
<td><code>box-pack</code></td>
<td><code>start</code></td>
<td><code>center</code></td>
<td><code>end</code></td>
<td><code>justify</code></td>
<td>N/A</td>
</tr>
</table>
<table id="price_list">
<caption><span style="color:#FF8000">Cross-axis alignment: specifying alignment of items along the cross-axis</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>start</strong></td>
<td><strong>center</strong></td>
<td><strong>end</strong></td>
<td><strong>baseline</strong></td>
<td><strong>stretch</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>align-items</code></td>
<td><code>flex-start</code></td>
<td><code>center</code></td>
<td><code>flex-end</code></td>
<td><code>baseline</code></td>
<td><code>stretch</code></td>
</tr>
<tr>
<td>Mid</td>
<td><code>flex-align</code></td>
<td><code>start</code></td>
<td><code>center</code></td>
<td><code>end</code></td>
<td><code>baseline</code></td>
<td><code>stretch</code></td>
</tr>
<tr>
<td>Old</td>
<td><code>box-align</code></td>
<td><code>start</code></td>
<td><code>center</code></td>
<td><code>end</code></td>
<td><code>baseline</code></td>
<td><code>stretch</code></td>
</tr>
</table>
<table id="price_list">
<caption><span style="color:#FF8000">Individual cross-axis alignment: override to align individual items along the cross-axis</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>auto</strong></td>
<td><strong>start</strong></td>
<td><strong>center</strong></td>
<td><strong>end</strong></td>
<td><strong>baseline</strong></td>
<td><strong>stretch</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>align-self</code></td>
<td><code>auto</code></td>
<td><code>flex-start</code></td>
<td><code>center</code></td>
<td><code>flex-end</code></td>
<td><code>baseline</code></td>
<td><code>stretch</code></td>
</tr>
<tr>
<td>Mid</td>
<td><code>flex-item-align</code></td>
<td><code>auto</code></td>
<td><code>start</code></td>
<td><code>center</code></td>
<td><code>end</code></td>
<td><code>baseline</code></td>
<td><code>stretch</code></td>
</tr>
<tr>
<td>Old</td>
<td colspan="7">N/A</td>
</tr>
</table>
<table id="price_list">
<caption><span style="color:#FF8000">Flex line alignment: specifying alignment of flex lines along the cross-axis</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>start</strong></td>
<td><strong>center</strong></td>
<td><strong>end</strong></td>
<td><strong>justify</strong></td>
<td><strong>distribute</strong></td>
<td><strong>stretch</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>align-content</code></td>
<td><code>flex-start</code></td>
<td><code>center</code></td>
<td><code>flex-end</code></td>
<td><code>space-between</code></td>
<td><code>space-around</code></td>
<td><code>stretch</code></td>
</tr>
<tr>
<td>Mid</td>
<td><code>flex-line-pack</code></td>
<td><code>start</code></td>
<td><code>center</code></td>
<td><code>end</code></td>
<td><code>justify</code></td>
<td><code>distribute</code></td>
<td><code>stretch</code></td>
</tr>
<tr>
<td>Old</td>
<td colspan="7">N/A</td>
</tr>
</table>
<p>This takes effect only when there are multiple flex lines, which is the case when flex items are allowed to wrap using the <code>flex-wrap</code> property and there isn’t enough space for all flex items to display on one line. This will align each line, rather than each item.</p>
<table id="price_list">
<caption><span style="color:#FF8000">Display order: specifying the order of flex items</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>Value</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>order</code></td>
<td></td>
</tr>
<tr>
<td>Mid</td>
<td><code>flex-order</code></td>
<td><code>&lt;<var>number</var>&gt;</code></td>
</tr>
<tr>
<td>Old</td>
<td><code>box-ordinal-group</code></td>
<td><code>&lt;<var>integer</var>&gt;</code></td>
</tr>
</table>
<table id="price_list">
<caption><span style="color:#FF8000">Flexibility: specifying how the size of items flex</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>Value</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>flex</code></td>
<td><code>none</code> | [ <code>&lt;<var>flex-grow</var>&gt;</code> <code>&lt;<var>flex-shrink<var>&gt;</code>? || <code>&lt;<var>flex-basis</var>&gt;</code>]</td>
</tr>
<tr>
<td>Mid</td>
<td><code>flex</code></td>
<td><code>none</code> | [ [ <code>&lt;<var>pos-flex</var>&gt;</code> <code>&lt;<var>neg-flex</var>&gt;</code>? ] || <code>&lt;<var>preferred-size</var>&gt;</code> ]</td>
</tr>
<tr>
<td>Old</td>
<td><code>box-flex</code></td>
<td><code>&lt;<var>number</var>&gt;</code></td>
</tr>
</tbody>
</table>
<p>The flex property is more or less unchanged between the new standard and the draft supported by Microsoft. The main difference is that it has been converted to a shorthand in the new version, with separate properties: <code>flex-grow</code>, <code>flex-shrink</code> and <code>flex-basis</code>. The values may be used in the same way in the shorthand. However, the default value for <code>flex-shrink</code> (previously called negative flex) is now <code>1</code>. This means that items do not shrink by default. Previously, negative free space would be distributed using the <code>flex-shrink</code> ratio, but now it is distributed in proportion to <code>flex-basis</code> multiplied by the <code>flex-shrink</code> ratio.</p>
<table id="price_list">
<caption><span style="color:#FF8000">Direction: specifying the direction of the main flexbox axis</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>Horizontal</strong></td>
<td><strong>Reversed horizontal</strong></td>
<td><strong>Vertical</strong></td>
<td><strong>Reversed vertical</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>flex-direction</code></td>
<td><code>row</code></td>
<td><code>row-reverse</code></td>
<td><code>column</code></td>
<td><code>column-reverse</code></td>
</tr>
<tr>
<td>Mid</td>
<td><code>flex-direction</code></td>
<td><code>row</code></td>
<td><code>row-reverse</code></td>
<td><code>column</code></td>
<td><code>column-reverse</code></td>
</tr>
<tr>
<td>Old</td>
<td><code>box-orient</code></p>
<p>         <code>box-direction</code></td>
<td><code>horizontal</code></p>
<p>         <code>normal</code></td>
<td><code>horizontal</code></p>
<p>         <code>reverse</code></td>
<td><code>vertical</code></p>
<p>         <code>normal</code></td>
<td><code>vertical</code></p>
<p>         <code>reverse</code></td>
</tr>
</table>
<p>In the old version of the specification, the <code>box-direction</code> property needs to be set to <code>reverse</code> to get the same behavior as <code>row-reverse</code> or <code>column-reverse</code> in the later version of the specification. This can be omitted if you want the same behavior as <code>row</code> or <code>column</code> because <code>normal</code> is the initial value.</p>
<p>When setting the <code>direction</code> to <code>reverse</code>, the main flexbox axis is flipped. This means that when using a left-to-right writing system, the items will display from right to left when <code>row-reverse</code> is specified. Similarly, <code>column-reverse</code> will lay out flex items from bottom to top, instead of top to bottom.</p>
<p>The old version of the specification also has writing mode-independent values for <code>box-orient</code>. When using a left-to-write writing system, <code>horizontal</code> may be substituted for <code>inline-axis</code>, and <code>vertical</code> may be substituted for <code>block-axis</code>. If you are using a top-to-bottom writing system, such as those traditional in East Asia, then these values would be flipped.</p>
<table id="price_list">
<caption><span style="color:#FF8000">Wrapping: specifying whether and how flex items wrap along the cross-axis</span></caption>
<tr>
<td><strong>Specification</strong></td>
<td><strong>Property name</strong></td>
<td><strong>No wrapping</strong></td>
<td><strong>Wrapping</strong></td>
<td><strong>Reversed wrap</strong></td>
</tr>
<tr>
<td>Standard</td>
<td><code>flex-wrap</code></td>
<td><code>nowrap</code></td>
<td><code>wrap</code></td>
<td><code>wrap-reverse</code></td>
</tr>
<tr>
<td>Mid</td>
<td><code>flex-wrap</code></td>
<td><code>nowrap</code></td>
<td><code>wrap</code></td>
<td><code>wrap-reverse</code></td>
</tr>
<tr>
<td>Old</td>
<td><code>box-lines</code></td>
<td><code>single</code></td>
<td><code>multiple</code></td>
<td>N/A</td>
</tr>
</table>
<p>The <code>wrap-reverse</code> value flips the start and end of the cross-axis, so that if flex items are laid out horizontally, instead of items wrapping onto a new line below, they will wrap onto a new line above.</p>
<p>At the time of writing, Firefox does not support the <code>flex-wrap</code> or older <code>box-lines</code> property. It also doesn’t support the shorthand.</p>
<p>The current specification has a <code>flex-flow</code> shorthand, which controls both wrapping and direction. The behavior is the same as the one in the version of the specification implemented by IE 10. It is also currently not supported by Firefox, so I would recommend to avoid using it when specifying only the <code>flex-direction</code> value.</p>
<h3>Conclusion</h3>
<p>Well, that’s a (flex-)wrap. In this article, I’ve introduced some of <strong>the myriad of possibilities afforded by flexbox</strong>. Be it source-order independence, flexible sizing or just the humble centering of elements, I’m sure you can find ways to employ flexbox in your websites and applications. The syntax has settled down (finally!), and implementations are here. All major browsers now support flexbox in at least their latest versions.</p>
<p>While some browsers use an older syntax, Firefox looks like it is close to updating, and IE 11 uses the latest version in leaked Windows Blue builds. There is currently no word on Safari, but it is a no-brainer considering that Chrome had the latest syntax before the Blink-WebKit split. For the time being, <strong>use the tables above to map the various syntaxes</strong>, and get your flex on.</p>
<p>Layout in CSS is only getting more powerful, and flexbox is one of the first steps out of the quagmire we’ve found ourselves in over the years, first with table-based layouts, then float-based layouts. IE 10 already supports an early draft of the Grid layout specification, which is great for page layout, and Regions and Exclusions will revolutionize how we handle content flow and layout.</p>
<p>Flexbox can be used today if you only need to support relatively modern browsers or can provide a fallback, and in the not too distant future, all sorts of options will be available, so that we can use the best tool for the job. Flexbox is shaping up to be a mighty fine tool.</p>
<h4>Further Reading</h4>
<ul>
<li>“<a class="colorbox" href="http://www.w3.org/TR/css3-flexbox/">CSS Flexible Box Layout Module</a>” (specification), W3C</li>
<li>“<a class="colorbox" href="http://caniuse.com/flexbox">Flexible Box Layout Module</a>,” Can I Use?</li>
<li>“<a class="colorbox" href="http://msdn.microsoft.com/en-us/library/ie/hh673531%28v=vs.85%29.aspx">Flexible box (‘Flexbox’) layout</a>,” Microsoft</li>
<li>“<a class="colorbox" href="https://developer.mozilla.org/en-US/docs/CSS/Tutorials/Using_CSS_flexible_boxes">Using CSS Flexible Boxes</a>,” Mozilla</li>
<li>“<a class="colorbox" href="http://css-tricks.com/old-flexbox-and-new-flexbox/">‘Old’ Flexbox and ‘New’ Flexbox</a>,” Chris Coyier</li>
</ul>
<p><em>(al)</em></p>
<p><!-- deleted style tag --></p>
<hr />
<p><small>© David Storey for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/22/centering-elements-with-flexbox-is-as-easy-as-pie/" class="colorbox" title="Layout Optimization: Centering Elements With Flexbox Is As Easy As Pie">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/22/centering-elements-with-flexbox-is-as-easy-as-pie/"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Layout%20Optimization%3A%20Centering%20Elements%20With%20Flexbox%20Is%20As%20Easy%20As%20Pie%20http://www.smashingmagazine.com/2013/05/22/centering-elements-with-flexbox-is-as-easy-as-pie/"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/22/layout-optimization-centering-elements-with-flexbox-is-as-easy-as-pie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UX Research Results: Exploring Ten Fundamental Aspects Of M-Commerce Usability</title>
		<link>http://sayingitfirst.com/2013/05/21/ux-research-results-exploring-ten-fundamental-aspects-of-m-commerce-usability/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ux-research-results-exploring-ten-fundamental-aspects-of-m-commerce-usability</link>
		<comments>http://sayingitfirst.com/2013/05/21/ux-research-results-exploring-ten-fundamental-aspects-of-m-commerce-usability/#comments</comments>
		<pubDate>Tue, 21 May 2013 19:30:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sayingitfirst.com/2013/05/21/ux-research-results-exploring-ten-fundamental-aspects-of-m-commerce-usability/</guid>
		<description><![CDATA[<p>Everyone is talking about mobile. Some e-commerce websites are venturing into it. Mobile commerce (also known as &#8220;m-commerce&#8221;) has immense potential, exhibiting a 86% growth rate and hitting $25 billion in 2012 (set to reach $86 billion by 2016, according to eMarketer). It’s also a whole new [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Everyone is talking about mobile. Some e-commerce websites are venturing into it. Mobile commerce (also known as &#8220;m-commerce&#8221;) has immense potential, exhibiting a 86% growth rate and hitting $25 billion in 2012 (set to reach $86 billion by 2016, according to eMarketer).</p>
<p>It’s also a whole new platform, with new interaction methods and usage contexts that introduce a host of limitations and pitfalls to watch out for when designing and running an m-commerce website. With few best practices yet established, m-commerce is, to a large degree, unchartered territory when it comes to actual implementation.</p>
<p>This is why we decided to invest the better part of a year at Baymard Institute to conduct <strong>a large-scale usability study focusing specifically on m-commerce</strong> (following the “think aloud” protocol). We set out to explore the entire mobile shopping experience, including users’ conceptual understanding of m-commerce websites and how users interact with form fields, category navigation, search, product pages, the checkout process, etc.</p>
<p>The 18 m-commerce websites that we tested were: 1-800-Flowers, Amazon, Avis, Best Buy, Buy.com, Coastal.com, Enterprise.com, Fandango, Foot Locker, FTD, GAP, H&amp;M, Macy’s, REI, Southwest Airlines, Toys “R” Us, United Airlines, Walmart.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/into-mcommerce-usability_mini.jpeg" rel="wp-prettyPhoto[g2801]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/into-mcommerce-usability-opt_mini.jpg" alt="into-mcommerce-usability-opt_mini" width="500" height="282" class="alignnone size-full wp-image-117951" /></a></p>
<p>Despite testing the mobile websites of some of the largest e-commerce players in the world, our subjects <strong>encountered 1,000+ usability-related issues during the testing sessions</strong>. These usability issues have been analyzed and distilled into 147 design recommendations in a report titled “M-Commerce Usability.” In this article, we’ll share 10 recommendations from that report with you.</p>
<p>While following some of the guidelines would improve the usability of desktop websites, too, there is a major difference in the severity of breaking them. Whereas these guidelines are largely “nice improvements” on desktop, they are among the “vital basics” to get right on an m-commerce website. Thus, most of these usability guidelines are not exclusive to mobile, but they are much more critical to get right in the m-commerce context.</p>
<h3>1. Make The Home Page Easily Scannable</h3>
<p><a class="colorbox" name="1"></a><strong>Issue</strong>: <em>When users are not able to get an overview of the entire website by quickly scanning the home page, they will feel less confident with the website and often end up choosing the wrong path for their task.</em></p>
<p>70% of the test subjects scrolled up and down the entire page when first landing on a home page or a category list, in what most described as “getting an overview of my options.” These subjects <strong>wanted to see their options</strong> before deciding which to choose. Even when they knew how they wanted to find a given product, some subjects still chose to get an overview of the home page, presumably to get a better feel for the website on which they were going to shop. In some instances, when a subject found the category they were looking for, they continued to look through one or two other categories to get a better sense of the other options on the website.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-1_mini.png" rel="wp-prettyPhoto[g2801]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-1-opt_mini.png" alt="scannable-homepage-1-opt_mini" width="500" height="244" class="alignnone size-full wp-image-117926" /></a><br />
<em>Most subjects scanned the whole home page to get an overview of their options and to better understand what they could do on a particular website. Here, one subject continued to explore the home page options, even after having found his desired navigation path of “category” &#8594; “men.”</em></p>
<p>Therefore, making the home page easily scannable is important because this will be the first point of contact for a very large portion of your mobile visitors. This initial impression will have a significant impact on the types of products they expect your website to carry and, just as importantly, not carry. While “easily scannable” might sound a bit vague, three instances of “what not to do” became clear during testing.</p>
<h4>Having Too Many Visual Elements</h4>
<p>Avoid the confusing eye path that results from placing multiple highly graphical elements that demand attention high up on the home page. This was the case on Macy’s, where approximately 60% of the first viewable part of the home page is plastered with highly graphical content, with at least eight different elements calling for attention:</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-2_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-2-opt_mini.png" width="735" height="527" /></a><br />
<em>Multiple subjects were overwhelmed by Macy’s home page because it was very difficult to scan. As one subject expressed it, “I’m desperately trying to get an overview here. There’s so much crap being shoved at my face.” The right-hand image shows typical eye fixations.</em></p>
<p>This is not to say you cannot have graphics &mdash; but limit their size if they are above the fold on the home page, and design them to have a clear eye path.</p>
<h4>Not Showing the First Layer of Categories</h4>
<p>Another mistake is unnecessarily hiding the category navigation. Some websites have a single “browse categories” option, which takes the user to a new page with the first layer of category choices. If you have a website where the user cannot browse with any method other than category and search (i.e. not by “brand” or “store” directly from the home page) and the number of main category options is of a somewhat manageable size, then this is an oversimplification. Instead, show the first level of category options directly on the home page so that users can start scanning the list immediately upon landing on the home page.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-3_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-3-opt_mini.png" width="735" height="528" /></a><br />
<em>On the left: On Coastal.com, all the category options are displayed directly on the home page, which not only allows direct access, but gives users an accurate idea of the types of products they can expect to find on the website. For stores with multiple ways of browsing the catalog (e.g. by both “category” and “brand”), displaying the category options directly on the home page might not be feasible. On the right: For stores with a very high number of first-layer categories (typically mass merchants), a curated list with the most popular options might prove to be a better option, because displaying all categories would impede scannability.</em></p>
<p>Moreover, <strong>do not present the categories in a drop-down dialog</strong>. Multiple subjects explicitly stated that they had to scroll through the entire list to choose the category in which they expected to find a particular product. The problem with a drop-down quickly became clear, then: because it takes up only 50% of the available screen, getting an overview of the available categories became needlessly difficult (see Best Buy below).</p>
<p>Because the gesture area is also only half the size, the subjects also had a much harder time accurately controlling the scrolling speed. Lastly, the drop-down interface element was confused with a filter selection by some subjects and not recognized as the main website category navigation.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-4_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-4-opt_mini.png" width="733" height="525" /></a><br />
<em>Do not follow the example of Best Buy, which does not have a category option in the main body of its home page content. Instead, a “three bars” icon takes the place of a category option in the page’s header. This not only requires all users to understand the meaning of the three bars icon, but also makes it impossible to get an overview of the store by scanning the home page. And, of course, using a drop-down to actually select a category is not ideal either.</em></p>
<h4>Perfect Fold Alignment</h4>
<p>Finally, do not design your website to have perfect alignment or white space exactly at the fold. This happens on GAP’s website, where it is easy to doubt whether the home page contains more than a search field and a few graphics (i.e. no category navigation), because these home page elements align precisely with the viewport fold (on an iPhone at least).</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-5-240_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/scannable-homepage-5-240_mini.png" width="240" height="357" /></a><br />
<em>One subject, a bit surprised, asked, “This is it? This is the entire page?” believing this was GAP’s entire home page. When elements are spaced with pixel-perfection alignment around the viewport fold, users are more likely to misinterpret the top part as being the entire home page (in this case, missing out on the category navigation below).</em></p>
<p>To indicate more content, simply align the elements so that some are only partly viewable within the viewport on the most popular mobile devices.</p>
<p>Therefore, <strong>when designing a scannable home page</strong>:</p>
<ul>
<li>Put very few (if any) very visually stimulating graphics above the fold on the home page, and make sure the ones that are there have a clear eye path so that the user can quickly get an overview.</li>
<li>Try to ensure that the fold (on the most popular mobile devices) partially cuts off some content, to indicate more options below.</li>
<li>Display navigation options on the home page as a list (not in a drop-down).</li>
<li>If you have only one category navigation type (such as “product type” or “department,” and not also “brand” or “store”), then show the first level of the category hierarchy directly on the home page either in full or, if there are too many options, as a curated and collapsed list of the most popular choices.</li>
<li>Only display highlighted or featured products below the search field and the category navigation options.</li>
</ul>
<h3>2. Be Sensitive To People’s Fear Of Losing Their Data</h3>
<p><a class="colorbox" name="2"></a><strong>Issue</strong>: <em>Typing on mobile devices is clumsy, so users are constantly worried about losing their inputted data.</em></p>
<p>“Argh, no! Do I have to start over? Now I’m getting angry. Doesn’t it have my shit already?,” a subject moaned, referring to his previously typed address and credit-card information, which suddenly disappeared. “Now I’m leaving. This isn’t a serious store.”</p>
<p>Data persistence is not something to take lightly. Your users certainly don’t. Of course, the recommendation is simple: always persist the user’s data, which requires investing in solid technology, testing thoroughly, and storing inputted data temporarily on the user’s device (most mobile browsers support localStorage). In practice, of course, this is easier said than done, and numerous websites have failed miserably, to the great frustration of users.</p>
<p>Because users have already suffered through many horrible experiences of lost data, they often exhibit extreme caution around certain types of elements and avoid certain interactions when possible. The following screenshot shows the types of actions and elements that particularly worry users. Either avoid these elements altogether or soothe users’ fear with the smart use of microcopy, icons and animations.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-1_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116928" alt="fearing-data-loss-1" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-1-opt_mini.png" width="591" height="424" /></a></p>
<p>During checkout, the subjects consistently <strong>opened links in a new window</strong> because they were afraid their data would be lost if they opened links in the current window.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-2-240_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116929" alt="fearing-data-loss-2" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-2-240_mini.png" width="240" height="360" /></a></p>
<p>Subjects were almost always disturbed by <strong>unexpected page reloading</strong> (i.e. any page reloading that is not a direct consequence of clicking a link or button). In the image above, a subject selected a “Residence type,” which reloaded the page, causing the subject to immediately scroll up and down to ensure that none of their data was lost. We observed this type of unease with page reloading among subjects time and again throughout testing.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-3-240_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116930" alt="fearing-data-loss-3" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-3-240_mini.png" width="240" height="400" /></a></p>
<p>Many subjects were <strong>scared by system dialogs</strong> and often assumed that they would lose data by clicking “OK,” even though few of them actually read the message. The subject in the test shown above wanted to go backwards in the process to pick another ticket but was met with this dialog, which he cancelled &mdash; assuming that he would have to re-enter everything if he wanted to select another ticket.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-4-240_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116931" alt="fearing-data-loss-4" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-4-240_mini.png" width="240" height="360" /></a></p>
<p>A good number of the subjects believed that <strong>leaving the checkout process</strong> would destroy their data and so refused to go back and check for other products. The subject in the test above contemplated going back to find another bouquet of flowers, but decided against it because he did not want to re-enter all of his data. This happened despite many of the test websites actually remembering the users’ details, even if the users left the checkout process midway &mdash; the keyword, of course, being “many” websites, rather than “all.” Given this inconsistency, users have no way to know beforehand, so their only safe choice is to just assume the worst on all websites.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-5-240_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116932" alt="fearing-data-loss-5" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-5-240_mini.png" width="240" height="399" /></a></p>
<p>During checkout, the <strong>“back” button</strong> was generally perceived by the subjects to be dangerous, and subjects used it during checkout only when they felt they were out of all other options. In many cases, this perception was justified: numerous websites did indeed fail to persist the user’s data when they used the “back” button. However, equally important is that <strong>process step links</strong> and other “back” links and buttons that were part of the website’s UI were generally considered by the subjects to be “safe.”</p>
<p>Therefore, including either process steps or “back” links in the checkout is crucial so that users do not feel they have to gamble by using the browser’s “back” button and can instead use your website’s dedicated UI element(s) for the purpose. In the test shown above, the subject hunted up and down to find a link or button that would take him back to the previous step, but was unable to find one. Finally, he tried the browser’s “back” button.</p>
<p>These were the most significant insights relating to users’ fear of lost input. In general, the subjects were vastly more pessimistic about websites on which they had once lost data. For example, clicking the keyboard’s “next” button cleared one subject’s input on a website, which made her consistently avoid that button throughout the rest of the checkout. As she said, “Here, I don’t dare click ‘Next’ anymore because I don’t want to start over again.” Not only that, the subject also became overly cautious when interacting with any fields on the website, fearing that even the slightest hiccup would destroy her data.</p>
<p>A single bad experience set low expectations for the rest of the website. So, <strong>how do we avoid bad experiences</strong> in cases where we are unable to persist the user’s data due to technical limitations? In these instances, clearly warn the user that they are about to do something destructive.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-6-240_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/fearing-data-loss-6-240_mini.png" width="240" height="400" /></a><br />
<em>As the subject left the incomplete checkout, the website warned her that her data would be lost. “This is very good,” the subject remarked, “because if I did something wrong by accident, I would be extremely annoyed if they deleted everything. So, it’s good that they warn me like this if the data would otherwise be lost.”</em></p>
<p>Persisting data is always the ideal, of course, but <strong>warning the user and giving them the option to back out</strong> before destroying their data is a good secondary solution, and it sure beats simply destroying the user’s data without warning; moreover, it gives the user a chance to cancel the destructive action. This type of fallback solution could be especially useful for less common navigation paths, where persistent data is too time-consuming to implement, considering how few users it affects.</p>
<p>This could also entail something like persisting the user’s cart or checkout data when switching between the full website and mobile website. In these instances, it is acceptable to simply warn the user that they will lose their data if they proceed, and then give them the option to proceed (and lose their data) or stay (and keep their data).</p>
<p>Data persistence is clearly a complex matter, especially when one considers the user’s expectations towards data persistence. We observed subjects creating accounts merely to ensure persistence, and witnessed data lost due to accidental clicks, and we watched with as much surprise as the subject when an entire form was remembered perfectly by autofill, turning potentially horrible data loss into a small moment of joy. Data persistence is tricky, but getting it right is crucial.</p>
<h3>3. Add A Primary Button At The Bottom Of Product Pages</h3>
<p><a class="colorbox" name="3"></a><strong>Issue</strong>: <em>Users are likely to misinterpret cart buttons in the page’s footer if there is no “Add to Cart” button at the bottom of every product page.</em></p>
<p>A wide range of the tested websites had multiple identical primary call-to-action (CTA) buttons on product pages (i.e. two “Add to Cart” buttons), one at either the top or middle of the product page and a second one at the bottom.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/3-1-two-primary_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/3-1-two-primary-opt_mini.png" /></a><br />
<em>On Best Buy, one subject read this product’s entire specification sheet and was in the mindset of “Yes, this is the product I want to purchase.” He saw the website’s shopping-cart icon at the bottom of the page (second image above) and clicked it, believing it was an “Add to Cart” button. Logically, he assumed the product would be added to his cart and so continued browsing for more products, only to notice much later in the shopping session that the website had “deleted” his cart’s contents (the TV was never added in the first place).</em></p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/3-2-amazon_mini.jpg" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/3-2-amazon-opt_mini.jpg" /></a><br />
<em>The subject here on Amazon thought the shopping-cart icon was the button for adding the displayed product to her cart.</em></p>
<p>It turned out that on the websites with only one CTA button on a product page, subjects often ran into severe problems even with adding a product to their cart &mdash; which, in some cases, ultimately led to abandonments. Cart icons in the page’s header or footer were often mistaken for an “Add to Cart” button.</p>
<p>Both Best Buy and Amazon failed to make the primary buttons immediately obvious and generally available, which led subjects to start interpreting various icons on the page, including the cart icon, as shown in the two examples above. Subjects often scrolled to the bottom of a product’s page when looking for the “Add to Cart” button (a behavior confirmed in <a class="colorbox" href="http://www.sirvaluse.com/en/case-studies/single/the-500-million-button-roi-from-user-experience-research.html">another study</a>). </p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/3-3-middle-of-the-page_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/3-3-middle-of-the-page-opt_mini.png" width="593" height="425" /></a><br />
<em>This subject started looking for the “Add to cart” button by scrolling to the bottom of the page, then scrolling back to the top of the page, thinking she might have missed it, and finally scrolling down again patiently, until finding the “Add to bag” button in the middle of the page.</em></p>
<p>To accommodate this behavior and reduce misinterpretation of any cart icons, add a second “Add to Cart” button to the bottom of all of your product pages. A second button there will also support a more natural interaction flow, as the user first reads the product description, then the specification sheet, then the reviews and so on, and then, at the end of the page, decides whether to buy or not. Only if the product page is extremely short (one to two mobile viewports tall) would a single button suffice.</p>
<h3>4. Be Very Careful With Animated Carousels</h3>
<p><a class="colorbox" name="4"></a><strong>Issue</strong>: <em>Users fail to discover vital features that appear only in a carousel, and they have a hard time interacting with carousels themselves.</em></p>
<p>Animated carousels caused interaction problems for half of the test’s subjects. The carousels simply changed too quickly for some subjects to both read and select an option.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/animating-carousels-1_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/animating-carousels-500.png" width="500" height="243" /></a><br />
<em>A subject was about to click the “Mega Sale” slide (left image), but the carousel animated to the next slide at the very same moment, forcing the subject to wait for that slide to reappear.</em></p>
<p>In multiple instances, a subject found a carousel slide interesting and attempted to tap it. However, the carousel changed to the next slide at the very same moment, causing the wrong slide to load. Sometimes the subjects noted this, but sometimes they did not and <strong>left the landing page immediately</strong> because they did not find it relevant to what they were looking for.</p>
<p>Interestingly, the “Prev” and “Next” buttons in the Toys “R” Us carousel were not used by a single subject during testing, despite these issues:</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/animating-carousels-2_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/animating-carousels-2-opt_mini.png" width="895" height="423" /></a><br />
<em>The carousel changed the very second this subject tapped it, registering a click for “Bike Blast” instead of the “Mega Sale” she wanted. The subject never noticed and assumed that “Bike Blast” was the sale.</em></p>
<p>Both of these interaction issues were also encountered (and still exist) in the early versions of carousels on full websites, but as carousels have become increasingly popular on e-commerce home pages over the last several of years, they have evolved, so most now stop animating when the user hovers over an option with the mouse.</p>
<p>And most also have an indicator that enables the user to see how many slides a carousel has and, just as importantly, to jump to a particular slide (such as back to the one that piqued their interest but changed too quickly). These interaction issues cannot be easily solved on mobile because there is no hover state and much less screen real estate.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/animating-carousels-3_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/animating-carousels-3-opt_mini.png" width="589" height="423" /></a><br />
<em>On Toys “R” Us’ home page, the subjects pored over the menus to find a “Gift Guide” wizard but could not find one (image on left). It turns out there is a wizard but is accessible only via a particular slide in the rotating carousel at the top of the page.</em></p>
<p>Perhaps an even more critical usability issue is that <strong>most test subjects simply ignored the carousel</strong> after quickly glancing at the first slide. Some waited and looked at two to three slides before focusing elsewhere. This proved critical on some websites, such as Toys “R” Us’, because the majority of subjects were desperately looking in the traditional navigation for certain features (such as the “Gift Finder”) that were accessible only via the carousel. Some subjects spoke at length about how the website really should have some sort of “gift guide,” ultimately abandoning the website because they could not find one.</p>
<p>Users ignore animated carousels for multiple reasons. First, a carousel’s content might look like advertising, depending on how it is styled, greatly increasing the chance of banner blindness (a subgroup of subjects tended to focus much more closely on text-based navigation than on graphics-based navigation). Secondly, when using a large laptop or desktop monitor to browse a full website, the user is able to check out other options on the home page while still glancing at the carousel slides as they change.</p>
<p>On mobile devices, however, the screen is so small that a carousel would take up a significant portion of the viewport, making it practically impossible to scan any navigation or category options while monitoring the carousel slides (one of them will always be partly or completely out of sight). Therefore, if users are to see all options in a carousel on a mobile device, they will have to watch the carousel for its full duration (like a video clip).</p>
<p>Regardless of the cause(s), what is really important is that the vast majority of subjects ignored the animated carousels completely and, on the home page, focused instead on the category navigation and search features. For this reason, be very cautious about relying on carousels for important content, and never have it as the only path to a particular feature.</p>
<h3>5. Be Careful Of Showing Product Information Or Images On Separate Subpages</h3>
<p><a class="colorbox" name="5"></a><strong>Issue</strong>: <em>Users have incredible difficulty understanding the scope of product subpages.</em></p>
<p>On a mobile device, understanding the scope of the current page is vastly more difficult for users, due to the very small display. Mobile pages often lack the subtle yet vital page-scope cues that are present on full-size pages, such as a full set of breadcrumbs, an overview of the current page, and full URL paths viewable throughout the browsing session.</p>
<p>This lack of scope on mobile makes having any kind of substeps or subpages that refer to a main page very risky, because the user would have to fully understand the scope of the current page in order to appreciate the difference between the subpage and main page.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/no-product-sub-pages-1_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116949" alt="no-product-sub-pages-1" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/no-product-sub-pages-1-opt_mini.png" width="744" height="353" /></a><br />
<em>When users want to see larger versions of images of an Amazon product (left), they are taken to a subpage (middle). Our test subjects clearly noticed that they were still within a product’s particular scope (because of the large product image), but they did not understand where the rest of the product page went (right).</em></p>
<p>This became immediately apparent when testing websites that offer a “larger view” option of their images, taking users to a separate product subpage, as seen on Amazon above. Because of the apparent <strong>lack of access to vital content</strong>, such as “Product Description,” “Product Specs” and “User Reviews” (which are available only on the main product page), the subjects who did not notice this change in scope assumed that such content simply did not exist for the given product and continued looking for other products with such information, discarding perfectly matching ones.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/no-product-sub-pages-2_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/no-product-sub-pages-2-opt_mini.png" width="742" height="350" /></a><br />
<em>Amazon also uses subpages to show full specification lists, causing the exact same issue, except that this time subjects were unable to locate something as vital as the “Add to Cart” button.</em></p>
<p>On a mobile device, and especially on subpages, understanding the current scope is simply much more difficult. Instead, display your “larger views,” image galleries, detailed specification sheets and the like (i.e. all relevant content) directly on the product’s main page. You could also use progressive disclosure by collapsing each content section by default, to avoid overly long pages; but then be sure to have clear trigger indicators. A strategy such as this minimizes the need to display additional information and images on subpages and the resulting scope issues.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/no-product-sub-pages-31_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116952" alt="no-product-sub-pages-3" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/no-product-sub-pages-31-opt_mini.png" width="592" height="467" /></a></p>
<p>Especially with image galleries, you also have the option of an overlay, as shown above on Foot Locker. With an overlay, the user can still see the product page beneath and have a simple way to get back to it.</p>
<h3>6. Be Thoughtful In The Design And Sequence Of Your Three Account-Selection Options</h3>
<p><a class="colorbox" name="6"></a><strong>Issue</strong>: <em>Users had difficulty figuring out how to initiate “Guest Checkout” and understanding field relationships, selection options and buttons in the account-selection steps.</em></p>
<p>On mobile, the user’s selection of a checkout type &mdash; “create an account,” “sign into account” or “guest checkout” &mdash; will be a separate step (unlike on full websites, where it could be integrated into the first step). More than half of the test subjects (60%) had serious trouble identifying, seeing and selecting the guest-checkout option at the account selection step during checkout.</p>
<p>Multiple times, the misunderstandings led subjects to believe that registration was required, despite it being optional, and carried all of the downsides of forced account registration (including abandonments). Therefore, the design of your account-selection screen for mobile is just as important as having a guest-checkout option at all.</p>
<p>Several different design schemes led to these serious misunderstandings, as the following screenshots illustrate.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/account-selection-1_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116961" alt="account-selection-1" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/account-selection-1-opt_mini.png" width="744" height="351" /></a></p>
<p>On Macy’s, subjects saw the account-selection step (above left) after selecting the cart. Some clicked “Express Checkout,” believing they would have a fast checkout (as a guest), only to get form-field validation errors for the two fields because “Express Checkout” requires a Macy’s account (above center). Some only discovered the “Checkout as a Guest” option further down the page (right), after getting this validation error, while others never noticed the guest-checkout option and registered for an account, believing it was required.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/account-selection-2_mini.jpg" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116962" alt="account-selection-2" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/account-selection-2-opt_mini.jpg" width="1410" height="1024" /></a></p>
<p>On multiple websites (Amazon, Toys “R” Us, REI, GAP, Best Buy), subjects started to interact with the fields, such as by providing their email address (above). On REI, every single subject interacted with the email field before looking for, or figuring out that there was, a guest-checkout option.</p>
<p>In most cases, the subjects spotted the error before submitting the form (typically upon reaching the password field and deducing that they were on an account sign-in or creation form). In such cases, not even detailed analysis of your Web statistics and error logs would reveal these issues because no validation error ever occurs.</p>
<p>On Buy.com, things are even worse. The vast majority of subjects simply could not figure out the relationship between the four checkout methods (sign-in, create account, guest checkout and PayPal checkout), the two form fields, the three radio buttons and the two primary buttons. All tapped the “Checkout as a Guest” option after spending some time trying to understand the page.</p>
<p>Then, the naming of the “Sign in Using Our Secure Server” button utterly confused subjects because they were trying to check out as a guest (and, therefore, actively opted not to sign into anything). This particular naming has been used by Amazon for years and has even been highlighted as a best practice to indicate a secure checkout, so how could it lead to such major misinterpretation?</p>
<p>The reason is that <strong>it indicates the user will sign in</strong>, which makes sense only if they have an account or will create one, but not if they are checking out as a guest. (Amazon does not offer a guest-checkout option, so the wording makes sense in that context.) Given the button’s name, one subject assumed that the only other prominent button on the page, “Checkout with PayPal,” must be the one to pick to initiate the “Checkout as a guest” selection.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/account-selection-4_mini.jpg" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116964" alt="account-selection-4" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/account-selection-4-opt_mini.jpg" width="1410" height="1024" /></a></p>
<p>Others finally clicked the oddly named button &mdash; but nothing seemed to happen. It turns out that inline text reading “Required” appeared next to the “Enter your eMail Address” label (seen above), but no one noticed it initially. The subjects typically waited for a little while just in case the website did not load, and then clicked again, at which point most realized that they needed to fill in more data. By this point, some, especially those who did not notice the validation error, concluded that they were not allowed to check out as a guest and proceeded to create an account instead.</p>
<p>One explained his experience thusly, “Normally I would think ‘guest checkout’ would let me through without having to create an account. But here I have to fill in my mail, so I have no idea what that option is for, then. To be on the safe side, I’ll then pick the ‘No, I’m a new customer,’ because if I’m forced to create an account, I might as well just do it properly anyways.”</p>
<p>Making the account-selection process clear is as important as offering a guest checkout option. Following two main design principles will help to prevent these serious problems:</p>
<ul>
<li><strong>Always place the guest-checkout option at the top</strong>, with its own button to proceed, so that the user does not need to fill in an email field in this step. (If needed, you can look up whether the user has an account in the next step, when you ask for their email address, to ensure that they have not selected the guest checkout just because it is the first option in the list.)</li>
<li><strong>Collapse all of the fields and descriptions for all three options</strong> &mdash; “guest checkout,” “sign in” and “create an account” &mdash; bringing each option down to a single line, making it possible to get an overview in the viewport without having to scroll or expand. Dynamically expand them when tapped, revealing the fields and descriptions. This will also make clear which fields are related (and required) for each option.</li>
</ul>
<p>Below, we have created a simple mockup to illustrate how account selection can be clarified by combining these two principles:</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/account-selection-5_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/account-selection-5-opt_mini.png" width="590" height="426" /></a><br />
<em>All three account-selection options are displayed in collapsed state (with guest checkout at the top), so that the user can instantly see all available options. The options can either expand inline (image on right) or redirect to the next step in the checkout process. Progressive disclosure also makes the relationship between an option and its fields much clearer.</em></p>
<h3>7. Disable Autocorrection When The Dictionary Is Weak</h3>
<p><a class="colorbox" name="7"></a><strong>Issue</strong>: <em>Poor autocorrection is frustrating when users notice it, and can be detrimental when they do not.</em></p>
<p>Autocorrection usually works poorly for abbreviations, street names, email addresses and similar words that are not in the dictionary. This caused significant problems throughout testing and resulted in a great deal of erroneous data being submitted as subjects completed their purchases.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/disable-auto-correct1_mini.png" rel="wp-prettyPhoto[g2801]"><img class="size-full" title="" alt="" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/disable-auto-correct-500.png" /></a><br />
<em>When this subject typed in his street name, “westheimer,” the phone incorrectly autocorrected this to “weathermen” (left). However, the subject did not notice this, submitted the form and received a validation error (right).</em></p>
<p>One of the major issues of autocorrection was that the subjects often failed to notice the correction (because they were often focused on what they were typing, instead of what they had typed). This is fine if the “correction” is correct, but it can be detrimental if it is wrong. For example, in multiple instances, a valid address was autocorrected to an invalid one and submitted because the subject failed to notice it.</p>
<p>On websites without address validators, this resulted in wrong addresses being submitted, unless the subject was particularly attentive on the order review page. After all, the user’s address will often be replaced with something that looks very similar, although incorrect. In addition to the “weathermen” example, official address abbreviations, such as “Rd,” were autocorrected, to “Ed.”</p>
<p>That being said, <strong>autocorrection did prove very helpful when it worked</strong>. So, don’t disable it in all fields. Use it discreetly, and disable it on fields for which autocorrection dictionaries are weak. This typically includes names of various sorts (street, city, user) and other identifiers (such as email address).</p>
<p>You can disable autocorrection by adding an <code>autocorrect</code> attribute to the input tag and setting it to <code>off</code>, like so:</p>
<pre class="language-html">
<code class="language-html">
&lt;input type="text" autocorrect="off" /&gt;
</code></pre>
<h3>8. Make Fields Long Enough To Fully Display Common Data (And Put Labels Above Fields)</h3>
<p><a class="colorbox" name="8"></a><strong>Issue</strong>: <em>Users cannot easily spot errors, let alone correct them, when the field is too short to display the entire inputted data.</em></p>
<p>Due to the small size of mobile screens, form fields often get so short that users cannot self-validate before submitting their data, and users have a very difficult time correcting any validation errors because they cannot see the inputted data in its entirety.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/field-labels-above-1_mini.jpg" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116971" alt="field-labels-above-1" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/field-labels-above-1-opt_mini.jpg" width="1410" height="1024" /></a><br />
<em>“I can’t see what I’ve typed. Argh. Then I’ll delete everything and retype it.” On REI, a validation error for an email field that was too short to be displayed in its entirety made it impossible for the subject to see what the actual error was. In trying to pan the inputted text, the subject accidentally enabled both the iOS text-selection tool and the text-replacement tool.</em></p>
<p>Form fields that are too short presented problems for many subjects who tried to confirm the validity of their data before submitting it. They often made complaints such as, “I can’t see if the emails are the same when the email field isn’t long enough.” Some examples are seen below.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/field-labels-above-2_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116972" alt="field-labels-above-2" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/field-labels-above-2-opt_mini.png" width="896" height="424" /></a><br />
<em>On the left: Amazon’s email field is too short, despite the abundance of white space. In the middle: United’s credit-card field shows only 15 characters, even though most card numbers are 16 digits. On the right: Macy’s email fields are too short for users to verify whether the two addresses they’ve inputted match.</em></p>
<p>Given how easy it is to make a typing mistake on a mobile device, <strong>fields that are not long enough</strong> to allow users to validate their data before submission are very harmful to the typing experience. Even worse, they make correcting any validation errors unnecessarily difficult.</p>
<p>Note that in the case of Amazon and the earlier example from REI, the white space is sufficient to make the field much longer, while the other two examples have no additional space to make the fields longer because the labels are all left-aligned. For this very reason, labels should be placed above form fields to allow full use of the space and to display all of the user’s data (at a decent font size). Displaying labels to the left of the fields would be acceptable only when the device is in landscape mode (as explained in detail in “<a class="colorbox" href="http://baymard.com/blog/mobile-form-usability-label-position">Mobile Form Usability: Place Labels Above the Field</a>”).</p>
<p>An adequate width for email and address lines is the full screen. Then, adjust the font size of the fields to allow for the full display of reasonably long data, such as <code>first.lastname@my-company.com</code>. (The character-length distribution of our own newsletter list shows that 96% of email addresses are 30 characters or fewer.)</p>
<h3>9. Enable Users To Verify The Inputted Day And Date</h3>
<p><a class="colorbox" name="9"></a><strong>Issue</strong>: <em>Using text fields for dates requires unnecessary mental processing of the user and can cause serious selection errors.</em></p>
<p>During testing, websites that had only a simple text field or drop-down dialog for date selection presented problems for 80% of the subjects.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/date-inputs-1_mini.jpg" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116975" alt="date-inputs-1" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/date-inputs-1-opt_mini.jpg" width="1410" height="1024" /></a><br />
<em>This subject was among the 80% who were unsure which date “this Friday” was. So, she decided to count the days on her hand, wanting to make sure she picked the right one.</em></p>
<p>This happened with both Southwest (which uses drop-downs for the month and day) and United (which shows a text field for writing <code>MM/DD/YYYY</code>). On both of these websites, the following scenarios occurred:</p>
<ul>
<li>A handful of subjects had to count the days on their hand (as explained above).</li>
<li>
<p>Half of the subjects went off-site and opened the phone’s native calendar app to double-check the date for their weekend trip (to confirm “this Friday”). In the instance seen above, this calendar verification goes completely awry because the subject checked the day of June 15th, instead of July 15th, and ended up purchasing a flight ticket for his “weekend” trip that left on a Sunday and returned on a Tuesday.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/date-inputs-2_mini.jpg" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116976" alt="date-inputs-2" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/date-inputs-2-opt_mini.jpg" width="1410" height="1024" /></a></p>
</li>
<li>
<p>Lastly, a few struggled with typing and using the text-selection tool to enter the correct date on a website that uses a text field for date selection.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/date-inputs-3_mini.jpg" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116977" alt="date-inputs-3" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/date-inputs-3-opt_mini.jpg" width="1410" height="1024" /></a></p>
</li>
</ul>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/date-inputs-4_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116978" alt="date-inputs-4" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/date-inputs-4-opt_mini.png" width="895" height="468" /></a></p>
<p>By contrast, on the three test websites that provided a graphical interface for inputting dates in the form of a calendar view (namely, Enterprise, Avis and 1-800-Flowers, seen above), not a single one of these issues arose, and the subjects generally liked being able to verify the day and date they were selecting. This could potentially save customers from incorrectly counting or “verifying” the wrong weekday (as mentioned earlier) and thus booking the wrong date.</p>
<p>While this is an annoyance on desktop as well (since the user would be no better equipped to spot the errors there), the severity and impact on the user’s experience is much greater in mobile when it comes to correcting the erroneous data, because <strong>panning and editing truncated data on a three- or four-inch touchscreen is much more cumbersome than using a mouse or keyboard arrows on a desktop</strong>. Furthermore, ordering tickets on the wrong day is much less likely on the desktop because the booking form and a separate calendar application can be displayed next to each other &mdash; whereas on mobile, only one can be viewed at a time.</p>
<p>Therefore, always provide an interface that enables users to verify the day of their selected date. One option is to display a calendar interface in which the user explicitly selects the date they want. That would simplify the actual selection interface and, more importantly, gives users a chance to verify the day. If you already use a drop-down for date inputs and do not want to replace it, you could instead append the day after each date option (for example, “March 15 &ndash; Monday”); although that would require the month to be included in each drop-down day value or, in case a separate drop-down is used to select the month, you would need to dynamically update the day names depending on the currently selected month.</p>
<h3>10. Make The Hit Area For Each List Item Distinct</h3>
<p><a class="colorbox" name="10"></a><strong>Issue</strong>: <em>With some lists, users simply have no idea where to tap in order to select an item.</em></p>
<p>Can the entire “element” be tapped? Or only the product title? And what about the thumbnail? During testing, multiple issues arose as subjects were unsure of where to tap in order to select an item in a list. This was by far the worst on websites where list items were above the recommended half-screen height. In fact, one subject got completely stuck and was unable to complete her purchase.</p>
<p>The problem was by no means limited to websites with list items that were too tall; it was just worse on those websites. The issue also extended to websites whose list items were normal in size but whose hit areas were unclear, which severely limited the subjects and even resulted in abandonments.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/1-southwest_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116975" alt="date-inputs-1" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/1-southwest-opt_mini.png" /></a><br />
<em>It simply was not clear to subjects what can and cannot be clicked on this page. Note the very inconsistent link styles. Orange is sometimes used for the header, other times for a list item. Separators are sometimes used to set off list items, other times to set off elements of text. Some text is one shade of blue, which sometimes indicates a link, while other links are styled in a darker blue and underlined. Confused yet? The subjects were, too.</em></p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/2-united_mini.jpg" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116975" alt="date-inputs-1" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/2-united-opt_mini.jpg" /></a><br />
<em>Note how the subject was trying to click the “Lowest Fare” label, believing this was the button to choose the displayed flight. Besides the primary button being unclear, the list item is also very long. Combined, these two design choices are a surefire way to leave some users in doubt on how to even proceed.</em></p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/3-united-and-fandango_mini.png" rel="wp-prettyPhoto[g2801]"><img class="alignnone size-full wp-image-116975" alt="date-inputs-1" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/3-united-and-fandango-opt_mini.png" /></a><br />
<em>On the left: This subject did not know what to click in order to proceed on United’s website. Presumably, this was caused by the single result. With no options to compare and choose between, it was not clear to the subject what to select. On the right: Many subjects did not pick up on the ticket icon and its meaning on Fandango’s website. Instead, they assumed that the movie was playing only in theaters where a “Buy” button was shown (which was not the case).</em></p>
<p>The images above show only some of the many instances where it was unclear to subjects what elements are clickable, what the differences are between the different hit areas and, most importantly, where to click in order to select an item in a list. The websites with the far fewest problems with hit areas embraced multiple of the following recommendations:</p>
<ul>
<li>Make the entire element area clickable. In particular, the thumbnail, product header and price should be clickable and should lead to the product page.</li>
<li>Style the title as a link (using your primary style for text links).</li>
<li>Indicate the virtual space with an arrow or similar visual cue, showing that the entire list item will move the user to the next step in the process.</li>
<li>Consider separate “Buy Now” or select buttons for very long list items &mdash; i.e. when a list item could be easily mistaken as pieces of information, rather than a collective entity to be clicked.</li>
<li>Avoid multiple hit areas within the same visual element &mdash; in particular, links or buttons within a list item that lead to different pages.</li>
</ul>
<h3>Designing M-Commerce Websites</h3>
<p>Aside from their practical use, these 10 recommendations have hopefully given you a glimpse of just how complex designing an m-commerce website really can be. It’s not simply a matter scaling and adding media queries; it’s an entirely new platform, and the balancing act is particularly difficult to get right due to the complex tasks involved, such as product finding and product comparison and multi-step processes such as checking out. In many ways, <strong>designing and optimizing an m-commerce website is much more difficult</strong> and often requires more “intelligent” website features than a traditional desktop e-commerce website. It comes as no surprise that IBM reports average m-commerce conversion rates that are roughly half of its desktop e-commerce conversion rates.</p>
<p>In general, the more complex a mobile website’s features, the more likely the experience should be significantly different from the desktop experience. The greater the difference between the two, the stronger the argument for having a standalone mobile website. Of course, maintaining two versions of the same website comes with many issues, especially with maintenance (of content, code and design). <strong>A responsive design is a better solution in some cases</strong>, but it depends very much on the size and complexity of the website, as well as on your organization’s strengths and weaknesses. It’s a nuanced issue, with many gray areas and with good arguments both for and against having a standalone mobile website.</p>
<p>If you can achieve this by designing for mobile first, then a responsive design could be truly great &mdash; not just in its maintainability, but also its user experience. Be clear, however, that if your existing website is complex, merely scaling it down to different devices won’t be enough to offer a great mobile experience. And if messing with the full website’s existing structure and content isn’t an option, then you might be forced to create a standalone mobile website in order to provide a decent experience &mdash; although maintaining content and code on the two separate platforms in parallel could turn out to be both expensive and messy.</p>
<p>Thus, getting an m-commerce website right tends to be very resource-demanding, as you account for all of the nuances. But the opportunities are great. This is a new world, and it will take time before best practices stabilize. Spending time and money on a mediocre m-commerce website is wasteful. Yes, making the website great will require significant investment, but the potential payoff is high, too. <strong>M-commerce is a window of opportunity</strong>; it enables you to distinguish yourself from competitors and to position yourself well to grab a share of this market, which is expected to reach $86 billion by 2016.</p>
<p><strong>Note</strong>: Find out more about m-commerce usability guidelines in the (paid) report “<a class="colorbox" href="https://baymard.com/mcommerce-usability">M-Commerce Usability</a>.”</p>
<p><em>(al) (il)</em></p>
<hr />
<p><small>© Christian Holst for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/21/exploring-ten-fundamental-aspects-of-m-commerce-usability/" class="colorbox" title="UX Research Results: Exploring Ten Fundamental Aspects Of M-Commerce Usability">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/21/exploring-ten-fundamental-aspects-of-m-commerce-usability/"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=UX%20Research%20Results%3A%20Exploring%20Ten%20Fundamental%20Aspects%20Of%20M-Commerce%20Usability%20http://www.smashingmagazine.com/2013/05/21/exploring-ten-fundamental-aspects-of-m-commerce-usability/"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/21/ux-research-results-exploring-ten-fundamental-aspects-of-m-commerce-usability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Case Study: Typographic Design Patterns And Current Practices</title>
		<link>http://sayingitfirst.com/2013/05/17/case-study-typographic-design-patterns-and-current-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=case-study-typographic-design-patterns-and-current-practices</link>
		<comments>http://sayingitfirst.com/2013/05/17/case-study-typographic-design-patterns-and-current-practices/#comments</comments>
		<pubDate>Fri, 17 May 2013 08:25:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sayingitfirst.com/2013/05/17/case-study-typographic-design-patterns-and-current-practices/</guid>
		<description><![CDATA[<p>Good typography has always been a defining aspect of effective Web design, and this holds true especially for websites in which the emphasis is on presenting a large amount of content &#8212; specifically, articles, news and stories. Whether for a magazine or international newspaper, the designer of [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Good typography has always been a defining aspect of effective Web design, and this holds true especially for websites in which the emphasis is on presenting a large amount of content &mdash; specifically, articles, news and stories. Whether for a magazine or international newspaper, the designer of any website that distributes a lot of content has always had to consider typographic details as seriously and thoroughly as a print designer would.</p>
<p>In 2009, we conducted a <a class="colorbox" href="http://www.smashingmagazine.com/2009/08/20/typographic-design-survey-best-practices-from-the-best-blogs/">survey of then current typographic practices</a>. Since then, responsive design techniques have clearly gained momentum and established their place in the landscape of CSS layout. With the advent of mobile, new modes of browsing websites and reading text have emerged.</p>
<p>Online publications have had to reevaluate how their content is presented on mobile devices. Web typography is as rich, versatile and accessible as ever before. Yet new opportunities introduce new complexity; and with new implementation challenges, we are all spurred to reconsider our practices.</p>
<p>Now, three years later, <strong>we’ve reviewed the original study and explored how Web typography has changed</strong> over these years. We spent countless hours between February and April of this year collecting new data and exploring common developments and trends in Web typography.</p>
<h4>How Did We Conduct The Study?</h4>
<p>We have compiled relevant <strong>data from over 50 well-respected websites</strong> to address these questions. For this study, we selected a wide variety of international newspapers, magazines and blogs, all of whose typographic choices should have been carefully and thoroughly weighed. We chose publications and organizations that have a very large readership (such as The Boston Globe and The Financial Times) as well as specialized magazines with smaller yet often more demanding readerships (such as A List Apart and UX Booth).</p>
<p>These websites focus primarily on text-based content rather than on generic environments such as <a class="colorbox" href="http://www.instapaper.com/">Instapaper</a> and <a class="colorbox" href="http://www.readability.com/">Readability</a>. As such, they need to be highly legible in order to ensure that users continue visiting and reading on their websites. Because <strong>readability of content</strong> is (or rather should be) the main design goal of these publications, the techniques they follow could be considered good practices. However, the results presented in this study should be taken with a grain of salt.</p>
<p>The questions asked in our first study nearly four year ago remain relevant but need to be complemented by questions about the challenges of mobile devices. How widely has responsive design been adopted by publications, if at all? Has there been any change in the typographic choices of big and small publications? How many weights of a large font family should we deliver to mobile devices? How large should the font size of body copy be? How should the font size change on a responsive website? Optimizing readability could require changing the font’s style, size and spacing according to the viewport’s width <em>and</em> height.</p>
<p>The second article in this series will address the growing diversity of eBook readers and mobile apps whose purpose is to give users a pleasant, improved or enhanced reading experience &mdash; from desktop readers down to smartphone readers. We were curious about the specifics of design and typographic choices that make reading articles in these applications more pleasing than reading on the original websites.</p>
<p><strong>Note:</strong> For the sake of continuity, we have stayed close to the format of the original study from 2009. This article is meant to update the data, and hopefully detect new trends and reach new conclusions.</p>
<h3>Typography In Online Publications</h3>
<p>After carefully analyzing the style sheets in the publications in this study, we compiled a comprehensive spreadsheet of typographic points and collected the relevant data. You can view a <a class="colorbox" href="https://docs.google.com/spreadsheet/ccc?key=0Atqua-tBbLCAdHVsTG1iazU4aXZWS1J6OE5hYUJvNEE">spreadsheet of the raw data</a>, which contains more data than was pertinent to this article.</p>
<p>Not limiting ourselves to the questions in the original study, we will broach issues that have arisen since then as a result of responsive design techniques, and we’ll examine whether such techniques are being applied at all. This led us to the following questions:</p>
<ol>
<li>How popular are serif and sans-serif typefaces in body copy and headlines?</li>
<li>Which fonts are used most frequently?</li>
<li>What is the average font size (on narrow, mid-sized and large screens)?</li>
<li>What is the average ratio of the font sizes of headlines to the font sizes of body copy?</li>
<li>What is the average line height of body copy?</li>
<li>What is the average ratio of line height to font size in body copy?</li>
<li>What is the average ratio of line height to line length in body copy?</li>
<li>What is the average amount of space between paragraphs?</li>
<li>What is the average ratio of paragraph spacing to line height in body copy?</li>
<li>How are links styled?</li>
<li>How many characters per line are common in body copy?</li>
<li>How often are links underlined?</li>
<li>How often are font fallbacks used?</li>
<li>How often are responsive design techniques implemented?</li>
<li>Which ratios of display sizes are discernible?</li>
<li>How do websites deal with the performance of Web fonts?</li>
</ol>
<p>To answer these questions, we collected more than 40 data points, all of which can be found in the aforementioned spreadsheet. We can extract several rules of thumb from this data. We wouldn’t recommend acting on the data from this study blindly; <strong>the statistical data, however, will no doubt yield useful insights.</strong></p>
<h3>Popular Serif And Sans-Serif Fonts</h3>
<p>“Which typeface to use?” Obviously, this is one of the most important questions a designer has to answer when considering Web typography. The typeface will set the tone for the entire website, and a poor choice could send the wrong message or thwart the intended atmosphere. The argument for either serif or sans-serif hasn’t been won yet. Interestingly, looking back to the results of the 2009 study, sans-serif typefaces seemed to be more popular in body copy and headlines. The last four years have seen a tiny shift away from that.</p>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/Headings_serif_-sans1.png" /><br /><em>Serif and sans-serif are almost equally popular in headlines.</em></p>
<p>The motivations of designers likely haven’t changed much. Serif fonts apparently stand out in headlines, but arguments have been made for serifs’ ability to guide the reader and for its readable structure in body copy as well. Still, <strong>contrasting a serif body with a sans-serif headline</strong> or vice versa can improve the overall visual appeal and readability of a website.</p>
<p>The data suggests that serifs have gained in popularity in recent years, leading almost to a reversal in common usage in the last four years, at least where body copy is concerned.</p>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/body_serif_sans1.png" /><br /><em>Serifs have strongly gained in popularity in body copy.</em></p>
<ul>
<li>Half of the websites analyzed use serifs in their headlines, the other half sans-serifs. The two most popular typefaces are Georgia &mdash; used on such websites as <a class="colorbox" href="http://www.guardian.co.uk/">The Guardian</a> and the <a class="colorbox" href="http://www.ft.com/home/uk">Financial Times</a> &mdash; and Arial &mdash; found on <a class="colorbox" href="http://www.zeit.de/">Zeit.de</a> and the <a class="colorbox" href="http://www.bbc.co.uk/">BBC</a>’s website.</li>
<li>Only 37% use a sans-serif typeface for body copy.</li>
<li>The most popular serif typefaces for headlines are Georgia (14%) and Chaparral Pro (6%).</li>
<li>The most popular serif typefaces for body copy are Georgia (20%) and Chaparral Pro (4%).</li>
<li>The most popular sans-serif typefaces for headlines are Arial (10%) and Freight Sans Pro (4%).</li>
<li>The most popular sans-serif typefaces for body copy are Arial (14%) and Helvetica (6%).</li>
<li>However, 66% of headline typefaces and 39% of body copy typefaces are found in only one instance.</li>
</ul>
<p>So, in summary we can state that nearly two thirds of the websites analyzed use serifs for body copy, and Georgia and Arial are still the most common primary typefaces. However, <strong>our most surprising find is that a majority of websites use non-standard fonts as their primary typeface</strong> &mdash; 39% of body copy and 66% of headlines. This development is truly interesting, because it shows that typography has become an important element in establishing brand identity and character. These numbers indicate growing typographic diversity on the Web</strong> &mdash; which we should probably expect anyway.</p>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/Typfaces-comparison.png" /><br /><em>A majority of websites use non-standard fonts as their primary typeface.</em></p>
<p>The growth of “bulletproof” font-delivery services such as Typekit and Fontdeck likely explains the increasing variety of primary typefaces. Fallback typefaces are predominantly standard core Web fonts. <strong>Times, Times New Roman, Georgia, Helvetica and Arial</strong> are most often used in CSS font stacks. Mobile platform fonts such as Droid Sans, Palatino and Cambria are almost never used.</p>
<p>Ironically, a consequence of the resurgence in serif typefaces is that Times and Times New Roman, which had almost been written off as too old-fashioned in the last study, have made kind of a comeback as the two most popular fallbacks. Roughly 11% of headline and body copy fallbacks have Times, and another 11% have Times New Roman.</p>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/font-foundry.png" /><br /><em>Font-delivery services are growing, and so is the variety of primary typefaces.</em></p>
<p>There is much literature on typography in Web design, most of which discusses the applications of serif or sans-serif typefaces. Increasingly, the argument for better readability combined with artistic value supports a judicious use of both styles. Douglas Bonneville discusses the <a class="colorbox" href="http://www.smashingmagazine.com/2010/11/04/best-practices-of-combining-typefaces/">benefits and best practices of combining serifs and sans-serifs</a>, and Simon Pascal Klein discusses the intricacies of font families and makes further typographic considerations in his article “<a class="colorbox" href="http://klepas.org/achieving-good-legibility-and-readability-on-the-web/">Achieving Good Legibility and Readability on the Web</a>.”</p>
<p><a class="colorbox" href="http://thegreatdiscontent.com/sarah-parmenter"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/the_great_discontent.png" /></a><br />
<em><a class="colorbox" href="http://thegreatdiscontent.com/sarah-parmenter">The Great Discontent</a> combines both the Stratum and Meta Serif Web Pro fonts to generate a dynamic yet respectable feel.</em></p>
<p>Compared to the previous study’s results, Verdana and Lucida Grande are the big losers. Verdana is used only twice as a primary font, and neither is used more than once as a fallback font. <strong>Chaparral Pro and Helvetica have risen in prominence.</strong> The increasing diversity and individuality in design is due to both the increased use of font foundries and the wider range of Web fonts.</p>
<p>One discovery of the previous study, that “alternative” fonts are more common among headline typefaces, is still proving accurate. No doubt, the general belief that experimentation is best applied to small details still stands. The look and feel of a page can be adjusted just enough by changes to the font family of headings, rather than by drastic changes to body copy. However, the overall <strong>use of alternative fonts for body copy has increased</strong> dramatically, creating a much richer and more diverse typographic landscape on the Web.</p>
<h3>Light Or Dark Background?</h3>
<p>The previous study concluded that a large majority of websites favored dark on light color schemes. Not much has changed, although the websites surveyed this time are more varied in their light background tones.</p>
<p><a class="colorbox" href="http://aneventapart.com/news/post/aea-2012-relaunch"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/an_event_apart.png" /></a><br />
<em><a class="colorbox" href="http://aneventapart.com/news/post/aea-2012-relaunch">An Event Apart</a> demonstrates the readability of a subdued color scheme.</em></p>
<p>Several websites have a less aggressive contrast of an off-white or even beige background with dark-gray text. The off-white is often chosen to lower contrast. The designers in this case have clearly opted for a comfortable, lengthy reading experience.</p>
<p>Black text on a white background is a common pattern for body copy. The contrast is easy on the eyes and is, at least among these websites, the status quo.</p>
<h3>Average Font Size For Headlines</h3>
<p>Generally, the font size of headlines is chosen according to the typeface of the body copy. Still, it’s interesting to see what common ranges designers prefer for body copy and headlines. In this study, the headlines for large display sizes average at roughly 38 pixels. Of course, we made sure that the text always displayed at the actual size, without any zoom.</p>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/heading_font_sizes.png" /><br /><em>The most popular sizes range from 20 to 32 pixels.</em></p>
<p>You can easily notice the increase in font size since the last study. Not only did the average increase by more than 10 pixels (!), but the range of headline sizes starts further up, at 20 pixels, and tops out at an impressive 212 pixels in the case of <a class="colorbox" href="http://thegreatdiscontent.com/ike-edeani">The Great Discontent</a>. This publication is an exception, with its magazine-like headlines and smaller font sizes for headings.</p>
<p><a class="colorbox" href="http://thegreatdiscontent.com/ike-edeani"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/tgd_heading_font.png" /></a><br /><em>We&#8217;re going further up. <a class="colorbox" href="http://thegreatdiscontent.com/ike-edeani">The Great Discontent</a> shows an impressive 212 pixels font size.</em></p>
<h3>Average Font Size For Body Copy</h3>
<p>With readability as the determining criterion, the average pixel size of body copy has increased in four years as well. Back then, most of the websites were between 12 and 14 pixels in font size. Now, <strong>14 pixels is as popular as 16 pixels</strong>; each is used on 13 websites.</p>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/body-copy-font-size.png" /></p>
<p><a class="colorbox" href="http://www.theverge.com/2013/1/11/3866228/body-request-give-me-back-my-data"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/website_body_font_size.png" /></a><br /><em>14 pixels is also <a class="colorbox" href="http://www.theverge.com/">The Verge&#8217;s</a> font size. While some websites offset the first paragraph of an article with a larger font size, many, like The Verge, follow a uniform size.</em></p>
<h3>Ratio Of Headline to Body Font Size</h3>
<p>We’ve updated <strong>our rule of thumb</strong> based on the current average ratio between headline and body font size. Don’t follow this rule blindly; rather, just keep it in mind as you make decisions in your projects.</p>
<h4>Headline ÷ Body Copy = 2.5</h4>
<p>According to our study, on average, the ratio between the headline and the body copy is around 2.5. The traditional scale (6, 7, 8, 9, 10, 11, 12, 14, 16, 18, 21, 24, 36, 48, 60, 72) and the Fibonacci sequence (16, 24, 40, 64, 104) are still relevant, of course, and represent a more naturalistic approach. The <strong>golden ratio (1.618)</strong> might also yield an organic effect, too.</p>
<h3>Optimal Line Height For Body Copy</h3>
<p>Leading (or <code>line-height</code> in CSS) will always depend on your font size and measure (or line length). But in general, the longer the measure, the longer the leading should be. Therefore, presenting a chart of the most popular leading values in pixel units wouldn’t make sense here. More appropriate for you would be to use a relative unit, such as an em or percentage value, that determines the ratio between leading and measure and between leading and font size.</p>
<p>This latest study reveals the following:</p>
<ul>
<li><strong>line height (pixels)<br />
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/17/case-study-typographic-design-patterns-and-current-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Use Social Media to Drive Local Sales for Your SMB</title>
		<link>http://sayingitfirst.com/2013/05/16/how-to-use-social-media-to-drive-local-sales-for-your-smb/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-to-use-social-media-to-drive-local-sales-for-your-smb</link>
		<comments>http://sayingitfirst.com/2013/05/16/how-to-use-social-media-to-drive-local-sales-for-your-smb/#comments</comments>
		<pubDate>Thu, 16 May 2013 20:38:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sayingitfirst.com/2013/05/16/how-to-use-social-media-to-drive-local-sales-for-your-smb/</guid>
		<description><![CDATA[<p>Today&#8217;s guest author is Erica Bell, a social media specialist for Business.com. She covers a range of topics including SEO marketing, social media trends, and small business sales. Social media marketing is one of the most inexpensive ways for your business to connect with local customers online. Even if [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<p><span style="color: #999999"><small><a class="colorbox" href="http://www.rignite.com/wp-content/uploads/2013/05/Social-Media-for-Local-SMB.jpg" rel="wp-prettyPhoto[g2799]"><img class="alignleft size-full wp-image-2842" alt="Social Media for Local SMB" src="http://www.rignite.com/wp-content/uploads/2013/05/Social-Media-for-Local-SMB.jpg" width="240" height="240" /></a>Today&#8217;s guest author is <span style="color: #999999">Erica Bell</span>, a social media specialist for <span style="color: #999999">Business.com</span>. She covers a range of topics including SEO marketing, social media trends, and small business sales.</small></span></p>
<p>Social media marketing is one of the most inexpensive ways for your business to connect with local customers online. Even if the ones you’re trying to reach aren’t “locals,” local online marketing is a great way for small and medium-sized businesses to connect with their audience. According to a <a class="colorbox" href="http://www.localsearchassociation.org/Uploads/Public/Documents/News/LSA-Local-Mobile-Search-Report-2013-Press-Release-FINAL-5-2-13.pdf" target="_blank">recent study</a> from the Local Search Association, 77% of smartphone users accessed local content in December 2012, including online directories and local resources. The likelihood of the users then making a decision about where to dine, make a purchase or engage with a business is high. If your SMB is looking to boost local sales through social media, consider taking these three steps to move forward.</p>
<h2>Be Available</h2>
<div class="column-group normal">
<h4></h4>
<div class="column twothird no-padding">
<p>Google Local, Yelp, Foursquare and Facebook are networks your business must be on if you’re looking to generate new sales with consumers in your area. Making your business readily available through social platforms is a sign to consumers that you want to be where they are and you understand that means you need to be engaged and active on social media. Graph Search from Facebook and local searches conducted on Yelp and Foursquare that incorporate social signals from a consumer’s friends impact the decision of a consumer. Negative reviews your business has handled well, positive reviews from friends, check-in rewards and more will effect whether or not someone doing a local search chooses to do business with you. Be available on the networks where your customers can be found and where they’re looking to find a business like yours.</p>
</div>
<div class="column onethird has-padding"><strong>Bonus:</strong></p>
<p><a class="colorbox" href="http://www.rignite.com/blog/how-a-social-business-can-benefit-from-a-single-social-signal"><img class="size-medium wp-image-2418 alignright" alt="How-a-Social-Business-Can-Benefit-From-A-Single-Social-Signal-optimized" src="http://www.rignite.com/wp-content/uploads/2013/04/How-a-Social-Business-Can-Benefit-From-A-Single-Social-Signal-optimized-37x300.jpg" width="37" height="300" /></a>Check out Rignite&#8217;s infographic on <a class="colorbox" href="http://www.rignite.com/blog/how-a-social-business-can-benefit-from-a-single-social-signal" target="_blank">how businesses can benefit from social media signals</a>.</p>
</div>
<div style="clear: both"></div>
</div>
<h2> Establish Sales Goals</h2>
<p>A 2012 <a class="colorbox" href="http://www.socialmediaexaminer.com/SocialMediaMarketingIndustryReport2012.pdf" target="_blank">study</a> from Social Media Examiner found that increased exposure and increased site traffic were the two biggest benefits of social media activity. However, the majority (58%) also indicated that generating leads and developing loyal fans were perks of being active on social networks. In fact, 65% of small business owners were more likely than others to generate leads, compared to the 58% average for all marketers. What is your business aiming to do with social? If you want to drive online sales, in-store sales, the sale of a specific product, or something else entirely, you need to know this before you get started developing your strategy. Different contests, social campaigns, social content will be more successful than others. You need to gear your social media efforts toward meeting the specific sales goals you have in mind so you can build awareness, generate leads, and close sales.<br />
<a class="colorbox" href="http://www.socialmediaexaminer.com/SocialMediaMarketingIndustryReport2012.pdf"><img class="size-full wp-image-2827" alt="Social Media Examiner" src="http://www.rignite.com/wp-content/uploads/2013/05/Social-Media-Examiner.png" width="638" height="334" /></a></p>
<h2>Put In the Time</h2>
<p>Social media success doesn’t come with setting up an account and expecting sales leads to flood in. You need to build your accounts, complete with the correct contact and location information, and then put in the time to listen and engage with those in your area looking for a product/service like yours. <a class="colorbox" title="social monitoring" href="http://www.rignite.com/our-solution/" target="_blank">Social monitoring</a>, keyword and location searches, and completing and updating profiles require a time investment. Make the investment and you’ll see consumers in your area make an investment in your business. Even if a consumer isn’t engaging with your business directly on social networks and is using a search engine instead, social media is making an impact. Social media is increasingly becoming a factor in SEO marketing and search results as engines begin to factor in social signals in their rankings. Put in the time to create social content, from blog posts to tweets, that targets customers near your location.</p>
<p>Get started with a <a class="colorbox" href="http://www.rignite.com/blog/5-tips-for-effective-social-media-time-management" target="_blank">time commitment to social media marketing activities</a> for only 1-5 hours a week to test which networks and what campaigns are the most effective in helping your business close local sales. Reach local customers by offering deals, being present on sites such as Yelp and Foursquare that encourage customer reviews, and engaging in social conversations with those in your area. Social media isn’t about pushing or pitching, it’s about engaging and building relationships. Build relationships with your local audience on social media to see a boost in sales.</p>
<p style="padding-left: 30px"><strong>Bonus:</strong>  Check out Rignite&#8217;s infographic below of daily and weekly tasks to help you manage your time spent on social media marketing.</p>
<p><a class="colorbox" href="http://www.rignite.com/blog/5-tips-for-effective-social-media-time-management" target="_blank"><img class="alignleft size-full wp-image-2649" alt="Time Management For Social Media Infographic" src="http://www.rignite.com/wp-content/uploads/2015/04/Time-Management-For-Social-Media-Infographic.jpg" width="612" height="1565" /></a></p>
<p><strong>Copy the embed code below to use this image on your site:</strong></p>
<p><textarea readonly class="embedcode"><a class="colorbox" href="http://www.rignite.com/blog/5-tips-for-effective-social-media-time-management?utm_source=InfographicEmbed&amp;utm_medium=EmbedReferral&amp;utm_term=&amp;utm_content=DailyWeeklyTasks&amp;utm_campaign=Infographics" title="Social Media Time Management: Daily And Weekly Tasks" target="_blank"><img src="http://www.rignite.com/wp-content/uploads/2015/04/Time-Management-For-Social-Media-Infographic.jpg" alt="Manage Social Media More Efficiently With Rignite" style="width:540px;margin:0px auto" /></a></p>
<p style="font-size:12px">Compliments of: <a class="colorbox" href="http://www.rignite.com/?utm_source=InfographicEmbed&amp;utm_medium=EmbedReferral&amp;utm_term=&amp;utm_content=DailyWeeklyTasks&amp;utm_campaign=Infographics" target="_blank" title="Social Media Time Management: Daily And Weekly Tasks">Rignite Inc.</a></p>
<p></textarea></p>
<p><em>Are you using social media to drive sales for your SMB? Do you have any tips to add?</em></p>
</p>
<p>Source: <a href="http://feedproxy.google.com/~r/Rignite/~3/I92bH7tqI88/how-to-use-social-media-to-drive-local-sales-for-your-smb" class="colorbox" title="How to Use Social Media to Drive Local Sales for Your SMB">Rignite</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://feedproxy.google.com/~r/Rignite/~3/I92bH7tqI88/how-to-use-social-media-to-drive-local-sales-for-your-smb"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=How%20to%20Use%20Social%20Media%20to%20Drive%20Local%20Sales%20for%20Your%20SMB%20http://feedproxy.google.com/~r/Rignite/~3/I92bH7tqI88/how-to-use-social-media-to-drive-local-sales-for-your-smb"><img src="http://sayingitfirst.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/16/how-to-use-social-media-to-drive-local-sales-for-your-smb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Beginner&#8217;s Guide: Migrating A Website To WordPress Is Easier Than You Think</title>
		<link>http://sayingitfirst.com/2013/05/15/a-beginners-guide-migrating-a-website-to-wordpress-is-easier-than-you-think/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=a-beginners-guide-migrating-a-website-to-wordpress-is-easier-than-you-think</link>
		<comments>http://sayingitfirst.com/2013/05/15/a-beginners-guide-migrating-a-website-to-wordpress-is-easier-than-you-think/#comments</comments>
		<pubDate>Wed, 15 May 2013 14:33:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/15/a-beginners-guide-migrating-a-website-to-wordpress-is-easier-than-you-think/</guid>
		<description><![CDATA[<p>Now powering over 17% of the Web, WordPress is increasingly becoming the content management system (CMS) of choice for the average user. But what about websites built with an outdated CMS or without a CMS at all? Does moving to WordPress mean starting over and losing all [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Now powering over 17% of the Web, WordPress is increasingly becoming the content management system (CMS) of choice for the average user. But what about websites built with an outdated CMS or without a CMS at all? Does moving to WordPress mean starting over and losing all the time, energy and money put into the current website? Nope!</p>
<p>Migrating a website (including the design) over to WordPress is actually easier than you might think. In this guide, we’ll outline the migration process and work through the steps with a sample project. We’ll also cover some of the challenges you might encounter and review the solutions.</p>
<h3>About This Guide</h3>
<p>Before we get to work, let’s establish some context. First, this guide was written primarily with <strong>beginners</strong> in mind and will be most helpful for <strong>basic</strong> websites. Some of you will likely encounter advanced aspects of WordPress migration, but they are beyond the scope of this guide. If you’re tackling an advanced migration and get stuck, feel free to share your difficulty in the comments below.</p>
<h4>Objectives</h4>
<p>The objective of this guide is to help you with the following:</p>
<ul>
<li>Plan an effective migration to WordPress.</li>
<li>Walk through the technical steps involved in migrating.</li>
<li>Get ideas and resources to solve common migration challenges.</li>
</ul>
<h4>Assumptions</h4>
<p>I assume you have basic familiarity with WordPress. Previous development experience with WordPress would be helpful, but not necessary. I also assume you have an existing website and design that you want to migrate to WordPress.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/2.png" rel="wp-prettyPhoto[g2797]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/image_2_compressed.png" alt="Starting With A Plan" width="500" height="350" class="alignnone size-full wp-image-108881" /></a></p>
<h4>Basic Steps</h4>
<p>Here are the basic steps that I recommend you follow for a typical WordPress migration:</p>
<ol>
<li><strong>Evaluate website.</strong><br />
Work carefully through the pages on your existing website, identifying all of the types of content (standard pages, photo galleries, resource pages, etc.) and noting any areas that need special attention.</li>
<li><strong>Set up environment.</strong><br />
Set up WordPress and get ready to import.</li>
<li><strong>Import content.</strong><br />
Bring over and organize your content, whether via an importing tool, manual entry (for a small amount, when no tool is available) or a custom importing process.</li>
<li><strong>Migrate design.</strong><br />
Incorporate your existing design into a custom WordPress theme.</li>
<li><strong>Review website, go live.</strong><br />
Carefully review the import, making adjustments where needed, set up any URL redirects, and then go live.</li>
</ol>
<p>With this outline in mind, let’s work through each step in detail.</p>
<h3>Start With A Plan</h3>
<p>The key to a successful migration is to carefully evaluate your current website. You need to figure out how to import and structure the content in WordPress before carrying over the design.</p>
<p>While the principles are the same across migration projects, <strong>the details often vary</strong>. So, below are two lists of questions to ask as you work out a plan.</p>
<h4>Imported Content</h4>
<ul>
<li>How much content needs to be imported (number of pages, number of images, etc.)?</li>
<li>Is the volume low enough to be imported manually, or do you need a tool?</li>
<li>If you need a tool, does one already exist?</li>
<li>Can the content be categorized into the standard “posts” and “pages,” or does it call for custom post types?</li>
<li>Does extra content need to be stored for certain pages (custom fields, taxonomies, etc.)?</li>
<li>Will the URL structure change? If so, will the old URLs need to be redirected?</li>
</ul>
<h4>Existing Functionality</h4>
<ul>
<li>Does the website integrate any third-party services (data collection, reservations, etc.)?</li>
<li>Do any forms need to be migrated (contact forms, application forms, etc.)?</li>
<li>Is access to any content restricted (such as members-only content)?</li>
<li>Does the website sell products (digital or physical)?</li>
<li>Do any administrative tools need to be carried over (such as custom CMS functionality)?</li>
</ul>
<h4>A Working Example</h4>
<p>My brother, Joshua Wold, has volunteered a website to serve as an example; it’s for a side project of his in which he sells posters and postcards of a <a class="colorbox" href="http://www.veganfoodpyramid.com/">Vegan Food Pyramid</a>. He built the website in plain HTML, with some basic PHP includes for the header and footer. Below is a screencast of me evaluating the website to give you a sense of how the process will work. Enjoy!</p>
</p>
<h3>Set Up WordPress</h3>
<p>Before importing the content, we need to get WordPress ready to go. If you’re just experimenting or if you prefer offline development, start with a <a class="colorbox" href="http://codex.wordpress.org/Installing_WordPress#Local_Installation_Instructions">local installation of WordPress</a>. Otherwise, the next step is to install WordPress with your current hosting provider; or you could use the migration process as a great opportunity to move to a new host.</p>
<p>Once WordPress is up and running, you’re ready for action!</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/3.png" rel="wp-prettyPhoto[g2797]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/image_3_compressed.png" alt="Setting Up WordPress" width="500" height="350" class="alignnone size-full wp-image-108882" /></a></p>
<p>For our example, we’ve installed WordPress with the same host, setting it up in a <code>/wp</code> directory for the duration of the migration process.</p>
<h4>Settings and Plugins</h4>
<p>With WordPress installed, we’ll make a few minor adjustments:</p>
<ul>
<li><strong>Update permalinks.</strong><br />
Go to <code>Settings &#8594; Permalinks</code> to make changes. In most cases, I’ll switch to “postname”-style permalinks.</li>
<li><strong>Update users.</strong><br />
I create an admin-level account for myself and any admin or editor accounts that are needed for clients and collaborators. I also remove the default “admin” user name if it exists (a basic but wise step for WordPress security).</li>
</ul>
<p>Depending on the needs of the project, we might have to preinstall plugins. Here are the major categories of plugins:</p>
<ul>
<li><strong>Form management</strong><br />
Migrating a form “as is” is usually a mess; simply recreating it using a forms plugin is usually easier. My current favorite is <a class="colorbox" href="http://www.gravityforms.com/">Gravity Forms</a> ($39+ per license). Other options are <a class="colorbox" href="http://wordpress.org/extend/plugins/formidable/">Formidable</a> (with free and pro versions) and <a class="colorbox" href="http://wordpress.org/extend/plugins/contact-form-7/">Contact Form 7</a> (entirely free).</li>
<li><strong>SEO management</strong><br />
Search engine optimization (SEO) is a touchy subject. My philosophy is to build content for people, not for search engines. That being said, there is a common-sense approach to SEO that is solidly supported by the WordPress plugin ecosystem. And if your old website includes custom meta descriptions, giving them a new home during the importing process is important. I recommend <a class="colorbox" href="http://wordpress.org/extend/plugins/wordpress-seo/">WordPress SEO</a> (free).</li>
<li><strong>Multiple languages</strong><br />
If your old website supports multiple languages, WordPress has you covered. My plugin of choice is <a class="colorbox" href="http://wpml.org/">WPML</a> ($79 per license, free for non-profits). Another option is <a class="colorbox" href="http://wordpress.org/extend/plugins/qtranslate/">qTranslate</a> (free).</li>
<li><strong>Security</strong><br />
WordPress security is a topic near and dear to me. The increasing popularity of WordPress has made it a target for security attacks. WordPress itself is rarely the problem; a poorly secured hosting environment or an outdated or poorly developed plugin usually is. I use managed WordPress hosting for the majority of my projects, which offers a good foundation for solid WordPress security. Options include <a class="colorbox" href="http://wpengine.com/">WPEngine</a>, <a class="colorbox" href="https://www.zippykid.com/">ZippyKid</a>, <a class="colorbox" href="https://page.ly/">Pagely</a> and <a class="colorbox" href="http://websynthesis.com/">Synthesis</a>. In addition to managed hosting (and especially if you opt for a non-managed host), consider installing a security plugin, such as <a class="colorbox" href="http://wordpress.org/extend/plugins/better-wp-security/">Better WP Security</a> (free) or <a class="colorbox" href="http://wordpress.org/extend/plugins/wordfence/">Wordfence</a> (also free). Last but not least, review the “<a class="colorbox" href="http://codex.wordpress.org/Hardening_WordPress">Hardening WordPress</a>” guide in the Codex.</li>
<li><strong>Backups</strong><br />
If you opt for managed hosting, backups are usually included (make sure, though). If you’re managing backups yourself or you want an extra layer of data protection, great options are available, including <a class="colorbox" href="http://vaultpress.com/">VaultPress</a> ($15+ a month), <a class="colorbox" href="https://www.codeguard.com/">CodeGuard</a> ($5+ a month), <a class="colorbox" href="http://ithemes.com/purchase/backupbuddy/">BackupBuddy</a> ($75+ per license) and <a class="colorbox" href="http://wordpress.org/extend/plugins/backwpup/">BackWPup</a> (free).</li>
</ul>
<h3>Import Content</h3>
<p>With WordPress up and running, it’s time to bring over all of your content.</p>
<p>If your old website has a CMS, an importing tool might be available. Start by viewing the list of <a class="colorbox" href="http://codex.wordpress.org/Importing_Content">content-importing scripts</a> in the Codex. If there’s a match, great! Follow the instructions and get to work. If all goes well, you’ll have migrated the content over without any trouble.</p>
<p>If your old CMS is not in the list or you don’t have a CMS at all and you’ve got fewer than 100 pages, then manual migration is probably the way to go. Copy and paste the contents, noting the old URLs as you go (tracking the migration in a spreadsheet is a good idea).</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/4.png" rel="wp-prettyPhoto[g2797]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/image_4_compressed.png" alt="4" width="500" height="350" class="alignnone size-full wp-image-108883" /></a></p>
<p>If you’ve got a custom CMS or a database of records without an importing tool and a high volume of content, then you might want to <strong>bring in a specialist to move the content</strong> over before continuing. The higher the volume of content, the higher the chance of human error and the more important automating it becomes.</p>
<p>For our project, I’ve migrated the content manually and replaced the existing navigation with a WordPress menu. You can watch the process in this next screencast:</p>
</p>
<h3>Bring Over The Design</h3>
<p>With our content in WordPress, it’s time to bring over the design. Incidentally, if you’re considering a new design, then now is a great time to look at the many excellent WordPress themes out there, both in the <a class="colorbox" href="http://wordpress.org/extend/themes/">official repository</a> and in third-party marketplaces such as <a class="colorbox" href="http://themeforest.net/category/wordpress">ThemeForest</a> and <a class="colorbox" href="https://creativemarket.com/themes/wordpress/">Creative Market</a>. For our purpose, I’ll assume that you’re happy with your design.</p>
<h4>Evaluating A Design</h4>
<p>Evaluate the source code of a prospective design as best you can before tackling the migration. If the code is table-based or more complex than you’re comfortable with, then migrating the design might not be worth the effort. While anything is possible (I’ve migrated some complex table-based designs in my time), <strong>not everything is practical.</strong></p>
<h4>Working With Source Code</h4>
<p>In my experience, the easiest way to migrate is to work directly with the source code in the browser. While having access to the original hosting environment can be helpful (especially when working with a lot of images and downloadable files), the ways that websites are built vary so widely that you’ll often have to reverse-engineer the original architecture in order to derive anything useful.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/5.png" rel="wp-prettyPhoto[g2797]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/image_5_compressed.png" alt="5" width="500" height="350" class="alignnone size-full wp-image-108884" /></a></p>
<p>Going directly to the source code in your browser of choice will save a lot of time and, barring any important “behind the scenes” functionality, give you everything you need. <a class="colorbox" href="https://www.google.com/chrome/">Google Chrome</a> is currently my browser of choice, and I’ve pulled our source-code samples directly from the browser. (In Chrome, go to <code>Menu &#8594; Tools &#8594; View Source</code>, or just right-click to bring up the contextual menu.)</p>
<h3>Create A Custom Theme</h3>
<p>If you’re new to them, <a class="colorbox" href="https://codex.wordpress.org/Using_Themes">learn about using themes</a> in the Codex. For the migration process, you can either build a new WordPress theme from the ground up or modify an existing theme to meet your needs. I recommend the latter.</p>
<p>Most of my migration projects have started with the latest version of WordPress’ default theme (currently <a class="colorbox" href="http://wordpress.org/extend/themes/twentytwelve">Twenty Twelve</a>). Recently, I stripped down the default theme to create my own migration starter theme, which I’ll use in our example and which <a class="colorbox" href="https://github.com/sirjonathan/migration-theme/">you’re welcome to use yourself</a>. (Feel free to suggest improvements!) Let’s get to work.</p>
<p><a class="colorbox" href="https://github.com/sirjonathan/migration-theme/archive/master.zip">Download a copy</a> (ZIP) of the migration starter theme or follow along in your own theme of choice as we work through the relevant theme files.</p>
<h3>1. Style Sheet</h3>
<p>Our first step is to bring over the styles from the old website. In most cases, this is as simple as searching the source code for references to <code>.css</code> and then copying and pasting the contents from those style sheet(s) into our own <code>style.css</code>. Let’s get to it.</p>
<ol>
<li>Open up <code>style.css</code>.</li>
<li>Replace the details of the theme (“Name,” “URI,” “Description,” etc.) with your own.</li>
<li>Paste in the styles from the old website.</li>
</ol>
<h4>A Note About Images</h4>
<p>As you migrate the style sheet(s), search for and update any references to images. In general, I like to keep all images in an <code>/images/</code> folder within the theme’s directory. More often than not, changing the locations of images referenced in the original CSS is necessary, and I make sure to update all references in the style sheet and templates accordingly.</p>
<h3>2. Header</h3>
<p>The next step is to create the header for our new theme. Our objective here is to merge the structure of the current code base with WordPress’ templates. Here’s what we’re going to do:</p>
<ul>
<li>Replicate the HTML structure of the old website.</li>
<li>Replace the static menu with a WordPress-powered menu.</li>
<li>Use WordPress’ <code>title</code> tag and leave the <code>wp_head</code> hook in place.</li>
<li>Merge any other relevant tags from the old header.</li>
</ul>
<p>Let’s get into the code!</p>
<h4>Original HTML</h4>
<pre><code class="language-markup html">
&lt;!DOCTYPE HTML&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Vegan Food Pyramid posters, postcards and wallpapers&lt;/title&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;
&lt;meta name="google-site-verification" content="PO3bWDpUEh4O6XXwnmfyfxrKRDf8JsRrNIcGdzv3POs" /&gt;
&lt;link rel="stylesheet" type="text/css" href="style.css" media="screen" /&gt;
&lt;link rel="shortcut icon" href="http://www.veganfoodpyramid.com/favicon.ico?v=2" /&gt;
&lt;script type="text/javascript" src="//use.typekit.net/tty6xpj.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript"&gt;try{Typekit.load();}catch(e){}&lt;/script&gt;

&lt;/head&gt;
&lt;body&gt;
&lt;a href="http://veganfoodpyramid.com"&gt;&lt;h1 id="logo"&gt;Vegan Food Pyramid&lt;/h1&gt;&lt;/a&gt;
&lt;ul class="menu"&gt;
   &lt;li&gt;&lt;a class="active" href="http://veganfoodpyramid.com"&gt;Products&lt;/a&gt;&lt;/li&gt;
   &lt;li&gt;&lt;a href="http://veganfoodpyramid.com/wallpaper.php"&gt;Wallpaper&lt;/a&gt;&lt;/li&gt;
   &lt;li&gt;&lt;a href="http://veganfoodpyramid.com/about.php"&gt;About&lt;/a&gt;&lt;/li&gt; 
   &lt;li&gt;&lt;a href="http://veganfoodpyramid.com/contact.php"&gt;Contact&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</code></pre>
<h4>Merged Header (header.php)</h4>
<pre><code class="language-markup php">
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
   &lt;title&gt;&lt;?php wp_title( '|', true, 'right' ); ?&gt;&lt;/title&gt;
   &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;
   &lt;meta name="google-site-verification" content="PO3bWDpUEh4O6XXwnmfyfxrKRDf8JsRrNIcGdzv3POs" /&gt;
   &lt;link rel="shortcut icon" href="http://www.veganfoodpyramid.com/favicon.ico?v=2" /&gt;
   &lt;script type="text/javascript" src="//use.typekit.net/tty6xpj.js"&gt;&lt;/script&gt;
   &lt;script type="text/javascript"&gt;try{Typekit.load();}catch(e){}&lt;/script&gt;
   &lt;?php wp_head(); ?&gt;
&lt;/head&gt;

&lt;body &lt;?php body_class(); ?&gt;&gt;

   &lt;header&gt;
      &lt;a href="http://veganfoodpyramid.com"&gt;&lt;h1 id="logo"&gt;Vegan Food Pyramid&lt;/h1&gt;&lt;/a&gt;
      &lt;?php wp_nav_menu( array( 
            'theme_location' =&gt; 'primary',
            'container' =&gt; false,
            'menu_class' =&gt; 'menu'
      ) ); ?&gt;
   &lt;/header&gt;
</code></pre>
<h4>Explanation</h4>
<p>One of the challenges of migration is deciding whether to improve code as you go along. Our project has a few areas that could be improved, but Joshua and I agreed to leave them as is. Most of you will be tackling the migration of a design that hasn’t been coded to current best practices (although, in fairness to the original coder, they may have been best practices at the time).</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/6.png" rel="wp-prettyPhoto[g2797]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/image_6_compressed.png" alt="Website Review" title="Website Review" width="500" height="350" class="alignnone size-full wp-image-108885" /></a></p>
<p><strong>If time and opportunity allow, I encourage you to improve on the code.</strong> Otherwise, take comfort in the fact that, with the website now on WordPress, improvements will be a whole lot easier down the road.</p>
<p>Let’s work through the changes we’ve made!</p>
<ul>
<li><strong>Doctype</strong><br />
Make sure to carry over the same doctype. In this case, the original HTML already has an HTML5 doctype (a relatively rare occurrence on old websites). Using a modern doctype in a code base written for an older specification (such as XHTML or HTML4) could break the layout (especially in old browsers).</li>
<li><strong>Meta tags</strong><br />
I usually bring over the majority of meta tags as is, replacing them in WordPress. The exception in our case is the reference to the style sheet, which is being inserted automatically via <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/wp_enqueue_style"><code>wp_enqueue_style</code></a> in the <code>functions.php</code> file.</li>
<li><strong>Scripts</strong><br />
Scripts can be tricky. If a script belongs on every page (such as a tracking script or font script), then putting it directly in the header (or footer) file is fine. If it needs to appear only on certain pages, then a <a class="colorbox" href="http://codex.wordpress.org/Conditional_Tags">conditional tag</a> will do the trick. As a best practice, register all scripts and add them to the header (or footer) via <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/wp_enqueue_script"><code>wp_enqueue_script</code></a>. If you’re up for the challenge, I recommend doing it this way. (Check out a <a class="colorbox" href="http://wptheming.com/2013/02/typekit-code-snippet/">tutorial on enqueuing TypeKit</a> the right way.)</li>
<li><strong>wp_head</strong><br />
Leave <code></code> at the bottom of the <code></code> tag in the merged header file. WordPress uses <a class="colorbox" href="http://codex.wordpress.org/Plugin_API/Action_Reference/wp_head"><code>wp_head</code></a>, among other things, to enqueue scripts and style sheets that are referenced in the theme (usually in <code>functions.php</code>) and in plugins that you’ve installed. Without <code>wp_head</code> in place, most front-end plugins won’t work.</li>
<li><strong>body_class</strong><br />
Notice our use of the <code></code> tag. WordPress uses this to provide a series of helpful classes to the <code></code> tag depending on the page being viewed. In our example, the <code></code> classes weren’t being used. Yours might have unique IDs or classes on each page, in which case you can create a custom function using conditional tags to add the appropriate classes to the corresponding pages. <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/body_class">Have a look at the Codex</a> for some examples.</li>
<li><strong>WordPress menus</strong><br />
Switching to a WordPress-powered menu is one of the more complex tasks in most basic migrations. It will be fairly straightforward for us. We have a menu with simple markup that uses an <code>active</code> class (generated via PHP) to indicate which page the visitor is viewing. The <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/wp_nav_menu"><code>wp_nav_menu</code></a> function is highly flexible and offers built-in functionality to handle the current state of an element in the menu. I’ve updated the references in the style sheet to the <code>active</code> class and changed them to use the equivalent generated by <code>wp_nav_menu</code>, which is <code>current-menu-item</code>. Watch the screencast on importing content to see how I’ve set up the menu for our example.</li>
</ul>
<p>And that’s a wrap! Let’s move on to the next piece.</p>
<h3>3. Footer</h3>
<p>The footer is usually the most uneventful template in the migration process. As with the header, our objective is to merge the relevant parts of the original source code. Let’s get to it!</p>
<h4>Original HTML</h4>
<pre><code class="language-markup html">
&lt;div id="footer"&gt;&lt;p&gt;&copy; 2013 VeganFoodPyramid.com&lt;/p&gt;&lt;/div&gt;

&lt;script type="text/javascript"&gt;
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
&lt;/script&gt;
&lt;script type="text/javascript"&gt;
try {
var pageTracker = _gat._getTracker("UA-6992755-1");
pageTracker._trackPageview();
} catch(err) {}&lt;/script&gt;

&lt;/body&gt;
&lt;/html&gt;
</code></pre>
<h4>Merged Footer (footer.php)</h4>
<pre><code class="language-markup php">
&lt;div id="footer"&gt;&lt;p&gt;&copy; &lt;?php echo date('Y'); ?&gt; VeganFoodPyramid.com&lt;/p&gt;&lt;/div&gt;

&lt;script type="text/javascript"&gt;
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
&lt;/script&gt;
&lt;script type="text/javascript"&gt;
try {
var pageTracker = _gat._getTracker("UA-6992755-1");
pageTracker._trackPageview();
} catch(err) {}&lt;/script&gt;

&lt;?php wp_footer(); ?&gt;

&lt;/body&gt;
&lt;/html&gt;
</code></pre>
<h4>Explanation</h4>
<p>Some footers are hard to migrate (such as ones with complex menus and widgets), but most are simple. In this case, we’ve merged the HTML with our footer template, making sure to preserve our reference to the <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/wp_footer"><code>wp_footer</code></a> hook. We’ve also changed the date reference to use PHP, ensuring that it updates with each year.</p>
<h3>4. Home Page</h3>
<p>One of the challenges of a migration is that there are so many different ways to get the job done. The home page is a good illustration of this because it tends to be the most different from the rest of the website. Adopting the simplest method is usually best. I’ve opted to put all of the home page’s content directly in the template. Changes will be rare and can easily be made by editing the template.</p>
<p>Let’s look at the code, excluding the header and footer, which we’ve already covered.</p>
<h4>Original HTML</h4>
<pre><code class="language-markup html">
&lt;div id="content"&gt;

&lt;div id="poster"&gt;
&lt;a href="http://veganfoodpyramid.com/images/Vegan-Food-Pyramid-New.jpg"&gt;&lt;img class="product-img" src="http://veganfoodpyramid.com/images/Vegan-Food-Pyramid-New.jpg" /&gt;&lt;/a&gt;
&lt;div class="description"&gt;
&lt;h2&gt;Poster&lt;/h2&gt;
&lt;p&gt;A 30&#215;20-inch poster illustrating over 125 vegan food items as an alternative to the traditional food pyramid. This poster will catch people’s attention and serve as a suggestion for food ideas.&lt;/p&gt;
&lt;h3&gt;$30 each&lt;/h3&gt;
&lt;p&gt;Includes free shipping worldwide&lt;/p&gt;
&lt;a class="button" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=2FKQT879CXYYG"&gt;Buy&lt;/a&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;div id="postcard"&gt;
&lt;a href="http://veganfoodpyramid.com/images/Vegan-Food-Pyramid-New.jpg"&gt;&lt;img class="product-img" src="http://veganfoodpyramid.com/images/postcard-splash.jpg" alt="Postcard Splash" /&gt;&lt;/a&gt;
&lt;div class="description"&gt;
&lt;h2&gt;Postcards&lt;/h2&gt;
&lt;p&gt;Beautiful 4&#215;6 postcards that can be mailed and shared with friends and family. Hand them out at events. Post them on walls. Share the vegan love!&lt;/p&gt;
&lt;h3&gt;$50 for 50&lt;/h3&gt;
&lt;p&gt;Includes free shipping worldwide&lt;/p&gt;
&lt;a class="button" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=EN387WHNSSFMW"&gt;Buy&lt;/a&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt; &lt;!-- end content --&gt;
</code></pre>
<h4>Merged Home Page (/page-templates/front-page.php)</h4>
<pre><code class="language-markup php">
&lt;?php
/**
 * Template Name: Front Page Template
 */

get_header(); ?&gt;

&lt;div id="content"&gt;

   &lt;div id="poster"&gt;
      &lt;a href="&lt;?php echo get_stylesheet_directory_uri(); ?&gt;/images/Vegan-Food-Pyramid-New.jpg"&gt;&lt;img class="product-img" src="&lt;?php echo get_stylesheet_directory_uri(); ?&gt;/images/Vegan-Food-Pyramid-New.jpg" /&gt;&lt;/a&gt;
      &lt;div class="description"&gt;
         &lt;h2&gt;Poster&lt;/h2&gt;
         &lt;p&gt;A 30&#215;20-inch poster illustrating over 125 vegan food items as an alternative to the traditional food pyramid. This poster will catch people’s attention and serve as a suggestion for food ideas.&lt;/p&gt;
         &lt;h3&gt;$30 each&lt;/h3&gt;
         &lt;p&gt;Includes free shipping worldwide&lt;/p&gt;
         &lt;a class="button" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=2FKQT879CXYYG"&gt;Buy&lt;/a&gt;
      &lt;/div&gt;
   &lt;/div&gt;

   &lt;div id="postcard"&gt;
      &lt;a href="&lt;?php echo get_stylesheet_directory_uri(); ?&gt;/images/Vegan-Food-Pyramid-New.jpg"&gt;&lt;img class="product-img" src="&lt;?php echo get_stylesheet_directory_uri(); ?&gt;/images/postcard-splash.jpg" alt="Postcard Splash" /&gt;&lt;/a&gt;
      &lt;div class="description"&gt;
         &lt;h2&gt;Postcards&lt;/h2&gt;
         &lt;p&gt;Beautiful 4&#215;6 postcards that can be mailed and shared with friends and family. Hand them out at events. Post them on walls. Share the vegan love!&lt;/p&gt;
         &lt;h3&gt;$50 for 50&lt;/h3&gt;
         &lt;p&gt;Includes free shipping worldwide&lt;/p&gt;
         &lt;a class="button" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=EN387WHNSSFMW"&gt;Buy&lt;/a&gt;
      &lt;/div&gt;
   &lt;/div&gt;

&lt;/div&gt; &lt;!-- end #content --&gt;

&lt;?php get_footer(); ?&gt;
</code></pre>
<h4>Explanation</h4>
<p>The <code>front-page.php</code> template begins and ends with a reference to the header and footer that we’ve just prepared. In between, we’ll merge the rest of the HTML, and we’ll use the <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/get_stylesheet_directory_uri"><code>get_stylesheet_directory_uri</code></a> function, which will dynamically generate references to the images folder in our new theme.</p>
<h3>5. Standard Page Template</h3>
<p>With the header and footer done, the standard templates are usually quite easy. For brevity’s sake, we’ll go directly to the merged templates.</p>
<h4>Merged Template (page.php)</h4>
<pre><code class="language-markup php">
&lt;?php
/**
 * The template for displaying all pages.
 */

get_header(); ?&gt;

&lt;div id="content"&gt;

   &lt;?php while ( have_posts() ) : the_post(); ?&gt;

      &lt;?php get_template_part( 'content', 'page' ); ?&gt;
   
   &lt;?php endwhile; ?&gt;

&lt;/div&gt;

&lt;?php get_footer(); ?&gt;
</code></pre>
<h4>Content Template (content-page.php)</h4>
<pre><code class="language-markup php">
&lt;?php
/**
 * The template used for displaying page content in page.php
 */
?&gt;

   &lt;article &lt;?php post_class(); ?&gt;&gt;
      &lt;?php the_content(); ?&gt;
   &lt;/article&gt;

</code></pre>
<h4>Explanation</h4>
<p>There are several items to point out here:</p>
<ul>
<li><strong>The loop</strong><br />
If you’re new to WordPress or programming in general, this piece of code in the <code>#content</code> container might look intimidating. The “loop” is code used by WordPress to display a post’s content. You can <a class="colorbox" href="http://codex.wordpress.org/The_Loop">learn more about the loop</a> in the Codex. Meanwhile, just make sure that it’s in there, or else the content you save in WordPress won’t show up.</li>
<li><strong>get_template_part</strong><br />
Our page template here employs the handy <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/get_template_part"><code>get_template_part</code></a> function, which is a great way to keep content organized, especially in complex projects. Our website is simple enough not to warrant it, but I left it in just to show you.</li>
<li><strong>post_class</strong><br />
I also added a reference to <code><br />
<article></code> (with the corresponding <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/post_class"><code>post_class</code></a> function) to make further customization of the design easier.</li>
</ul>
<h3>5. Full-Width Template (full-width.php)</h3>
<p>Although not illustrated in the screencast, the design includes a full-width template for use on the “Wallpaper” page, while the standard page template is changed to a narrow width.</p>
<p>Let’s have a look.</p>
<h4>Merged Template (templates/full-width.php)</h4>
<pre><code class="language-markup php">
&lt;?php
/**
 * Template Name: Full-Width Template
 */

get_header(); ?&gt;

&lt;div id="content" class="full-width"&gt;

   &lt;?php while ( have_posts() ) : the_post(); ?&gt;

      &lt;?php get_template_part( 'content', 'page' ); ?&gt;
   
   &lt;?php endwhile; ?&gt;

&lt;/div&gt;

&lt;?php get_footer(); ?&gt;
</code></pre>
<h4>Explanation</h4>
<p>With the template created, all that remains is to assign it to a page. From the “Edit Page” interface, find the “Page Attributes” box (usually right below the “Publish” box) and select “Full-Width Template” from the “Templates” dropdown menu.</p>
<h3>6. Extras</h3>
<p>Now let’s tackle some of the “extras” that sometimes come up as challenges during a WordPress migration.</p>
<ul>
<li><strong>Breadcrumbs</strong><br />
Breadcrumbs are relatively common on websites. The easiest way to reproduce them is with a plugin. My current favorite is <a class="colorbox" href="http://wordpress.org/extend/plugins/breadcrumb-navxt/">Breadcrumb NavXT</a> (free). <a class="colorbox" href="http://wordpress.org/extend/plugins/wordpress-seo/">WordPress SEO</a> also offers built-in breadcrumbs.</li>
<li><strong>Widgets</strong><br />
If the design you’re migrating has a sidebar, you could either reproduce it as is (the migration theme has a sample sidebar in place) or integrate WordPress widgets to allow for a dynamically managed sidebar. The folks at Automattic have prepared a handy <a class="colorbox" href="http://automattic.com/code/widgets/themes/">guide to widgetizing themes</a>. Start there.</li>
<li><strong>Restricted content</strong><br />
In case some content needs to be restricted, WordPress offers <a class="colorbox" href="http://codex.wordpress.org/Using_Password_Protection">basic password protection</a> by default. If you want more control, use a plugin. For basic role management and content permissions, I recommend <a class="colorbox" href="http://wordpress.org/extend/plugins/members/">Members</a> (free). For more advanced control (especially if payment is involved), consider <a class="colorbox" href="http://wordpress.org/extend/plugins/membership/">Membership</a> (which has basic and premium versions), <a class="colorbox" href="http://wordpress.org/extend/plugins/s2member/">s2Member</a> (also free and premium) and <a class="colorbox" href="http://wordpress.org/extend/plugins/wp-members/">WP-Members</a> (free).</li>
<li><strong>Custom Post Types</strong><br />
Some migrations, especially ones with a lot of different types of content, call for “custom post types.” You can learn about <a class="colorbox" href="http://codex.wordpress.org/Post_Types">custom post types in the Codex</a>. To set them up, I recommend using a plugin. Two good choices are <a class="colorbox" href="http://wordpress.org/extend/plugins/custom-post-type-ui/">Custom Post Type UI</a> and <a class="colorbox" href="http://wordpress.org/extend/plugins/types/">Types</a> (both free).</li>
</ul>
<h3>Review Website</h3>
<p>Now that we’ve wrapped up work on the theme, it’s time for a review. Work carefully through the pages on the migrated website. For a large website, focus on the different templates. As you review, here are some things to watch out for:</p>
<ol>
<li><strong>Broken links</strong><br />
Make sure all links work as they should. If you have only a few pages, you can check manually. For an automated check, use <a class="colorbox" href="http://peacockmedia.co.uk/integrity/">Integrity</a> (free, for Mac) or <a class="colorbox" href="http://home.snafu.de/tilman/xenulink.html">Xenu’s Link Sleuth</a> (free, for Windows).</li>
<li><strong>Broken styles</strong><br />
Occasionally, for one reason or another, a design element of your website might have broken during the migration. Carefully compare the old HTML to the new to make sure you haven’t missed any important code and that the corresponding style sheet rules have been carried over. If all else fails, a quick rebuild of the design element on the new website might be in order.</li>
<li><strong>Broken functionality</strong><br />
Test any functionality that you’ve migrated over, such as “Buy now” buttons, contact forms, newsletter opt-ins, “members-only” content, embedded maps, media players, etc.</li>
<li><strong>Temporary links</strong><br />
Depending on how you’ve carried out the migration, temporary links to a subfolder or testing domain might appear in your content or theme. You’ll want to update these before going live. Use the <a class="colorbox" href="http://wordpress.org/extend/plugins/search-and-replace/">Search and Replace</a> plugin (free) to check for and update links in your content.</li>
</ol>
<h4>Setting Up Redirects</h4>
<p>If your link structure has changed (and it usually will, even if only slightly), make sure that visitors are redirected from the old pages to the new. For small amounts of content, one of the easiest ways to set up redirects is by adding them to the <code>.htaccess</code> file.</p>
<p>Open the <code>.htaccess</code> file in the WordPress directory. If you don’t see it, set your FTP client to show hidden files. Now, create redirect rules for each of the old pages. Be sure to put these rules <em>after</em> WordPress’ block of rules.</p>
<p>Here are the rewrite rules for our links:</p>
<pre><code class="language-markup">
Redirect 301 /wallpaper.php http://veganfoodpyramid.com/wallpaper/
Redirect 301 /about.php http://veganfoodpyramid.com/about/
Redirect 301 /contact.php http://veganfoodpyramid.com/contact/
Redirect 301 /contactthanks.php http://veganfoodpyramid.com/contact/thanks/
</code></pre>
<p>If editing your <code>.htaccess</code> file is not an option or if you’re dealing with a lot of redirects, then have a look at <a class="colorbox" href="http://wordpress.org/extend/plugins/redirection/">Redirection</a> (free).</p>
<p><strong>Advanced tip:</strong> If the volume of redirects is very high (which is likely with a large-scale migration and a custom importing process), then consider building a function that hooks into <a class="colorbox" href="http://codex.wordpress.org/Plugin_API/Action_Reference/template_redirect"><code>template_redirect</code></a>, compares a generated list of cases, and then uses the <a class="colorbox" href="http://codex.wordpress.org/Function_Reference/wp_redirect"><code>wp_redirect</code></a> function to redirect any matches.</p>
<h3>Going Live</h3>
<p>Going live with a website usually involves one of two tasks:</p>
<ol>
<li>Relocate WordPress from the development folder to the root directory.</li>
<li>Point the domain name from the old server to the new WordPress server.</li>
</ol>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/7.png" rel="wp-prettyPhoto[g2797]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/image_7_compressed.png" alt="Going Live!" width="500" height="350" class="alignnone size-full wp-image-108886" /></a></p>
<h4>Relocating WordPress</h4>
<p>If you set up WordPress in a subfolder (as we did), then going live involves a few simple steps. Follow the guide to <a class="colorbox" href="http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory#Using_a_pre-existing_subdirectory_install">using a pre-existing subdirectory installation</a>.</p>
<p>Once you’ve made the change, check immediately for any broken links that you may have missed in the final review.</p>
<h4>Pointing to a New Server</h4>
<p>If you set up WordPress on a new server, then you probably used a temporary domain. Accordingly, remove references to the temporary domain before pointing the domain to the new server.</p>
<p>Also, if you’re planning to update the name servers for your domain, then first resolve any dependencies in the current DNS records (such as hosted email and third-party services). I usually go live with a domain by updating the A records, leaving the name servers in place.</p>
<h3>Conclusion</h3>
<p>And there you have it! <strong>A successful WordPress migration is all about the details</strong>, and while this guide is by no means comprehensive, you now have a good outline of the process and a sense of some of the challenges you’ll encounter, along with ideas for solving them. If you run into challenges along the way, share them in the comments below. Now get migrating!</p>
<p><em>(al)</em></p>
<hr />
<p><small>© Jonathan Wold for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/15/migrating-a-website-to-wordpress-is-easier-than-you-think/" class="colorbox" title="A Beginner's Guide: Migrating A Website To WordPress Is Easier Than You Think">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/15/migrating-a-website-to-wordpress-is-easier-than-you-think/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=A%20Beginner%27s%20Guide%3A%20Migrating%20A%20Website%20To%20WordPress%20Is%20Easier%20Than%20You%20Think%20http://www.smashingmagazine.com/2013/05/15/migrating-a-website-to-wordpress-is-easier-than-you-think/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/15/a-beginners-guide-migrating-a-website-to-wordpress-is-easier-than-you-think/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Client- And Server-Side Approach: Providing The Best Mobile User Experience Possible</title>
		<link>http://sayingitfirst.com/2013/05/14/a-client-and-server-side-approach-providing-the-best-mobile-user-experience-possible/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=a-client-and-server-side-approach-providing-the-best-mobile-user-experience-possible</link>
		<comments>http://sayingitfirst.com/2013/05/14/a-client-and-server-side-approach-providing-the-best-mobile-user-experience-possible/#comments</comments>
		<pubDate>Tue, 14 May 2013 18:53:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/14/a-client-and-server-side-approach-providing-the-best-mobile-user-experience-possible/</guid>
		<description><![CDATA[<p>Now and again, I hit the swimming pool. It’s a good way to exercise, but also to relax after a long day in front of my PC. I can do quite a few laps in my front crawl, but only because I don’t use my legs much. [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Now and again, I hit the swimming pool. It’s a good way to exercise, but also to relax after a long day in front of my PC. I can do quite a few laps in my front crawl, but only because I don’t use my legs much. I kick steadily to ensure that my legs stay lifted and don’t slow me down. <strong>I don’t use my legs much for forward propulsion.</strong> An instructor once explained to me that legs can definitely help with propulsion in the front crawl, but only at the cost of much higher energy consumption.</p>
<p>He also explained that champions use their legs a lot. Their hearts are powerful, and they can happily sacrifice the extra effort for the small yet significant gain in speed. People with modest competitive ambitions are typically better off with moderate leg usage.</p>
<p>Does this relate to mobile Web development, responsive Web design and server-side device detection?</p>
<p>The analogy is a stretch, but <strong>yes, it does</strong>. As the inventor of <a class="colorbox" href="http://wurfl.sourceforge.net/">WURFL</a>, I used to live in a world where mobile devices were so limited in capabilities that there was no way a commercial website and its corresponding mobile website could be supported through a unique set of HTML pages without the support of some server-side logic. Strategies to detect and tweak content for mobile devices varied from simple detection scripts to the adoption of full-fledged device description repositories (DDR) such as WURFL.</p>
<p>Today, things have, to a large extent, changed. Many still have a feature phone, but the majority of users who care about accessing the Internet from their mobile devices will have a smartphone. A 2013 smartphone means the following: a fast connection, a great WebKit-based browser, a 320-pixel wide (or wider) touchscreen and a great operating system that allows for the installation of apps.</p>
<p>This evolution has turned the mobile Internet into <strong>a swimming pool available to every webmaster</strong>. Programming strategies such as <a class="colorbox" href="http://coding.smashingmagazine.com/2009/04/22/progressive-enhancement-what-it-is-and-how-to-use-it/">progressive enhancement</a> (PE) and <a class="colorbox" href="http://coding.smashingmagazine.com/2011/01/12/guidelines-for-responsive-web-design/">responsive Web design</a> (RWD) enable everyone to make their full websites usable enough on smartphones from a single set of HTML pages &mdash; i.e. with no need for server-side device detection. This is awesome. Webmasters can now make their websites more mobile-friendly without introducing a significant amount of extra complexity. Yet, just like in my initial analogy, the saving is only achieved at the cost of sacrificing certain aspects of the mobile UX that “champions” would not be OK with sacrificing.</p>
<p>In a previous article by Ronan Cremin and me, “<a class="colorbox" href="http://mobile.smashingmagazine.com/2012/09/24/server-side-device-detection-history-benefits-how-to/">Server-Side Device Detection: History, Benefits and How-To</a>,” we explored the different aspects of client-side approaches versus server-side approaches, and we concluded that server-side strategies still offer a lot to mobile Web developers. I won’t repeat it here; rather, I will go one step further and explain how the two worlds can happily coexist for everyone’s benefit.</p>
<h3>Client-Side Vs. Server-Side: A False Dichotomy</h3>
<p>Most IT people are familiar with the saying, “When all you have is a hammer, every problem looks like a nail.” This is perfectly applicable to mobile development, where, in my experience, developers with a JavaScript and CSS background tend to favor client-side solutions to the problem of device diversity, while developers with traditional system development skills find server-side approaches more natural.</p>
<p>Unsurprisingly, there are pros and cons to both approaches, and, more importantly, the two approaches are not mutually exclusive and can be made to work together. After all, for any organization that offers a website, the ultimate purpose is to create the <strong>greatest user experience possible</strong> for its users within the constraints of the project’s timeline and budget.</p>
<h3>Best Of Both Worlds</h3>
<p>When it comes to building a strategy for a website that is friendly to mobile users, there is a whole range of possibilities. At one extreme, a designer might adopt a purely responsive website because they cannot afford to maintain a server-side detection component (or simply because they do not find enough value in the extra complexity). At the other extreme are large companies whose websites (and mobile websites) address particular quirks of popular devices. This approach requires an investment and dedicated team so large that typically only major Internet companies (think Facebook, Yahoo and Google) would go for it.</p>
<p>Most other companies will find <strong>the optimum point somewhere between the two extremes</strong> by segmenting the world of connected users in ways that make the most sense in their markets. Such segmentation will need to rely on some form of server-side detection.</p>
<p>One way to put it is that one should adopt a “best of both worlds” hybrid approach. In this article, I will show an example of this.</p>
<p>Every software project is one-off. The Web is no exception. Nor is mobile Web development, where the super-rapid progress of mobile devices is constantly turning best practices into moving targets. For this article, I figured that nothing could make the point better than a real example with real code.</p>
<p><strong>My example is a cross-browser and cross-device slideshow.</strong> I will show how server-side and client-side detection can be made to work together to deliver a great UX on a variety of clients.</p>
<h3>Segmentation (Good Ol’ Divide And Conquer)</h3>
<p>The slideshow will be made available to the following classes of HTTP clients:</p>
<ul>
<li>non-smartphones (or feature phones),</li>
<li>smartphones,</li>
<li>tablets and desktops.</li>
</ul>
<p>I have always called these “segments,” and I have referred to the splitting up into segments as “segmentation.” The key point is that each segment will be provided with a fundamentally different UI structure. Such segmentation will be supported through server-side detection.</p>
<p>Within each segment, there will still be space for further optimization of the UX. Such optimizations will happen with RWD and device detection. Notably, this approach will be used to obtain pictures in different sizes and to address the bandwidth problem, particularly for mobile devices.</p>
<p>Let’s start by sketching the different UIs for the different classes of HTTP clients (i.e. segments).</p>
<h4>Non-Smartphones</h4>
<p>Non-smartphones are commonly referred to as feature phones in the industry. There is no standard definition of what a smartphone is, but a device that possesses the following features would likely be called a smartphone by most:</p>
<ul>
<li>touchscreen;</li>
<li>a screen that is 240-pixels wide or wider;</li>
<li>Android 2.2, iOS, Windows Phone 7.5 or higher, RIM OS 7 or higher, Symbian Belle or higher, Nokia N9 WebKit-based browser;</li>
<li>not a tablet.</li>
</ul>
<p>This is a totally arbitrary definition, but good enough for the purpose of this article.</p>
<p>Devices that do not support one or more of the above features will be considered feature phones.</p>
<p>Because no assumption can be made for non-smartphones, we will assume a small screen, no touchscreen and limited bandwidth (which entails the need to minimize the number of HTTP requests required to download all of the content).</p>
<p>Please note that the lack of a touchscreen might require users to click the “down” button multiple times to get to the icon they wish to select.</p>
<p>The following wireframe nicely illustrates what we are getting at:</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/featurephones-compr.png" rel="wp-prettyPhoto[g2796]"><img class="alignnone size-full wp-image-133784" alt="feature phone view" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/featurephones-500-compr.png" width="500" height="410" /></a><br />
<em>Feature phones (i.e. non-smartphones) have relatively small screens (typically narrower than 240 pixels). The presence of a touchscreen should not be assumed for devices in this segment.</em></p>
<h4>Smartphones</h4>
<p>Smartphones have a large screen, and users don’t have to click their way through icons to get to the one they want. They simply touch it. Because of this, a UI such as the following is better suited to them:</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/smartphone-compr.png" rel="wp-prettyPhoto[g2796]"><img class="alignnone size-full wp-image-133785" alt="smartphone view" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/smartphone-500.png" width="500" height="460" /></a><br />
<em>Smartphones have large screens (240 pixels or wider). The presence of a touchscreen and of basic media queries for changes in orientation may be safely assumed.</em></p>
<h4>Tablets and Desktops</h4>
<p>In the case of tablet and desktop browsers, we can safely assume that a large screen is available. In this case, consolidating the two views (i.e. the navigation and the actual picture) into a single screen makes sense:</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/tablet-compr.png" rel="wp-prettyPhoto[g2796]"><img class="alignnone size-full wp-image-133783" alt="tablet view" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/tablet-500.png" width="500" height="313" /></a><br />
<em>A screen 700 pixels wide (or wider) may be assumed.</em></p>
<p>Of course, I created a single segment for tablets and desktops for illustrative purposes, but a real project might segment differently, based on the business model of the organization and the traffic it sees from different classes of devices.</p>
<p>Before delving into the code to implement this, I should discuss a few aspects of mobile development.</p>
<h3>Important Note About Mobile Bandwidth: Speed Isn’t Everything</h3>
<p>US carriers (i.e. network operators) boast in their advertising about their increasingly faster 4G networks and the blazing download speeds that their customers can get. My experience (and the experience of others) is that those figures are sometimes truthful under good network conditions, as in the case of a large single download or of video streaming. In practice, things are a bit more complicated. The overhead of establishing an HTTP connection in mobile is high.</p>
<p>Many browsers and devices open only one or two concurrent connections with the server (partly because of what the <a class="colorbox" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html#sec8.1.4">HTTP specification says</a>, and partly because of hardware limitations). Keep-alives cannot be assumed to always work as one would expect in mobile, because of strategies that the devices follow to save battery power.</p>
<p>The problem is at the lower levels and is rooted in the fact that mobile networks and TCP/IP were not built to play well together to begin with.</p>
<p>Techniques such as “<a class="colorbox" href="http://www.stevesouders.com/blog/2009/05/12/sharding-dominant-domains/">domain sharding</a>” (i.e. fooling the browser into believing it’s talking to different servers) help to increase the number of concurrent connections. However, if you want to increase the download speed (both real and perceived) of a website, limiting the overall number of HTTP connections is your best bet.</p>
<h3>May Your Days Be Merry And Your URLs Unique</h3>
<p>People share links on Twitter, Facebook, Google+ and a lot of other services these days. This is good, but it has also exposed a shortcoming with a popular approach to managing the mobile channel &mdash; i.e. creating a separate mobile website (with separate URLs to the mobile view of the content). In short, a user will share <code>http://m.coolsite.com</code> on Twitter, and users on desktops and tablets will be offered a sucky UI. Having <code>http://www.coolsite.com</code> serve both the Web and mobile experience would effectively solve the problem.</p>
<p>As <a class="colorbox" href="http://mobile.smashingmagazine.com/2012/09/24/server-side-device-detection-history-benefits-how-to/">my last article</a> explains, <strong>there are ways to have a single URL “multi-serve” content for different media</strong>. Of course, this requires a bit more design and work from the service architect as compared to purely client-side approaches.</p>
<p>In the case of PE and RWD, the “uniqueness” of the URL comes free of charge. In the case of server-side detection, a strategy to multi-serve content from a unique URL needs to be designed into the system. We will see one way to achieve this in the code discussed further down.</p>
<h3>Content = Content + Presentation? A Little (But Important) Aside</h3>
<p>Ethan Marcotte, arguably the inventor of RWD, correctly identifies the URL issue in his book <em>Responsive Web Design</em>:</p>
<blockquote>
<p>&#8220;I do think fragmenting our content across different “device-optimized” experiences is a losing proposition, or at least an unsustainable one.&#8221;</p>
</blockquote>
<p>This sentence has been quoted endlessly, and it seems hard to disagree with. Yet, it contains an ambiguity that makes it very debatable, to say the least. <strong>What Ethan calls “content” has historically been referred to as “presentation” by most.</strong> In fact, I could easily argue that separation of content and presentation is the foundation of a plethora of Web programming frameworks, such as <a class="colorbox" href="http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller">model-view-controller</a> (MVC), but also <a class="colorbox" href="http://msdn.microsoft.com/en-us/library/bb263931(v=vs.85).aspx">Windows DNA</a> in the late ’90s.</p>
<p>While I am aware that designers will argue that <strong>the difference between content and presentation is blurry</strong> (advertising is the best example of this), such a differentiation has been very helpful to Web programmers in multiple ways over the past 15 years. In general, professionals are much better off preserving this separation, rather than blurring the difference between the two.</p>
<p>Software architects should obviously <em>not</em> fragment the content managed by their system. At the same time, they should be ready to multi-serve the presentation of the same data to users of different media and different devices in the name of an optimal UX. I would go so far as to argue that PE and RWD are also about providing multiple presentations of the same content, inasmuch as the clever use of grids and media queries allows developers to confine the “multi-serving framework” to a single page.</p>
<p>End of the aside.</p>
<p><strong>Getting back to URL uniqueness</strong>, it is obvious that, in the case of server-side detection, a URL strategy must be designed with extra use of resources. Of course, webmasters have managed similar issues all their careers. Internationalizing a website presents the same challenges: one could have content served in multiple languages from the same URL (or even JSP or PHP page) or simply provide sibling websites, one for each supported language. Support for the potential lack of JavaScript presents a similar issue, as does the fact that an international content provider may wish to offer different (i.e. more relevant) content to visitors from different geographic regions, even where the language is the same. Supporting this means extra effort and cost. Typically, after the cost versus benefit equation is solved, some companies will go for the benefit in spite of the cost.</p>
<p>After so many words, let us see how the following code implements everything we’ve illustrated above.</p>
<h3>The Code</h3>
<p>Everything that has been discussed so far is illustrated in practice with a self-contained example that I built (along with my friend Steve Kamerman, COO at ScientiaMobile) to reinforce the points in this article. Be aware that, for the sake of clarity, the example hardwires many of the resources that would normally be isolated in separate databases or configuration elements.</p>
<p>Here is a list of the main components in the code:</p>
<ul>
<li>a DDR;</li>
<li>an MVC framework;</li>
<li>a controller with the segmentation logic;</li>
<li>a server-side image-resizing framework;</li>
<li>the views &mdash; feature phone, smartphone and tablet/desktop, in our case.</li>
</ul>
<p>Let’s discuss each of them.</p>
<h4>Device Description Repository</h4>
<p>A DDR is a software framework that enables an application to associate an HTTP request with the properties of the client (Web browser, mobile device, Internet-enabled wristwatch, etc.). In our example, I will be using ScientiaMobile’s DDR, WURFL Cloud, because it’s the easiest to install on all platforms and also comes with a <a class="colorbox" href="http://www.scientiamobile.com/cloud">free offering</a> for those who want to play around with it.</p>
<p>Of course, any other DDR could be used in place of WURFL Cloud, including AGPL-licensed WURFL or other open-source frameworks based on user-agent string analysis through regular expressions.</p>
<p>For the purpose of this article, here is the core bit of code that explains how to use the DDR (in the <code>index.php</code> file):</p>
<pre><code class="language-php">:
require_once dirname(__FILE__).'/lib/WurflCloudClient/Client/Client.php';
  :

// Disable caching for testing
$cache_enabled = false;

$wurfl_config = new WurflCloud_Client_Config();
$wurfl_config-&gt;api_key = 'XXXXX:YYYYYYYYYYYYYYYYYYYYYYYYYYY';
  :
if ($cache_enabled) {
	$wurfl = new WurflCloud_Client_Client($wurfl_config);
} else {
	$wurfl = new WurflCloud_Client_Client($wurfl_config, new WurflCloud_Cache_Null());
	header("Cache-Control: no-cache, must-revalidate");
	header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
}
$wurfl-&gt;detectDevice();
</code></pre>
<p><strong>Note:</strong> The cache is disabled because this is handy for testing purposes. But you’ll want to enable it on a production website, or else every HTTP request from your users will be a request to the cloud.</p>
<p>Once this code has run, you will be able to look up device capabilities on your server, without any need to interact with the client through JavaScript or the like, as simply as this:</p>
<pre><code class="language-php">
$wurfl-&gt;getDeviceCapability('is_tablet')
</code></pre>
<p>All of the magic of looking up the HTTP request and recovering a profile for the device is happening under the hood.</p>
<h4>Model-View-Controller Framework</h4>
<p><a class="colorbox" href="http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller">MVC</a> is a popular programming pattern among Java developers that over the years has made inroads among programmers of other languages (including PHP). In short, the MVC framework analyzes an incoming HTTP request and “dispatches” the actual handling to a different PHP page that has been deemed to be more apt for the job. In our case, the framework will route the HTTP request to the PHP page that would implement the best UI for that “segment.”</p>
<p>For the record, the MVC framework we’re using in our example is homemade, but Steve explains that it was inspired by a micro-framework named <a class="colorbox" href="http://silex.sensiolabs.org/">Silex</a>.</p>
<p>The framework itself is implemented in the <code>lib/SimpleApp.php</code> file:</p>
<pre><code class="language-php">
require_once dirname(__FILE__).'/lib/SimpleApp.php'; 
  :
$app = new SimpleApp();
</code></pre>
<p>Once the MVC framework is included, dispatching an HTTP request to the right view (see below) is as simple as this:</p>
<pre><code class="language-php">
$app-&gt;render('image/smartphone.php', $view_data);
</code></pre>
<p>The interesting part is that the URL will not be affected by this. Users will only see the <code>index.php</code> page that responded to the request. This effectively solves the problem of URL uniqueness that we discussed above.</p>
<h4>Controller</h4>
<p>The controller (the “C” in MVC) is in charge of segmentation (i.e. deciding the view to which a certain HTTP client should be directed based on its profile). Here is the core of the controller (in <code>index.php</code>):</p>
<pre><code class="language-php">
if ($wurfl-&gt;getDeviceCapability('is_smartphone')) {
	$app-&gt;render('index/smartphone.php', $view_data);
} else if ($wurfl-&gt;getDeviceCapability('is_mobile') 
&amp;&amp; !$wurfl-&gt;getDeviceCapability('is_tablet')) {
	$app-&gt;render('index/featurephone.php', $view_data);
} else {
	$app-&gt;render('index/desktop.php', $view_data);
}
</code></pre>
<p>In light of what we have explained, this part should be rather self-explanatory: <code>smartphone.php</code> handles smartphones, <code>featurephone.php</code> handles feature phones, and everything else (including tablets) is handled by <code>desktop.php</code>. There are actually two sets of views, one that manages the discovery page (i.e. the thumbnails with pictures) and one that represents the single picture.</p>
<p>The <code>is_smartphone</code> capability is a so-called “virtual capability” &mdash; i.e. a computed property that relies on other capabilities and that represents ScientiaMobile’s understanding of what a smartphone is. A lot of people find this handy. Of course, nothing prevents a WURFL user from choosing the capabilities and rolling a particular segmentation that make the most sense for their business model.</p>
<h4>Image Resizing (RESS)</h4>
<p>RESS stands for “<a class="colorbox" href="http://www.lukew.com/ff/entry.asp?1392"><strong>re</strong>sponsive images and <strong>s</strong>erver-<strong>s</strong>ide components</a>,” making it the most screwed-up abbreviation I have ever seen in my life. Because it is now common, though, I will use it, too. The premise of RESS is fairly reasonable: RWD is cool, but <strong>sending 500 KB pictures to a mobile device is not a good idea</strong> for a variety of reasons. This is why even the most inveterate RWD promoters will concede that resizing pictures on the server in order to speed up downloading and rendering on mobile devices is still a good idea. Of course, CSS and JavaScript files are also resources that you’ll want to make as light as possible. These also fall under the RESS umbrella.</p>
<p>Users of WURFL Cloud also have access to a service called Image Resizer. In short, Image Resizer enables you to create a URL that piggybacks the following bits onto itself:</p>
<ul>
<li>the URL of the original picture,</li>
<li>a combination of parameters that specify how the picture should be resized and manipulated.</li>
</ul>
<p>Requesting the URL will result in a picture with the desired features being obtained. For the record, other services of this kind are around, such as <a class="colorbox" href="http://www.sencha.com/learn/how-to-use-src-sencha-io/">Sencha.io Src</a> and the up-and-coming <a class="colorbox" href="http://whateverweb.com">WhateverWeb</a>, which promises to go beyond simple image resizing. Call me a romantic, but I prefer that we eat our own dog food for this example.</p>
<p>A photographer also graciously gave me some pictures of Chicago for this article, which I’ve hosted at <a class="colorbox" href="http://cto.scientiamobile.com/chicago/"><code>http://cto.scientiamobile.com/chicago/</code></a> (i.e. in a place where Image Resizer can pick them up):</p>
<p>Let’s see how Image Resizer is used in practice (see <code>views/index/smartphone.php</code>):</p>
<pre><code class="language-php">
// Compute the size of the image thumbnails
$thumb_width = 95;
$thumb_height = 95;
$rszr_tumbnail = "http://rszr1.wurflcloud.com/234341/w_$thumb_width/
                  h_$thumb_height/m_cropbox/";
  :
&lt;div style="width: 100%; float: left; margin: 5px;"&gt;
  &lt;?php foreach ($images as $id =&gt; $image) { ?&gt;
   &lt;div style="float: left; margin: 5px;"&gt;
      &lt;a href="&lt;?php echo $app-&gt;getUriPrefix().'/image/'.$id; ?&gt;"&gt;
        :
       &lt;img alt="" src="&lt;?php echo $rszr_tumbnail.$image['src']; ?&gt;" /&gt;
      &lt;/a&gt;
    &lt;/div&gt;
  &lt;?php } ?&gt;
&lt;/div&gt;
</code></pre>
<p>This will generate markup like the following snippet:</p>
<pre><code class="language-markup tmp-html">
&lt;div style="float: left; margin: 5px;"&gt;&lt;a href="/smash/image/1"&gt;&lt;img alt="" src="http://rszr1.wurflcloud.com/234341/w_95/ h_95/m_cropbox/http://cto.scientiamobile.com/chicago/chicago2.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
</code></pre>
<p>In reality, I’ve cheated a bit. I cut some interesting bits from the code above. In particular, I’ve removed a trick to use a really important technique called the <a class="colorbox" href="http://en.wikipedia.org/wiki/Data_URI_scheme">data URI scheme</a>, which enables developers to nest pictures in the HTML itself in the form of ASCII Base64 garbage. As you can imagine, not all devices support the feature (although smartphones usually do). This is where WURFL’s <code>image_inlining</code> capability, along with the ability of the image resizer to provide the picture already in Base64 format, comes in handy. The <code>image_inlining</code> will tell you whether the data URI scheme is supported:</p>
<pre><code class="language-php">
$image_inlining = $wurfl-&gt;getDeviceCapability('image_inlining');
if ($image_inlining) {
	$rszr_tumbnail = "http://rszr1.wurflcloud.com/234341/w_$thumb_width/
                         h_$thumb_height/m_cropbox/in_true/"; } else {
	$rszr_tumbnail = "http://rszr1.wurflcloud.com/234341/w_$thumb_width/
                         h_$thumb_height/m_cropbox/";
}	
  :
&lt;div style="width: 100%; float: left; margin: 5px;"&lt;
&lt;?php foreach ($images as $id =&gt; $image) { ?&gt;
  &lt;div style="float: left; margin: 5px;"&gt;
    &lt;a href="&lt;?php echo $app-&gt;getUriPrefix().'/image/'.$id; ?&gt;"&gt;
    &lt;?php if ($image_inlining) { ?&gt;
      &lt;img alt="" src="&lt;?php echo file_get_contents($rszr_tumbnail.$image['src']); ?&gt;"/&gt; 
    &lt;?php } else { ?&gt;
      &lt;img alt="" src="&lt;?php echo $rszr_tumbnail.$image['src'];?&gt;"/&gt; 
    &lt;?php } ?&gt; 
  &lt;/a&gt;&lt;/div&gt;
&lt;?php } ?&gt;
&lt;/div&gt;
</code></pre>
<p>In the case of a device that supports image inlining, the code above will produce the following:</p>
<pre><code class="language-markup tmp-html">
&lt;div style="float: left; margin: 5px;"&gt;
&lt;a href="/smash/image/1"&gt; &lt;img alt="" src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD//gA7Q1JFQVRPUjogZ2QtanBlZ..
  :
AUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlN
   : 
cH14z9RXHTc6jb6dWdM3GmrdT//Z" /&gt; &lt;/a&gt;
&lt;/div&gt;
</code></pre>
<p>As we discussed earlier, this is particularly crucial because of the importance of minimizing the number of HTTP requests demanded by a mobile device to download a page, an aspect that is simply not worth optimizing in classic Web programming: too much extra work for way too little gain.</p>
<p>Of course, the data URI scheme will greatly increase the perceived download speed on smartphones and non-smartphones alike.</p>
<h4>The Views: Feature Phone, Smartphone and Desktop/Tablet</h4>
<p>The three segments we initially defined map one to one with our three views (feature phone, smartphone and tablet/desktop), according to the MVC paradigm. Each view offers a user experience that is best suited to the respective class of devices and browsers.</p>
<p>It goes without saying that adopters of a DDR still retain control over the UX of a deployed application simply by configuring a device to access a given view (for example, by downgrading a misbehaving smartphone to the feature-phone view).</p>
<p>The feature-phone view is particularly interesting because you’ll want to serve <a class="colorbox" href="http://en.wikipedia.org/wiki/XHTML_Mobile_Profile">XHTML Mobile Profile</a> (XHTML MP) as a markup to those devices. Developers who approach mobile today might get away with ignoring XHTML MP, but for years XHTML MP has been the standard mobile Web markup. Still today, smartphones will immediately recognize a website created in XHTML MP as being a mobile website, even when no <code>viewport</code> meta tag is available. Be aware that XHTML MP is typically better served with a different MIME type than <code>text/html</code>.</p>
<p><strong>Note:</strong> Covering XHTML MP is beyond the scope of this article. If you are curious about the world of mobile programming on feature phones, my document “<a class="colorbox" href="http://www.passani.it/gap/">Global Authoring Practices for the Mobile Web</a>” enjoyed some popularity for some time. Most people find it very informative still today.</p>
<p>The following screenshots visualize what the different UIs mean in practice:</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/feature-phones1.png" rel="wp-prettyPhoto[g2796]"><img alt="Feature Phones" title="Feature Phones" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/feature-phones-500-compr.png" width="500" height="526" /></a><br /><em>The view on feature phones.</em></p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/smartphones-compr.png" rel="wp-prettyPhoto[g2796]"><img alt="View on smartphones" title="View on smartphones" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/smartphones-500-compr.png" width="500" height="427" /></a><br /><em>The view on smartphones.</em></p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/ipad-compr.png" rel="wp-prettyPhoto[g2796]"><img class="alignnone size-full wp-image-133789" alt="Tablet" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/ipad-500-compr.png" width="500" height="375" /></a><br />
<em>The view on tablets and desktop. Above: The page on an iPad.</em></p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/xbox_mini.jpg" rel="attachment wp-att-133790" rel="wp-prettyPhoto[g2796]"><img class="alignnone size-full wp-image-133790" alt="Xbox (MSIE 10)" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/xbox-500_mini.jpg" width="500" height="375" /></a><br /><em>Here is the same page on the Xbox 360 (IE 10).</em></p>
<p>Of course, this example is just a proof of concept. Nothing prevents a programmer from making the desktop view even more responsive than it already is, or from adopting something like the good <a class="colorbox" href="http://www.photoswipe.com/">PhotoSwipe</a> to provide interactive slideshows on smartphones and tablets (but not on older phones, where they would be unlikely to work). Divide and conquer.</p>
<h3>Conclusion</h3>
<p>Purely client-side approaches such as RWD and PE can make Web pages accessible on smartphones. For companies and organizations, this means that supporting mobile devices could be cheaper now than it was a couple of years back. Yet, these savings come at the cost of sacrificing certain aspects of a full-fledged cross-channel Web offering.</p>
<p>Large organizations may still want to adopt server-side device detection in some form to deliver a great UX to everyone who accesses their websites. While RWD and PE strategies can (and should) be adopted by companies, a hybrid client- and server-side approach is the most likely to <strong>deliver a great service to desktop, tablet and mobile users alike</strong>.</p>
<p>We’ve discussed an instance of such a hybrid approach by showing how segmentation, server-side resized images and the data URI scheme are key components to a great user experience across devices and browsers.</p>
<p>Have a look at the <a class="colorbox" href="http://cto.scientiamobile.com/smash/">demo app</a>, or <a class="colorbox" href="http://mobile.smashingmagazine.com/?attachment_id=133920" rel="attachment wp-att-133920">download the full source code</a>.</p>
<p><em>(al)</em></p>
<hr />
<p><small>© Luca Passani for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/14/providing-the-best-mobile-user-experience-possible/" class="colorbox" title="A Client- And Server-Side Approach: Providing The Best Mobile User Experience Possible">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/14/providing-the-best-mobile-user-experience-possible/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=A%20Client-%20And%20Server-Side%20Approach%3A%20Providing%20The%20Best%20Mobile%20User%20Experience%20Possible%20http://www.smashingmagazine.com/2013/05/14/providing-the-best-mobile-user-experience-possible/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/14/a-client-and-server-side-approach-providing-the-best-mobile-user-experience-possible/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fables, Myths And Narratives: Converting Our Stories Into Multi-Screen Experiences</title>
		<link>http://sayingitfirst.com/2013/05/13/fables-myths-and-narratives-converting-our-stories-into-multi-screen-experiences/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=fables-myths-and-narratives-converting-our-stories-into-multi-screen-experiences</link>
		<comments>http://sayingitfirst.com/2013/05/13/fables-myths-and-narratives-converting-our-stories-into-multi-screen-experiences/#comments</comments>
		<pubDate>Mon, 13 May 2013 18:24:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/13/fables-myths-and-narratives-converting-our-stories-into-multi-screen-experiences/</guid>
		<description><![CDATA[<p>Storytelling takes many forms. In the past, stories were told orally, with people telling and retelling myths, fables and even histories. As writing technology became more prevalent, we began to record our stories, and we told them in the pages of books. Now, our society is awash [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Storytelling takes many forms. In the past, stories were told orally, with people telling and retelling myths, fables and even histories. As writing technology became more prevalent, <a class="colorbox" title="The Brothers Grimm" href="http://en.wikipedia.org/wiki/Brothers_Grimm">we began to record our stories</a>, and we told them in the pages of books. Now, our society is awash in different devices and technologies, and those traditions of spoken stories and printed stories are blurring.</p>
<p>Multi-screen narratives are being told across all kinds of platforms, pages and devices, making for truly immersive experiences. We are watching them, tapping them and learning from them. They immerse us in the storyteller’s world. This article outlines what I believe are the <strong>five essentials of telling multi-screen stories</strong>.</p>
<h3>How I Fell In Love With Interactive Storytelling</h3>
<p>First, a little background. My childhood was spent in Nigeria, West Africa. I am a member of the Tiv tribe, a group of about 6 million people clustered in Nigeria’s Benue River Valley. As a child, I heard a lot of Nigerian folktales, about animals, humans and even magic. In Nigerian narrative tradition, stories are often told orally, in front of a gathered audience. During <a class="colorbox" title="Nigerian Festival" href="http://www.youtube.com/watch?v=Zx4NvT_DVX4&amp;feature=player_embedded">festivals</a> and cultural events, men even dress up in <a class="colorbox" title="Nigerian Masquerade costume video" href="http://vimeo.com/18917127">elaborate costumes</a> and perform stories for the crowds. I have vivid memories of these stories and have always been curious about how they could be translated into something digital and interactive.</p>
<p><a class="colorbox" href="http://www.nairaland.com/986883/some-funny-really-nice-nigerian/4#12362934"><img alt="kwagh-hir-nigerian-masquerade" src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/kwagh-hir-nigerian-masquerade.jpg" width="500" height="400" /></a><br /><em>The Kwagh Hir, or Thing of Magic, my tribe’s largest cultural festival (Image: <a class="colorbox" title="naptu2 on Nairaland" href="http://www.nairaland.com/986883/some-funny-really-nice-nigerian/4#12362934">Naptu2</a>)</em></p>
<p>Those fables are a piece of my cultural inheritance. They always seemed to contain essential truths about humans. Take the story of the Ear and the Mosquito. One day, the Ear steals food from the Mosquito and refuses to pay it back. In anger, the Mosquito visits the Ear every evening, demanding the food to be returned, annoying Ear all night with his buzzing. It’s an old tale, <a class="colorbox" title="Why Mosquitoes Buzz in Peoples Ears book, by Verna Aardema" href="http://www.amazon.com/Why-Mosquitoes-Buzz-Peoples-Ears/dp/0140549056">with many versions</a>, but the moral is consistent: don’t steal from your friends.</p>
<p><strong>Creating modern, interactive versions of these stories</strong> is possible, but <strong>how exactly do we do that?</strong> Let’s begin by talking about what I mean by the word “multi-screen.”</p>
<h3>A Bit About Context And Screens</h3>
<p>When speaking about multi-screen storytelling, remember that screens <a class="colorbox" href="http://www.cennydd.co.uk/2013/designing-with-context">have different contexts</a>, not only different capabilities. The same screen on which you carelessly watch videos at home becomes a closely guarded viewport when you’re watching a movie on a crowded train. The context in which people view stories is more important than the device’s specifications. When we tell interactive stories, we need to be aware of this, and embrace it.</p>
<p>I like to focus on the following screens:</p>
<ul>
<li>Sensors (<a class="colorbox" href="http://www.gimcrackd.com/etc/src/">Twine</a>, GPS, <a class="colorbox" href="http://www.arduino.cc/">Arduino</a>, motion detectors, etc.)</li>
<li>Mobiles and tablets (phones, tablets, laptops and everything in between)</li>
<li>Flat-screens (desktops, TVs, etc.)</li>
<li>Public and immersive displays (store kiosks, large stadium screens, projectors, Kinects, etc.)</li>
</ul>
<p>Not all of these need to be used at the same time, because they won’t all be appropriate to the story you are telling. Context is extremely important.</p>
<p>Now, as promised, here are the <strong>five essentials of multi-screen storytelling</strong>.</p>
<h3>1. Divide Your Story Into Separate Content Blocks</h3>
<p>When we create multi-screen narratives, we need to <strong>find natural breakpoints</strong> in the story, places where the <strong>visual or narrative content</strong> can easily be separated. This enables us to deliver different segments to different devices, in different contexts.</p>
<p>Kolobok is a Slavic children’s story about the adventures of a round yellow cake. For the Moscow International Festival, a large team of designers and animators from SilaSveta Studio incorporated it into a <a class="colorbox" href="http://portfolios.risd.edu/gallery/Kolobok/5648689">truly fascinating demonstration</a> of storytelling. Before the show, the team set up a large touchscreen at the children’s height. With their hands, the kids could manipulate parts of the animation by adding movement and color.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/03/kolobok-story-on-touchscreen.jpg" rel="wp-prettyPhoto[g2795]"><img class="alignnone size-full wp-image-157205" alt="kolobok-story-on-touchscreen" src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/kolobok-story-on-touchscreen.jpg" width="500" height="281" /></a><br /><em>A public display for children to play with</em></p>
<p>For the show itself, the full story was projected onto the facade of a large building, allowing the crowd of adults and their children to watch the narrative unfold. Along with sound, it made for another discrete content block, one that closely resembled a 3-D movie.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/03/kolobok-story-on-building.jpg" rel="wp-prettyPhoto[g2795]"><img class="alignnone size-full wp-image-157204" alt="kolobok-story-on-building" src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/kolobok-story-on-building.jpg" width="500" height="281" /></a><br /><em>The full animated story in front of a large festival crowd</em></p>
<p>While the touchscreen and the movie were different views of the same content, they could exist as independent pieces and did not have to appear next to each other. The SilaSveta team found the natural breakpoints in its story and created two separate visual experiences to match them.</p>
<h4>Questions to Ask</h4>
<ul>
<li><strong>Where are the breakpoints in the story?</strong> Divide your content so that it makes sense in context. The practice of responsive design gives us <a class="colorbox" title="Mark Boulton on designing for content first" href="http://www.markboulton.co.uk/journal/a-richer-canvas">numerous guidelines</a> on how to do this.</li>
<li><strong>Can those content blocks exist independently?</strong> Sometimes, the answer is no, but it depends on the story. In the Kolobok example above, they can. In other interactive stories, such as <a class="colorbox" title="Snow Fall from the NY Times" href="http://www.nytimes.com/projects/2012/snow-fall/#/?part=tunnel-creek">Snow Fall</a> from the New York Times, the blocks are chapters in a single story and should be kept together.</li>
</ul>
<h3>2. Offer People Multiple Perspectives</h3>
<p><a class="colorbox" href="http://bear71.nfb.ca/#/bear71">Bear 71</a> is an award-winning multi-screen experience created by Jeremy Mendes and Leanne Allison. The creators tell the story of a bear living in Banff National Park in Canada. It feels like a cross between a role-playing game and a TV documentary, and as a <a class="colorbox" href="http://www.youtube.com/watch?v=58jHqrymqPM" rel="wp-prettyPhoto[g2795]"">linear narrative with a non-linear interface</a>, it works beautifully.</p>
<p><a class="colorbox" href="http://bear71.nfb.ca/#/bear71"><img alt="bear71-story-site" src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/bear71-story-site.jpg" width="500" height="328" /></a><br /><em>The Bear 71 story is told in a highly abstracted interface.</em></p>
<p><strong>Multiple viewpoints are accessible</strong>. Online, you roam in a stylized landscape, watch crittercam footage from the forest, and otherwise live as bears do — freely. Even though it may look like a game interface, you are not so much “playing” as you are participating in a story. Watching real crittercam footage, you see what the forest silently sees. You also have the option to turn on your webcam (“stealth mode”) to see other users around the world, all watching the same story online.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/bear71-AR-installation.jpg" rel="wp-prettyPhoto[g2795]"><img alt="bear71-AR-installation" src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/bear71-AR-installation.jpg" width="500" height="400" /></a></p>
<p>During shows and installations, the team responsible for Bear 71 set up augmented-reality applications and motion-detection cameras, so that visitors could experience <a class="colorbox" href="http://iambear71.tumblr.com/post/16604858064/walls-of-surveillance-images-of-bear71-subjects">what it’s like to have their pictures taken</a> with one. By playing with the augmented-reality apps and the motion-detection cameras at the installations, <strong>users got a bit of the same physical experience that the bears had</strong>.</p>
<h4>Questions to Ask</h4>
<ul>
<li><strong>Does the narrative change when viewed from a different perspective?</strong> A variety of perspectives can make a narrative much more fascinating. Bear 71 forces us to see the world first from the bear’s perspective and to sympathize with its loss of habitat, but other viewpoints take a slightly different angle. The voyeurism common in our digital sharing culture takes on a different meaning when used for animal surveillance.</li>
<li><strong>What data sets can be used in the narrative?</strong> Bear 71 cleverly combines crittercam video, GPS data, cell tower data, augmented reality, and topographical data. The photographs of visitors to the installation provide an additional emotional layer of data. The data we bring into our stories helps to define additional viewpoints and characters.</li>
</ul>
<h3>3. Redefine A Tradition</h3>
<p>As Western culture has moved more deeply into Nigeria, Nigeria’s traditions are weakening. I wanted to take a piece of my culture and put it in the cloud, instead of leaving it locked in the heads of our oral storytellers. That meant redefining how the stories are relayed, how they are saved and, most importantly, what messages they convey to the audience.</p>
<p>In 2011, I started a project named <a class="colorbox" href="http://pixel-fable.com/">Pixel Fable</a> in which I take those traditional stories and reinterpret them online. In essence, I’m creating an <strong>interactive archive of Nigerian stories</strong>. As mentioned earlier, the oral histories of Nigerians are rich, but capturing them and translating them into digital stories means they will reach a wider audience. About 25% of my website’s visitors come from the US, while another 25% come from Japan. Canada, France and Germany also send a fair amount of traffic.</p>
<p>Pixel Fable uses responsive websites, iOS apps and augmented-reality animations to reinterpret Nigeria’s oral history.</p>
<p><a class="colorbox" href="http://tapestry.is/yJe4E/"><img class="alignnone size-full wp-image-157211" alt="pixel-fable-logo" src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/pixel-fable-logo.jpg" width="500" height="352" /></a><br /><em>An introductory screen from “<a class="colorbox" title="Cricket and Mudbrick from Pixel Fable" href="http://tapestry.is/yJe4E/">Cricket and Mud Brick</a>,” a new Pixel Fable story built with the Tapestry app</em></p>
<p>I’ve relied on <strong>two primary contexts to reinterpret the old Nigerian storytelling tradition</strong>. The first is people on their tablets and phones, clicking on and reading the stories. The <a class="colorbox" href="http://www.nielsen.com/us/en/newswire/2013/the-teen-transition--adolescents-of-today--adults-of-tomorrow.html">spread of mobile devices</a> makes this inevitable — why not tell African fables in a more accessible context? The second is my attempt to update the moral lessons for our modern age. While the original story of the Ear and the Mosquito may be a funny tale about annoying insects, the lesson can be updated to speak about how mosquitoes spread malaria in Nigeria. There’s room to redefine our old myths for the 21st century.</p>
<h4>Questions to Ask</h4>
<ul>
<li><strong>Will people love or hate the reimagined version?</strong> Not every fable or myth can (<a class="colorbox" href="http://www.npr.org/2012/03/02/147573582/the-lorax-a-campy-and-whimsical-seussical">or should</a>) be recreated digitally. However, if people have an emotional reaction to a story that you have designed and pushed out to multiple screens, that is usually a good sign.</li>
<li><strong>If people talk about your narrative, will it bring about change in society?</strong> Each Pixel Fable story has a message. Most fables do. Some revolve around love triangles, others around the wisdom of elders, and there’s even one about why you shouldn’t get angry at your friends. They are small messages, but put together, they force us to reconsider how we treat the narrative history of people in Nigeria and West Africa.</li>
</ul>
<h3>4. Immerse People In The Narrative</h3>
<p>The Walking Dead, the famous comic and now TV show, used a <a class="colorbox" href="http://www.amctv.com/shows/the-walking-dead/story-sync">polling Web app</a> (AMC’s Story Sync, if you like marketing-speak) to ask viewers questions and show related content as an episode was being broadcast on TV. While the app was simply timed to each scene, it was an experiment in multi-screen storytelling that invited <strong>audience participation</strong>, not just audience attention. Polling has a <a class="colorbox" href="http://www.engadget.com/2013/01/11/the-state-of-the-second-screen/">gimmicky feel to it</a>, but that probably came about as a result of Hollywood pressure and doesn’t reflect the value of the concept in general.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/03/walking-dead-story-sync.jpg" rel="wp-prettyPhoto[g2795]"><img class="alignnone size-full wp-image-157215" alt="walking-dead-story-sync" src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/walking-dead-story-sync.jpg" width="500" height="340" /></a><br /><em>Polling and syncing apps extend narratives from the TV to the couch.</em></p>
<p>The creators also added <a class="colorbox" href="http://www.amctv.com/shows/the-walking-dead/mobile">mobile gaming</a> to the mix, bringing viewers “into” the story in a completely different way, in different contexts.</p>
<p>All of these facets of each story’s arc <strong>enabled people to immerse themselves</strong> in this apocalyptic narrative. Jason Spero of Google <a class="colorbox" title="Multi-screen mania" href="http://gigaom.com/2012/08/29/multi-screen-mania-how-our-devices-work-together/">notes</a> the need for a seamless experience as users move between devices. Other people, however, say that a second-screen experience can be extremely distracting, forcing viewers to <a class="colorbox" href="http://gigaom.com/2012/09/09/can-breaking-bads-story-sync-get-viewers-to-give-up-their-dvrs/">miss key parts</a> of the TV show. It is the opposite of an immersive experience, they say, and is confusing to use. In my opinion, each content block should work independently to avoid putting users in this position.</p>
<h4>Questions to Ask</h4>
<ul>
<li><strong>Will people forget where they are?</strong> I’ll be the first to admit that this is not always a good thing. I can’t count the number of times that I’ve almost missed my train stop because my head was buried in my phone. Context, not only device capability, is key. Do you want users to get lost in the story or just engage in a manageable chunk?</li>
<li><strong>Do the screens you have chosen feel natural?</strong> By this, I’m not referring to pixel density. That is simply impossible to control, and if the story if good, it won’t matter anyway. The screens that people choose will depend a lot on the tasks they want to complete, so make your story feel natural for whatever content block they are interacting with.</li>
</ul>
<h3>5. Design Contextual Interactions</h3>
<p>Recently, a number of storytelling apps have relied on location to serve additional content, much in the same way that Foursquare or Google Maps do. <a class="colorbox" href="http://www.thesilenthistory.com/">The Silent History</a> is a dystopian science-fiction story about children who do not speak. The iPad app contains the whole story, but by visiting certain geo-tagged locations, users can access additional content.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/03/silent-history-story.jpg" rel="wp-prettyPhoto[g2795]"><img class="alignnone size-full wp-image-157216" alt="silent-history-story" src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/silent-history-story.jpg" width="500" height="307" /></a></p>
<p>For a novel about children all over the US, <strong>inviting readers to physically go to where the story’s kids are</strong> makes perfect sense. The additional contextual interaction makes the story more layered and thought-provoking, in a way that a simple app would not be.</p>
<p>We use map data every day, to look for restaurants, check the weather, see road conditions and even check for public transit delays. Other <strong>contextual interactions</strong> make sense when creating digital stories: taking photographs, texting, sharing and saving information, even <a class="colorbox" href="https://getmyo.com/">body motion</a>. Use these, along with your UI and UX skill sets, to devise new storytelling methods.</p>
<h4>Questions to Ask</h4>
<ul>
<li><strong>Does the device matter?</strong> With the rise of responsive design workflows, our content should not be device-dependent. Some things, however, such as camera or GPS functionality, may be integral to a part of your story, and so the device would need to be factored in.</li>
<li><strong>Should the interface be designed as a seamless part of the narrative?</strong> As people who work on the Web, we really have a strength here. If we choose to make the interface part of the story, then we can rely on our experience in building websites and content management systems.</li>
<li><strong>Will your story “remember” anything? </strong>As a child, I folded over the top corner of the page when I had to put a book down. It was a simple way to keep my place. With a narrative split across multiple devices, it might be necessary to design an interaction that flags where you’ve gotten to and then returns you there when you visit again. That all depends on the content, but the question does need to be asked. Everyone hates losing their place on the Internet and having to navigate back, so perhaps we should enable a memory in our stories as well.</li>
</ul>
<h3>Conclusion</h3>
<p>We have conceptualized different uses of multiple screens to tell stories. All of us, from every corner of the globe, have intensely rich cultures <strong>filled with stories and fables</strong>. Using them to create interactive narratives is another way to <a class="colorbox" title="Books and Print Sandbox" href="http://www.react-hub.org.uk/books-and-print-sandbox/commissions/2013/">explore the power of the Web</a>, to wow people and to record our cultural history.</p>
<p>I would love to see what you come up with, or hear about other examples of clever digital storytelling.</p>
<p><em>(al) (ea)</em></p>
<hr />
<p><small>© Senongo Akpem for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/13/fable-myth-narrative-create-multiscreen-narratives/" class="colorbox" title="Fables, Myths And Narratives: Converting Our Stories Into Multi-Screen Experiences">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/13/fable-myth-narrative-create-multiscreen-narratives/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Fables%2C%20Myths%20And%20Narratives%3A%20Converting%20Our%20Stories%20Into%20Multi-Screen%20Experiences%20http://www.smashingmagazine.com/2013/05/13/fable-myth-narrative-create-multiscreen-narratives/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/13/fables-myths-and-narratives-converting-our-stories-into-multi-screen-experiences/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keeping The Big &lt;picture&gt; Small: How To Avoid Duplicate Downloads In Responsive Images</title>
		<link>http://sayingitfirst.com/2013/05/10/keeping-the-big-picture-small-how-to-avoid-duplicate-downloads-in-responsive-images/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=keeping-the-big-picture-small-how-to-avoid-duplicate-downloads-in-responsive-images</link>
		<comments>http://sayingitfirst.com/2013/05/10/keeping-the-big-picture-small-how-to-avoid-duplicate-downloads-in-responsive-images/#comments</comments>
		<pubDate>Fri, 10 May 2013 19:52:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/10/keeping-the-big-picture-small-how-to-avoid-duplicate-downloads-in-responsive-images/</guid>
		<description><![CDATA[<p>The element is a new addition to HTML5 that’s being championed by the W3C’s Responsive Images Community Group (RICG). It is intended to provide a declarative, markup-based solution to enable responsive images without the need of JavaScript libraries or complicated server-side detection. The element supports a number [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>The <code></code> element is a new addition to HTML5 that’s being championed by the W3C’s <a class="colorbox" href="http://responsiveimages.org/">Responsive Images Community Group</a> (RICG). It is intended to provide a declarative, markup-based solution to enable responsive images without the need of JavaScript libraries or complicated server-side detection.</p>
<p>The <code></code> element supports a number of different types of fallback content, <strong>but the current implementation of these fallbacks is problematic</strong>. In this article, we’ll explore how the fallbacks work, how they fail and what can be done about it.</p>
<h3>The <code></code> Element And Fallback Content</h3>
<p>Like <code></code> and <code></code>, <code></code> uses <code></code> elements to provide a set of images that the browser can choose from. The <code></code> elements may optionally contain <code>type</code> and <code>media</code> attributes to let the browser know the file type and media type of the source, respectively. Given the information in the attributes, the browser should render the first <code></code> with a supported file type and matching media query. For example:</p>
<pre><code class="language-markup">
&lt;picture&gt;
    &lt;source src="landscape.webp" type="image/webp" media="screen and (min-width: 20em) and (orientation: landscape)" /&gt;
    &lt;source src="landscape.jpg" type="image/jpg" media="screen and (min-width: 20em) and (orientation: landscape)" /&gt;
    &lt;source src="portrait.webp" type="image/webp" media="screen and (max-width: 20em) and (orientation: portrait)" /&gt;
    &lt;source src="portrait.jpg" type="image/jpg" media="screen and (max-width: 20em) and (orientation: portrait)" /&gt;
&lt;/picture&gt;
</code></pre>
<p>For situations in which a browser doesn’t know how to deal with <code></code> (or <code></code> or <code></code>) or cannot render any of the <code></code> elements, a developer can <strong>include fallback content</strong>. This fallback content is often either an image or descriptive text; if the fallback content is an <code><img></code>, then a further fallback is provided in the <code>alt</code> attribute (or <code>longdesc</code>), as normal.</p>
<pre><code class="language-markup">
&lt;picture&gt;
    &lt;source type="image/webp" src="image.webp" /&gt;
    &lt;source type="image/vnd.ms-photo" src="image.jxr" /&gt;
    &lt;img src="fallback.jpg" alt="fancy pants"&gt;
&lt;/picture&gt;
</code></pre>
<p>The <code></code> element differs from <code></code> and <code></code> in that it also allows <code>srcset</code>. The <code>srcset</code> attribute enables a developer to specify different images based on a device’s pixel density. When creating a responsive image using both <code></code> and <code>srcset</code>, we might expect something like the following:</p>
<pre><code class="language-markup">
&lt;picture&gt;
    &lt;source srcset="big.jpg 1x, big-2x.jpg 2x, big-3x.jpg 3x" type="image/jpeg" media="(min-width: 40em)" /&gt;
    &lt;source srcset="med.jpg 1x, med-2x.jpg 2x, med-3x.jpg 3x" type="image/jpeg" /&gt;
    &lt;img src="fallback.jpg" alt="fancy pants" /&gt;
&lt;/picture&gt;
</code></pre>
<p>The idea behind a <code></code> example like this is that exactly one image should be downloaded, according to the user’s context:</p>
<ul>
<li>Users with <code></code> support and a viewport at least 40 ems wide should get the <code>big</code> image.</li>
<li>Users with <code></code> support and a viewport narrower than 40 ems should get the <code>med</code> image.</li>
<li>Users without <code></code> support should get the fallback image.</li>
</ul>
<p>If the browser chooses to display the <code>big</code> or <code>med</code> source, it can choose an image at an appropriate resolution based on the <code>srcset</code> attribute:</p>
<ul>
<li>A browser on a low-resolution device (such as an iMac) should show the <code>1x</code> image.</li>
<li>A browser on a higher-resolution device (such as an iPhone with a Retina display) should show the <code>2x</code> image.</li>
<li>A browser on a next-generation device with even higher resolution should show the <code>3x</code> image.</li>
</ul>
<p><strong>The benefit to the user is that only one image file is downloaded</strong>, regardless of feature support, viewport dimensions or screen density.</p>
<p>The <code></code> element also has the ability to use non-image fallbacks, which should be great for accessibility: if no image can be displayed or if a user needs a description of an image, then a <code>
<p></code> or <code><span></code> or <code><br />
<table></code> or any other element may be included as a fallback. This allows for more robust and content-appropriate fallbacks than a simple <code>alt</code> attribute.</p>
<h3>The Fallback Problem</h3>
<p>Right now, the <code></code> element is not supported in any shipped browsers. Developers who want to use <code></code> can use <a class="colorbox" href="http://scottjehl.com/">Scott Jehl</a>’s <a class="colorbox" href="https://github.com/scottjehl/picturefill">Picturefill</a> polyfill. Also, <a class="colorbox" href="http://blog.yoav.ws/">Yoav Weiss</a> has created a Chromium-based prototype <a class="colorbox" href="http://downloads.responsiveimages.org/">reference implementation</a> that has partial support for <code></code>. This Chromium build not only shows that browser support for <code></code> is technically possible, but also enables us to check functionality and behavior against our expectations.</p>
<p>When testing examples like the above in his Chromium build, Yoav spotted a problem: even though <code></code> is supported, and even though one of the first two <code></code> elements was being loaded, the fallback <code><img></code> was <em>also</em> loaded. <strong>Two images were being downloaded, even though only one was being used.</strong></p>
<pre><code class="language-markup">
    &lt;!-- show screenshot of network pane here --&gt;
</code></pre>
<p>This happens because browsers “look ahead” as HTML is being downloaded and immediately start downloading images. As Yoav explains:</p>
<blockquote>
<p>&#8220;When the parser encounters an img tag it creates an HTMLImageElement node and adds its attributes to it. When the attributes are added, the node is not aware of its parents, and when an ‘src’ attribute is added, an image download is immediately triggered.&#8221;</p>
</blockquote>
<p>This kind of “look ahead” parsing works great most of the time because the browser can start downloading images even before it has finished downloading all of the HTML. But in cases where an <code>img</code> element is a child of <code></code> (or <code></code> or <code></code>), the browser wouldn’t (currently) care about the parent element: it would just see an <code>img</code> and start downloading. The problem also occurs if we forget about the parent element and just consider an <code><img></code> that has both the <code>src</code> and <code>srcset</code> attributes: the parser would download the <code>src</code> image before choosing and downloading a resource from <code>srcset</code>.</p>
<pre><code class="language-markup">
&lt;picture&gt;
    &lt;source srcset="big.jpg 1x, big-2x.jpg 2x, big-3x.jpg 3x" media="(min-width: 40em)" /&gt;
    &lt;source srcset="med.jpg 1x, med-2x.jpg 2x, med-3x.jpg 3x" /&gt;
    &lt;img src="fallback.jpg" alt="fancy pants" /&gt;
    &lt;!-- fallback.jpg is *always* downloaded --&gt;
&lt;/picture&gt;

&lt;img src="fallback.jpg" srcset="med.jpg 1x, med-2x.jpg 2x, med-3x.jpg 3x" alt="fancy pants" /&gt;
&lt;!-- fallback.jpg is *always* downloaded --&gt;

&lt;video&gt;
    &lt;source src="video.mp4" type="video/mp4" /&gt;
    &lt;source src="video.webm" type="video/webm" /&gt;
    &lt;source src="video.ogv" type="video/ogg" /&gt;
    &lt;img src="fallback.jpg" alt="fancy pants" /&gt;
    &lt;!-- fallback.jpg is *always* downloaded --&gt;
&lt;/video&gt;
</code></pre>
<p>In all of these cases, we would have multiple images being downloaded instead of just the one being displayed. But who cares? Well, your users who are downloading extra content and wasting time and money would care, especially the ones with bandwidth caps and slow connections. And maybe you, too, if you’re paying for the bandwidth you serve.</p>
<h3>A Potential Solution</h3>
<p>This problem needs both short- and long-term solutions.</p>
<p>In the long term, we need to make sure that browser implementations of <code></code> (and <code></code> and <code></code>) can overcome this bug. For example, <a class="colorbox" href="http://berjon.com/">Robin Berjon</a> has suggested that it might be possible to treat the contents of <code></code> as inert, like the contents of <code></code>, and to use the Shadow DOM (see, for example, “<a class="colorbox" href="http://www.html5rocks.com/en/tutorials/webcomponents/template/">HTML5’s New Template Tag: Standardizing Client-Side Templating</a>”). Yoav has suggested using an attribute on <code><img></code> to indicate that the browser should wait to download the <code>src</code>.</p>
<p>While changing the way the parser works is technically possible, it would make the implementation more complicated. Changing the parser could also affect JavaScript code and libraries that assume a download has been triggered as soon as a <code>src</code> attribute is added to an <code><img></code>. These long-term changes would require cooperation from browser vendors, JavaScript library creators and developers.</p>
<p>In the short term, we need a working solution that avoids wasted bandwidth when experimenting with <code></code> and <code>srcset</code>, and when using <code></code> and <code></code> with <code><img></code> fallbacks. Because of the difficulty and time involved in updating specifications and browsers, a short-term solution would need to rely on existing tools and browser behaviors.</p>
<p>So, what is currently available to us that solves this in the short term? Our old friends <code></code> and <code></code>, both of which can be used to display images. If you load an image using these tags, it will <strong>display properly in the appropriate fallback conditions, but it won’t otherwise be downloaded</strong>.</p>
<p>Different browsers behave differently according to whether we use <code></code>, <code></code> or both. To find the best solution, I tested (using a slightly modified version of <a class="colorbox" href="https://gist.github.com/4062299">this gist</a>) in:</p>
<ul>
<li>Android browser 528.5+/4.0/525.20.1 on Android 1.6 (using a virtualized Sony Xperia X10 on BrowserStack)</li>
<li>Android browser 533.1/4.0/533.1 on Android 2.3.3 (using a virtualized Samsung Galaxy S II on BrowserStack)</li>
<li>Android browser 534.30/4.0/534.30 on Android 4.2 (using a virtualized LG Nexus 4 on BrowserStack)</li>
<li>Chrome 25.0.1364.160 on OS X 10.8.2</li>
<li>Chromium 25.0.1336.0 (169465) (RICG Build) on OS X 10.8.2</li>
<li>Firefox 19.0.2 on OS X 10.8.2</li>
<li>Internet Explorer 6.0.3790.1830 on Windows XP (using BrowserStack)</li>
<li>Internet Explorer 7.0.5730.13 on Windows XP (using BrowserStack)</li>
<li>Internet Explorer 8.0.6001.19222 on Windows 7 (using BrowserStack)</li>
<li>Internet Explorer 9.0.8112.16421 on Windows 7 (using BrowserStack)</li>
<li>Internet Explorer 10.0.9200.16384 (desktop) on Windows 8 (using BrowserStack)</li>
<li>Opera 12.14 build 1738 on OS X 10.8.2</li>
<li>Opera Mobile 9.80/2.11.355/12.10 on Android 2.3.7 (using a virtualized Samsung Galaxy Tab 10.1 on Opera Mobile Emulator for Mac)</li>
<li>Safari 6.0.2 (8536.26.17) on OS X 10.8.2</li>
<li>Safari (Mobile) 536.26/6.0/10B144/8536.25 on iOS 6.1 (10B144) (using an iPhone 4)</li>
<li>Safari (Mobile) 536.26/6.0/10B144/8536.25 on iOS 6.1 (10B141) (using an iPad 2)</li>
</ul>
<p>I ran five tests:</p>
<ol>
<li><code></code> falls back to <code></code></li>
<li><code></code> falls back to <code></code></li>
<li><code></code> falls back to <code></code>, which falls back to <code></code></li>
<li><code></code> falls back to <code></code>, which falls back to <code><img></code></li>
<li><code></code> falls back to <code><img></code></li>
</ol>
<p><strong>I found the following support:</strong></p>
<table class="table-overview">
<caption>What the user sees</caption>
<thead>
<tr>
<th></th>
<th>Test 1</th>
<th>Test 2</th>
<th>Test 3</th>
<th>Test 4</th>
<th>Test 5</th>
</tr>
</thead>
<tbody>
<tr>
<th>Android 1.6</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Android 2.3</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Android 4.2</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Chrome 25</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Chromium 25 (RICG)</th>
<td>picture/source image</td>
<td>picture/source image</td>
<td>picture/source image</td>
<td>picture/source image</td>
<td>picture/source image</td>
</tr>
<tr>
<th>Firefox 19</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>IE 6</th>
<td>no image</td>
<td>no image</td>
<td>no image</td>
<td>no image</td>
<td>fallback image</td>
</tr>
<tr>
<th>IE 7</th>
<td>no image</td>
<td>no image</td>
<td>no image</td>
<td>no image</td>
<td>fallback image</td>
</tr>
<tr>
<th>IE 8</th>
<td>fallback image</td>
<td>no image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>IE 9</th>
<td>fallback image</td>
<td>fallback image (cropped and scrollable)</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>IE 10</th>
<td>fallback image</td>
<td>fallback image (cropped and scrollable)</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Opera 12.1</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Opera Mobile 12.1</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Safari 6</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Safari iOS 6 (iPad)</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
<tr>
<th>Safari iOS 6 (iPhone)</th>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
<td>fallback image</td>
</tr>
</tbody>
</table>
<table class="table-overview">
<caption>HTTP requests</caption>
<thead>
<tr>
<th></th>
<th>Test 1</th>
<th>Test 2</th>
<th>Test 3</th>
<th>Test 4</th>
<th>Test 5</th>
</tr>
</thead>
<tbody>
<tr>
<th>Android 1.6</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Android 2.3</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Android 4.2</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Chrome 25</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Chromium 25 (RICG)</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>2 GETs</td>
</tr>
<tr>
<th>Firefox 19</th>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>IE 6</th>
<td>1 GET</td>
<td>none</td>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
</tr>
<tr>
<th>IE 7</th>
<td>1 GET</td>
<td>none</td>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
</tr>
<tr>
<th>IE 8</th>
<td>1 GET</td>
<td>none</td>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
</tr>
<tr>
<th>IE 9</th>
<td>1 HEAD, 1 GET</td>
<td>1 GET</td>
<td>1 HEAD, 1 GET</td>
<td>1 HEAD, 2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>IE 10</th>
<td>1 HEAD, 1 GET</td>
<td>1 GET</td>
<td>1 HEAD, 1 GET</td>
<td>1 HEAD, 2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Opera 12.1</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Opera Mobile 12.1</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Safari 6</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Safari iOS 6 (iPad)</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
<tr>
<th>Safari iOS 6 (iPhone)</th>
<td>1 GET</td>
<td>1 GET</td>
<td>1 GET</td>
<td>2 GETs</td>
<td>1 GET</td>
</tr>
</tbody>
</table>
<table class="table-overview">
<caption>Image-aware context menu</caption>
<thead>
<tr>
<th></th>
<th>Test 1</th>
<th>Test 2</th>
<th>Test 3</th>
<th>Test 4</th>
<th>Test 5</th>
</tr>
</thead>
<tbody>
<tr>
<th>Android 1.6</th>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>Android 2.3</th>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>Android 4.2</th>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>Chrome 25</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>yes</td>
</tr>
<tr>
<th>Chromium 25 (RICG)</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
</tr>
<tr>
<th>Firefox 19</th>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>IE 6</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>yes</td>
</tr>
<tr>
<th>IE 7</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>yes</td>
</tr>
<tr>
<th>IE 8</th>
<td>yes</td>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>IE 9</th>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>IE 10</th>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>Opera 12.1</th>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>Opera Mobile 12.1</th>
<td>yes</td>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<th>Safari 6</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>yes</td>
</tr>
<tr>
<th>Safari iOS 6 (iPad)</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>yes</td>
</tr>
<tr>
<th>Safari iOS 6 (iPhone)</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>yes</td>
</tr>
</tbody>
</table>
<h3>Making Sure The Content Is Accessible</h3>
<p>Although the specifics of how to provide fallback content for <code></code> are <a class="colorbox" href="https://github.com/ResponsiveImagesCG/picture-element/pull/23">still being debated</a> (see also <a class="colorbox" href="https://github.com/ResponsiveImagesCG/picture-element/issues/6">this thread</a>), I wanted to test how Apple’s VoiceOver performed with different elements. For these experiments, I checked whether VoiceOver read <code>alt</code> attributes in various places, as well as fallback <code><span></code> elements. Unfortunately, I wasn’t able to test using other screen readers or assistive technology, although I’d love to hear about your experiences.</p>
<table class="table-overview">
<caption>Read by VoiceOver</caption>
<thead>
<tr>
<th></th>
<th><code>alt</code> on <code>picture</code></th>
<th><code>alt</code> on <code>source</code> (<code>picture</code> &#8594; <code>source</code>)</th>
<th><code>alt</code> on <code>object</code> (<code>picture</code> &#8594; <code>object</code>)</th>
<th><code>alt</code> on <code>embed</code> (<code>picture</code> &#8594; <code>embed</code>)</th>
<th><code>alt</code> on <code>embed</code> (<code>picture</code> &#8594; <code>object</code> &#8594; <code>embed</code>)</th>
</tr>
</thead>
<tbody>
<tr>
<th>Chrome 25</th>
<td>no</td>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Chromium 25 (RICG)</th>
<td>yes</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
</tr>
<tr>
<th>Firefox 19</th>
<td>no</td>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Opera 12.1</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
</tr>
<tr>
<th>Safari 6</th>
<td>no</td>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Safari iOS 6 (iPad)</th>
<td>no</td>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Safari iOS 6 (iPhone)</th>
<td>no</td>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
</tbody>
</table>
<table class="table-overview">
<caption>Read by VoiceOver</caption>
<thead>
<tr>
<th></th>
<th><code>alt</code> on <code>img</code> (<code>picture</code> &#8594; <code>object</code> &#8594; <code>img</code>)</th>
<th><code>alt</code> on <code>img</code> (<code>picture</code> &#8594; <code>img</code>)</th>
<th><code>span</code> (<code>picture</code> &#8594; <code>span</code>)</th>
<th><code>span</code> (<code>picture</code> &#8594; <code>object</code> &#8594; <code>span</code>)</th>
</tr>
</thead>
<tbody>
<tr>
<th>Chrome 25</th>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Chromium 25 (RICG)</th>
<td>no</td>
<td>no</td>
<td>no</td>
<td>no</td>
</tr>
<tr>
<th>Firefox 19</th>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Opera 12.1</th>
<td>no</td>
<td>no</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Safari 6</th>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Safari iOS 6 (iPad)</th>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<th>Safari iOS 6 (iPhone)</th>
<td>no</td>
<td>yes</td>
<td>yes</td>
<td>no</td>
</tr>
</tbody>
</table>
<h3>Bulletproof Syntax</h3>
<p>Based on these data, I’ve come up with the following “bulletproof” solution:</p>
<pre><code class="language-markup">
&lt;picture alt="fancy pants"&gt;
    &lt;!-- loaded by browsers that support picture and that support one of the sources --&gt;
    &lt;source srcset="big.jpg 1x, big-2x.jpg 2x, big-3x.jpg" type="image/jpeg" media="(min-width: 40em)" /&gt;
    &lt;source srcset="med.jpg 1x, med-2x.jpg 2x, big-3x.jpg" type="image/jpeg" /&gt;

    &lt;!-- loaded by IE 8+, non-IE browsers that don’t support picture, and browsers that support picture but cannot find an appropriate source --&gt;
    &lt;![if gte IE 8]&gt;
    &lt;object data="fallback.jpg" type="image/jpeg"&gt;&lt;/object&gt;
    &lt;span class="fake-alt"&gt;fancy pants&lt;/span&gt;
    &lt;![endif]&gt;

    &lt;!-- loaded by IE 6 and 7 --&gt;
    &lt;!--[if lt IE 8]&gt;
    &lt;img src="fallback.jpg" alt="fancy pants" /&gt;
    &lt;![endif]--&gt;
&lt;/picture&gt;

.fake-alt {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
</code></pre>
<p>Here we have a <code></code> element, two sources to choose from for browsers that support <code></code>, a fallback for most other browsers using <code></code> and a <code><span></code> (see note just below), and a separate <code><img></code> fallback for IE 7 and below. The empty <code>alt</code> prevents the actual image from being announced to screen readers, and the <code><span></code> is hidden using CSS (which is equivalent to <a class="colorbox" href="http://html5boilerplate.com/">HTML5 Boilerplate</a>’s <code>.visuallyhidden</code> class) but still available to screen readers. The <code></code> element is not needed.</p>
<p>(<strong>Note:</strong> The use of the <code><span></code> as a fake <code>alt</code> is necessary so that VoiceOver reads the text in Opera. Even though Opera has a relatively small footprint, and even though it’s in the process of being switched to WebKit, I still think it’s worth our consideration. However, if you don’t care about supporting that particular browser, you could get rid of the <code><span></code> and use an <code>alt</code> on the <code></code> instead (even though that isn’t strictly allowed by the specification). This is assuming that the <code><span></code> and <code>alt</code> have the same content. If you have a richer fallback element, such as a <code><br />
<table></code>, using both it <em>and</em> a non-empty <code>alt</code> attribute might be desirable.)</p>
<p>A similar solution should also work with <code></code>, although <code><img></code> fallbacks for that element are, admittedly, rare. When dealing with <code></code>, the problem goes away if our fallback image is the same as our poster image. If these may be the same, then the “bulletproof” syntax for <code></code> would be this:</p>
<pre><code class="language-markup">
&lt;video poster="fallback.jpg"&gt;
    &lt;!-- loaded by browsers that support video and that support one of the sources --&gt;
    &lt;source src="video.mp4" type="video/mp4" /&gt;
    &lt;source src="video.webm" type="video/webm" /&gt;
    &lt;source src="video.ogv" type="video/ogg" /&gt;

    &lt;!-- loaded by browsers that don't support video, and browsers that support video but cannot find an appropriate source --&gt;
    &lt;img src="fallback.jpg" alt="fancy pants" /&gt;
&lt;/video&gt;
</code></pre>
<p>However, if your <code></code> needs a separate fallback and poster image, then you might want to consider using the same structure as the <code></code> solution above.</p>
<p>Note that <code></code> and <code></code> don’t have <code>alt</code> attributes, and even if you add them, they will be ignored by VoiceOver. For accessible video, you might want to look into the work being done with <a class="colorbox" href="http://dev.w3.org/html5/webvtt/">Web Video Text Tracks</a> (WebVTT).</p>
<p>Unfortunately, extensive testing with <code></code> and <code></code> elements is beyond the scope of this article, so let us know in the comments if you find anything interesting with these.</p>
<h3>How Good (Or Bad) Is This Solution?</h3>
<p>Let’s get the bad out of the way first, shall we? This solution is hacky. It’s obviously not workable as a real, long-term solution. It is crazy verbose; no one in their right mind wants to code all of this just to put an image on a page.</p>
<p>Also, semantically, we really should use an <code><img></code> element to display an image, not an <code></code>. That’s what <code><img></code> is for.</p>
<p>And there are some practical issues:</p>
<ul>
<li>Chrome and Safari won’t show proper context menus for the images, meaning that users won’t be able to open or save them easily.</li>
<li>IE 9 and 10 send an extra HEAD request along with the GET request.</li>
<li>Using a <code><span></code> as a fake <code>alt</code> is pretty sketchy, and although it worked for my tests in VoiceOver, it could potentially cause other accessibility problems.</li>
</ul>
<p>All that being said, as a short-term solution, it’s not <em>too</em> bad. <strong>We get these benefits:</strong></p>
<ul>
<li>A visible image in every browser is tested (<code></code> and <code></code> when supported, and the fallback otherwise).</li>
<li>Only one HTTP GET request in every browser is tested (and the extra <code>HEAD</code> request and response in IE are tiny).</li>
<li>VoiceOver is supported (and is hopefully supported with other screen readers).</li>
<pre><code class="language-markup">
&lt;!-- show screenshot of network pane here --&gt;
</code></pre>
</li>
</ul>
<p>The semantics of the solution, while not ideal, are not horrible either: the <a class="colorbox" href="http://www.w3.org/TR/html5/embedded-content-0.html#the-object-element">HTML5 specification</a> states that an <code></code> “element can represent an external resource, which, depending on the type of the resource, will either be treated as an <strong>image</strong>, as a nested browsing context, or as an external resource to be processed by a plugin” (emphasis mine).</p>
<p>And although the <code><span></code> is not as nice as a real <code>alt</code> attribute, using a visually hidden element for accessibility is not uncommon. Consider, for example, “Skip to content” links that are visibly hidden but available to screen readers.</p>
<h3>Next Steps</h3>
<p>The best part about this solution, though, is that it highlights how bad the current situation is. This is a real problem, and it deserves a better solution than the monstrosity I’ve proposed.</p>
<p>We need discussion and participation from both developers and browser vendors on this. Getting support from browser makers is crucial; a specification can be written for any old thing, but it doesn’t become real until it is implemented in browsers. <strong>Support from developers is needed</strong> to make sure that the solution is good enough to get used in the real world. This consensus-based approach is what was used to add the <code></code> element to the specification recently; Steve Faulkner discusses this process a bit in his excellent <a class="colorbox" href="http://html5doctor.com/interview-steve-faulkner-html5-editor-new-doctor/">interview with HTML5 Doctor</a>.</p>
<p>If you’re interested in helping to solve this problem, please consider joining the discussion:</p>
<ul>
<li><a class="colorbox" href="http://www.w3.org/community/respimg/">Join the RICG</a>, and participate in the <a class="colorbox" href="irc://irc.w3.org:6665/#respimg">#respimg IRC channel</a> and the <a class="colorbox" href="http://list.responsiveimages.org/">public-respimg mailing list</a>.</li>
<li>Check out the <a class="colorbox" href="http://gh.responsiveimages.org/">RICG on GitHub</a>, and consider adding your voice to the <a class="colorbox" href="https://github.com/ResponsiveImagesCG/picture-element/issues/5#issuecomment-15807311">discussion on this issue</a>.</li>
<li>Join the <a class="colorbox" href="http://lists.w3.org/Archives/Public/public-html/">W3C public-html mailing list</a> and <a class="colorbox" href="http://lists.whatwg.org/listinfo.cgi/whatwg-whatwg.org">the WHATWG mailing list</a> to follow and contribute to discussions about the specifications.</li>
<li>Help fix problems with current implementations by reviewing, patching, commenting on and filing bugs for <a class="colorbox" href="https://bugs.webkit.org/">WebKit</a>, <a class="colorbox" href="https://bugzilla.mozilla.org/">Mozilla</a> and <a class="colorbox" href="https://connect.microsoft.com/IE/">Internet Explorer</a>.</li>
</ul>
<p>The next step towards a long-term solution is to achieve consensus among developers and browser vendors on how this should work. Don’t get left out of the conversation.</p>
<p><em>Thanks to fellow RICG members Yoav Weiss, Marcos Cáceres and Mat Marquis for providing feedback on this article.</em></p>
<p><em>(al)</em></p>
<hr />
<p><small>© David Newton for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: &lt;a href=http://www.smashingmagazine.com/2013/05/10/prevent-duplicate-images-downloaded-picture-element/  class=&quot;colorbox&quot;  title=&quot;Keeping The Big <code>&lt;picture&gt;</code> Small: How To Avoid Duplicate Downloads In Responsive Images&#8221;&gt;Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/10/prevent-duplicate-images-downloaded-picture-element/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Keeping%20The%20Big%20%3Ccode%3E%26lt%3Bpicture%26gt%3B%3C%2Fcode%3E%20Small%3A%20How%20To%20Avoid%20Duplicate%20Downloads%20In%20Responsive%20Images%20http://www.smashingmagazine.com/2013/05/10/prevent-duplicate-images-downloaded-picture-element/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/10/keeping-the-big-picture-small-how-to-avoid-duplicate-downloads-in-responsive-images/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sharing Your Experiences: How To Contribute To WordPress</title>
		<link>http://sayingitfirst.com/2013/05/10/sharing-your-experiences-how-to-contribute-to-wordpress/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sharing-your-experiences-how-to-contribute-to-wordpress</link>
		<comments>http://sayingitfirst.com/2013/05/10/sharing-your-experiences-how-to-contribute-to-wordpress/#comments</comments>
		<pubDate>Fri, 10 May 2013 17:47:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/10/sharing-your-experiences-how-to-contribute-to-wordpress/</guid>
		<description><![CDATA[<p>WordPress is built by volunteers. People from all over the world collaborate to create the core software, write the documentation, provide support, translate WordPress, organize events and generally keep the project running. Individuals work on WordPress in their free time, and companies ask their employees to get [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>WordPress is built by volunteers. People from all over the world collaborate to create the core software, write the documentation, provide support, translate WordPress, organize events and generally keep the project running. Individuals work on WordPress in their free time, and companies ask their employees to get involved.</p>
<p>Part of WordPress’ success is that the community consists not only of developers, but of designers, user experience experts, support volunteers, writers, users, accessibility experts and enthusiasts. This diverse input strengthens the project. It also means you have more space to get involved. Whatever your skill set, the WordPress community has room for you.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/splash2.jpg" rel="wp-prettyPhoto[g2793]"><img class="aligncenter size-full wp-image-108291" alt="splash" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/splash2.jpg" width="500" height="333" /></a><br /><em>A bunch of WordPress contributors.</em></p>
<p><strong>In this article, we’ll talk about the different contributor groups and how you can take part.</strong> I spoke with the current team reps and project leads, who have offered advice on how to get started with their contributor groups. But first, why should you get involved with WordPress?</p>
<h3>Why Get Involved?</h3>
<p>I had a chat with Matt Mullenweg, one of the founding developers of WordPress, about contributing to the project. We started off talking about the mix of people who contribute to WordPress. There are contributors who are sponsored by businesses that use WordPress, such as Automattic, Dreamhost and 10up, and then there are passionate individuals who dedicate their own time to the project.</p>
<blockquote>
<p>&#8220;People who use WordPress are passionate about open source, want to democratize publishing and like to learn. I would say that’s the number-one biggest characteristic, because contributing to open source, and particularly the WordPress project, is <strong>probably one of the best learning opportunities on the Internet</strong>.&#8221;</p>
</blockquote>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/matt.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="core team" alt="matt mullenweg" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/matt.jpg" width="500" /></a><br /><em>Matt chats about the future of WordPress at the WordPress Community Summit 2012. (Image: <a class="colorbox" title="IMG_1928 | Flickr - Photo Sharing!" href="http://www.flickr.com/photos/89591031@N06/8149353398/in/pool-wpcs2012/">konsobe</a>)</em></p>
<p>For Matt, this is the greatest benefit you will get from contributing. You get to be part of a large, supportive community that has an impact on the lives of millions and millions of people. Something you do in an afternoon can have an effect on people all over the world.</p>
<blockquote>
<p>&#8220;You can’t knock on the door at Google and say, “Hey, do you mind if I help you out with your home page? I have some ideas for you.” But you could come to us and say, “Hey, I have some ideas for your dashboard, and here are some patches.”&#8221;</p>
</blockquote>
<p>A number of challenges face the WordPress project:</p>
<ul>
<li><strong>Contributor balance</strong><br />
Currently, the number of contributors is skewed towards people involved with code. Plenty of opportunities lie in other areas &mdash; support, documentation and marketing, for example &mdash; but not so many people are getting involved.</li>
<li><strong>Mobile</strong><br />
Not enough people are getting involved with mobile. Most of the people involved with mobile are currently sponsored by Automattic. Because mobile is fast becoming the way that people interact with the Internet, this is a crucial group and currently has a dearth of contributors.</li>
</ul>
<p>With that in mind, let’s look at the ways you can get involved with WordPress.</p>
<h3>Core</h3>
<p>Mark Jaquith is an <a class="colorbox" href="http://coveredwebservices.com/">independent developer</a> and one of the lead developers of WordPress. These days, he is a jack of all trades in the project, working closely with younger and newer developers, helping to point them in the right direction. He was also the release lead for the 3.6 release cycle. The core team comprises all sorts of developers and designers &mdash; PHP and JavaScript developers and front-end developers and designers. These are the people who build the WordPress that you install on your server.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/mark.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="core team" alt="mark jaquith" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/mark.jpg" width="500" /></a><br /><em>Being a lead WordPress developer makes Mark Jaquith happy. (Image: <a class="colorbox" href="http://www.flickr.com/photos/themitcho/8177703347/in/pool-wpcs2012/">Michael Yoshitaka Erlewine</a>)</em></p>
<p>I asked Mark how the the core contributor team works. He describes it as a set of concentric rings:</p>
<blockquote>
<p>&#8220;You have the leads in the inner sanctum, and then you have the people with permanent commit access, and then you have the people to whom we give temporary commit access for release, and then there are the people whose patches are implicitly trusted and go in without too much inspection. It just keeps going out from there. Those are very fluid boundaries, so people flow between them.&#8221;</p>
</blockquote>
<h4>Challenges</h4>
<p>As much as possible, the core team tries to work by consensus. Issues are discussed, publicly if possible, although anything contentious may be addressed in private discussion.</p>
<p>One of the biggest challenges facing WordPress is that not everyone is on the project full time. Even Automattic employees have other responsibilities within Automattic. This means that people can contribute varying amounts of time. If a lot of people see a dip in their free time, this can cause problems for the project. The core team tries to mitigate this by having more contributors and more people who can commit. However, a balance has to be struck because if there are too many committers, no one would know what’s going on.</p>
<h4>Get Involved</h4>
<p>You can start getting involved in a number of ways:</p>
<ul>
<li><strong>Live chats</strong><br />
Tap into the weekly live chats (Wednesdays 21:00 UTC, irc.freenode.net, #wordpress-dev). Before diving in, you should gauge at what point in the release cycle the project is at:</p>
<ul>
<li><strong>Early stages</strong><br />
Planning the next release.</li>
<li><strong>Middle stages</strong><br />
Guiding the features and checking on progress.</li>
<li><strong>Final stages</strong><br />
Bug scrubs.</li>
<li><strong>After a release</strong><br />
Mostly an open forum, a good time to ask for advice on moving your ticket forward.</li>
</ul>
</li>
<li><strong>Firehose</strong><br />
You can subscribe to <a class="colorbox" title="WordPress Trac" href="http://core.trac.wordpress.org/">trac</a> notifications and get notified of every comment in every ticket. It’s a lot of data to process, but you should get an idea of how the project works, various people’s roles, how much authority they have, and best practices.</li>
<li><strong>Ideas</strong><br />
If you have an idea for a feature or anything else WordPress-related, a good place to start is to write a blog post about it. There is an ideas forum, but it’s not very well used. If you have a concrete idea, with a vision of how to implement it, a blog post may well get you more traction. It will give you space to flesh out the idea and provide an opportunity for other community members to comment on it.</li>
</ul>
<p>Ready to get involved with WordPress core? Other than development skills, I asked Mark what skills someone should have:</p>
<blockquote>
<p>&#8220;The number one skill you need for just about any job, but specifically working on open source, is communication skills. You need to have clarity, consistency, compassion, relatability, a little bit of a thick skin and a decent sense of humor.&#8221;</p>
</blockquote>
<h4>User Interface</h4>
<p>In recent history, the UI group has been separate to core, but there has been discussion about merging it into the core group. UI handles WordPress’ user interface, user experience, and other elements related to quality, accessibility and graphic design.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/ui.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="core team" alt="ui group" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/ui.jpg" width="500" /></a><br /><em>The UI group talks UI in Georgia. (Image: <a class="colorbox" href="http://www.flickr.com/photos/89591031@N06/8149244022/sizes/m/in/pool-2130142@N23/">konsobe</a>)</em></p>
<p>Helen Hou-Sandi is the lead user interface developer at 10up, and is also involved in WordPress’ core with a focus on UI. She outlined six areas that the UI group currently focuses on:</p>
<ul>
<li><strong>Graphic design</strong><br />
This is only occasional work.</li>
<li><strong>UX design</strong><br />
Including wireframes, storyboards and concepts.</li>
<li><strong>User testing</strong><br />
Dave Martin from Automattic has been running a lot of user tests recently to help identify issues.</li>
<li><strong>Front-end development</strong><br />
The HTML and particularly CSS to create the admin interface.</li>
<li><strong>Quality assurance</strong><br />
While this is within the purview of the UI group, Helen noted that improvements could be made in this area.</li>
<li><strong>Accessibility</strong><br />
This has its own group, but the UI group also tries to ensure that accessibility gets the attention it deserves.</li>
</ul>
<p>The UI group has a number of different challenges. A particular problem for contributors can be that the CSS is huge. Jumping into them can be scary for some people.</p>
<p>I asked Helen what she gets out of contributing to WordPress:</p>
<blockquote>
<p>&#8220;I love the community, and I think that the basic premise that WordPress is built on &mdash; democratizing publishing for everybody &mdash; is a really important one.… The premise that it’s making content management and creation easier and more accessible for more people was something that I loved, and altruism wins out.&#8221;</p>
</blockquote>
<h4>Get Involved</h4>
<p>There are a number of ways to get involved:</p>
<ul>
<li><strong>IRC</strong><br />
Stop by the UI chat (Tuesdays at 19:00 UTC) or the chat room and introduce yourself, although doing it outside of meeting hours is usually best.</li>
<li><strong>Make blog</strong><br />
Stop by the Make blog and introduce yourself. Offer to get involved with projects that are starting up.</li>
</ul>
<p>Those are the two official places to get involved, but Helen said that she doesn’t mind someone reaching out on Twitter or even chatting about getting involved at WordCamps.</p>
<p>The UI group needs people with a lot of different skills, including CSS and PHP development. What the group really needs right now are JavaScript developers. Anyone who’s comfortable with things like Backbone.js or TinyMCE would be a huge asset.</p>
<p>UX designers are extremely valuable to the team because they are focused on the user’s perspective, rather than the designer’s perspective. Of particular value are people with a good sense of how an interface and workflow should work. As with all of the groups, being able to function as part of a team is important:</p>
<blockquote>
<p>&#8220;Good communication skills are pretty important. They should be willing to chase something for a while, because things get lost all the time. We forget or we drop the ball, so somebody who’s willing to almost nag in a way and is confident enough to ask, “Hey, what’s going on with this?” is really good to have on board. To watch someone develop that kind of confidence is a really good thing to see.&#8221;</p>
</blockquote>
<h3>Mobile</h3>
<p>The mobile group builds <a class="colorbox" href="http://wordpress.org/extend/mobile/">apps for six different platforms</a>: iOS, Android, BlackBerry, Nokia, Windows, WebOS. It also helps to expand the API and XML-RPC layer, and it investigates new APIs and ways of tackling mobile. Its rep is Isaac Keyet, a mobile designer at Automattic. The mobile group isn’t currently involved in the move towards responsiveness in WordPress core, but Isaac would like to see the team becoming more involved in it in the future.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/isaac.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="isaac" alt="isaac" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/isaac.jpg" width="500" /></a><br /><em>Isaac Keyet leads the WordPress mobile group. (Image <a class="colorbox" href="http://www.flickr.com/photos/themitcho/8133912055/in/pool-wpcs2012/">Michael Yoshitaka Erlewine</a>)</em></p>
<p>Given that mobile is growing exponentially, it’s crucial that more people volunteer for the WordPress mobile group. In addition to Isaac, only six developers are in the group. If you’re a mobile developer and you’d like to be involved in an open-source project, then WordPress is a great place to start.</p>
<h4>Challenges</h4>
<p>A number of technical issues affect development of the native apps. This is particularly true when dealing with XML-RPC or the API. Any plugin or theme can add to or modify the XML-RPC layer. This means that the app has to deal with malfunctions and improper responses in the XML-RPC layer and in the responses that are returned from the blog.</p>
<p>To deal with this, the team is using client-side clean-up libraries, which take the responses and clean them up. But the XML-RPC layer can fail in so many different ways that the libraries are not complete. This makes it a constant struggle to ensure that everything works in all possible instances.</p>
<h4>Get Involved</h4>
<p>As with the other groups, there are two ports of call for getting involved:</p>
<ul>
<li><a class="colorbox" href="http://make.wordpress.org/mobile/">Make WordPress Mobile</a></li>
<li>The WordPress Mobile IRC Chat: 16:00 UTC on freenode, #wordpress-mobile</li>
</ul>
<p>It’s no surprise that WordPress attracts PHP developers, and it’s not a place that mobile developers would instinctively think to look. The mobile apps are written in:</p>
<ul>
<li><strong>Java</strong>: BlackBerry and Android</li>
<li><strong>Objective-C</strong>: iOS</li>
<li><strong>C#</strong>: Windows</li>
</ul>
<p>Contributors with coding skills in any of these languages are extremely welcome. And there is a particular need for Windows Phone developers right now. This is the fastest-growing app at the moment; so, if you’re a C# developer, visit the weekly chat and see how you can help out.</p>
<p>Another skill that the group currently needs is graphic design. Isaac is the only person currently working on graphic design for the group. As he is overloaded with work, which means that designs can’t be escalated as quickly as the group would like.</p>
<p>If you really want to make a difference to the future of WordPress, the mobile group is a great place to start.</p>
<h3>Polyglots</h3>
<p>The <a class="colorbox" href="http://make.wordpress.org/polyglots/">polyglots team</a> is responsible for translating WordPress and for wider global outreach. It is led by Zé Fontainhas, a Portuguese WordPress consultant who speaks countless languages and is very active in the global community.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/ze.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="ze" alt="ze fontainhas" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/ze.jpg" width="500" /></a><br /><em>Zé Fontainhas speaks all of the languages. (Image: <a class="colorbox" href="http://www.flickr.com/photos/themitcho/8177731200/in/pool-wpcs2012/">Michael Yoshitaka Erlewine</a>)</em></p>
<p>Zé identifies three major areas that the Polyglots team is responsible for:</p>
<ul>
<li><strong>Translations</strong><br />
The team translates WordPress core, as well as a number of plugins, such as BuddyPress and the import/export plugins.</li>
<li><strong>GlotPress</strong><br />
GlotPress is the translation tool that makes collaborating on a translation of WordPress possible. It is open source, just like WordPress. Developers and designers are needed to test patches, suggest features and fix bugs.</li>
<li><strong>Community</strong><br />
The global team will be a new branch of the polyglots team, focusing on increasing WordPress’ visibility worldwide and on connecting people from worldwide communities.</li>
</ul>
<h4>Challenges</h4>
<p>Many of the challenges facing the polyglots team have to do with raising awareness and managing perceptions. Around 40% of all downloads of WordPress are not for the English language version, yet WordPress continues to be very US-centric.</p>
<blockquote>
<p>&#8220;The proof of that is that we are talking about “international” as if it were an objective concept. It isn’t; it’s meaning really depends on where you’re looking from. So, when someone in the US says “international,” it means the world outside of the States, but when I say it, “rest of the world” includes the US. We need to first stop using that term. It means different things to different people.&#8221;</p>
</blockquote>
<p>Other challenges include ensuring that developers prepare their code for translation. This means implementing proper practices for plugins, themes and even core code to be ready for translation.</p>
<p>Of course, things will always get lost in translation:</p>
<blockquote>
<p>&#8220;The “Howdy” of the dashboard screen is untranslatable for mostly everybody in another language because the spirit gets lost. There’s no real translation for that.&#8221;</p>
</blockquote>
<h4>Get Involved</h4>
<p>All you need to get involved is a WordPress.org user name. Then think about what you’d like to do:</p>
<ul>
<li><strong>Translation</strong><br />
Check whether a team is translating into your chosen language. Get in touch with them to see how you can help out. [find list of teams/contacts]</li>
<li><strong>GlotPress</strong><br />
Head to <a class="colorbox" title="GlotPress" href="http://glotpress.trac.wordpress.org/">GlotPress trac</a> to see what tickets you feel you can help out with.</li>
<li><strong>Community</strong><br />
Keep an eye out for the new global blog, which will be launching soon.</li>
</ul>
<p>Essential skills for translating WordPress are pretty obvious: language skills and knowledge of how to translate. You have to understand context, and you have to understand English. With the community, you need to have an awareness of how communities work and how they can better interact with each other.</p>
<h3>Support</h3>
<p>Support forum volunteers are the backbone of WordPress. They patiently answer questions like “OMG my site is broken! Can you fix it?” in WordPress.org’s support forum. The team is currently led by Mika Epstein, the in-house WordPress expert at Dreamhost. Mika also reviews plugins for the plugin repository &mdash; she’s one busy lady!</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/mika.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="mika" alt="Mika Epstein" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/mika.jpg" width="500" /></a><br /><em>For Mika Epstein, support never stops. (Image: <a class="colorbox" href="http://www.flickr.com/photos/89591031@N06/8149221441/in/pool-wpcs2012/">konsobe</a>)</em></p>
<p>Around 30 moderators are currently in the <a class="colorbox" href="http://wordpress.org/support/">WordPress.org support forums</a>. Only about 12 of the moderators are active, answering queries every day. About 200 people actively answer questions.</p>
<p>WordPress’ support volunteers focus on the following areas:</p>
<ul>
<li><a class="colorbox" href="http://wordpress.org/support/">WordPress.org support forums</a><br />
This is often the first port of call for people looking for WordPress support. Volunteers help people with things ranging from forming their request correctly to writing code. There’s room for volunteers at every level of the WordPress experience.</li>
<li>IRC Chatroom<br />
Some people prefer to request support via the chatroom. If you want to instantly give feedback to people, you could start hanging out in the IRC chatroom on freenode at #wordpress.</li>
<li><a class="colorbox" href="http://wordpress.stackexchange.com/">WordPress Stack Exchange</a><br />
Questions that used to show up on the wp-hackers mailing list have now found a home on WordPress Stack Exchange. If you’re keen to answer more advanced questions, you could dive in here.</li>
</ul>
<p>Since the Community Summit, there has been discussion on how to create training courses on different aspects of WordPress. This now comes under the purview of the support group. The material will be available to anyone who wants to use it for teaching or training, but also anyone who wants to learn from it. Both online and offline training material will be created. These are intended to help people do more with WordPress and make it easier for them to contribute.</p>
<h4>Challenges</h4>
<p>The biggest challenge facing the support team is the signal-to-noise ratio. Many more people are asking questions than answering them. People get impatient and start bumping their threads or getting snarky. They expect fast responses, or they want a phone number to call. When people get irate, it’s easy for a supporter to get irate, too. After all, the volunteer is spending their own free time helping.</p>
<p>Another issue is that people think they don’t have enough knowledge to sufficiently answer questions. But, as Mika says:</p>
<blockquote>
<p>&#8220;It’s hard to know everything. And that actually scares a lot of people off. They think, “Well, I don’t know everything, so I can’t answer anything.” No, no, no. Just answer the one thing. That would make us really happy.&#8221;</p>
</blockquote>
<h4>Get Involved</h4>
<p>The first step is to create an account and dig around the support forums.</p>
<blockquote>
<p>&#8220;It’s always scary when you’re trying to join a new community. You feel like you’re in high school all over again. You’re this itty bitty freshman, and everybody else is a great huge, hulking senior. They’re adults. They know what they’re doing. And you’re like, “There is no way I can ever be that cool.”&#8221;</p>
<p>If you remember high school, four years go by, and all of a sudden you were the cool guy. You were the great person. Everybody looked up to you. <strong>You have to remember that you don’t start out being an expert. None of us did.</strong></p>
</blockquote>
<p>Just look around and see if there are discussions you could get involved in. If a discussion is more than a couple of months old, just leave it alone because the person who made the request has probably moved on.</p>
<p>If you want to do more than poke around the forums and you want to be really useful, go to the forums and click the “<a class="colorbox" href="http://wordpress.org/support/view/no-replies">No Replies</a>” link.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/noreplies.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="no replieds" alt="a screenshot of the no replies link at the bottom of the WordPress support forums landing page" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/noreplies.jpg" /></a><br />
<em>Be super-helpful by answering unanswered questions.</em></p>
<p>Some supporters just go to the last page of queries with no replies and work their way up.</p>
<p>Another way to be helpful is to flag posts as spam, or to alert a moderator when someone double-posts a lot. On the right side of the post, you’ll see a section called “Tags.” Just add the tag “ModLook” (all one word), and a moderator will know to look at it.</p>
<p>To get involved in the new training initiative, stop by the post “<a class="colorbox" href="http://make.wordpress.org/support/2013/01/training-group-team-reps-and-growing-the-team/">Training Group, Team Reps, and Growing the Team</a>” in the support section.</p>
<h3>Theme Review</h3>
<p>The theme review team sets guidelines for the quality of themes hosted in WordPress’ <a class="colorbox" href="http://wordpress.org/extend/themes/">Theme Directory</a>. It reviews every submitted theme against those guidelines and, if it meets the standard, pushes it to the repository.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/themereview.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="theme review" alt="theme review" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/themereview.jpg" width="500" /></a><br /><em>Chip Bennett talks about theme review. (Image: <a class="colorbox" href="http://www.flickr.com/photos/89591031@N06/8149374784/in/pool-wpcs2012/">konsobe</a>)</em></p>
<p>The representative of the theme review team is Chip Bennett, the developer behind the <a class="colorbox" href="http://wordpress.org/extend/themes/oenology">Oenology</a> theme. I chatted with him recently about how the theme review process works:</p>
<ol>
<li>A developer submits a theme on WordPress.org, using the “<a class="colorbox" href="http://wordpress.org/extend/themes/upload/">Theme Authors</a>” link. The uploader runs the theme through a script, unpacks it and puts it through a bunch of tests. If it passes the tests, the theme is repacked and stored in a special subversion repository for themes. It then generates a ticket in the <a class="colorbox" href="http://themes.trac.wordpress.org/">Theme Trac</a>.</li>
<li>The ticket goes into a queue. The queue is prioritized based on whether the theme is currently approved, whether it has been reviewed before, and how long it has been in the queue.</li>
<li>A reviewer will take on the highest priority theme. They review the ticket, which includes a link to the ZIP file, or a link to a diff file if the theme has been previously submitted.</li>
<li>In reviewing the theme against the guidelines, the reviewer looks for the following things:
<ul>
<li>code quality,</li>
<li>theme files,</li>
<li>front-end tests,</li>
<li>theme unit test data.</li>
</ul>
</li>
<li>If the theme passes the review criteria, then the ticket is closed and resolved as “Approved.”</li>
<li>If the theme doesn’t pass, the reviewer posts comments on the ticket, explaining the issues and what is required and perhaps making some recommendations.</li>
</ol>
<p>The longest theme reviews take around two to three hours, the whole way through. If there are major issues, the review will be stopped early, and the reviewer will note the issues for the developer to address.</p>
<p>Currently, about 70 to 80 people can close tickets. Around 10 people have reviewed more than 50 or 100 tickets. This means that participation is wide but shallow. The goal is to not leave a ticket in the queue for longer than a few days. On average, 10 tickets are submitted per day.</p>
<h4>Challenges</h4>
<p>A major challenge for the theme review team is the sheer volume of submissions, making reviews take longer than they would like. There are also occasional challenges to the review guidelines, although that has lessened in the past two years.</p>
<blockquote>
<p>&#8220;Hopefully people have seen the benefits that the improved theme review guidelines have brought to the directory and overall code themes, so we don’t get a whole lot of challenges on the theme review guidelines themselves.&#8221;</p>
<p>We constantly have to review them as WordPress changes. Each release cycle, we have to look at them, find out what needs to change and understand how the various changes to core will impact themes to make sure we incorporate those.</p>
</blockquote>
<h4>Get Involved</h4>
<p>The first place to start is the <a class="colorbox" href="http://make.wordpress.org/themes">Make WordPress Themes</a> blog, which is becoming the hub of activity for the theme review team. You’ll find a link to the <a class="colorbox" title="theme-reviewers Info Page" href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers">reviewers mailing list</a>, where a lot of the communication happens.</p>
<p>If you’re just starting out, you won’t have trac privileges to close tickets, so you’ll need to request a ticket to be assigned to you. To do this, post a comment on the “<a class="colorbox" title="WordPress › Trac Ticket Request Queue «  Make WordPress Themes" href="http://make.wordpress.org/themes/about/trac-ticket-request-queue/">Trac Ticket Request Queue</a>” page with your trac user name, and then one of the admins will assign the next ticket to you. Once you’ve done a few, you’ll get review privileges and be able to do it on your own.</p>
<p>You may also want to get involved in discussions about guidelines:</p>
<blockquote>
<p>&#8220;We always welcome more people to contribute by reviewing themes, submitting themes and taking part in the discussion. The more developers we have participating in discussion about the guidelines and the process, it can only make it better.&#8221;</p>
</blockquote>
<h3>Plugin Directory</h3>
<p>The plugin directory team is a relatively small group that is responsible for WordPress’ <a class="colorbox" title="What You Need To Know About WordPress 3.5" href="http://wordpress.org/extend/plugins/">Plugin Directory</a>. Its current rep is Scott Rielly.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/scott.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="scott reilly" alt="scott reilly" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/scott.jpg" width="500" /></a><br /><em>Scott Reilly helps to secure and monitor WordPress’ plugin directory. (Image: <a class="colorbox" href="http://www.flickr.com/photos/89591031@N06/8149374784/in/pool-wpcs2012/">konsobe</a>)</em></p>
<p>The team does the following:</p>
<ul>
<li>Processes all incoming plugin submissions. There could be more than 40 submissions in a day. Each plugin is reviewed for guideline violations and coding best practices. If there is a problem with the plugin and it isn’t malicious, the team works with the author to fix the issue.</li>
<li>Deals with support requests sent to <code>plugins@wordpress.org</code>.</li>
<li>Monitors and curates the plugin directory, including looking for guideline violations and security exploits.</li>
<li>Monitors the security-exploit database and announcements for anything relating to plugins.</li>
</ul>
<h4>Challenges</h4>
<p>The biggest challenge facing the team, says Scott, is not having enough time in the day.</p>
<blockquote>
<p>&#8220;Given the volume of newly submitted plugins each day, the constant updates by plugin developers and the support emails, it’s a constant effort to stay on top of everything &mdash; particularly because we’ll all just volunteers to the team. But we’ve been working to remedy this with enhanced admin tools and, eventually, additional team members.&#8221;</p>
</blockquote>
<p>Another challenge is that spammers always try to game the system. The plugin directory is a target for people who want to inject spam into the websites of WordPress users. “In many ways, it’s an arms race,” says Scott. “They keep trying new stuff, and we keep shutting them down once we become aware of it”</p>
<h4>Get Involved</h4>
<p>The first way to help out with the plugin directory is to check out plugins and evaluate code. If you find any guideline violations or malicious code, send an email <a class="colorbox" href="mailto:plugins@wordspress.org">plugins@wordpress.org</a>. Include the name of the plugin and a link to its page, as well as a list of the issues. The team will get in touch with the plugin’s author and get the issues fixed.</p>
<p>The team isn’t currently set up to accept many new people in an official capacity, Scott says:</p>
<blockquote>
<p>&#8220;Part of it is getting internal tools and documentation organized in order to facilitate a larger team, and part of it is that we need to be selective of candidates since full membership grants capabilities that require adequate vetting.&#8221;</p>
</blockquote>
<p>But the team is on the lookout for new members. Recently, <a class="colorbox" title="Pippins Plugins" href="http://pippinsplugins.com/">Pippin Williamson</a> was brought on board. The team keeps an eye out for potential team members amongst WordPress contributors who have demonstrated their ability through “code, competence and trustworthiness.” If you want to be invited to join the plugin directory team, help out across the community, showing off your technical expertise. Anyone who wants to get involved with reviewing plugins will need a deep knowledge of WordPress, of PHP and its best practices and of the <a class="colorbox" title=" WordPress Plugins" href="http://wordpress.org/extend/plugins/about/guidelines/">plugin guidelines</a>. Security expertise and the ability to understand other developers’ code are also desired. “Not just to understand what it does and what it’s supposed to do, but also how it may be wayward or exploitable in its implementation.”</p>
<h3>Documentation</h3>
<p>Often, when people think about WordPress documentation, the first thing they think of is the Codex. While the Codex is the cornerstone of WordPress documentation, it’s one element of a wider drive towards improving documentation. I’m currently the acting rep for documentation, which means that I’m responsible for reporting back to the community on the week’s activities.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/siobhan.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="siobhan" alt="siobhan mckeown" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/siobhan.jpg" width="250" /></a><br /><em>Me, telling people they should use fewer words. (Image: <a class="colorbox" href="http://www.flickr.com/photos/themitcho/8177693175/in/pool-wpcs2012/">Michael Yoshitaka Erlewine</a>)</em></p>
<p>As with getting involved in any aspect of WordPress, contributing to documentation will improve your WordPress skills, not to mention your technical writing skills. It’s also a great way to give back to the community. Currently, there are a few ways to get involved:</p>
<ul>
<li><strong>Codex</strong><br />
The Codex always needs updating to maintain it as a useful resource for users. There’s always a flurry of activity around a new WordPress release as the Codex is updated to reflect any changes. Anyone can edit the Codex; all you need is a WordPress.org account. Lorelle VanFossen has listed <a class="colorbox" href="http://wpdocsteam.wordpress.com/">all of the tasks</a> in the Codex that currently need completing.</li>
<li><strong>Handbooks</strong><br />
The handbooks are a collection of guides that teach people how to contribute to WordPress. There will also be handbooks for theme development and plugin development. This project will be active over the coming year.</li>
</ul>
<p>We are also discussing the possibility of conducting a review of the inline help tabs, and looking at other ways that we can generally be helpful with documentation.</p>
<h4>Challenges</h4>
<p>A major challenge for the documentation team is to keep everything updated. WordPress has a fast release cycle, so the docs team has to be quick to stay on top of updating the Codex. Another challenge is that the Codex itself is such a huge resource. Keeping abreast of what needs to be done can be hard. A lot of functions lack practical examples, which people would find very useful for learning.</p>
<p>Also, sometimes the problem is that people don’t realize they can edit the Codex &mdash; you can, and you definitely should!</p>
<h4>Get Involved</h4>
<p>The easiest way to help out with documentation is to go to the Codex and log in with your WordPress.org user name. Once you’re logged in, you’ll see an “Edit” link at the top of the right sidebar. Click that button and you’re editing the Codex!</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/codex.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="no replieds" alt="a screenshot of the Views menu on the codex sidebar. The edit button has a red arrow pointing to it" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/codex.jpg" /></a><br />
<em>Editing the Codex is easy &mdash; go try it!</em></p>
<p>Even fixing a typo improves the documentation. If you’re using the Codex and you see an issue, fix it. If you have had to go elsewhere to find a solution, add that solution to the Codex so that others will benefit from it.</p>
<p>You could also stop by the <a class="colorbox" href="http://make.wordpress.org/docs">Make WordPress Documentation</a> blog, where you can say hello and get involved with the docs team. There is currently a major push to get the handbooks together, but you’ll find other projects that you can get involved with on the blog. We also have a weekly chat with the support team. This takes place on Thursdays at 9:00 pm UTC in the freenode IRC channel #wordpress-sfd.</p>
<h3>Events</h3>
<p>WordCamps and meetups are events at which WordPress users can get together to share knowledge, learn and socialize. One of the current reps for the Events blog is Andrea Middleton. She works on the WordCamp program, reviewing applications and providing a point of contact for organizing teams. The events contributor group consists of people who have organized WordCamps and meetups.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/events.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="events" alt="WordPress people" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/events.jpg" width="500" /></a><br /><em>Events organizers have to deal with a lot of people standing around, staring at stuff. (Image: <a class="colorbox" href="http://www.flickr.com/photos/89591031@N06/8149193905/in/pool-wpcs2012/">konsobe</a>)</em></p>
<h4>Challenges</h4>
<p>Organizing an event has many challenges &mdash; you’ve got to get good speakers who will engage the audience, find sponsors and a venue, sort out catering, arrange AV, manage a budget, organize a team of volunteers. You’ve got to get a lot of details right in order to organize a successful event. Once you’ve been through the baptism of fire, you’ll be an experienced event organizer, which is a great time to get involved with the events contributor group.</p>
<h4>Get Involved</h4>
<p>Having experience as an organizer of meetups or any volunteer-run event is a great asset if you want to get involved with the events group. Having good accounting and communication skills also helps. As Andrea says:</p>
<blockquote>
<p>&#8220;I think anyone looking to get involved with an ongoing open-source project, from whatever area of contribution, should come bearing humility, tolerance, patience, respect and a healthy sense of humor. We’re a meritocracy, and we value civil discourse.&#8221;</p>
</blockquote>
<p>If you want to organize a WordCamp but don’t have a local community, start with a meetup. These will get people out of their house and talking about WordPress. WordCamps are most successful in regions that have vibrant WordPress communities. WordCamps are great, but they are just once a year &mdash; meetups happen every month and, as Andrea points out, they “sometimes have a more persistent effect on people’s lives and how they interact with WordPress.”</p>
<p>To get involved with the events group, <a class="colorbox" href="http://make.wordpress.org/events/">stop by the blog and say hi</a>.</p>
<h3>Accessibility</h3>
<p>The accessibility group was created to support core developers with issues regarding accessibility. Its rep is currently Mel Pedley. I asked Mel about the motivation for creating the group:</p>
<blockquote>
<p>&#8220;Because a11y [accessibility] isn’t a binary subject but one based on experience, best practice, judgement and balance, the core devs were being hit with conflicting opinions that just caused even more confusion. They needed one point of contact with regard to tackling a11y problems &mdash; hence, the group.&#8221;</p>
</blockquote>
<p>The group comprises technical developers and assistive-technology users. The group looks at issues and figure out solutions, passing answers back to the core developers.</p>
<p>The team is in the process of expanding to cover themes and plugins, and one day it would like to cover everything that falls under WordPress.org.</p>
<h4>Challenges</h4>
<p>Mel identified three major challenges facing the accessibility group. First:</p>
<blockquote>
<p>&#8220;Wrangling any group of a11y experts is always a challenge. Put four of them in a room and you’ll get five opinions. <img src='http://sayingitfirst.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  It’s also quite slow, in my experience, to create real change. Things tend to change <em>very</em> slowly. So, keeping momentum is a major issue. I hope that we can address this by throwing a wider net &mdash; publishing best practice support documents and getting involved in outlying a11y projects &mdash; like Joseph O’Connor’s “Cites” project, which involves teams in cities across the world each developing an accessible theme.&#8221;</p>
</blockquote>
<p>Secondly, the teams needs to get users with a greater range of assistive technology involved. There are screen reader users, but Mel is keen to get VR, braille and switch users involved, as well as dyslexics, so that there is a pan-disability user group. Successful accessibility is all about getting the right mix of people.</p>
<p>The third challenge is to convince the large community that accessibility doesn’t mean boring design or ugly UIs. You can have beautiful, graphically rich and accessible designs. Mel has been involved in <a class="colorbox" href="http://accessites.org/">Accessites.org</a> to prove this point, and she wants to showcase what was learned there on WordPress.</p>
<h4>Get Involved</h4>
<p>To get involved, start following the <a class="colorbox" href="http://make.wordpress.org/accessibility/">Make WordPress Accessibility/</a> blog. You can also get in touch with Mel. The group is happy to hear from anyone interested in promoting accessibility and making WordPress more accessible.</p>
<p>There are two distinct streams for getting involved:</p>
<ul>
<li><strong>Users</strong><br />
This includes anyone who uses assistive technologies to access the Web. The group would value your feedback on existing issues and solutions.</li>
<li><strong>Technical</strong><br />
This is any WordPress developer. You can translate users’ needs into practical solutions.</li>
</ul>
<p>And a note to any WordPress developers:</p>
<blockquote>
<p>&#8220;If you want to develop more accessible themes or plugins but aren’t sure where to start or how to tackle a particular problem, we’re here to help.&#8221;</p>
</blockquote>
<h3>Community</h3>
<p>The community builders group was set up after the WordPress Community Summit to focus on outreach, mentorship programs and contributor engagement. The group’s current reps are Jane Wells and Andrea Rennick. Some of the things that the community group will be tackling are mentorship programs, college outreach, diversity, school programs, WordPress.org improvements, and finding new contributors at events.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/andrea.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="andrea rondeau" alt="Andrea Rennick" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/andrea.jpg" width="500" /></a><br /><em>Andrea likes hugging people. (Image: <a class="colorbox" href="http://www.flickr.com/photos/andrea_r/8144790885/in/pool-wpcs2012">Andrea Rennick</a>)</em></p>
<p>I asked Andrea what the group will be doing:</p>
<blockquote>
<p>&#8220;Mostly it involves finding new members in the community who want to contribute and directing them to where they need to go. It also means answering a lot of questions. This requires a broad understanding of how each of the current groups works and what each group entails.&#8221;</p>
</blockquote>
<h4>Challenges</h4>
<p>I asked Andrea about what challenges she thinks the group will face:</p>
<blockquote>
<p>&#8220;At the minute, there’s no one spot where people can go to with their questions about getting involved with WordPress. Also, there are issues around dissemination, which really needs to be improved. The new <a class="colorbox" href="http://make.wordpress.org/updates/">Make WordPress.org Updates</a> blog is an example of attempts to improve communication. Reps will post weekly updates so that everyone stays informed of what’s going on across the groups.&#8221;</p>
</blockquote>
<p>But those aren’t the only challenges:</p>
<blockquote>
<p>&#8220;Other sticky spots I can see being a challenge are things that are present in any large group of passionate people; things can be misinterpreted, feelings are hurt, tempers flare, and sometimes someone is needed to help smooth things over.&#8221;</p>
</blockquote>
<h4>Get Involved</h4>
<p>Because the group is currently being formed, there are plenty of opportunities to get involved. People of any skill level are needed &mdash; even if your limit is installing WordPress and navigating the admin area, you still have enough skill to help others. Stop by the <a class="colorbox" title="Hello World! «  Make.WordPress.Org Community" href="http://make.wordpress.org/community/2012/11/16/hello-world/">Make WordPress Community</a> blog, leave your name in the comments, and say how you would like to help out.</p>
<h3>BuddyPress and bbPress</h3>
<p><a class="colorbox" href="http://buddypress.org">BuddyPress</a> and <a class="colorbox" href="http://bbpress.org">bbPress</a> are the younger siblings of WordPress. If you get excited about social networking, communities and forums, they could be the places to get your feet wet. BuddyPress is “social networking in a box.” You can use it to build a <a class="colorbox" title="BuddyPress: One Plugin, Five Communities" href="http://wp.smashingmagazine.com/2012/09/26/buddypress-one-plugin-five-communities/">community around WordPress</a>. bbPress is a forum plugin for WordPress.</p>
<p>The lead developer of BuddyPress and bbPress is John James Jacoby (aka JJJ or J-Trip). JJJ manages the overall direction of the project, gets more contributors involved and helps out with development. The role he focuses on the most is building an active contributor community so that everyone can make the most of their unique skills and abilities.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/jjj.jpg" rel="wp-prettyPhoto[g2793]"><img class="alignnone size-full wp-image-78211" title="jjj" alt="John James Jacoby" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/jjj.jpg" width="500" /></a><br /><em>JJJ leads the BuddyPress and bbPress projects. (Image: <a class="colorbox" href="http://www.flickr.com/photos/andrea_r/8144790885/in/pool-wpcs2012">Andrea Rennick</a>)</em></p>
<p>BuddyPress and bbPress are like microcosms of WordPress itself, with contributors needed in many of the same areas, just on a smaller scale. There are a lot of ways to get involved with the plugins: refactoring code, helping in the support forums, developing new features and functionality, working on user experience and design, helping with the codices, and writing plugins.</p>
<h4>Challenges</h4>
<p>The biggest challenge facing bbPress has been maintaining momentum. There isn’t always a lot of focus on it, and other distractions come up for developers. This is frustrating for JJJ because people assume that the project is dead when it is still active.</p>
<p>The biggest challenge with BuddyPress is that the code has changed so much since it was launched. Its direction has changed, and the code has been adapted. This means that a bunch of code is hanging around that they want to get rid of but can’t because doing so would break everyone’s installation.</p>
<blockquote>
<p>&#8220;I like the house to be presentable when I have visitors come over. And when I know the house is not very clean, even though people might not really see it, we feel like we can do a better job with it. That might just be me. But for the project as a whole, because we have so much code, our release cycles are not as quick as we’d like them to be. We always have to fix a bunch of things, or we linger in beta for too long, or we don’t get to beta fast enough.&#8221;</p>
</blockquote>
<h4>Get Involved</h4>
<p>The easiest way to get involved is to help out in the BuddyPress and bbPress support forums.</p>
<blockquote>
<p>&#8220;Having someone’s experience of the forums be a rewarding, fun thing is the easiest way to be helpful. If you think you know anything, you probably know more than somebody else, and sharing that knowledge goes a long way for someone who’s looking for help.&#8221;</p>
</blockquote>
<p>Help is also needed on both of the codices. As JJJ points out, this often feels like a thankless job because writing and formatting take so much time. But it’s a really useful place to get involved, especially because so few people are doing it.</p>
<p>If you’re interested in getting involved with development, join #buddypress-dev on Wednesdays at 19:00 UTC, or #bbpress on Wednesdays at 21:00 UTC. Contributors are always hanging around outside those hours.</p>
<h3>What’s In It For You?</h3>
<p>I asked all of my interviewees about what contributors get out of being involved in WordPress. There were commonalities across all of their responses: the joy of being part of a community, the thrill of creating something used by millions of people across the world, the rate at which you learn, and the pleasure of being involved in democratizing publishing. While the responses were varied, Mark Jaquith’s response sums them all up:</p>
<blockquote>
<p>&#8220;I consider it part of my continuing education. I mean, tech is such a fast-moving industry that if you stand back and, say, just focus on the planning board and aren’t involved in the process and the technologies and the new skills, you’ll be left behind in a few months. It’s just part of the upkeep for me &mdash; that’s number one.&#8221;</p>
<p>Number two is because I enjoy it. I enjoy making things. I enjoy working on software that’s used by tens of millions of people. It’s a fairly powerful and rewarding feeling. And the other thing is that it raises your status inside the community, which is helpful, because it’s a very tight-knit community, and a lot of your business links are going to come from the community. A lot of your potential partners on ventures and projects are going to come from within the community. And by contributing and staying close to that tight knit group, you keep those connections alive.</p>
</blockquote>
<h3>Tips For Getting Involved</h3>
<p>Now that you’re excited about contributing to WordPress, and you’ve found a contributor group that fits, here are some tips:</p>
<ul>
<li>Before diving in, do a bit or research and see how the group operates and what’s currently on the agenda. This will help you figure out where you fit in and whether your ideas have been discussed before. Reading though the P2s will usually suffice.</li>
<li>Stop by the P2 for the group you’re interested in and say “Hi.”</li>
<li>If you’re not sure what to get involved with, stop by the #wordpress-contribute IRC chatroom on freenode. Some people should be around to help you get started.</li>
<li>Read through the P2, mailing lists or trac. Check that your ideas haven’t been proposed before, and if they have, see what the reasons were for refusing them.</li>
<li>Go to WordCamps and Meetups! My involvement in WordPress has increased massively since I started meeting people in person.</li>
<li>Reach out to people on Twitter or, if they publicize their address, via email.</li>
</ul>
<h3>Some Final Advice</h3>
<p>A few pieces of advice didn’t fit neatly anywhere else in this article but are too valuable to be discarded. First of all, Matt has some words on starting out with contributing to WordPress:</p>
<blockquote>
<p>&#8220;Remember that everyone who’s involved at WordPress started where the people who are reading this article are today, including myself. It looks big and scary. The first time someone said to me “You should patch that and put a diff on SourceForge,” I was like, “I don’t know what half the words in that sentence mean.” I had to figure out patches, I had to figure out what a diff is, I has to figure out what SourceForge is. We all started there. You’ve just got to dive in.&#8221;</p>
</blockquote>
<p>And Mika has some words on the value of every WordPress contributor.</p>
<blockquote>
<p>&#8220;Don’t ever feel that just because you don’t know how to code like Nacin and Otto that you’re not just as valuable as they are. Because without us, too, WordPress would fall apart. A healthy community is healthy on all levels, and everybody does know that.&#8221;</p>
</blockquote>
<h3>Contributor Information</h3>
<h4>Make WordPress Blogs</h4>
<p>Here are the discussion blogs where the different groups carry on discussion and post updates:</p>
<ul>
<li><a class="colorbox" title="Make WordPress.org" href="http://make.wordpress.org/">Master List</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/updates/">Updates</a><br />
regular updates from the reps of every team</li>
<li><a class="colorbox" href="http://make.wordpress.org/core">Core</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/support">Support</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/plugins">Plugins</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/themes">Themes</a><br />
including Theme Review</li>
<li><a class="colorbox" href="http://make.wordpress.org/ui">UI</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/mobile">Mobile</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/polyglots">Polyglots</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/docs">Documentation</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/community">Community</a></li>
<li><a class="colorbox" href="http://make.wordpress.org/meta">Changes to WordPress.org</a></li>
</ul>
<h4>Chat Schedule</h4>
<p>WordPress has a number of rooms on the freenode IRC channel. This is where the weekly chats take place. Remember that the chats are for getting things done, not just for saying hi, but they are a great time to find out how things work. People also usually hang out in the chat rooms throughout the day, which tends to be a better time to introduce yourself. Don’t be upset if people don’t respond &mdash; there are time-zone differences to take into account, and many WordPress people leave IRC on throughout the day, even if they’re not at their computer.</p>
<p>If you’re confused, the <a class="colorbox" title="IRC « WordPress Codex" href="http://codex.wordpress.org/IRC">Codex has some information on IRC</a></p>
<ul>
<li><strong>Tuesday</strong>: UI<br />
19:00 UTC in #wordpress-ui</li>
<li><strong>Wednesday</strong>: Mobile<br />
16:00 UTC in #wordpress-mobile</li>
<li><strong>Wednesday</strong>: BuddyPress<br />
19:00 UTC in #buddypress-dev</li>
<li><strong>Wednesday</strong>: bbPress<br />
20:00 UTC in #bbpress</li>
<li><strong>Wednesday</strong>: Core<br />
21:00 UTC in #wordpress-dev</li>
<li><strong>Thursday</strong>: Support and docs<br />
21:00 UTC in #wordpress-sfd</li>
</ul>
<p>If you want help getting started, don’t forget that you can stop by #wordpress-contribute, where people are on hand to help.</p>
<p><em>(al) (il)</em></p>
<hr />
<p><small>© Siobhan McKeown for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/10/how-to-contribute-to-wordpress/" class="colorbox" title="Sharing Your Experiences: How To Contribute To WordPress">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/10/how-to-contribute-to-wordpress/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Sharing%20Your%20Experiences%3A%20How%20To%20Contribute%20To%20WordPress%20http://www.smashingmagazine.com/2013/05/10/how-to-contribute-to-wordpress/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/10/sharing-your-experiences-how-to-contribute-to-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>5 Ways Social Data Can Be Used to Win Customer Love</title>
		<link>http://sayingitfirst.com/2013/05/09/5-ways-social-data-can-be-used-to-win-customer-love/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=5-ways-social-data-can-be-used-to-win-customer-love</link>
		<comments>http://sayingitfirst.com/2013/05/09/5-ways-social-data-can-be-used-to-win-customer-love/#comments</comments>
		<pubDate>Thu, 09 May 2013 20:21:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/09/5-ways-social-data-can-be-used-to-win-customer-love/</guid>
		<description><![CDATA[<p>Marketing folks are all atwitter (Yes, we went there – you don’t like puns?) about how social media has changed marketing. But here’s the thing: at its core, marketing hasn’t actually changed.  It’s still about communication with customers.  What social media has done is transform marketing by [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<p><img class=" wp-image-2547 alignright" alt="5 Ways Data Can Win Customer Love" src="http://www.rignite.com/wp-content/uploads/2015/04/5-Ways-Data-Can-Win-Customer-Love.jpg" width="315" height="315" />Marketing folks are all atwitter (Yes, we went there – you don’t like puns?) about how social media has changed marketing.</p>
<p>But here’s the thing: at its core, marketing hasn’t actually changed.  It’s still about communication with customers.  What social media has done is transform marketing by making it easier and more intuitive to connect with your customers directly while simultaneously giving you greater insight into individual needs and desires.</p>
<p>Simply put, social media is a more efficient way to connect with customers on their own turf.  There are literally millions of consumers shouting (well, tweeting, Facebooking and +1ing) what they want and when they want it on a 24-hour basis.  Your challenge? Managing the data and turning it into effective marketing.</p>
<p>When done properly, social media management allows you to increase brand awareness, improve customer service and create customer experiences that customers will rave about.</p>
<blockquote class="pull-quote half orange right"><p><span class="top"></span></p>
<p>How can #SMB use #socialmedia to drive success? In a word—data.  In two words—using data.</p>
<p><span class="bottom"></span></p>
</blockquote>
<p>Social media including Twitter, Facebook, Google+ and blogs are all key to the online marketing success of any small to medium-sized business.  But how can they be used to drive customer relationships?</p>
<p>In a word: data.</p>
<p>In two words:  using data.</p>
<p>In 912 words:  These 5 tips will help you use the information gathered from a customer’s &#8212; or potential customer’s &#8212; social media presence using a <a class="colorbox" href="http://www.rignite.com/our-solution/" target="_blank">social media management tool</a>.</p>
<h2 class="heading-with-number"><span class="heading-number">1</span>Personalize Your Messages</h2>
<p><a class="colorbox" href="http://www.rignite.com/our-solution/#complete-picture" target="_blank"><img class="alignright size-full wp-image-2565" alt="Get to know your customers" src="http://www.rignite.com/wp-content/uploads/2015/04/Get-to-know-your-customers.jpg" width="190" height="390" /></a>Get to know your customer.  By understanding their personal interests &#8212; whether it be running, sailing, or the latest episode of “Backwoods Pregnant Teens in Beauty Pageants” &#8212; you can spur new discussion.  Respond to what they said about last night’s episode, ask about their training, or even just how their kitchen remodeling is going.  Just get them engaged.</p>
<p>BUT!!! Be sincere about it – you aren’t looking for an excuse to mention your product, you’re looking for a reason to connect. This is not unlike bumping into your crush at the grocery store.  You wouldn’t just start by proposing marriage.  You would ask about them, their upcoming 5K, or even (in a pinch), talk about the weather before you asked them on a date. The same applies to your brand in social media – you want to connect with your customers in a genuine and human way. It’s called <i>social</i> media for a reason &#8211; be sociable and don’t miss any opportunity to chat up a customer.</p>
<h2 class="heading-with-number"><span class="heading-number">2</span>Deliver The Right Message At The Right Time</h2>
<p>Imagine that you’re a kitchen cabinet manufacturer and your <a class="colorbox" href="http://www.rignite.com/our-solution/" target="_blank">social media management software</a> flags the following tweet:</p>
<blockquote class="pull-quote full orange center"><p><span class="top"></span></p>
<p><b>JoeConsumer</b>: @WifeConsumer just told me it’s time to remodel the kitchen. The #HoneyDo list just keeps getting bigger.</p>
<p><span class="bottom"></span></p>
</blockquote>
<p>Now’s the time to respond and offer advice and suggestions on how to most efficiently do the project, what pitfalls to watch out for and maybe throw in a discount offer on cabinets.</p>
<p>However, not every insight is a good buying signal. If the same consumer tweets that his house just burned down, you probably want to hold off on offering discounted cabinets. No one likes an ambulance chaser &#8211; even one hawking deeply discounted cherry cabinets.</p>
<h2 class="heading-with-number"><span class="heading-number">3</span>Tailor Messages To Personalized Interest Segments</h2>
<p>Pay attention to customer segmentation signals – themes and interests that a significant percentage of your customers are interested in. Are your customers fans of craft beers? Use an analogy in your marketing campaigns that explains how your product is as unique as their favorite brew. Maybe your streams are full of running benchmarks and shared records of daily running activity – it’s a good bet that tying your product to the personal drive and self-satisfaction that goes with running will really resonate.</p>
<p>The upshot is that you no longer have to guess what specific features of your product people will like – you know what they like, now just explain to them how your product matches those desires.</p>
<h2 class="heading-with-number"><span class="heading-number">4</span>Give Them Personalized Love</h2>
<p><img class="alignright  wp-image-2549" alt="Give Customers Personalized Love" src="http://www.rignite.com/wp-content/uploads/2015/04/Give-Customers-Personalized-Love-.jpg" width="224" height="238" />When you want to tell a customer you appreciate them, there is no better way than to send a gift that is unique (no, baskets of crackers and sausages are not unique &#8212; plus, the crackers always end up tasting like the basket).</p>
<p>If you do something above and beyond for your customers, others will hear about it.  Guaranteed*</p>
<p>Going back to personalized campaign insights, if many of your primary customers are runners, a thoughtful gift or incentive would be a gift card to a sporting goods store. This shows them you care about them and know what matters to them and it goes a long way toward building customer loyalty.</p>
<p>There is a caveat here – beware of becoming the Creepy Online Stalker Company. You know, like the one that hosts your email and shows you ads related to rash cream because you emailed your sister about a rash ONE TIME and it turned out to be NOTHING but still you see the ads every time you log in&#8230; There’s a fine line between insightful offers and creepy web-stalker activities.</p>
<p>A good rule of thumb is that you should discuss (and feel comfortable discussing) the topic with your customers before offering the incentive or gift that relates to it.</p>
<h2 class="heading-with-number"><span class="heading-number">5</span>Anaylze Sentiment Trends</h2>
<p>Take a second to read through your Facebook page. Better yet, use a social media monitoring tool (<i>may we humbly suggest </i><a class="colorbox" href="http://www.rignite.com/">Rignite</a><i>?</i>) to conduct some conversation research for your brand or market.  Afterwards you should be left standing knee deep in a big pool of data. Now comes the fun part.</p>
<p>Grab your magnifying glass and start taking a deep look at the data. You’re looking at not only what people are saying, but how they are saying it. Sure it’s great if your customers are talking about your new line of watermelon flavored steaks, but lots of volume doesn’t automatically mean the conversation is good. You’ll want to take a look at the sentiment behind the message.</p>
<p style="text-align: center"><img class=" wp-image-2569 aligncenter" alt="Positive Sentiment" src="http://www.rignite.com/wp-content/uploads/2015/04/Positive-Sentiment.jpg" width="457" height="126" /></p>
<p>Are your customers saying they love or like that new steak? That it changes their world and is indeed the very thing that causes angels to sing and seals to play tiny horns?</p>
<p>Or are they saying the exact opposite?</p>
<p>By analyzing the sentiment trends that emerge from the data you can identify which areas of your business are going well and which areas need improvement. Better yet, see what the sentiment around your competitors’ conversations look like. By analyzing sentiment trends you could walk away with some ideas for your next marketing campaign, new product developments and even new customers.</p>
<p>Successful companies have learned that a big and bold social media strategy can reap big and bold rewards – but it all starts with the data your social media management system can gather for you. Using the data and signals your customers are broadcasting on Twitter, Facebook, Googe+, and more is the most effective way to make a big splash with social marketing.</p>
<p><i>*Not actually guaranteed, but the chances are very very very good</i>.</p>
<p><em>Are you using social data to improve your connection with your customers?  Tell us in what ways social media has helped you get more love from your customers.</em></p>
<div>
<aside class="tip-of-the-day full left"><span class="top-bubble">Try Rignite FREE!</span><strong>With Rignite, you can:</strong></p>
<ul>
<li><b>Easily identify influencers and VIP customers for special-treatment programs</b></li>
<li><b>Reward loyalty and motivate repeat visits with insights into your customer’s interests</b></li>
<li><b></b><b>Turn negative customer support issues into outstanding experiences that customers will rave about</b></li>
<li><b></b><b></b><b>Segment lists and send targeted offers to customers and prospects based on their interests</b></li>
</ul>
<p><b><a class="colorbox" title="Sign Up for a 30 day free trial now!" href="http://www.rignite.com/pricing?utm_source=RigniteBlog&amp;utm_medium=BlogPost&amp;utm_content=BP-05-09-13&amp;utm_campaign=Blog" target="_blank">Sign Up for a 30 day free trial now &gt;&gt;</a><br />
</b></p>
<p><b></b></p>
</aside>
</div>
<p>Source: <a href="http://feedproxy.google.com/~r/Rignite/~3/YBeQX4q4vYE/5-ways-social-data-can-be-used-to-win-customer-love" class="colorbox" title="5 Ways Social Data Can Be Used to Win Customer Love">Rignite</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://feedproxy.google.com/~r/Rignite/~3/YBeQX4q4vYE/5-ways-social-data-can-be-used-to-win-customer-love"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=5%20Ways%20Social%20Data%20Can%20Be%20Used%20to%20Win%20Customer%20Love%20http://feedproxy.google.com/~r/Rignite/~3/YBeQX4q4vYE/5-ways-social-data-can-be-used-to-win-customer-love"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/09/5-ways-social-data-can-be-used-to-win-customer-love/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Brave New World: Designing For A Maturing Android</title>
		<link>http://sayingitfirst.com/2013/05/09/brave-new-world-designing-for-a-maturing-android/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=brave-new-world-designing-for-a-maturing-android</link>
		<comments>http://sayingitfirst.com/2013/05/09/brave-new-world-designing-for-a-maturing-android/#comments</comments>
		<pubDate>Thu, 09 May 2013 18:20:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/09/brave-new-world-designing-for-a-maturing-android/</guid>
		<description><![CDATA[<p>Android is huge: 480 million people currently use Android devices, and 1 million new devices are activated daily. This means that every three weeks, the number of people who activate new Android devices is equal to the entire population of Australia. (Recent studies by Nielsen show that [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Android is huge: 480 million people currently use Android devices, and 1 million new devices are activated daily. This means that every three weeks, the number of people who activate new Android devices <strong>is equal to the entire population of Australia</strong>. (<a class="colorbox" href="http://www.nielsen.com/us/en/newswire/2012/two-thirds-of-new-mobile-buyers-now-opting-for-smartphones.html">Recent studies by Nielsen</a> show that more Android devices are on the market than iOS devices.)</p>
<p>Popular apps that become available on Android experience huge growth. For example, <a class="colorbox" href="http://www.theverge.com/2012/4/13/2946602/instagram-40-million-users">Instagram grew by 10 million users</a> with the launch of its Android app — in just 10 days.</p>
<p><img class="alignnone size-full wp-image-134052" alt="Looking at some of Android's problems." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/1.jpg" width="500" height="387" /></p>
<p>Despite this unprecedented expansion of the platform, the majority of Android apps are… well, not great. Fewer quality apps are in <a class="colorbox" href="https://play.google.com/store">Google Play</a> than in the <a class="colorbox" href="http://itunes.apple.com/us/browse/">iTunes Store</a>. Part of the reason for this is that Android has been going through puberty in the past few years. It was disorganized and erratic, and many designers avoided it — even <a class="colorbox" href="http://adroitalien.hubpages.com/hub/10-Things-I-Hate-About-Android-Smart-Phones">hated it</a> — and naturally gravitated towards iOS.</p>
<p>Some of Android’s problems no longer exist, and others have been blown out of proportion. For the ones that do exist, we’ll provide guidance on how to deal with them and how to start designing your first great Android app.</p>
<h3>Symptoms Of Puberty</h3>
<p>Many Android apps underperformed because the platform wasn’t mature enough to allow great apps to emerge. Though a powerful laboratory — it offered manufacturers and developers the freedom and openness to create whatever they wanted — not many wanted to work in a sandbox environment every day. But that sandbox has since coalesced into a foundation for great design.</p>
<p><img class="alignnone size-full wp-image-134054" alt="Android's systems of puperty." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/2.jpg" width="402" height="600" /></p>
<p>The points below are what you might remember about Android — and possibly what curbed your desire to give it a try — but these issues have also been eliminated or improved. If your concerns appear in this list, then the next section will demonstrate how they’ve been resolved with Android’s maturation and how you can design a better app as a result.</p>
<h4>Lack of Consistency in Google’s Own Apps</h4>
<p>Not long ago, almost all of Google’s own Android apps looked different from each other.</p>
<p><img class="alignnone size-full wp-image-134049" alt="Action bar at the top of the screen design pattern." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/1st_image.png" width="500" height="600" /> <img class="alignnone size-full wp-image-134050" alt="Action bar design pattern in redesigned gallery." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/2nd_image.png" width="500" height="460" /><br /><em>Google took more than a year to start following its own advice. The action bar design pattern was <a class="colorbox" href="http://www.youtube.com/watch?v=M1ZBjlCRfz0" rel="wp-prettyPhoto[g2791]"">presented in 2010</a> but wasn’t implemented until October 2011, with Android OS 4.0.</em></p>
<h4>Lack of a User-Centric Design Culture in the Android Community</h4>
<p>Google’s failure to set an example for other developers (because of its own inconsistencies) and the lack of consistent design guidelines and patterns contributed to another bigger problem: poor user experience. Good design starts with people; it leverages technology to help users accomplish their goals. Google wasn’t communicating this to developers clearly enough (<a class="colorbox" href="http://developer.apple.com/library/ios/#DOCUMENTATION/UserExperience/Conceptual/MobileHIG/AppDesign/AppDesign.html%23//apple_ref/doc/uid/TP40006556-CH19-SW1">unlike Apple</a>).</p>
<h4>Dramatically Inconsistent Experience Between Devices and OS Versions</h4>
<p>Manufacturers often customize the system’s UI and hardware buttons. This contributed to fragmentation, made testing and quality control much harder and made consistency in app design nearly impossible.</p>
<p><img class="alignnone size-full wp-image-133924" alt="Hardware buttons in different orders." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/hardware-buttons.jpg" width="500" height="600" /><br /><em>Manufacturers used to put hardware buttons in different orders. Switching between devices was a pain.</em></p>
<p>Properly testing apps in the changing and fast-growing market was difficult for developers. Thus, a majority of apps didn’t function as they should have or were poorly designed.</p>
<p>Those apps are still there, but yours doesn’t have to be one of them. Android has since improved, enabling you to create a better and more consistent experience for your users.</p>
<h3>Android Has Matured</h3>
<p>The Android user experience today is more robust than ever before, making it easier for app designers and developers to deliver great apps. While some of the earlier problems still exist, most have become more manageable — and many more have been solved altogether.</p>
<p>One fundamental problem remains, however: there aren’t enough great apps. But with an improved and mature Android platform, designers and developers can solve this problem. All we have to do is give Android another chance.</p>
<p><img class="alignnone size-full wp-image-134053" alt="Android has matured." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/3.jpg" width="485" height="600" /></p>
<p>The areas below are what the mature Android has to offer.</p>
<h4>Better App Discovery</h4>
<p>Previously, the discovery process was limited to searching by keyword and then trying out all of the results. The new Google Play store offers better discovery through featured apps and staff picks.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/market-lg.jpg" rel="wp-prettyPhoto[g2791]"><img class="alignnone size-full wp-image-133925" alt="The new Google Play store offers more ways to discover cool new apps." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/market.jpg" width="500" height="310" /></a><br /><em>The new Google Play store offers more ways to discover cool new apps than its predecessor, Android Market.</em></p>
<h4>Proper Android Design Guidelines</h4>
<p>Until recently, no direction was provided for the basic elements that every app requires. Google has since created <a class="colorbox" href="http://developer.android.com/design/index.html">design guidelines</a>, which remove the burden of small design decisions from app designers and developers. We can finally focus on the core value of the apps we’re creating and ensure a consistent experience across devices.</p>
<p><img class="alignnone size-full wp-image-133931" alt="Example of a grid and a 48 density-independent pixel (DP) rhythm." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/metrics_forms.jpg" width="500" height="353" /><br /><em>Example of a grid and a 48 density-independent pixel (DP) rhythm, taken from the “<a class="colorbox" href="http://developer.android.com/design/style/metrics-grids.html">Metrics and Grids</a>” section of the guidelines.</em></p>
<h4>Menu and Search Hardware Buttons Are Gone</h4>
<p>Google has started removing hardware buttons from its devices, uniting the hardware and software and making Android devices more elegant and easier to use.</p>
<p><img class="alignnone size-full wp-image-134036" alt="Nexus 4 is an instance of Google’s new approach to hardware buttons." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/nexus-menu4.png" width="500" height="400" /><br /><em>The Nexus 4 is an instance of Google’s new approach to hardware buttons. They are always there, always in the same order. And gone are the search and menu buttons.</em></p>
<p>A variety of Android device types still exist (for example, LG still produces devices with Android 4.0 and hard menu buttons), yet this diversity is one of the main reasons why Android apps are able to excel.</p>
<h3>Fragmentation Isn’t All Bad</h3>
<p>Fragmentation may be the biggest remaining challenge facing designers and developers, and it’s built into Android’s DNA — a permanent part of the Android experience. This diversity offers designers an opportunity to reach an unprecedented number of people globally.</p>
<p>Learning to work within this fragmentation will make you a better designer or developer overall, with broader knowledge and an improved skill set. Given the rewards, the challenge is worthwhile to pursue. And to succeed in this pursuit, here are a few things to keep in mind when creating your Android app.</p>
<p><img class="alignnone size-full wp-image-134082" alt="Fragmentation isn’t all bad." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/challenge.jpg" width="500" height="353" /></p>
<h3>Tips For Creating A Successful Android App</h3>
<h4>Get to Know Android</h4>
<p>To understand Android, you should learn how to use it and get to know its users. The best way to do this is by buying several devices from different manufacturers, with different screen sizes and maybe even OS versions. This will help you not only to understand user diversity but also to test your app.</p>
<p>To choose the best devices for your app, check the latest <a class="colorbox" href="http://developer.android.com/about/dashboards/index.html">statistics from Google</a> and <a class="colorbox" href="http://www.android.com/devices/">select a device</a> with your desired specifications. Independent studies, such as <a class="colorbox" href="http://opensignal.com/reports/fragmentation.php?">OpenSignal’s August 2012 report</a>, can also help you select devices.</p>
<p>Something to keep in mind is that Android updates are controlled by service providers and, as a result, usually arrive earlier on devices that are created in collaboration with Google, such as the Nexus series. Picking up the <a class="colorbox" href="http://www.google.com/nexus/">latest Nexus devices</a> will <strong>keep you on the cutting edge of platform releases</strong>. You can save money by buying a used device, but make sure it runs the version of Android that you need before purchasing it (many old devices are no longer updated).</p>
<p>Talk to your Android-using friends about how they use their devices and what they are happy and unhappy about. That will help you get to know the environment and bring you into the culture.</p>
<h4>Follow the Guidelines</h4>
<p>Following the <a class="colorbox" href="http://developer.android.com/design/index.html">guidelines</a> will help you create an app that feels native to any device. But that’s just one of many reasons why following them is worthwhile. They can also help you achieve the following:</p>
<ul>
<li>Create an app fit for virtually any device,</li>
<li>Make the app feel true to Android,</li>
<li>Provide a UI that is familiar to users,</li>
<li>Make the app easier to develop and support,</li>
<li>Increase the app’s chances of being featured in Google Play.</li>
</ul>
<p>Keeping Android navigation patterns in mind and using elements that are native to the platform will also help you create a consistent experience across devices.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/02/contacts-iphone-android.png" rel="wp-prettyPhoto[g2791]"><img class="alignnone size-full wp-image-135607" alt="When bringing an iPhone design (left) to Android (right), use elements that are native to the platform." src="http://media.smashingmagazine.com/wp-content/uploads/2013/02/contacts-iphone-android.png" width="500" height="397" /></a><br /><em>When bringing an iPhone design (left) to Android (right), use elements that are native to the platform: this table view is styled for Android; the buttons for searching and adding contacts are moved to the split action bar at the bottom; and switching between data views is done through the <a class="colorbox" href="http://developer.android.com/design/patterns/actionbar.html#organization">view control</a>.</em></p>
<p>Custom apps are more difficult not only to support, but <a class="colorbox" href="http://mobile.smashingmagazine.com/2009/07/21/iphone-apps-design-mistakes-overblown-visuals/">also to design</a> when ensuring operability across devices. New Android apps look great thanks to the new design guidelines; they are also very different from apps created before Android 4.0.</p>
<h4>Understand Android’s Look and Feel</h4>
<p>Google has invested a <a class="colorbox" href="http://www.theverge.com/2013/1/24/3904134/google-redesign-how-larry-page-engineered-beautiful-revolution#ooid=1iOG5vODr8k-SiE4XkfhRhojCWYBPRHE">lot of effort</a> in bringing a consistent visual experience to all of its products, including Android. Android 4.0 introduced its own style: simple, plain, clean — more about function than form.</p>
<p>Although this provides great freedom in styling, you still have to consider the subtlety of Android’s visual style: saying more with less. <strong>Simply copying the styles and elements from an iOS app might not work.</strong> And releasing a new app with old styles or with elements that look like they belong on another platform could make users react negatively — which <a class="colorbox" href="http://www.androiduipatterns.com/2012/11/bad-outdated-ux-will-be-rejected-by.html">happened to Microsoft</a>.</p>
<p>Browsing <a class="colorbox" href="http://androidniceties.tumblr.com/">Android Niceties</a> is a great way to grasp Android’s style and to find inspiration.</p>
<p><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.google.android.googlequicksearchbox&amp;hl=en"><img class="alignnone size-full wp-image-134021" alt="Google’s Search app is a great instance of Android’s look and feel." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/googlenow.jpg" width="381" height="600" /></a><br /><em>Google’s <a class="colorbox" href="https://play.google.com/store/apps/details?id=com.google.android.googlequicksearchbox&amp;hl=en">Search</a> app is a great instance of Android’s look and feel.</em></p>
<p>A good way to distinguish your app is through its icon. App icons for Android can take any shape or form. Users love great-looking icons and will gladly put your app on their home screen even if they don’t use it often. For tips on designing your icon, read the “<a class="colorbox" href="http://developer.android.com/design/style/iconography.html">Iconography</a>” section in the guidelines.</p>
<p><img class="alignnone size-full wp-image-134086" alt="App icons for Android can take any shape and form you want." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/icons.jpg" width="500" height="90" /><br /><em><a class="colorbox" href="http://developer.android.com/design/style/iconography.html#launcher">App icons</a> for Android can take any shape and form you want.</em></p>
<h4>Build for Different Hardware Types</h4>
<p>When designing your app, ensure that it will run properly on most devices. Keep in mind not only different screen sizes and aspect ratios, but also screens with low brightness or poor contrast and color, as well as slow, weak hardware.</p>
<p>For example, less-expensive devices might have smaller displays with lower contrast, so text that appears big enough on new devices with large screens might appear illegible there. Low contrast of text and visual elements might compromise the user experience as well.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/screen-sizes-lg.jpg" rel="wp-prettyPhoto[g2791]"><img class="alignnone size-full wp-image-133933" alt="Designs created according to the guidelines will easily scale to fit virtually any screen." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/screen-sizes.jpg" width="500" height="491" /></a><br /><em>Designs created according to the guidelines will easily scale to fit virtually any screen.</em></p>
<p>A few more things to keep in mind:</p>
<ul>
<li>Use contrasting colors for text and elements. For example, don’t use white on gray for important elements; they’ll just blend together on bad displays.</li>
<li>Check your design on several devices with different brightness settings (low, high, auto) and in different lighting conditions.</li>
<li>Even when using standard sizes, make sure your text and UI elements appear big enough on small screens (i.e. screens with a DPI lower than 240). You might want to adjust these elements specifically for small devices.</li>
</ul>
<p>For a great example of designing for diversity, read Sebastiaan de With describe the process of <a class="colorbox" href="http://dewith.com/2012/an-android-design-process/">creating the Alarm app</a>.</p>
<h4>Use Density-Independent Pixels to Define Layout</h4>
<p>Part of providing a consistent experience is ensuring that UI elements stay roughly the same size across Android devices with varying pixels per inch (PPI). This doesn’t have to be a laborious task of calculating the number of pixels a button or font should contain in order to look great on a particular screen size. You can make the device do the work for you.</p>
<p><img class="alignnone size-full wp-image-134083" alt="The recommended size for buttons in the action bar is 48 DP." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/density.png" width="600" height="246" /><br /><em>The recommended size for buttons in the action bar is 48 DP, which will result in different pixel sizes on different screens, but you don’t have to worry about that.</em></p>
<p>By defining sizes with density-independent pixels (DPs), you ensure that elements will appear at about the same physical size on any screen. Text will remain readable, and buttons will be comfortable to tap on any Android device, regardless of screen size or DPI. (See the section “<a class="colorbox" href="http://developer.android.com/training/multiscreen/screendensities.html#TaskUseDP">Use Density-Independent Pixels</a>” in the guidelines for more.)</p>
<p><img class="alignnone size-full wp-image-134505" alt="In our practice, giving developers guidelines on sizes of elements and fonts has proven useful." src="http://media.smashingmagazine.com/wp-content/uploads/2013/02/image01.jpg" width="320" height="480" /><br /><em>In our practice, giving developers guidelines on sizes of elements and fonts has proven useful.</em></p>
<h4>6. Create Assets for All Densities</h4>
<p><a class="colorbox" href="http://developer.android.com/training/multiscreen/screendensities.html#TaskProvideAltBmp">Four sets of assets</a> are required to accommodate all Android devices and to make the interface crisp: low density (LDPI), medium density (MDPI), high density (HDPI) and extra-high density (XHDPI). Start with a 640 × 960 screen for XHDPI assets, and then scale them down for other densities.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/densities-pixel.jpg" rel="wp-prettyPhoto[g2791]"><img class="alignnone size-full wp-image-134084" alt="Start with XHDPI, and then scale down to other densities. Compare the actual sizes of these assets." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/densities-phones.jpg" width="500" height="565" /></a><br /><em>Start with XHDPI, and then scale down to other densities. <a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/densities-pixel.jpg" rel="wp-prettyPhoto[g2791]">Compare the actual sizes of these assets.</a></em></p>
<p>MDPI and XHDPI resolutions are exactly the same as the iPhone’s regular and Retina screens. So, if you have an iPhone design, you can use it to style the Android counterparts, or you could even test your designs on iPhone or iPod screens. <strong>But don’t forget about Android’s unique look and feel.</strong></p>
<p>An XXHDPI bucket has been added to support the next generation of mobile devices, those with approximately 480 DPI screens. Although no such devices exist yet, the XXHDPI bucket is used today for launcher icons on XHDPI 10-inch tablets, such as the Nexus 10. (Because these devices are so large, the launcher icons are scaled up using the XHDPI assets.) To accommodate the next generation of screens, all you’ll need to do is scale your HDPI assets up by 200%.</p>
<h4>Consider Different Versions Of The OS</h4>
<p>Many Android devices will never be updated to the latest OS; it takes a couple of years for new versions to dominate the market. But users with newer devices won’t be pleased with apps whose looks or controls are outdated (as demonstrated by Microsoft’s Outlook app, mentioned earlier). So, deliver the most up to date experience possible. If you intend for the app to run on older platforms, create a separate version of the app for those devices.</p>
<h4>Expand Your App With Widgets and Live Wallpapers</h4>
<p>Take advantage of Android’s engaging features, such as <a class="colorbox" href="http://developer.android.com/design/patterns/widgets.html">widgets</a>, live wallpapers and notifications. Widgets enable users to receive updates without running the app, and notifications are improving with each version of Android. Google is providing great support for designers and developers on <a class="colorbox" href="http://developer.android.com/design/patterns/notifications.html">how to notify users</a>.</p>
<p>Widgets are a convenient way to peek into an app without opening it. This enables you to focus a user’s attention on a small portion of information, which would then expand within the app.</p>
<p><img class="alignnone size-full wp-image-134506" alt="Widgets may have buttons and scrollable areas. Think of them as advanced app icons." src="http://media.smashingmagazine.com/wp-content/uploads/2013/02/image13.jpg" width="500" height="600" /><br /><em>Widgets may have buttons and scrollable areas. Think of them as advanced app icons.</em></p>
<p><img class="alignnone size-full wp-image-133935" alt="Gmail’s widget offers a sneak peek into the mailbox and enables users to compose mail right from the home screen." src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/widgets.jpg" width="500" height="260" /><br /><em>Gmail’s widget offers a sneak peek into the mailbox and enables users to compose mail right from the home screen. Chrome’s grid-view widget displays favorites or history.</em></p>
<p>Android users love to customize their devices and make them personal, and these items give them greater flexibility to do so.</p>
<h4>Properly Test on Devices You Support</h4>
<p>One of the most common reasons for negative reviews in the Play store is an app not functioning as promised. Target your design to the most popular devices, and release only for the ones you have tested; otherwise, you’ll end up with bad reviews from people frustrated by your app not working properly.</p>
<p>The highly successful Dead Space game receives <a class="colorbox" href="https://play.google.com/store/apps/details?id=com.ea.deadspace_row&amp;feature=apps_topselling_paid#?t=W251bGwsMSwyLG51bGwsImNvbS5lYS5kZWFkc3BhY2Vfcm93Il0.">most of its one-star reviews</a> because the game doesn’t run on certain devices.</p>
<h4>Design for Tablets, Too</h4>
<p>Although several great Android tablets are on the market, they are not as popular as competitors such as the iPad. But if your goal is to build a truly universal Android app, then you need to consider tablets as well. The guidelines advise designers to use <a class="colorbox" href="http://developer.android.com/design/patterns/multi-pane-layouts.html">multi-pane layouts</a> for tablet UIs and to build their interface using fragments.</p>
<p>Tablets use the same graphical assets as phones, but consider the context in which tablets are used. For instance, people usually hold tablets further away from their eyes than phones and, thus, are less precise in their tapping. So, the UI will require larger fonts, bigger buttons and more white space around elements.</p>
<p>Don’t forget to run your app through the “<a class="colorbox" href="http://developer.android.com/distribute/googleplay/quality/tablet.html">Tablet App Quality Checklist</a>” as well.</p>
<h3>Give Android A Chance</h3>
<p>Designing for Android might be challenging in the beginning — it’s not as simple as it looks — but by following these 10 steps, you’ll have a head start on delivering a fantastic user experience and building a truly great app.</p>
<p>Give Android a chance. Designing for this newly matured platform is an interesting and educational process, and you’ll deliver a great-looking app while obtaining a new set of skills. You might find the experience to be very rewarding.</p>
<p><strong>Update:</strong> While we were writing this article, case study has been <a class="colorbox" href="http://www.theverge.com/2013/4/16/4205000/talking-heads-how-a-late-night-hack-turned-into-facebooks-next-big-thing">published by The Verge about the Facebook Home</a> application — next big thing for Facebook. But this isn&#8217;t about Facebook anymore. Thought this particular application is quite controversial, with limited device support and experience far from perfect, Fb designers have proven that with enough effort 100% of your ideas can be implemented and delivered on Android with no compromise. They have revealed a great opportunity and may even have marked the beginning of a new trend of creating greater presence on Android.</p>
<h4>Examples of Great Android Apps for Inspiration</h4>
<ul>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.verge.android">The Verge</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.doubleTwist.alarmClock">doubleTwist Alarm</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.skype.raider">Skype</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.evernote">Evernote</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.joelapenna.foursquared">Foursquare</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.tumblr">Tumblr</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.nytimes.android&amp;hl=en">New York Times</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.path">Path</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.endomondo.android">Endomondo</a></li>
<li><a class="colorbox" href="https://play.google.com/store/apps/details?id=com.expedia.bookings">Expedia</a></li>
</ul>
<p><em>(al) (ea)</em></p>
<hr />
<p><small>© Alexander Komarov and Nikita Yermolayev for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/09/designing-for-a-maturing-android/" class="colorbox" title="Brave New World: Designing For A Maturing Android">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/09/designing-for-a-maturing-android/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Brave%20New%20World%3A%20Designing%20For%20A%20Maturing%20Android%20http://www.smashingmagazine.com/2013/05/09/designing-for-a-maturing-android/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/09/brave-new-world-designing-for-a-maturing-android/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Psst! Smashing Magazine Is Hiring! We&#8217;re Looking For A Senior Editor.</title>
		<link>http://sayingitfirst.com/2013/05/08/psst-smashing-magazine-is-hiring-were-looking-for-a-senior-editor/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=psst-smashing-magazine-is-hiring-were-looking-for-a-senior-editor</link>
		<comments>http://sayingitfirst.com/2013/05/08/psst-smashing-magazine-is-hiring-were-looking-for-a-senior-editor/#comments</comments>
		<pubDate>Wed, 08 May 2013 17:23:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/08/psst-smashing-magazine-is-hiring-were-looking-for-a-senior-editor/</guid>
		<description><![CDATA[<p>Editorial work at Smashing Magazine is a difficult, challenging process. It requires patience, focus and thoroughness. Our readers have high expectations, and our authors expect sophisticated editorial guidance. That’s what we are known for, and that’s where we could use your help. We’re looking for a hard-working [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Editorial work at Smashing Magazine is a difficult, challenging process. It requires patience, focus and thoroughness. Our readers have high expectations, and our authors expect sophisticated editorial guidance. That’s what we are known for, and that’s where we could use your help. <strong>We’re looking for a hard-working editor with technical experience</strong> to support and complement our team.</p>
<p>Such an editor can’t be found on any of the innumerable job boards out there. Because the position is one of the most important to our publication, we are looking for <em>the</em> best editor from our community &mdash; someone who truly understands Smashing Magazine and what it stands for. We would never otherwise publish a job opening on our front page &mdash; in this case, we made an exception.</p>
<h4>Where? Freiburg, Germany.</h4>
<p>We’d love to welcome you onto our team in <a class="colorbox" href="http://en.wikipedia.org/wiki/Freiburg_im_Breisgau">Freiburg</a>, Germany (<a class="colorbox" href="http://maps.google.de/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=Freiburg+im+Breisgau&amp;sll=49.231477,7.005812&amp;sspn=0.011322,0.027874&amp;ie=UTF8&amp;hq=&amp;hnear=Freiburg+im+Breisgau,+Baden-W%C3%BCrttemberg&amp;ll=47.998214,7.85309&amp;spn=0.005801,0.013937&amp;t=h&amp;z=17&amp;iwloc=A">Google map</a>). In addition to enjoying the beauty of this student city, with its medieval city center, lovely vineyards and proximity to the Black Forest, you’ll also have France and the Swiss Alps just around the corner. Of course, you’ll also enjoy the playful spirit and open-mindedness of Smashing Magazine’s international team members, who like to work as hard as they party.</p>
<p><a class="colorbox" href="http://www.flickr.com/photos/bjoern-f/6119628776/in/photostream/"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/freiburg-opt.jpg" width="500" height="344" alt="Freiburg" /></a><br />
<em>(Image: <a class="colorbox" href="http://www.flickr.com/photos/bjoern-f/6119628776/in/photostream/">Björn Freiberg</a>)</em></p>
<h4>Your Responsibilities</h4>
<p>We prefer that our team members focus on a few important tasks and do them well. Here are some of the tasks and responsibilities you will have:</p>
<ul>
<li>Continually acquire and communicate with authors, in accordance with <a class="colorbox" href="http://www.smashingmagazine.com/2012/09/05/look-inside-smashing-magazine-6th-anniversary/">our editorial process</a> and <a class="colorbox" href="http://www.smashingmagazine.com/publishing-policy/">publishing policy</a>.</li>
<li>Plan, edit, perform quality control on and publish articles on Smashing Magazine.</li>
<li>Shape and contribute to the editorial direction of the magazine.</li>
<li>Refine the content strategies for existing and future content.</li>
</ul>
<h4>What We’re Looking For</h4>
<p>We are looking for professionals who know <em>exactly</em> what they’re doing. Here’s what we expect from you:</p>
<ul>
<li>A strong sense of craftsmanship in your work &mdash; whether in writing, editing, communication or simple HTML.</li>
<li>Be curious to experiment and get creative with new forms of content and with design- and coding-related topics.</li>
<li>Know and understand what it takes to make high-quality content for the Web.</li>
<li>Be familiar with the Web design community and the industry in general.</li>
<li>Be willing to challenge authors to leave their comfort zone, and make every article stand out from the crowd by being interesting, engaging, appealing &mdash; perhaps even extraordinary.</li>
<li>Have excellent written and verbal communication skills in English. We’d love for you to have solid experience in copywriting as well, but that’s not necessary.</li>
<li>Knowledge of Web design is necessary, both technical and non-technical, but we don’t expect you to be a ninja in all of it &mdash; a jack of all trades is just fine!</li>
</ul>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2012/10/wanted.jpg" width="500" height="302" alt="Web Designer Wanted" title="Web Designer Wanted" /></a></p>
<h4>How to Apply</h4>
<p>Interested? Fantastic! Please send your cover letter, résumé, work samples and URLs of relevant websites to me, Vitaly Friedman, at the following email address:</p>
<p><strong>vitaly [at] smashingmagazine.com</strong></p>
<p>We have a lot of exciting ideas for the magazine &mdash; we just need people who we would love to work with and who we can trust to make these ideas a reality. With your help, we can make this magazine even better and richer than it has ever been.</p>
<p>We look forward to your application.</p>
<p><em>(al)</em></p>
<hr />
<p><small>© Vitaly Friedman for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/08/senior-editor-wanted/" class="colorbox" title="Psst! Smashing Magazine Is Hiring! We&#8217;re Looking For A Senior Editor.">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/08/senior-editor-wanted/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Psst%21%20Smashing%20Magazine%20Is%20Hiring%21%20We%26%238217%3Bre%20Looking%20For%20A%20Senior%20Editor.%20http://www.smashingmagazine.com/2013/05/08/senior-editor-wanted/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/08/psst-smashing-magazine-is-hiring-were-looking-for-a-senior-editor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Smashing Editor&#8217;s Choice: A Free eBook</title>
		<link>http://sayingitfirst.com/2013/05/07/the-smashing-editors-choice-a-free-ebook/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-smashing-editors-choice-a-free-ebook</link>
		<comments>http://sayingitfirst.com/2013/05/07/the-smashing-editors-choice-a-free-ebook/#comments</comments>
		<pubDate>Tue, 07 May 2013 19:51:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/07/the-smashing-editors-choice-a-free-ebook/</guid>
		<description><![CDATA[<p>Nearly half a year ago, we introduced our eBook subscription model, also known as the Smashing Library. We knew we were onto something good, realizing that the Smashing Library was the next step in offering quality content &#8212; at a price you’ll still be able to afford [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Nearly half a year ago, we introduced our eBook subscription model, also known as the <a class="colorbox" href="https://shop.smashingmagazine.com/smashing-library-complete.html?pk_campaign=Free%20eBook&amp;pk_kwd=Library%20Links">Smashing Library</a>. We knew we were onto something good, realizing that the Smashing Library was the next step in offering quality content &mdash; at a price you’ll still be able to afford all of the coffee you need to stay up long enough to read the entire library and, of course, the free eBooks.</p>
<p style="text-align: center"><a class="colorbox" href="https://shop.smashingmagazine.com/smashing-library-complete.html?pk_campaign=Free%20eBook&amp;pk_kwd=Library%20Links"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/Smashing-Library-Logo.png" alt="The Smashing Library Subscription" /></a><br />
<em>A subscription to the <a class="colorbox" href="https://shop.smashingmagazine.com/smashing-library-complete.html?pk_campaign=Free%20eBook&amp;pk_kwd=Library%20Links">Smashing Library</a> is only $99 a year.</em></p>
<p>A subscription to the Smashing Library grants you unlimited access to <a class="colorbox" href="http://catalog.smashinglibrary.com/pdf/Smashing-Library-Catalog.pdf?pk_campaign=Free%20eBook&amp;pk_kwd=Library%20Catalog%20Downloads">all of the previously published Smashing eBooks</a>, as well as a guaranteed 24 new eBooks throughout the year. This includes all digital versions of the Smashing Book series, including the <a class="colorbox" href="https://shop.smashingmagazine.com/the-mobile-book-deluxe-bundle.html?pk_campaign=Free%20eBook&amp;pk_kwd=Mobile%20Bundle">The Mobile Book</a> and the upcoming <a class="colorbox" href="https://shop.smashingmagazine.com/the-smashing-book-4-print-ebooks.html?pk_campaign=Free%20eBook&amp;pk_kwd=SB4%20Print%20Bundle">Smashing Book #4</a>.</p>
<p>And our library is getting <em>even more</em> smashing. We didn’t want to limit the library to just our own content, so we are now including a growing number of industry-related eBooks. These books are by authors who aren’t necessarily affiliated with Smashing Magazine but who produce great content. In addition to <strong>saving more than half off the regular bundle prices</strong>, as a subscriber to the Smashing Library, you will get the opportunity to vote on what we publish next and what new eBook downloads will be automatically available in your Smashing Shop dashboard.</p>
<p style="text-align: center"><a class="colorbox" href="http://catalog.smashinglibrary.com/pdf/Smashing-Library-Catalog.pdf?pk_campaign=Free%20eBook&amp;pk_kwd=Library%20Catalog%20Downloads"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/smashing-librar-catalog.png" alt="The Smashing Library Catalog Download" /></a><br />
<em>Download the “<a class="colorbox" href="http://catalog.smashinglibrary.com/pdf/Smashing-Library-Catalog.pdf?pk_campaign=Free%20eBook&amp;pk_kwd=Library%20Catalog%20Downloads">Smashing Library Catalog</a>” (PDF, 4.7 MB) and get started today!</em></p>
<h4>The Smashing Editor’s Choice</h4>
<p>To give you a taste of what to expect from the eBooks in the Smashing Library, we are happy to present you with <em>The Smashing Editor’s Choice: A Smashing Library Treat</em> &mdash; <strong>a free eBook that contains a wide range of topics</strong>, including new coding techniques, user experience strategies, responsive design and mobile solutions by some incredibly prolific and knowledgeable authors. Well-known names such as Lea Verou, Christian Heilmann and Dmitry Fadeyev have contributed fascinating chapters on various subjects.</p>
<p style="text-align: center"><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/05/Cover-iPad-3D.png" rel="wp-prettyPhoto[g2789]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/Cover-iPad-3D.png" alt="The Smashing Free eBook Download" /></a><br />
<em>Sign up below to receive your free copy of The Smashing Editor’s Choice.</em></p>
<p><em>The Smashing Editor’s Choice</em> eBook is only a sample of the kind of quality Smashing eBooks that are available in the library. We select only the best articles, wrap them in a user-friendly layout, and make them <strong>available in the three most common formats</strong>, PDF, EPUB and Kindle. And because we don’t want to impede your use of the eBooks, they’re all DRM-free.</p>
<p>If you like this eBook, then you’ll <em>love</em> the Smashing Library. Just fill in your email address below, and you will receive an email containing a download link to your free eBook copy of <em>The Smashing Editor’s Choice</em>, as well as our bi-weekly <a class="colorbox" href="http://www.smashingmagazine.com/the-smashing-newsletter/">Smashing Newsletter</a>, which is full of useful tricks, techniques and tweaks.</p>
<p>
<!-- Begin MailChimp Signup Form --></p>
<div style="margin-bottom:3em" id="mc_embed_signup">
<form action="http://smashingmagazine.us1.list-manage2.com/subscribe/post?u=16b832d9ad4b28edf261f34df&amp;id=9586f4cea5" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank">
	<label for="mce-EMAIL">Sign up to receive a link to the free eBook:</label>
	</p>
<div class="clear"></div>
</form>
</div>
<p><!--End mc_embed_signup-->
</p>
<h4>What Subscribers Think of the Smashing Library</h4>
<p>Coming up with the subscription library model took meticulous planning and careful editorial work. Adding eBooks on a monthly basis and keeping up with industry trends take passion. Luckily, we have a lot of that. From the beginning, we had a feeling that the library would be popular, and with the surprisingly positive launch, you proved us right:</p>
<blockquote><p>&#8220;A perfect resource for a full-service Web-dev company. I own and operate a Web development company. This <strong>provides a vast store of wisdom</strong> for daily operations across the board.&#8221;<br />
&ndash; <em>Taylor Black</em></p>
</blockquote>
<blockquote><p>&#8220;Unbelievable bargain! <strong>This is indeed a great offer</strong> if you&#8217;re thinking about purchasing several books and if you want to keep up with current developments. Very curious about what’s yet to come this year!&#8221;<br />
&ndash; <em>Joachim</em></p>
</blockquote>
<blockquote><p>&#8220;<strong>The best magazine is up with the best books</strong>. I recently received “The Mobile Book.” That was awesome, and I hope this will be 38X awesome. Worth reading!&#8221;<br />
&ndash; <em>Erik Royall</em></p>
</blockquote>
<blockquote><p>&#8220;Great books, nice offer! I already own Smashing Book #3 and was thinking about buying the mobile/coding bundle when I stumbled upon this offer. <strong>Been reading (almost) nonstop ever since</strong>, loving it so far! Thanks, Smashing!&#8221;<br />
&ndash; <em>Bernd</em></p>
</blockquote>
<p>We try to make the Smashing Library worthwhile by adding new content regularly and by giving you, the subscriber, the choice of what we publish next. All downloads, eBook polls and news are accessible through your personal Smashing Shop dashboard. Have a look at what the library looks like when you’re logged in:</p>
<p style="text-align: center"><a class="colorbox" href="https://shop.smashingmagazine.com/smashing-library-complete.html?pk_campaign=Free%20eBook&amp;pk_kwd=Library%20Links"><img title="Smashing Library Impression" src="http://media.smashingmagazine.com/wp-content/uploads/2013/05/smashing-shop-dashboard.png" width="500" alt="Inside the Smashing Library" /></a><br />
<em>A preview of the Smashing Shop dashboard.</em></p>
<p>Thank you all for your support over the years, everyone! You&#8217;ve been truly smashing!</p>
<p><em>(al) (il)</em></p>
<hr />
<p><small>© Jan Constantin for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/07/smashing-editors-choice-free-ebook/" class="colorbox" title="The Smashing Editor&#8217;s Choice: A Free eBook">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/07/smashing-editors-choice-free-ebook/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=The%20Smashing%20Editor%26%238217%3Bs%20Choice%3A%20A%20Free%20eBook%20http://www.smashingmagazine.com/2013/05/07/smashing-editors-choice-free-ebook/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/07/the-smashing-editors-choice-a-free-ebook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Whiteboards, Visions And Banned Words: How To Help A Real-Life Knight Achieve His Goals</title>
		<link>http://sayingitfirst.com/2013/05/07/whiteboards-visions-and-banned-words-how-to-help-a-real-life-knight-achieve-his-goals/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=whiteboards-visions-and-banned-words-how-to-help-a-real-life-knight-achieve-his-goals</link>
		<comments>http://sayingitfirst.com/2013/05/07/whiteboards-visions-and-banned-words-how-to-help-a-real-life-knight-achieve-his-goals/#comments</comments>
		<pubDate>Tue, 07 May 2013 16:44:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/07/whiteboards-visions-and-banned-words-how-to-help-a-real-life-knight-achieve-his-goals/</guid>
		<description><![CDATA[<p>This article is about design consultancy. It&#8217;s about wrangling that client who uses empty sentences like, “We want a snappy, simple experience,” or, “It should be on brand and should really pop.” It’s about commanding the room and setting a vision before moving on to wireframes and [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>This article is about design consultancy. It&#8217;s about wrangling that client who uses empty sentences like, “We want a snappy, simple experience,” or, “It should be on brand and should really pop.” It’s about commanding the room and setting a vision before moving on to wireframes and pixels.</p>
<p>While I’ll talk in terms of consultation, these ideas can be applied to the design phase of any new project.</p>
<h3>Banned Words</h3>
<p>I start every consultation with this list on the whiteboard:</p>
<ul>
<li>Clean</li>
<li>Simple</li>
<li>Fast</li>
<li>Snappy</li>
<li>Some</li>
<li>Most</li>
<li>Nice</li>
</ul>
<p>These words are banned. If anyone in the room says any of these words, it means we’ve lost our focus or forgotten that we’re in the room to solve problems. We stop, reframe the conversation, then move on.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/whiteboard.jpg" rel="wp-prettyPhoto[g2788]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/whiteboard_small.jpg" width="500" alt="A whiteboard" /></a><br />
<em>Any whiteboard is a weapon if you hold it right.</em></p>
<p>Here are three steps I take to ensure that the words above are never uttered in the first place.</p>
<h3>1. Set A Vision</h3>
<p>The design process can get derailed right at the start by focusing on questions like, “What’s the best thing about our product?” or, “What differentiates our service from the competition?”</p>
<h4>Why This Is a Bad Idea</h4>
<ul>
<li>Real users have families, jobs and tax bills and are quite possibly <a class="colorbox" href="http://www.youtube.com/watch?v=r2CbbBLVaPk" rel="wp-prettyPhoto[g2788]"">drunk</a> when they first experience your brand. Put bluntly, people don’t care about your product &mdash; yet.</li>
<li>Real people experience your idea on their terms, not yours.</li>
<li>Dumb mass marketing doesn’t work anymore; we’ve raised a generation of marketing-proofed humans. (Thanks, Coke.)</li>
</ul>
<p>Instead, let your audience define the project by explaining their needs to a friend, remembering that your brand is not what you say it is. Your brand is what <strong>people tell their friends</strong> it is.</p>
<blockquote>
<p>&#8220;As a ____, I need to ____, so that I can ____.&#8221;</p>
</blockquote>
<p>Let’s assume we’re selling ACME Dragon-Slayer Swords. Our audience might say:</p>
<blockquote>
<p>&#8220;As a white knight, I need to slay the dragon, so that I can save the princess.&#8221;</p>
</blockquote>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/knight.jpg" rel="wp-prettyPhoto[g2788]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/knight_small.jpg" width="500" alt="The knight" /></a><br /><em>Your brand is not what you say it is, but what your audience says it is.</em></p>
<p>This is useful because it describes our audience’s impetus and why it’s important to them. However, our user is not yet textured, nor specific enough. We can do better.</p>
<h3>2. Narrow It Down</h3>
<p>Let’s start with some experiential texture:</p>
<blockquote>
<p>&#8220;As an inexperienced knight, I need to slay my first dragon so that I can prove my worth to the father of the princess.&#8221;</p>
</blockquote>
<p>Better. We’ve textured our knight, with corresponding depth to his reasoning. Experiment with different textures &mdash; such as technical nouns, age, income and geography.</p>
<p>It’s easy to get lost in our idea and forget how it applies to the larger stage, so let’s delve further in time, before and after our idea:</p>
<blockquote>
<p>&#8220;As an inexperienced knight on my first quest, I need to impress the king, so that I might marry his daughter and live happily ever after.&#8221;</p>
</blockquote>
<p>In doing this, we’re taking our user from his real-world impetus, through our brand and back into real life again. We’ve realized that the dragon-slaying itself wouldn’t actually help a real knight achieve their goals. Might we consider selling ACME Dragon-Slayer Swords by how impressive they are to kings?</p>
<p><strong>Describe the brand from multiple viewpoints.</strong> For example, our princess may find dragon-slaying presumptuous. If we discover that she’s a more interesting audience, then put her center stage instead.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/princess.jpg" rel="wp-prettyPhoto[g2788]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/princess_small.jpg" width="500" alt="The princess holding a sword" /></a><br />
<em>Dragon-slaying princesses are DIY champions.</em></p>
<h3>3. Stick To Your Vision</h3>
<p>Once a scope is defined, remaining within its constraints is important. Thinking back to our banned words, let’s look at the scope-destroyers:</p>
<ul>
<li>Some</li>
<li>Most</li>
<li>Nice</li>
</ul>
<p>The sentence, “It would be nice if some users could X” is almost as dangerous as, “Most of the time our users will Y.” This kind of thinking frays the edges of a good idea until it’s unrecognizable.</p>
<p>That way madness lies. Remove all but <em>undebatable</em> assumptions:</p>
<ul>
<li>Narrow down “some users” until you can say “every user.”</li>
<li>If the client says “most times,” remove fuzzy options until they can say “all of the time.”</li>
<li>Don’t waste time on “it would be nice” issues if you can fix a “we absolutely must” problem.</li>
</ul>
<p>For example, earlier we defined our knight as inexperienced.</p>
<p>If anyone starts talking about experienced knights, we’d ask them to <strong>rephrase in terms of our defined audience</strong>. If we get sidetracked by knights who don’t want to impress kings, we’d jot that down on a “nice to have” list and forget about it entirely.</p>
<h3>In The Real World</h3>
<p>Here are some practical examples from real-world projects that I’ve led:</p>
<ul>
<li><a class="colorbox" href="http://clarity.io">Clarity.io</a><br />
“As a young adult, I want to donate to charity with my Facebook account so that I can share my charitable identity with friends.”</li>
<li><a class="colorbox" href="http://fitzroygsd.com">The Fitzroy Academy of Getting Shit Done</a><br />
“I’ve lost faith in university education. I want an intense, condensed way to skill up and be industry-ready so that I can get out into the workforce soon.”</li>
<li><a class="colorbox" href="http://oursay.org">OurSay</a><br />
“Australian citizens need direct access to people in power so that they can have an impact on their political system.”</li>
<li><a class="colorbox" href="http://promobay.org">The Promo Bay</a><br />
“The Pirate Bay needs a way to centralize and sift through artists so that it can decide who to promote on the home page of The Pirate Bay.”</li>
</ul>
<p>While we’re thinking “real world,” let’s look at the consultation session itself.</p>
<h4>Sleight of Hand</h4>
<p>When performing, stage magicians use props and well-practiced patter to better engage the audience. As a consultant, the magic lies in your command of design, while some nuanced expression can transform a banal experience into an engaging one.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/magician.jpg" rel="wp-prettyPhoto[g2788]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/magician_small.jpg" width="500" alt="A magician with a bunny coming out of a tablet" /></a><br />
<em>One tablet makes you bigger, one tablet makes you smaller.</em></p>
<h4>Practically Speaking</h4>
<ul>
<li>Keep the vision written at the top of the whiteboard at all times. If anyone gets sidetracked, point at it meaningfully until they quiet down.</li>
<li>If you feel you personally don’t have the authority to command the room, explain the consultative process up front. People sometimes prefer to trust a well-explained process, especially if they’re older or smarter than you.</li>
<li>If a client uses terms like “drop-down” or “radio button,” ask them to rephrase without using those words. It’s also a good excuse to assert that the consultation is not about pixels and wireframes.</li>
<li>Build a personal library of <strong>real-world metaphors that explain UX situations</strong>. For example, a website that logs you back in without asking is a lot like an automatic door. An HTML prototype is like a car without the engine. Physical examples ground people in reality.</li>
<li>Your whiteboard marker is a conductor’s baton. This <a class="colorbox" href="http://en.wikipedia.org/wiki/Amygdala#Emotional_learning">lizard-brain reaction</a> harkens back to teachers in grade school. Note on the board something that a person says that you agree with, and people will suddenly speak on your terms just so you write down what they say.</li>
<li>Once a vision is established, ask every person in the room whether they agree with it. Put a big tick next to it for each person, in turn. It’s now set in stone, and you can use it as the “bad guy” to settle disputes later.</li>
<li>Pacing is one of the most important parts of consultation. Set time limits, and don’t be afraid to say, “OK, back to the process.” Consider having a clock in the room.</li>
<li>Use a banned word, then catch yourself and apologize profusely. It proves you are beholden to the same rules as the client.</li>
</ul>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/whiteboard_checked.jpg" rel="wp-prettyPhoto[g2788]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/whiteboard_checked_small.jpg" width="500" alt="A whiteboard, complete" /></a><br /><em>Always remember to keep your audience&#8217;s impetus in mind.</em></p>
<h3>Further Reading And Experience</h3>
<p>I’ve straddled the shoulders of two giants in writing this.</p>
<h4>Reading</h4>
<ul>
<li>The “As a ____, I need to ____, so that I can ____” technique is a simplification of a <a class="colorbox" href="http://en.wikipedia.org/wiki/Behavior-driven_development#Behavioral_specifications">behaviour-driven development</a> tool. See <a class="colorbox" href="http://www.slideshare.net/brynary/story-driven-development">Bryan Helmkamp’s practical example</a> over on SlideShare.</li>
<li>I highly recommend watching the “<a class="colorbox" href="http://scottberkun.com/2011/feedback-without-frustration-video/">Feedback Without Frustration</a>” video and accompanying article, “<a class="colorbox" href="http://scottberkun.com/essays/23-how-to-run-a-design-critique/">How to Run a Design Critique</a>,” by Scott Berkun.</li>
<li>It may be old school, but a solid understanding of “<a class="colorbox" href="http://hcibib.org/tcuid/chap-4.html#4-1">Cognitive Walkthroughs</a>” in <em>Task-Centered User Interface Design</em> is a good reference point for sticking to a vision.</li>
<li>The “your brand is what your users tell their friends” idea comes from <a class="colorbox" href="http://en.wikipedia.org/wiki/Brand_tribalism">brand tribalism</a>, another ’90s idea recently popularized by Seth Godin. See <a class="colorbox" href="http://www.ted.com/talks/seth_godin_on_the_tribes_we_lead.html">his TED talk</a> on the subject.</li>
</ul>
<h4>Experience</h4>
<p>You needn’t score a top-dollar client to learn how to deliver solid consultation services. We use these same techniques at work for all of our internal projects.</p>
<p>Try starting your next design sans-Photoshop. Instead, run a two-hour consultation with a coworker. Try again later with a really annoying person who hates your designs. Mixed experiences will help you find your own method in the madness.</p>
<p>Charm is a learned skill.</p>
<h3>In Conclusion, re. Applicability</h3>
<p>This style of consultation isn’t so great for fixing large broken systems. It’s better for new projects, with a small audience. It also works for small, distinct portions of a larger problem.</p>
<p>Extending the vision should happen after launch and testing, once you’ve won everyone’s heart.</p>
<p>Or:</p>
<blockquote>
<p>&#8220;As the design lead of a new project, I need some consultative tricks to keep my clients in line and to craft a concise vision.&#8221;</p>
</blockquote>
<p><em>(al) (ea)</em></p>
<hr />
<p><small>© Will Dayble for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/07/how-to-help-a-real-life-knight-achieve-his-goals/" class="colorbox" title="Whiteboards, Visions And Banned Words: How To Help A Real-Life Knight Achieve His Goals">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/07/how-to-help-a-real-life-knight-achieve-his-goals/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Whiteboards%2C%20Visions%20And%20Banned%20Words%3A%20How%20To%20Help%20A%20Real-Life%20Knight%20Achieve%20His%20Goals%20http://www.smashingmagazine.com/2013/05/07/how-to-help-a-real-life-knight-achieve-his-goals/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/07/whiteboards-visions-and-banned-words-how-to-help-a-real-life-knight-achieve-his-goals/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Defaults In Web Design: How Much Has The Web Really Changed?</title>
		<link>http://sayingitfirst.com/2013/05/06/new-defaults-in-web-design-how-much-has-the-web-really-changed/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=new-defaults-in-web-design-how-much-has-the-web-really-changed</link>
		<comments>http://sayingitfirst.com/2013/05/06/new-defaults-in-web-design-how-much-has-the-web-really-changed/#comments</comments>
		<pubDate>Mon, 06 May 2013 19:22:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/06/new-defaults-in-web-design-how-much-has-the-web-really-changed/</guid>
		<description><![CDATA[<p>Responsive design is about more than just layout; it’s about designing for the Web, which means, mostly, for people with browsers. And that’s just about everything we know about the people who visit our websites: they are probably using a browser. All the rest we just don’t [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Responsive design is about more than just layout; it’s about designing for the Web, which means, mostly, for people with browsers. And that’s just about everything we know about the people who visit our websites: they are <em>probably</em> using a browser. All the rest we just don’t know.</p>
<p>Up until not so long ago, we used to base our designs on some rather <strong>general assumptions about screen size and input type</strong>. With the rise of devices with various screen sizes and alternative ways to interact, these assumptions have turned out to be unreliable. We need to upgrade the defaults that we use when we start designing our websites.</p>
<h3>A Closer Look</h3>
<p>People keep saying that the Web has changed. But has it really? Let’s take a look at all of the stuff that changed.</p>
<h4>Screen Sizes</h4>
<p>In the 1990s, the Web was 640 pixels wide. In the early 2000s, it grew to 800 pixels. A few years later, we decided it should be 1024 pixels. But five years ago, all of a sudden, something strange happened. A device with a very small screen entered the market. Suddenly, our ideas about the size of the Web did not work anymore. Later on, tablets entered the market. People hold these things however they want. Today, the height of the viewport could be bigger than the width! But is that new? Not really.</p>
<p><a class="colorbox" href="http://datenform.de/graphic-arrays-eng.html"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/screen-sizes.jpg" alt="Screen sizes, shown in a non-flexible medium. Photo and work by Aram Bartholl." title="Screen sizes, shown in a non-flexible medium. Photo and work by Aram Bartholl" width="500"></a><br />
<em><a class="colorbox" href="http://datenform.de/graphic-arrays-eng.html">Screen sizes</a>, shown in a non-flexible medium. (Photo and work: <a class="colorbox" href="https://secure.flickr.com/photos/bartholl/8509306685/in/set-72157632865293922">Aram Bartholl</a>)</em></p>
<p>We never really knew what size the window of our visitors would be. We just assumed it was at <em>least</em> the random pixel width that we felt comfortable with. These numbers were always arbitrary, and there were always people who could not see the entire website. We simply ignored them.</p>
<h4>“Everyone Has a Mouse”</h4>
<p>We’ve always assumed that everyone uses a mouse. Even though we <em>knew</em> that this was not always true, most designs completely ignored alternative ways of interacting. People who had to use a keyboard, for whatever reason, had a very hard time interacting with our websites.</p>
<p>But because most people did use a mouse, and because back then many designers thought that designing only for the majority was OK, we created websites that were unusable for a lot of people. And this turned out to be a growing number. Many mouseover interactions are completely dysfunctional on a touch device. Because people love these devices, and even managers and designers use them, they are harder to ignore.</p>
<h4>“Everyone Has Broadband Internet”</h4>
<p>Another thing we always assumed was that everyone had a super-fast Internet connection, at least as fast as our own. And if they didn’t already have it, they’d have it soon. This was again mostly true; speeds were increasing. But today, more and more people use crappy, unreliable 3G connections all the time. If you’ve ever travelled on a train in The Netherlands, you know what I mean. And if you’ve ever had to rely on the mythical “free hotel Wi-Fi,” then you know for sure that the assumption about the ever-increasing speed of our Internet connections is just not true. This is a big change in our thinking; we really should consider these users. This will have a major impact on what our designs look like.</p>
<h4>“Everyone’s Computer Gets Faster Every Year”</h4>
<p>It used to be true that computers would get faster and faster. If you waited half a year before buying a computer, you would get one that was twice as fast, for the same price. This was true of <em>new</em> desktop computers, but mobile devices have priorities other than processor speed. The most important thing for a phone, for instance, is battery life: you really don’t want to have to charge it after every phone call.</p>
<p>And there’s another trend: instead of creating ever-faster devices, many manufacturers are starting to sell ever-<em>cheaper</em> devices. <strong>Many people care about price and battery life more than about processor speed.</strong> This is also not new: what happened to your old computers? You probably sold them or gave them away. People keep using old stuff. Not everyone has the same hardware as we designers do.</p>
<h4>“All Monitors Are Calibrated”</h4>
<p>Well, we always knew this to be untrue, right? Only the monitors of visual professionals are calibrated. Most other monitors don’t display colors accurately, and many monitors are downright crappy. Most mobile phones that I’ve tested have pretty decent screens, until you start using them outside, in the sunshine. If you’re lucky, you can read the content, but you definitely cannot see the subtle gradients in low-contrast designs.</p>
<p>I haven’t even mentioned “modern” black and white screens. These, too, are not new. People have always used crappy monitors, and people with bad eyesight have always visited your websites. It’s just that more and more people are seeing a subpar color palette. Instead of buying a state of the art monitor, buying a cheap monitor and several low-end devices to test your work on might be a better investment.</p>
<p>All of these things are not new. In 2002, <strong>John Allsopp</strong> wrote the monumental article “<a class="colorbox" href="http://alistapart.com/articles/dao">A Dao of Web Design</a>.” People such as <a class="colorbox" href="http://adactio.com/">Jeremy Keith</a> and <a class="colorbox" href="http://www.456bereastreet.com/">Roger Johansson</a> have written about all of these facts for years and years. And yet, somehow, we’ve always managed to actively ignore them. But we really can’t anymore. The Web actually <em>did</em> change in the last five years, with new devices, new browsers and many, many cool new features. We need new <a class="colorbox" href="http://adactio.com/journal/4867/">defaults</a>. The old ways of creating websites just don’t work anymore.</p>
<p><a class="colorbox" href="http://bradfrost.github.io/this-is-responsive/index.html"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/thisisresponsive.png" alt="This Is Responsive, the excellent resource about responsive design by Brad Frost." title="This Is Responsive, the excellent resource about responsive design by Brad Frost." width="500"></a><br />
<em><a class="colorbox" href="http://bradfrost.github.io/this-is-responsive/index.html">This Is Responsive</a>, the excellent resource about responsive design by Brad Frost.</em></p>
<p>In the past few years, we’ve been actively researching new ways to deal with all of these different screen sizes. But apart from responsive design, there are many more challenges in today’s ever-growing pile of devices. We have to find new patterns of interaction: <strong>we need interfaces that work on any device</strong>. Maybe we have to reconsider that enormous photo carousel on the home page, now that we know that <a class="colorbox" href="https://twitter.com/stephanierieger/status/322779301776879617">not everyone has a cheap and fast connection</a>. New defaults are emerging, and I’ve collected a few for you here.</p>
<p>The things in this article are not new. Many clever people have written about them in many articles and many books. But these ideas, like all good stories, have to be repeated many times so that people understand and remember them.</p>
<h3>New Default: Activate</h3>
<p>I initially titled this section “New Default: Touch.” But I came to realize that “touch” has a different meaning for everyone. Some people, like me, think of a single tap when we hear the word. Others think about swiping and complex gestures. That’s why I settled on the heading “New Defaults: Activate.” All devices, no matter what kind of input they offer, let the user <a class="colorbox" href="http://cennydd.co.uk/2013/not-click-not-tap-select">activate something</a> in some way.</p>
<p>With a mouse, it’s a click; with a touch device, it’s a tap; on a keyboard, it’s the “Enter” key. There are ways to activate things by voice, and by waving your arms in the air. And many devices offer more than one way to interact. The only thing that all of these devices have in common is the action of activating. Most of them are capable of doing many other things, too, but all of them can activate stuff.</p>
<p>Only recently have we really started thinking about alternative methods of user input. We used to assume that everyone uses a mouse. Hiding content and showing it on mouseover was considered to be a decent design pattern. And it used to work for most people &mdash; until all of these wonderful touch devices entered the market. What should a device without a mouse do when content can be revealed only with a mouse? Different devices have different solutions. Let’s look at a simple drop-down menu.</p>
<p><a class="colorbox" href="http://dabblet.com/gist/5450762"><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/navigation.png" alt="You can find a live example of this navigation pattern right here." title="You can find a live example of this navigation pattern right here." width="500"></a><br />
<em>See a <a class="colorbox" href="http://dabblet.com/gist/5450762">live example of this navigation pattern</a>.</em></p>
<p>When you hover over a menu item, a submenu appears. But apart from hovering over an item, you can also simply click on it to follow the link. Now, what should happen when you tap on the item with a touch device? Should the submenus appear, or should the link activate? Or both? Or should something else happen? On iOS, something else happens. The first time you tap a link like that, the submenu appears; in other words, the hover event fires. You have to tap a second time to actually follow the link. This is confusing, and <strong>not many people will tap a second time</strong>. On Android, the submenu appears <em>and</em> the link is followed simultaneously. I don’t have to explain to you that this is confusing.</p>
<p>It’s very well possible to <a class="colorbox" href="http://www.html5rocks.com/en/mobile/touchandmouse/">think of complex solutions</a> whereby you define different interactions for different input devices. But the better solution, I think, is to make sure that the default interaction, the activate event, just works for everybody. If you really need to, you could choose to <em>enhance</em> this default experience for certain users.</p>
<p>For instance, if you are certain that someone is using a mouse, you could enable some mouseover interactions. Or if you’re sure that someone has fat fingers, you could make small buttons a bit bigger. But only do so in addition to the default activate interaction, and only if there’s no doubt about it, and only if the enhancement would really make things better. Those are quite a few <em>ifs</em>, and some of them, such as the mouse usage, <a class="colorbox" href="https://hacks.mozilla.org/2013/04/detecting-touch-its-the-why-not-the-how/">are very hard to detect</a> &mdash; especially on devices that offer more than one way to interact, such as a laptop with an optional mouse, touch pad, camera, microphone, keyboard and touchscreen. Give it some serious thought. Do you really need to optimize for a mouse?</p>
<h3>New Default: Small Screens</h3>
<p>Growing is easy. Most things grow. Babies grow, trees grow, curious minds grow. They don’t grow by themselves, but you don’t need much energy to make things bigger. This is just what things do when they live. While shrinking things is definitely possible, it’s also much harder. You could, for instance, compress a car to a fraction of its original size. A compressed car does have a certain aesthetic appeal to it, but it is definitely not as useful as it was before. The same goes for websites. Shrinking a desktop website does not always result in a pleasant experience on a small screen.</p>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/growing-shrinking.jpg" alt="Trees grow on their own, cars are less usefull when they shrink." title="Trees grow on their own, cars are less usefull when they shrink." width="500"><br />
<em><a class="colorbox" href="http://en.wikipedia.org/wiki/File:Giuseppe_Penone_The_Hidden_Life_Within.jpg" rel="wp-prettyPhoto[g2787]">Cedro di Versailles</a> by Italian artist Giuseppe Penone clearly shows that things grow. On the other hand, the work <a class="colorbox" href="https://secure.flickr.com/photos/paul_lowry/6038723573/">Papalote Goliad</a> by American artist John Chamberlain shows that shrinking can be aesthetically appealing but may result in less useful results.</em></p>
<p>To build a responsive website that works on all kinds of screens, designing for a small screen first is easiest. It forces you to focus on what’s really important: if it doesn’t fit in this small square, it is probably not terribly important. It forces you to think better about hierarchy, about the right order of components on the page.</p>
<p>The same principle that we follow for interactions &mdash; whereby we design the activate event first and enhance it later &mdash; applies to graphic design. <strong>We should start designing the things that we <em>know</em> everyone will see.</strong> That’s <strong>the content</strong>. No matter how big or small a screen is and no matter how minimal the feature set of a browser, it will be able to show letters. Because this is about the only thing we know for certain &mdash; since color is absent on most Kindles, most of the latest CSS doesn’t work on old browsers, and layout is of minor importance on small screens &mdash; starting with the text is logical.</p>
<p>I wrote an in-depth article about <a class="colorbox" href="http://www.smashingmagazine.com/2013/03/01/logical-breakpoints-responsive-design/">defining breakpoints on the basis of typography</a>, so I won’t repeat every detail here. But the basic idea is that you start by designing the relationship between the different font sizes. Almost everyone, no matter what device they have, will be able to see this. When the typography is done, you would start designing the layout for bigger screens; you can think of this as an enhancement for people with bigger screens. And after that, when the different layouts are done, you could add the paint. And by paint, I mean color, gradients, borders, etc.</p>
<p>I’ve presented this as a very strict way of working; in real life, of course, things are not as rigid. I’m not talking about “activate only” or “small screen only.” When I say to start with typography, I don’t mean that you aren’t allowed to think about paint at the same time. Rather, I’m trying to find the things that all of these different devices, with all of their different screen sizes and all of their different features, have in common. It just seems logical to <strong>first design this shared core</strong> thoroughly. The strange thing is that this core is often overlooked: Web professionals tend to view their own creations with top-of-the-line devices with up-to-date browsers. They see only the enhancements. The shared core with the basic experience is often invisible.</p>
<h3>New Default: Content</h3>
<p>The way we designed our websites until recently was by putting a header with the logo and navigation at the top, putting the subnavigation on the left, putting some widgets on the right, and putting the footer at the bottom. When all of that was done, we’d <em>cram</em> the content into the little space that was left in the middle. All of the things we created first &mdash; the navigation, the widgets, the footer &mdash; they all helped the visitor to <em>leave</em> the page. But the visitor probably wanted to be there! That was weird. It was as if we were not so confident in our own content and tried our best to come up with something else that our guests might like.</p>
<p>But rather than pollute the page with all kinds of links to get people out of there, we should really focus on that thing in the middle. Make sure it works. Make sure it looks good. Make sure it’s readable. Make sure people will understand it and find it useful. Perhaps even delight them with it!</p>
<p>Once you’re done with the content, you can start to ask yourself whether this content needs a header. Or a logo. Or subnavigation. Does it need navigation at all? And does it really need all of those widgets? The answer to that last question is “No.” I’ve never understood what those widgets are for. I have never seen a useful widget. <strong>I have never seen a widget that’s better than white space.</strong></p>
<p><img src="http://media.smashingmagazine.com/wp-content/uploads/2013/04/content.jpg" alt="A typical news site with more attention for widgets versus the complete focus on the content on Medium." title="A typical news site with more attention for widgets versus the complete focus on the content on Medium." width="500"><br />
<em>Compare a typical news website’s attention to widgets with <a class="colorbox" href="https://medium.com/">Medium</a>’s complete focus on content.</em></p>
<p>By starting with the content first, you can come up with some very interesting solutions. For instance, does the <a class="colorbox" href="http://nerd.vasilis.nl/where-should-the-logo-be/">logo really need to be at the top</a> of every page? It could very well go in the footer on many websites; such as in digital style guides or on pages for registered users. Many links that we used to put in the subnavigation might work better in relevant spots in the main content.</p>
<p>For instance, the option to add extra luggage to a flight booking might be most effective right there in the overview of the flight, instead of in the middle of a list of links somewhere on the left of the page. And when looking at the hierarchy of a page, <strong>does the main navigation look more important than the main content?</strong> Most of the time it shouldn’t be, and I usually consider the navigation to be footer content. A simple “skip” link at the top of the page could either take the visitor to the navigation or fetch the navigation and show it at the top of the page.</p>
<p>In this era of responsive Web design, we need many new clever solutions. As we’ve seen here, our old defaults don’t work anymore. We need to reconsider how we work with interaction, how we approach design and how we shape our content. But we need to think about one other very important thing, and that is where our content comes from.</p>
<h3>New Default: The API</h3>
<p>Luke Wroblewski wrote a fantastic article about <a class="colorbox" href="https://bagcheck.com/blog/8-bagchecking-in-the-command-line">designing an application for the command line first</a>, and then enhancing it for different needs. This is not just a nerdy idea, but a very practical idea, too. If you are able to design and develop your own application, you could test the functionality relatively easily before even starting to think about what it will look like on different devices. This requires designers to work with developers to design a feature that at first works only from the command line. If the feature does not work as expected, then you merely have to change the API, rather than also a bunch of visual designs. Once the API works as you want it to, enhancing it for all of the devices and screen sizes that you want to support becomes easier.</p>
<p>Most of the time, you wouldn’t design the entire API of the application that you’re building. Most companies would choose a content management system (CMS) of sorts or a specialized tool to help them achieve what they want to do. I’ve always been amazed that <strong>CMSes are so often chosen <em>only</em> by technical people and business people</strong>. This causes many problems during the design process.</p>
<p>Developers and business people have different goals than designers. Developers want stuff that is easy to develop on. Business people want stuff that’s cheap. But designers want to make the best and most beautiful things possible. These goals can easily conflict.</p>
<p>I’m not saying that designers alone should choose the system, but they should definitely be a part of the decision-making process. I’m convinced that the selection of CMSes will improve. And I’m convinced that CMS makers will start to improve their products once designers get involved. Right now, all CMSes I know of deliver hostile cruft unless you tweak them extensively.</p>
<p><strong>But it works the other way around, too.</strong> If designers are involved in the selection process, they will have a say in the choice of tool and will understand how it works, what’s possible, what’s easy and what’s hard. This will result in designs that are based in part on the tool, not just on imagination. This is an important part of the design process that has not yet been optimized. Right now, the command line and the systems that deliver the content we design for are the domain of the developers, and designers have nothing to do with them. That is a pity. Just as you would want to take advantage of the knowledge of developers in the design process, you would want to take advantage of the knowledge of designers in the development process.</p>
<h3>Progressive Enhancement</h3>
<p>If you review the sections above, you’ll see that what I’ve described is nothing other than progressive enhancement. You start with the content, then design the content and optimize it for different screen sizes and devices, and after that you can further optimize for very specific features such as mouse usage and fat fingers. Many Web <em>developers</em> build websites according to this principle. They transform the beautiful Photoshop documents that they receive into all of the different layers described above.</p>
<p>This can work out fine if the developer has a good sense of design and a delicate attention to detail. But if they don’t &mdash; which is often the case &mdash; this can easily result in crappy usability and ugly details. I’m not saying that designers shouldn’t use Photoshop anymore. If that’s your tool, go ahead and use it. But do <strong>remember that you’re designing the layers of the <em>Web</em></strong>, not the layers in Photoshop. There’s much more to the Web than a single beautiful image. People will see our creations in <a class="colorbox" href="http://nerd.vasilis.nl/we-need-more-artists-on-the-web/">innumerable ways</a>. We design for all of these people &mdash; remember that. We don’t just design for the CEO with a laptop. We also design for the people on the train and the people with “free hotel Wi-Fi.”</p>
<h4>Tools</h4>
<p>I’ve mentioned Photoshop a few times because it’s still widely misused for designing websites. One reason we have a hard time with progressive enhancement in the design process is due to a lack of good Web design tools. The tools we use are built to wow; they mostly help you to create the “paint,” not to design the core. Fortunately, more tools are popping up with very specific functions in the design process. These are micro-tools such as the <a class="colorbox" href="http://nerd.vasilis.nl/code/measure-help/">International Measure Slider</a>, which helps you to define breakpoints in your grid; tools such as <a class="colorbox" href="https://gridsetapp.com/">Gridset</a>, which helps you to create grids for different screen sizes; and <a class="colorbox" href="http://lamb.cc/typograph/">excellent tools</a> that <a class="colorbox" href="http://modularscale.com/">help you</a> to <a class="colorbox" href="http://typecast.com/">define typography</a>. By incorporating these tools into our design workflow, we might start making better stuff.</p>
<h3>Conclusion</h3>
<p>The Web has always been a weird, borderless, flexible medium. In the last couple of years, we’ve started to realize that designing for <strong>this medium is fundamentally different from the design work we’ve done previously</strong>. The fixed dimensions and the singular ways of interacting that formed the basis of all types of media that we’ve worked with for centuries just don’t work on the Web. This truly is a unique medium.</p>
<p>We have to find new defaults, new starting points for our design process. I’ve explained some of these new defaults here, but of course there are many more. The way we work with forms, for instance, could probably use a whole series of articles by itself. Some new starting points are well established by now, but I’m sure many more will be invented in the near future. I am curious to hear about new patterns and new defaults that you have discovered and have used successfully in your projects.</p>
<p><em>(al)</em></p>
<hr />
<p><small>© Vasilis van Gemert for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/06/new-defaults-web-design/" class="colorbox" title="New Defaults In Web Design: How Much Has The Web Really Changed?">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/06/new-defaults-web-design/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=New%20Defaults%20In%20Web%20Design%3A%20How%20Much%20Has%20The%20Web%20Really%20Changed%3F%20http://www.smashingmagazine.com/2013/05/06/new-defaults-web-design/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/06/new-defaults-in-web-design-how-much-has-the-web-really-changed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interview: How I Work: IDEO&#8217;s Duane Bray On Creating Great Digital Experiences</title>
		<link>http://sayingitfirst.com/2013/05/04/interview-how-i-work-ideos-duane-bray-on-creating-great-digital-experiences/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=interview-how-i-work-ideos-duane-bray-on-creating-great-digital-experiences</link>
		<comments>http://sayingitfirst.com/2013/05/04/interview-how-i-work-ideos-duane-bray-on-creating-great-digital-experiences/#comments</comments>
		<pubDate>Sat, 04 May 2013 17:32:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/04/interview-how-i-work-ideos-duane-bray-on-creating-great-digital-experiences/</guid>
		<description><![CDATA[<p>Welcome to another interview in the series called “How I Work.” These interviews revolve around how leading thinkers and creators in the Web world design, code and create. The goal is not to get into the specific nuances of their craft (as that information already exists online), [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Welcome to another interview in the series called “How I Work.” These interviews revolve around how leading thinkers and creators in the Web world design, code and create. The goal is not to get into the specific nuances of their craft (as that information already exists online), but rather <strong>step back and learn a bit</strong> about their habits, philosophies and workflow for producing great work.</p>
<p>You might want to have a look at the <a class="colorbox" href="http://coding.smashingmagazine.com/2012/04/27/yahoos-doug-crockford-on-javascript/">first interview</a> as well, which features Doug Crockford, Yahoo&#8217;s JavaScript evangelist.</p>
<p>Today we&#8217;ll talk to Duane Bray from <a class="colorbox" title="IDEO" href="http://www.ideo.com">IDEO</a>, a firm that is consistently listed as one of the world’s most innovative companies due to its uncanny ability to constantly come up with great ideas for its clients. Duane Bray is a partner at IDEO and heads up the firm’s digital business from its New York City office.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/09/BrayIDEONYC1.jpg" rel="wp-prettyPhoto[g2786]"><img title="Duane Bray at IDEO's New York City office" alt="Duane Bray at IDEO's New York City office" src="http://media.smashingmagazine.com/wp-content/uploads/2012/09/BrayIDEONYC1.jpg" width="500" height="290" /></a><br /><em>Duane Bray at IDEO&#8217;s New York City office</em></p>
<p>Like all IDEOers you meet, Duane Bray is unfailingly nice, with a soft, well-spoken voice. He reminds you of the kid in the back of algebra class doodling away during lecture and still acing the tests.</p>
<p>We recently sat down with Duane over a couple sessions to get his thoughts on Agile development, how you too can gather great user insights, tips for prototyping digital projects with clients and why he still sketches interfaces out on paper.</p>
<p><strong>Q: What has you excited about digital work these days?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> I&#8217;m particularly excited about the movement away from standards-based specifications towards real stuff. For us, we&#8217;ve been doing a lot more experimentation around Agile development processes and pairing up designers and developers side by side throughout the process from day one. The last thing you want to do is hire a designer who is really talented at conceptual thinking and say, &#8220;Okay, now you&#8217;re going to spend six weeks documenting everything with InDesign for the thing you did.&#8221;</p>
<p>What&#8217;s funny though, is when you have a designer working with a developer on weekly builds, all that stuff still gets done. But from the designer&#8217;s perspective, they are constantly making. We&#8217;ve found our teams to be super excited to be working in this way.</p>
<p>Certainly we&#8217;re not the first to discover Agile, but it&#8217;s made a big difference in our culture because we want people to get their ideas as real and tangible as soon as possible.</p>
<p><strong>Q: How does IDEO go about getting big, breakthrough insights?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> Well, for a lot of our clients, they come to us with these sort of vague questions, and they want us to help them figure that out. So, we want to start off by making sure we&#8217;re a bit exploratory — and that involves going out and being inspired by behaviors.</p>
<p>For example, there might be a question around new forms of video consumption online. We want to <strong>go out and find people</strong> that are representative of some extreme form of behavior. This helps us get inspired and further shapes our strategy.</p>
<p>One woman we found has two computers at work. One is displaying her work and the other one is displaying reality television. She needs both streams to do her job. The interesting thing is you can almost hit pause and ask her what&#8217;s going with the show and with her work and she can answer both.</p>
<p>So it starts to suggest, what are some of the interesting forms of literacy that are coming through our digital tools? And how might we design for this? Are there new mental models we haven&#8217;t thought about before, rather than going with industry standards?</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/09/IDEO_NewYork.jpg" rel="wp-prettyPhoto[g2786]"><img title="A brainstorming session at IDEO" alt="A brainstorming session at IDEO" src="http://media.smashingmagazine.com/wp-content/uploads/2012/09/IDEO_NewYork.jpg" width="500" height="333" /></a><br /><em>A brainstorming session at IDEO</em></p>
<p><strong>Q: IDEO is famous for “thinking with your hands” via prototypes — how do you transfer this over to digital?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> For me I don&#8217;t see any distinction in how IDEO designs digital products compared to our other products. We&#8217;re still going to get out there and be inspired by what&#8217;s going on in the world.</p>
<p>We always start our projects with some sort of investigation into what are people doing and how it impacts how they&#8217;re going to engage. And <strong>we get tangible quickly</strong> — and it’s not so very different from any other prototyping process. We do group sessions to generate ideas, we sketch together, we might have someone make a mock-up on a phone or tablet to test out a behavior. What’s most important for a prototype is to choose the right fidelity for the question you’re seeking to answer.</p>
<p><strong>Q: What’s this discovery process look like?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> Sometimes we&#8217;ll prototype something in the browser or on mobile to test some of these concepts out. We&#8217;ll also play around with paper prototypes because it&#8217;s an appropriate way to get client input.</p>
<p>But I like to find ways to disrupt the conversation when we&#8217;re talking with consumers.</p>
<p>For example, if something is very polished, consumers will feel they have to say they like it because it&#8217;s polished. So sometimes having hand-sketches, along with something on an iPad, we&#8217;re able to get very nice conversations going.</p>
<p>Prototyping is about blending that low-fidelity and high-fidelity process and blending our thinking as we go along.</p>
<p><strong>Q: How would you make a case to a Smashing Magazine reader for adopting a prototyping process with their clients?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> Well, the client is going to be in a better position to make more informed decisions because they are seeing things that are real. I would also argue that it isn&#8217;t a massive investment anyway and there is a better payoff down the road because you&#8217;re getting more real (tangible) early on — which means you&#8217;re going to get better input from users.</p>
<p>Imagine not going through that process: doing a bunch of sketches, building out a spec document, a developer builds it, you test it and people hate it.</p>
<p>At that point there has been such a huge investment in producing that thing. So there is actually a lot of emotional attachment now and it&#8217;s either going to be financially impossible to correct it or people will be too wedded to the idea and it&#8217;s going to be impossible to change.</p>
<p><strong>Q: How do you show these prototypes?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> We do a lot of live work. We&#8217;ll recruit a panel of end users. Particularly in the early stages when we&#8217;re looking for inspiration, we&#8217;ll want to be in their (the users’) context. So instead of bringing them into a focus group, we might go into their homes or offices and observe them. We&#8217;ll also <strong>put stuff up on the web and blast out an SMS</strong> message and ask people to interact so we can get a more broad approach as well.</p>
<p>Sometimes we&#8217;ll do a hybrid of both and have our developers do quick builds and mock-ups and then go back out into the field to get more insights with a select group.</p>
<p>We want to know less about what percentage of people clicked on this or dropped off and more about their process of going through and using that experience. What are the specific things that are barriers and why?</p>
<p>At some point, when we have a much more robust build, then we&#8217;ll push it out to more people. So there is definitely an interim phase. We tend to start high touch and stay that way for a while. We&#8217;re looking for finding the emotions around why people engage or why they don&#8217;t. If we understand those, it becomes a lot more powerful in how we tune the tools.</p>
<p><strong>Q: What’s your experience been with Agile Development processes?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> One of the things we&#8217;ve found when we&#8217;re working in an Agile process is that we can actually be incredibly fast.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/09/IDEO_LincolnCenterApp.jpg" rel="wp-prettyPhoto[g2786]"><img title="An iPhone app that IDEO created for Lincoln Center." alt="An iPhone app that IDEO created for Lincoln Center." src="http://media.smashingmagazine.com/wp-content/uploads/2012/09/IDEO_LincolnCenterApp.jpg" width="400" height="569" /><br /><em>An iPhone app that IDEO created for Lincoln Center.</em></a></p>
<p>To give you an example, we did a project here in New York for Lincoln Center, which was their first iPhone app, and we ran it as an Agile process. We went from kick-off to an app in the iTunes store in eight weeks. That&#8217;s concept, design and build (and I wouldn&#8217;t want to claim we can do every project on that timeline). But we had an amazing client that was able to make decisions very quickly, so we had a fast turnaround time there.</p>
<p>But again, it was because we were getting very real, very fast.</p>
<p><strong>Q: Can you give us a step-by-step breakdown for creating this app in only eight weeks using Agile?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> Sure. First, we spent half a day with our designers and developers at Lincoln Center&#8217;s campus, and in advance we created briefs about what an app could look like around different themes. We broke up into teams and every group had to go and interview people at Lincoln Center and talk to them about the theme and do a tour themselves.</p>
<p>We had clipboards of iPhone screen printouts, and they (the teams) had to <strong>sketch an experience and get feedback</strong> — all in four hours. It was a great way to get immersed: we talked to security guards, out-of-town tourists, locals who would hang out there, people at the information desk and we got a ton of insights.</p>
<p>So, we had all these amazing stories to go back and work with for honing our hypothesis on what this experience should be and we started building it. We did a detailed sketch session, prioritized the feature set, mapped out the flow, did some wireframes and then did a planning session with our development team (from Pivotal Labs). The project was so fast; there were literally just screenshots on the iPhone to simulate the flow. We were sharing it with people quickly and got to the stage where there was a build a week.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/09/IDEO_LincolnCenterAppPhotos.jpg" rel="wp-prettyPhoto[g2786]"><img title="Screenshots of the iPhone app that IDEO created for Lincoln Center." alt="Screenshots of the iPhone app that IDEO created for Lincoln Center." src="http://media.smashingmagazine.com/wp-content/uploads/2012/09/IDEO_LincolnCenterAppPhotos.jpg" width="500" height="386" /><br /><em>Screenshots of the iPhone app that IDEO created for Lincoln Center.</em></a></p>
<p>But the reality about that process is that you couldn&#8217;t do waterfall in eight weeks. I would say it&#8217;s more efficient than an old-fashioned step process.</p>
<p>Agile has been around for 20+ years, and we’re certainly not the first to discover it but now it&#8217;s finally getting traction. Designers and developers want to spend time making stuff and getting it out there and this process is all about that.</p>
<p><strong>Q: What habits or hang-ups do you see in great web designers and developers?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> Well, one of the things I think that is probably the most challenging for working in this more iterative, rapid-fire way is the ability to be more open and transparent with the work that you&#8217;re doing. Sometimes as designers we want to spend some time crafting, hiding in a corner and sketching and then do the &#8220;ta-da!” But some of this new way of working requires us to move beyond that.</p>
<p>One of the things I&#8217;ve been thinking about is how do you encourage greater transparency of work that&#8217;s in progress? We&#8217;ve been prototyping with tools like Flowdock that allows for conversation to sit around the workflow. That is particularly important, if we&#8217;re talking about getting stuff out there really early. These are the certain things that aren&#8217;t to the nature to how a designer is trained.</p>
<p>There is also this thing about <strong>great developers having curiosity</strong>. Being curious about the end user you&#8217;re designing for and involving the developers in that process for insights. Being able to imagine if they&#8217;ll use the thing you&#8217;re making.</p>
<p>Some folks are really natural at that, and in other cases it takes a lot of work. But I think that&#8217;s where we’re going — working off of blended teams with people of different skill sets.</p>
<p><strong>Q: Any tips on how a small shop can get similar disruptive insights like IDEO does?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> As designers it&#8217;s easy to get blinders on because we know what we know and it&#8217;s easy to get caught up in it. So, take some time to start over like you&#8217;ve never done this before. Sign up for some new tools and track your progress and behavior as an end user. There is something about just getting out to find inspiration. Look for stuff going on, whether it&#8217;s a related conference or just inviting in some experts to talk over wine and cheese at your office.</p>
<p>Even a small shop can <strong>reach out to friends of friends and watch them interact</strong> with some early prototypes or simply have a conversation. Say you&#8217;ll buy them drinks every other week and just show them stuff and see what you can learn from building that into your process.</p>
<p>One thing I do is have a screen on my phone that is just apps I would never normally download. So, we might be doing a project around, say, video, and I&#8217;ll go try every app out there and use this as a great way to learn. Projects are often an opportunity to dive deeper into a subject area you&#8217;re not necessarily interested in but you could be super-inspired by it.</p>
<p><strong>Q: Now how do you capture those inspirations?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> I usually have my notebook open as I&#8217;m using all these apps and I&#8217;m sketching out ideas and patterns. You start to get a feel for trends and think about different ways to accomplish the same task.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/09/DuaneSketch.jpg" rel="wp-prettyPhoto[g2786]"><img title="Sketchnotes in Duane Bray's notebook." alt="Sketchnotes in Duane Bray's notebook." src="http://media.smashingmagazine.com/wp-content/uploads/2012/09/DuaneSketch.jpg" width="500" height="375" /></a><br /><em>Sketchnotes in Duane Bray&#8217;s notebook.</em></p>
<p><strong>Q: Where and how do you do your best work and not get burned out?</strong></p>
<p><strong><span style="color:#FF8000">Duane:</span></strong> I usually get away from my desk. I&#8217;ll go sit up front on the couch with my laptop and my sketchbook. I force myself to move around. If you just sit at your desk you&#8217;re inclined to get into bad habits because everything is sitting around you. Some people have the zero inbox but I have 35,000 messages, so I just use the search box in email.</p>
<p>I&#8217;m someone who runs on intuition and not organizational processes. <strong>I have a thousand sticky notes</strong> on my desk.</p>
<p>But I&#8217;m pretty rigid about taking weekends off. I wasn&#8217;t always this way but I&#8217;ve learned that by being open to being inspired by stuff that has nothing to do with what I&#8217;m working on is really important.</p>
<p>Otherwise, you&#8217;re not grounded enough to bring something original to the table.</p>
<p><em>(cp) (ea)</em></p>
<hr />
<p><small>© Jacob Cook for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/04/how-i-work-ideos-duane-bray-interview/" class="colorbox" title="Interview: How I Work: IDEO&#8217;s Duane Bray On Creating Great Digital Experiences">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/04/how-i-work-ideos-duane-bray-interview/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Interview%3A%20How%20I%20Work%3A%20IDEO%26%238217%3Bs%20Duane%20Bray%20On%20Creating%20Great%20Digital%20Experiences%20http://www.smashingmagazine.com/2013/05/04/how-i-work-ideos-duane-bray-interview/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/04/interview-how-i-work-ideos-duane-bray-on-creating-great-digital-experiences/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Design Patterns: Infinite Scrolling: Let&#8217;s Get To The Bottom Of This</title>
		<link>http://sayingitfirst.com/2013/05/03/design-patterns-infinite-scrolling-lets-get-to-the-bottom-of-this/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=design-patterns-infinite-scrolling-lets-get-to-the-bottom-of-this</link>
		<comments>http://sayingitfirst.com/2013/05/03/design-patterns-infinite-scrolling-lets-get-to-the-bottom-of-this/#comments</comments>
		<pubDate>Fri, 03 May 2013 16:03:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/03/design-patterns-infinite-scrolling-lets-get-to-the-bottom-of-this/</guid>
		<description><![CDATA[<p>Infinite scrolling promises a better experience for users. However, the good is often accompanied by the bad and the ugly. Once we understand the strengths and weaknesses of infinite scrolling, we can begin to use it to enhance our interfaces. Human nature demands hierarchy and structures that [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>Infinite scrolling promises a better experience for users. However, the good is often accompanied by the bad and the ugly. Once we <strong>understand the strengths and weaknesses</strong> of infinite scrolling, we can begin to use it to enhance our interfaces.</p>
<p>Human nature demands hierarchy and structures that are easy to navigate. But infinite scrolling sometimes leaves users feeling disoriented as they travel down a page that never ends.</p>
<p><a class="colorbox" href="http://uxdesign.smashingmagazine.com/?attachment_id=115759" rel="attachment wp-att-115759"><img class="alignnone  wp-image-115759" alt="The NeverEnding Scroll" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/NeverendingStory1-1024x684.jpg" width="500" height="334" /></a></p>
<h3>The Good</h3>
<p>Long lists are not new, but the way in which we scroll these lists has fundamentally changed since the arrival of mobile interfaces. Due to the narrowness of mobile screens, list items are arranged vertically, requiring frequent scrolling.</p>
<p>Infinite scrolling is <a class="colorbox" href="http://www.google.com/trends/explore#q=Infinite%20Scroll">highly trending</a> as an interaction behavior on pages and lists. The basic functionality is that, as the user scrolls through content, more content is loaded automatically. With the popularity of social media, massive amounts of data are being consumed; infinite scrolling offers an <strong>efficient way to browse that ocean of information</strong>, without having to wait for pages to preload. Rather, the user enjoys a truly responsive experience, whatever device they’re using.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/infinite-scroll-vs-pagination.png" rel="wp-prettyPhoto[g2785]"><img class="alignnone size-full wp-image-151618" alt="Pagination vs. Infinite Scroll" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/infinite-scroll-vs-pagination.png" width="500" height="132" /></a><br />
<em>Pagination versus infinite scrolling (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/infinite-scroll-vs-pagination.png" rel="wp-prettyPhoto[g2785]">Large version</a>)</em></p>
<p>Websites with lots of user-generated content today are using infinite scrolling to handle content that is being generated every second. By unspoken agreement, users are aware that they won’t get to see <em>everything</em> on these websites, because the content is updated too frequently. With infinite scrolling, social websites are doing their best to expose as much information as possible to the user.</p>
<p><a class="colorbox" href="http://www.twitter.com/estellevw">Twitter</a> integrates infinite scrolling effectively. Its feed fits the criteria: a large amount of data (tweets) and a real-time platform. From the perspective of the user, <strong>all tweets are equally relevant</strong>, meaning that they have the same potential to be interesting or uninteresting; so, users will often scroll through all of the tweets in their feed. Being a real-time platform, Twitter is constantly being updated, even if the user leaves their feed unattended. Infinite scrolling seems to have been created especially for websites like Twitter, which successfully employs the technology.</p>
<p>Infinite scrolling appears to have found its niche on the Web. However, there are also drawbacks that must be considered before assessing its value.</p>
<h3>The Bad And The Ugly</h3>
<p>With so much data to browse, users must stay focused on the information they are searching for. (Remember about being goal-oriented?) Do users always want <strong>a never-ending stream of data?</strong> Analytics show that when users search for information on Google, <a class="colorbox" href="http://www.quora.com/What-is-the-distribution-of-traffic-between-Google-organic-search-results-e-g-1-vs-2-in-rankings-first-page-vs-second-page">only 6%</a> advance to the second page. So, 94% of users are satisfied with receiving only 10 results, which suggests that users find Google’s ranking of results to be relevant.</p>
<h4>To Click or Not to Click</h4>
<p>Google has implemented infinite scrolling for image search results but has <a class="colorbox" href="http://thenextweb.com/google/2011/08/17/google-testing-infinite-scrolling-in-search-results/">yet to implement</a> it for its general results. Doing so would eliminate the need for users to click to reach the second page. Google will probably maintain pagination because this pattern is quite symbolic for its brand. If it does switch to infinite scrolling, when would users typically stop scrolling? After 20 results? 50? When does an easy browsing experience become more complicated?</p>
<p>Looking for the best search result could take a second or an hour, depending on your research. But when you decide to stop searching in Google’s current format, you know the exact number of search results. You can make an informed decision about where to stop or how many results to peruse because you know where the end is. <a class="colorbox" href="http://videolectures.net/chi08_kieras_phc/">According to studies</a> conducted in the field of human-computer interaction, <strong>reaching an end point provides a sense of control</strong>; you know that you have received all relevant results, and you know whether the one you are looking for is there or not. Knowing the number of results available provides a sense of control and helps the user make a more informed decision, rather than be left to scour an infinitely scrolling list.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/pagination-close-up.png" rel="wp-prettyPhoto[g2785]"><img class="alignnone size-full wp-image-151618" alt="Pagination: The Click Barrier" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/pagination-close-up.png" width="500" height="132" /></a><br />
<em>Pagination is a barrier of clicks. (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/pagination-close-up.png" rel="wp-prettyPhoto[g2785]">Large version</a>)</em></p>
<p>When items are distributed across Web pages, they are framed and indexed and have a start and end point. The information is presented clearly and orderly. If we select an item from a paginated list and are taken from that page, we know that clicking “Back” will return us to that page (probably to the same scroll position). Our Web search will continue right where it left off.</p>
<p>If you scroll the same list of results with infinite scrolling, you are left without that sense of control because you are scrolling through a list that is conceptually infinite. Let’s say you count yourself among the 94% who stop reading after the first page (i.e. 10 results) of a Google search. When the list scrolls infinitely, there is essentially no end to the first page. Rather than look for the end of the page, which doesn’t exist anyway, you decide to stop scrolling at the 10th item. This poses a problem with infinite scrolling, because the 11th item is directly in sight. With a paginated list, on which you wouldn’t see the 11th result, deciding not to continue browsing is easier. However, when the next results <a class="colorbox" href="https://www.youtube.com/watch?v=j9UfY_94sKU">are already there</a>, <strong>you’d probably just keep on scrolling and scrolling</strong>.</p>
<p>As Dmitry Fadeyev points out:</p>
<blockquote><p>&#8220;People will want to go back to the list of search results to check out the items they’ve just seen, comparing them to what else they’ve discovered somewhere else down the list. Having a paginated interface lets the user keep a <strong>mental location</strong> of the item. They may not necessarily know the exact page number, but they will remember roughly what it was, and the paginated links will let them get there easier.</p>
<p>Not only does the infinite scroll break this dynamic, it also makes it difficult to move up and down the list, especially when you return to the page at another time and find yourself back at the top, being forced to scroll down the list once again and wait for the results to load. In this way the infinite scroll interface is actually slower than the paginated one.&#8221;</p>
<p>&mdash; Dmitry Fadeyev, <a class="colorbox" href="http://www.usabilitypost.com/2013/01/07/when-infinite-scroll-doesnt-work/">When Infinite Scroll Doesn&#8217;t Work</a></p>
</blockquote>
<h3>When Infinite Scrolling Fails</h3>
<p>The best companies are constantly <a class="colorbox" href="http://www.businessinsider.com/marissa-mayer-google-9-2010-11">testing</a> and <a class="colorbox" href="http://readwrite.com/2010/08/26/revolt_angry_digg_users_want_their_baby_back">studying</a> new interactions with their users. Increasing numbers of these studies are showing that infinite scrolling <a class="colorbox" title="the pros" href="http://econsultancy.com/il/blog/61703-infinite-scrolling-pros-and-cons">does not resonate</a> with users if it does not support their goal on the website.</p>
<h4>Temptation</h4>
<p>When you’re looking for that perfect search result and are tempted to continue scrolling into a wasteland of irrelevant results, time is wasted. Chances are that the best result will appear in the first 10 items. Therefore, infinite scrolling merely <a class="colorbox" href="http://techcrunch.com/2012/08/18/infinite-scroll-the-webs-slot-machine/">tempts you</a> to continue reading, wasting time and decreasing productivity in the process.</p>
<h4>Optimism</h4>
<p>Even more annoying is that scroll bars do not reflect the actual amount of data available. You’ll scroll down happily assuming you are close to the bottom, which by itself tempts you to scroll that little bit more, only to find that the results have just doubled by the time you get there.</p>
<h4>Exhaustion</h4>
<p>Infinite scrolling overwhelms users with stimuli. Like playing a game that you can never win, no matter how far you scroll, you feel like you’ll never get to the end. The combination of temptation and optimism play a big role in exhausting the user.</p>
<h4>Pogosticking</h4>
<p>Infinite scrolling often causes your position on the page to get lost. “Pogosticking” happens when you click away from an infinitely scrolling list and, when you return by clicking “Back,” are brought to the top of the previous page, instead of to the point where you left off. This happens because the scroll position is lost when you navigate away from an infinitely scrolling page, forcing you to scroll back down each time.</p>
<h4>Loss of Control</h4>
<p>Infinite scrolling leaves you with the feeling that you might be missing out on information. You continue scrolling because the results are right there, but you feel overwhelmed because you’re losing control over the amount of data being shown. There is something nice about defined pages on which the amount of content is quantified, where you can comfortably choose whether to click to view more or to stop. With infinite scrolling, you don’t have control over the amount of data on the page, which becomes overwhelming.</p>
<h4>Distracting</h4>
<p><a class="colorbox" href="http://www.etsy.com/">Etsy</a>, the vintage e-commerce marketplace, implemented infinite scrolling, only to find that it <a class="colorbox" href="http://www.slideshare.net/danmckinley/design-for-continuous-experimentation">led to fewer clicks</a> from its users. Infinite scrolling was unsuccessful because users felt lost in the data and had difficulty sorting between relevant and irrelevant information. While infinite scrolling provided faster and more results, users were <a class="colorbox" href="http://danwin.com/2013/01/infinite-scroll-fail-etsy/">less willing</a> to click on them, defeating its very purpose.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/etsy-home-page.jpg" rel="wp-prettyPhoto[g2785]"><img class="alignnone size-full wp-image-151618" alt="Etsy's Home Page" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/etsy-home-page.jpg" width="500" height="132" /></a><br />
<em>Etsy’s home page (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/etsy-home-page.jpg" rel="wp-prettyPhoto[g2785]">Large version</a>)</em></p>
<h4>Unreachable</h4>
<p>Have you tried reaching the footer of Facebook lately? The footer block exists below the news feed, but because the feed scrolls infinitely, more data gets loaded as soon as you reach the bottom, pushing the footer out of view every time. Footers exist for a reason: they contain content that the user sometimes needs. In Facebook’s case, the user can’t reach it. The links are repeated elsewhere but are harder to find. Infinite scrolling impedes the user by making important information inaccessible.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/facebook-loading-footer.png" rel="wp-prettyPhoto[g2785]"><img class="alignnone size-full wp-image-151618" alt="Facebook auto-loading News Feed and the unreachable footer" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/facebook-loading-footer.png" width="500" height="132" /></a><br />
<em>Facebook’s auto-loading news feed makes the footer unreachable. (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/facebook-loading-footer.png" rel="wp-prettyPhoto[g2785]">Large version</a>)</em></p>
<p>Footers serve as a last resort. If users can’t find something or they have questions or want more information or explanation, they often go there. If they don’t find it there, they might leave the website altogether. Companies that implement infinite scrolling should either make the footer accessible by <a class="colorbox" href="http://struck.com/">making it sticky</a> or relocate the links to a sidebar.</p>
<h4>Not Exclusive</h4>
<p><a class="colorbox" href="http://www.pinterest.com">Pinterest</a> does not have a footer at all, which makes sense given the problem we just saw with Facebook. Through infinite scrolling, Pinterest emphasizes its profusion of data, an endless sea of inspiration taken from all over the Web.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/PinterestOcean.jpg" rel="wp-prettyPhoto[g2785]"><img class="alignnone size-full" alt="Pinterest Ocean of Pins" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/PinterestOcean.jpg" width="500" height="132" /></a><br />
<em>Pinterest’s ocean of pins (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/PinterestOcean.jpg" rel="wp-prettyPhoto[g2785]">Large version</a>)</em></p>
<p>Images are faster and easier to scroll than text, so Pinterest and Google Images succeed with infinite scrolling to an extent. However, <a class="colorbox" href="http://techcrunch.com/2013/01/17/facebook-photos-record/">billions of images</a> are on the Web, and users would prefer to see only the best of them. There is something to be said for exclusivity, which seems to be lacking in Pinterest’s layout.</p>
<p>Limiting the number of images on Pinterest’s home page, with an “Editor’s picks” or “Most popular” list, might make the website more appealing. <strong>How exclusive can a pin be</strong> when a ton of other similar pins are next to it?</p>
<p>Pinterest’s tactic of using infinite scrolling for its plethora of data suffers because it <a class="colorbox" href="http://nicolelumbreras.com/2013/04/17/pinterest-overwhelms-me/">overwhelms users</a>. The collection looks bottomless, but its immensity is somewhat daunting, and browsing it might seem a waste of time. Ultimately, Pinterest is trying to expose users to <a class="colorbox" href="http://stephencorwin.com/blog/?p=97">infinite inspiration</a>, but that actually undermines the <a class="colorbox" href="https://www.youtube.com/watch?v=6ELAkV2fC-I">human need for control</a>. The amount of data becomes intimidating, and users are left with mixed feelings.</p>
<h3>When Usability Wins</h3>
<p>As mentioned earlier, Twitter integrates infinite scrolling effectively. The user sees an infinitely growing list of tweets and can comfortably click on a tweet to expand it in place, preventing the page from refreshing and, as a result, maintaining their scroll position.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/TwitterTornFeed.png" rel="wp-prettyPhoto[g2785]"><img class="alignnone size-full" alt="Twitter's torn feed" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/TwitterTornFeed.png" width="500" /></a><br />
<em>Twitter’s torn feed (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/TwitterTornFeed.png" rel="wp-prettyPhoto[g2785]">Large version</a>)</em></p>
<p>On its mobile version, Twitter even adds a “torn paper” marker, indicating to the user where to resume reading. This subtle and simple solution enables the user <strong>to scroll up and down the list, while having a recognizable point</strong> to return to. Psychologically, that marker reassures the reader by dividing read and unread content. Such markers give the user a sense of control and a better perception of the content’s depth and how far they’ve gotten into it.</p>
<p>Twitter is not the only one. <a class="colorbox" title="Discourse" href="http://www.discourse.org/">Discourse</a>, an emerging discussion platform, also has infinite scrolling that empowers the user. The company considered the importance of infinite scrolling to its user experience and implemented an intriguing and unique progress indicator. The indicator appears when needed and remains in view (without interfering) while the user reads the content. The indicator numbers the item currently being viewed out of the total number of items. This is a great way to make the user feel in control, even with a lot of data.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/discourse-infinite-scroll1.png" rel="wp-prettyPhoto[g2785]"><img class="alignnone size-full wp-image-116660" alt="Smart progress indicator on Discourse.com" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/discourse-infinite-scroll1.png" width="500" /></a><br />
<em>The smart progress indicator on Discourse (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/discourse-infinite-scroll1.png" rel="wp-prettyPhoto[g2785]">Large version</a>)</em></p>
<h4>Go Hybrid</h4>
<p>A hybrid of infinite scrolling and pagination is also a good option in many cases. With this solution, you would show a “load more” button at the end of a preloaded list, which, when clicked, loads another batch of items onto the list. The same behavior that infinite scroll does automatically, this button does <strong>on demand</strong>. The interface gains some of the advantages of infinite scrolling, without some of its drawbacks.</p>
<p>Because infinite scrolling requires the website to fetch so much content, the hybrid solution is used at times to control the data load. In Facebook’s news feed and Google’s image search, the infinite scrolling is automatic at first but becomes on-demand once a certain number of items have loaded. This maintains the interface while limiting the load on the server.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/hybrid-infinite-pagination.png" rel="wp-prettyPhoto[g2785]"><img class="alignnone size-full wp-image-151618" alt="Hybrid Infinite Pagination on Google Images" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/hybrid-infinite-pagination.png" width="500" height="132" /></a><br />
<em>Hybrid infinite pagination on Google Images (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/01/hybrid-infinite-pagination.png" rel="wp-prettyPhoto[g2785]">Large version</a>)</em></p>
<h3>Infinite Pages</h3>
<p><a class="colorbox" href="http://www.usabilitypost.com/2012/10/29/the-return-of-the-scroll/">Infinite pages</a> take the concept of infinite scrolling to a new level. Websites that employ this concept are “one-pagers.” To remove the barrier of clicking to the next page, the designer turns the entire website into one long scrollable page. Examples are <a class="colorbox" href="http://unfold.no/">Unfold</a> and <a class="colorbox" href="http://lostworldsfairs.com/atlantis/">Lost World’s Fairs</a>.</p>
<p>On these one-page websites, the sections are spread vertically, one after another. This makes the whole website less comprehensible &mdash; hence, less accessible. These websites might not have infinite scrolling, but the user might still have that feeling of a never-ending page.</p>
<p>On infinite pages, the height of each section will vary according to its contents. Although the approach can make for some creative interactions, it can leave users disoriented and unsure where to scroll for the next piece of information. The scroll bar is hidden on many such pages, leaving users feeling lost as they unconsciously <a class="colorbox" href="http://www.cxpartners.co.uk/cxblog/the_myth_of_the_page_fold_evidence_from_user_testing/">look for the scroll position</a> to track their progress. <strong>Hidden scroll bars deprive users of that chance for rescue.</strong> Users shouldn’t be left helpless; the interface should clearly show them how to navigate the page.</p>
<p><img class="size-full wp-image-151618" alt="Infinite Page" src="http://media.smashingmagazine.com/wp-content/uploads/2013/01/infinite-page.png" width="400" /><br /><em>Not knowing where they stand can leave the users disoriented.</em></p>
<p>UX engineers need to take extra care when designing infinite pages. They must take into account accessibility; tell users where they stand by showing the length of the page and how much they’ve viewed. Solutions could include a <a class="colorbox" href="http://www.netcraft.co.il/devshots/">fixed menu</a>, a <a class="colorbox" href="http://larsjung.de/fracs/">map of the page</a> or a <a class="colorbox" href="http://www.putzengel.at/">scroll progress bar</a>.</p>
<p>Another trick is the <a class="colorbox" href="http://en.wikipedia.org/wiki/Parallax_scrolling">parallax effect</a>, whereby different layers on the page move at different speeds according to the user’s scrolling, creating the illusion of depth (as seen on <a class="colorbox" href="http://andrevv.com/">Andrew McCarthy’s website</a>). While it can help to create <a class="colorbox" href="http://www.angelamorelli.com/water/">beautiful</a> and <a class="colorbox" href="http://www.shibui.me/web/scroll/index.html">innovative</a> experiences, it is sometimes <strong>heavily overused</strong>, and users can get confused by how much they need to scroll for more content. When the parallax effect is combined with animation, the user can get confused about whether the page is being scrolled by their movement or is moving autonomously. It&#8217;s wise to use the technique to enhance content, not as the content itself.</p>
<h3>Let’s Get To The Bottom Of This</h3>
<p>Infinite scrolling can be an innovative feature that greatly improves an interface by exposing content and making performance more efficient. But it needs to be used correctly.</p>
<p>Avoid the following sinkholes to achieve a strong infinite scrolling experience:</p>
<ul>
<li><strong>Users want immediate access to exclusive data.</strong><br />
Users don’t want to be left to explore all of a website’s data on their own. When implementing infinite scrolling, identify what data is exclusive to your website and elevate it to the top of the page, and filter less relevant information.</li>
<li><strong>Users want to feel in control.</strong><br />
Infinite scrolling sabotages that feeling of control. Add a smart progress indicator, a fixed menu or a map.</li>
<li><strong>Users often look for landmarks when scrolling.</strong><br />
When scrolling through long lists, users expect to be able to easily distinguish between new and viewed data. Add landmarks along the interface to keep users oriented.</li>
<li><strong>Consider conventional pagination or a hybrid solution.</strong><br />
Good old pagination is always an alternative to infinite scrolling. And if that doesn’t fit the context, then a hybrid solution, using a “load more” button, could greatly enhance the interface.</li>
<li><strong>Provide interesting content without an ambiguous interface.</strong><br />
Having to traverse a never-ending list is logical only if the user leaves feeling that it was worthwhile.</li>
<li><strong>Users often expect a footer.</strong><br />
If footer-type information is functional to the interface, then it should appear at the bottom of the page. A fixed footer is usually the way to go with infinite scrolling.</li>
<li><strong>An infinite list is still a list.</strong><br />
Infinite scrolling still needs to meet common interface standards. Whether users take their eyes off the screen for a moment or click a link and then click “Back,” they expect to return to the exact point where they left off. Whatever your interface, make sure it meets users’ expectations.</li>
<li><strong>Effects are nice to have but not a must.</strong><br />
Many infinitely scrolling interfaces have various effects to show more data (whether by sliding in new content or another method). Be mindful not to focus more on effects than on presenting data in the most effective way possible.</li>
</ul>
<h4>Use It Correctly</h4>
<p>Users are goal-oriented and find satisfaction in reaching the end of their exploration. To be effective, infinite scrolling has to account for this. <strong>Nothing is really infinite</strong>, not even these infinitely scrolling lists we’ve looked at. Users should always know where they stand, even when the content has not finished loading. They should know what the total amount of data is and be able to easily navigate the list. Infinite scrolling has to be implemented in the best possible way so that users can always find their way.</p>
<p><em>(al)</em></p>
<hr />
<p><small>© Yogev Ahuvia for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/05/03/infinite-scrolling-lets-get-to-the-bottom-of-this/" class="colorbox" title="Design Patterns: Infinite Scrolling: Let&#8217;s Get To The Bottom Of This">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/05/03/infinite-scrolling-lets-get-to-the-bottom-of-this/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=Design%20Patterns%3A%20Infinite%20Scrolling%3A%20Let%26%238217%3Bs%20Get%20To%20The%20Bottom%20Of%20This%20http://www.smashingmagazine.com/2013/05/03/infinite-scrolling-lets-get-to-the-bottom-of-this/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/03/design-patterns-infinite-scrolling-lets-get-to-the-bottom-of-this/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>5 Tips For Effective Social Media Time Management</title>
		<link>http://sayingitfirst.com/2013/05/02/5-tips-for-effective-social-media-time-management/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=5-tips-for-effective-social-media-time-management</link>
		<comments>http://sayingitfirst.com/2013/05/02/5-tips-for-effective-social-media-time-management/#comments</comments>
		<pubDate>Fri, 03 May 2013 04:01:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/02/5-tips-for-effective-social-media-time-management/</guid>
		<description><![CDATA[<p>Most of us have experienced the social media time warp at least once. You remember that time; you sat down to spend 30 minutes checking in on your company’s social media accounts when you happened to catch the latest Kid President video. Next thing you knew, you [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<p><img class="size-full wp-image-1977 alignleft" alt="Social Media Time Warp" src="http://www.rignite.com/wp-content/uploads/2013/03/Social-Media-Time-Warp.jpg" width="241" height="240" />Most of us have experienced the social media time warp at least once. You remember that time; you sat down to spend 30 minutes checking in on your company’s social media accounts when you happened to catch the latest <a class="colorbox" href="http://www.youtube.com/playlist?list=PLzvRx_johoA-YabI6FWcU-jL6nKA1Um-t">Kid President video</a>. Next thing you knew, you looked up to find that you’d been watching that cute kid’s videos for over an hour. It hit an all-time low when you saw his <a class="colorbox" href="http://www.youtube.com/watch?v=9WpBfbn6PLk" rel="wp-prettyPhoto[g2784]"">Harlem Shake video</a> and decided to watch 10 others to see if it was an actual dance, or just people wildly thrashing their bodies and pretending to be zombies. After a big palm slap to the forehead, you gather your things to head off to your next meeting, realizing you didn’t accomplish anything worthwhile. While you’ll never get that hour of your life back, it is possible to make sure you use the next hour more productively.</p>
<p>Here are 5 tips to help you maximize your time in social media and avoid the time warp.</p>
<h2 class="heading-with-number"><span class="heading-number">1</span>Create a Checklist</h2>
<p>The first step is to create a list of all the things you need to accomplish in a day, a week, and a month. Be sure to include bigger tasks like writing blog posts, e-books or producing a video. But also include the most medial tasks like writing and publishing status updates. When you create the list make sure to include the frequency of how often each task needs to be done and how many times the task will be performed. For example, create and publish 6 tweets per day. After a little work, this will become your master check list. You will look at this list every day, week and at the end of the month to make sure all tasks have been accomplished. But first we need to evaluate and optimize your check list.</p>
<h2 class="heading-with-number"><span class="heading-number">2</span>Batch &amp; Prioritize Tasks</h2>
<p>Now that you know what you need to get done, take a look and see if any similar items can be batched together and knocked-out all at once.  For example, if you know that 2 of the tweets each day will be promoting your company’s content, can you write several days’ worth all at once so they are ready to go? Are there a group of status updates that make sense to schedule ahead of time? If you publish 4 blog posts a month, can you write them all at once and have them done 30 days before? Many times, one of the biggest challenges with social media efficiency is that we aren’t working far enough ahead. Therefore, when we sit down to “manage” our social media channels we are trying to write a status update, publish the status update, review blog posts while we are sharing them and replying to anyone who has reached out.</p>
<p>Tasks like writing status updates require a creative state while actually posting, and scheduling, requires a productive state. The biggest challenge is that these are two different mindsets and the process of transitioning between them can take up to 20 minutes. Do you know what happens in that 20 minutes? You guessed it, Grumpy Cat Meme delirium.  The best way to maximize your creative state is to group creative tasks together, and likewise for productive tasks. The last step is to assign a priority to each task. Let’s face it, there are things that MUST get done and things we’d LIKE to get done. Creating a prioritized list will help you know where to cut fat if you find yourself running out of time.</p>
<h2 class="heading-with-number"><span class="heading-number">3</span>Develop a Schedule</h2>
<p>Now that you know what needs to be done, when it needs to be done, and the group of tasks you want to accomplish, it’s time to put together a daily, weekly and monthly schedule. Make sure your schedule reflects the tasks you have batched together. Keep in mind you can break up your daily tasks into convenient time slots during your day. This will help you manage your time more efficiently.</p>
<p>You’ll find that some tasks have to be done every day in order to be an active participant in social media. This typically includes reading timely 3<sup>rd</sup> party content to share with your network and responding to mentions. There will be another set of tasks that need to be completed once or twice a week. It’s best to pick a consistent day to complete these tasks so they don’t fall off the radar or monopolize time you didn’t plan for. Finally, other tasks will be completed once a month. Keep in mind some of these tasks may take a larger chunk of time such as writing blog posts and pulling reports, so it’s best to space them out on days you aren’t also doing other time intensive tasks.</p>
<p>Here’s a sample daily and weekly task list for managing social media:<br />
<img class="alignright size-full wp-image-2649" alt="Time Management For Social Media Infographic" src="http://www.rignite.com/wp-content/uploads/2015/04/Time-Management-For-Social-Media-Infographic.jpg" width="612" height="1565" /></p>
<p><strong>Copy the embed code below to use this image on your site:</strong></p>
<p><textarea readonly class="embedcode"><a class="colorbox" href="http://www.rignite.com/blog/5-tips-for-effective-social-media-time-management?utm_source=InfographicEmbed&amp;utm_medium=EmbedReferral&amp;utm_term=&amp;utm_content=DailyWeeklyTasks&amp;utm_campaign=Infographics" title="Social Media Time Management: Daily And Weekly Tasks" target="_blank"><img src="http://www.rignite.com/wp-content/uploads/2015/04/Time-Management-For-Social-Media-Infographic.jpg" alt="Manage Social Media More Efficiently With Rignite" style="width:540px;margin:0px auto" /></a></p>
<p style="font-size:12px">Compliments of: <a class="colorbox" href="http://www.rignite.com/?utm_source=InfographicEmbed&amp;utm_medium=EmbedReferral&amp;utm_term=&amp;utm_content=DailyWeeklyTasks&amp;utm_campaign=Infographics" target="_blank" title="Social Media Time Management: Daily And Weekly Tasks">Rignite Inc.</a></p>
<p></textarea></p>
<h2 class="heading-with-number"><span class="heading-number">4</span>Create a Workflow</h2>
<p>Have you ever noticed when you get ready in the morning you follow exactly the same process every day? My process is pretty simple, shower, brush teeth, put on makeup, fix hair, change into work clothes and eat breakfast. Each one of those steps has its own ritual. In fact, I’ve noticed if something interrupts my process, I’m very likely to be late. The same principle works for social media. It’s important to establish your workflow for how you will accomplish the tasks on your schedule. If Monday is the day you schedule your blog posts, find 4 articles to share, and respond to mentions, have a process for determining the order of those tasks and for how you will actually complete each one.</p>
<p>For example, scheduling your blog post includes these steps:</p>
<ol>
<li>Load the post into blog platform</li>
<li>Add images</li>
<li>Add title tag, meta-description, and  keywords</li>
<li>Select the category and tags</li>
<li>Run it through SEO optimization plug-in and make necessary edits</li>
<li>Preview post and make last minutes adjustments for formatting issues</li>
<li>Select the date and time to publish</li>
<li>Publish</li>
</ol>
<p>Having a consistent process for going through these steps makes you more efficient and helps to make sure you don’t forget a step. Don’t forget to document the process. This really helps if you ever need to ask someone to step in and help you. Further, don’t forget it is okay to separate tasks into batches and spread them into multiple chunks of time throughout the day, just make sure you document what that looks like and plan for it accordingly.</p>
<h2 class="heading-with-number"><span class="heading-number">5</span>Set a Time Limit</h2>
<p>The last step is to determine how much time you will need for each batch of tasks. The reality is some days you will need 4 hours and some you may only need 30 minutes. Other days you may find that tasks can be broken up into two 30-minute chunks of time. The key is that once you sit down to complete that task, it’s important to set a time limit and stick to it. You could use an old fashioned kitchen timer or a free tool like <a class="colorbox" href="http://www.toggl.com/" target="_blank">Toggl</a> to keep your time in check. If you have 30 minutes, sit down and knock out the tasks on your list. If you find yourself running over, maybe you have too many tasks in that batch or you haven’t allotted enough time. Once you get the hang of it, you’ll be busting through that task list. Occasionally you may even find 10 minutes left over. In that case, feel free to knock yourself out and go have some fun with the latest viral video.</p>
<p><i>What are your tips for managing social media more efficiently? What are your biggest challenges? Or have some fun and share the most ridiculous thing got you trapped in the social media time warp? Leave a comment and join the conversation.</i></p>
<div>
<aside class="tip-of-the-day full left"><span class="top-bubble">Download Free eBook</span><strong>Time Management For Social Media: Increasing Your ROI And Sanity</strong></p>
<p><em>Are you tired of spinning your wheels on time consuming social media tasks that don’t produce a return? </em></p>
<p><strong><em>Download this ebook to discover:</em></strong></p>
<ul>
<li>How to prioritize your activities based on your goals and objectives</li>
<li>Where you can improve productivity</li>
<li>Tools to help you increase efficiency and boost results from your efforts</li>
<li>How to set routines that fit your schedule</li>
</ul>
<p><b><a class="colorbox">&gt;&#8221; href=&#8221;http://www.rignite.com/marketing-ebook/time-management-for-social-media-increasing-your-roi-and-sanity?utm_source=RigniteBlog&amp;utm_medium=BlogPost&amp;utm_content=TimeManagement&amp;utm_campaign=eBook&#8221; target=&#8221;_blank&#8221;&gt;Download eBook Now &gt;&gt;</a></b></p>
<p><em></em></p>
</aside>
</div>
<p>Source: <a href="http://feedproxy.google.com/~r/Rignite/~3/mOFXkCyMfFM/5-tips-for-effective-social-media-time-management" class="colorbox" title="5 Tips For Effective Social Media Time Management">Rignite</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://feedproxy.google.com/~r/Rignite/~3/mOFXkCyMfFM/5-tips-for-effective-social-media-time-management"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=5%20Tips%20For%20Effective%20Social%20Media%20Time%20Management%20http://feedproxy.google.com/~r/Rignite/~3/mOFXkCyMfFM/5-tips-for-effective-social-media-time-management"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/02/5-tips-for-effective-social-media-time-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Freebie: iOS Grid System, A Free Extension For Adobe Fireworks</title>
		<link>http://sayingitfirst.com/2013/05/02/freebie-ios-grid-system-a-free-extension-for-adobe-fireworks/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=freebie-ios-grid-system-a-free-extension-for-adobe-fireworks</link>
		<comments>http://sayingitfirst.com/2013/05/02/freebie-ios-grid-system-a-free-extension-for-adobe-fireworks/#comments</comments>
		<pubDate>Fri, 03 May 2013 00:36:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/02/freebie-ios-grid-system-a-free-extension-for-adobe-fireworks/</guid>
		<description><![CDATA[<p>I’ll come right out and say it. I think the grid is the unsung hero of a good design. It gives structure and lets the design fall perfectly into place on the canvas. With a grid, adapting and building something new into your design is easy. Think [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>I’ll come right out and say it. I think the grid is the unsung hero of a good design. It gives structure and lets the design fall perfectly into place on the canvas. With a grid, adapting and building something new into your design is easy. <strong>Think of it like a house’s foundation.</strong> With a solid foundation, the house is stable, and building on it is easy. With a solid grid, your design can easily be adapted to accommodate whatever changes come along.</p>
<p>Today, we’ll share iOS Grid System, which I’ve been using when designing apps in Adobe Fireworks. The extension is free for both personal and commercial use, and it works with all iOS devices as of March 2013.</p>
<p>Installing and using the iOS grid extension in Fireworks is pretty easy. We’ll explain the process in detail, but you can jump to the <a class="colorbox" href="http://fireworks.smashingmagazine.com/?p=114159#download">download</a> section and try the extension right away.</p>
<p><!-- intro image + link --><br />
<a class="colorbox" href="http://fireworks.smashingmagazine.com/?p=114159"><img src="http://media.smashingmagazine.com/wp-content/uploads/2012/11/ios-grid-system.png" alt="" /></a></p>
<h3>Why Are Grids Useful?</h3>
<p>Before we continue, a bit about grids.</p>
<p>I like consistency. It helps me feel like I can trust whatever I’m using at the moment. At a deeper level, users appreciate consistency because it <strong>builds trust</strong> &mdash; trust that you aren’t going to pull the rug out from under them in the middle of whatever they’re doing. They know what they’re going to get, and they’ll be more comfortable with you if everything lines up just right, rather than if elements look like spaghetti thrown against a wall. In the end, consistency improves trust and credibility through better design quality, and it improves usability by making a website or application more understandable, predictable and findable.</p>
<p>As a designer, I like figuring out a system that <strong>makes updating easy</strong> for me. Grids help here because I don’t always have to worry about how a particular element should align with another; I’ve thought ahead and done that work already.</p>
<p>Learning about grids helps you put out better designs. Grids &mdash; specifically, how to apply them so that a design can be consistent and grow into itself &mdash; are an essential topic for designers.</p>
<p>Actually, they’re only essential if you want an interface that is:</p>
<ul>
<li>consistent,</li>
<li>easy to update,</li>
<li>polished even after you’ve finished working on the interface. (I guess we needed to make that clear first.)</li>
</ul>
<p>Whether you work with clients or are on an internal team, grids are especially useful when those last-minute “Hey, can you just add this little button in somewhere? It’ll take only a second, I swear!” changes come in. Accommodating that request becomes much less trouble simply because a good grid is in place. Just pick the appropriate column (or columns), and boom &mdash; you’re done. <strong>Happy client, happy you!</strong></p>
<p>I like what Khoi Vinh has to say about grids in this short (but great) interview:</p>
<p>
<em>“<a class="colorbox" href="http://vimeo.com/31355402">Khoi Vinh: On the Grid</a>,” from <a class="colorbox" href="http://vimeo.com/thecolormachine">The Color Machine</a></em></p>
<blockquote>
<p>&#8220;The grid is a tool for me to impose order and logic and law. There’s a framework. If you remove all subjectivity, then you get some essential truth, some core idea that’s not clouded by inaccuracies or approximations or subjective feelings.&#8221;</p>
</blockquote>
<h3>Why Make An iOS Grid Extension For Adobe Fireworks?</h3>
<p>The easy answer is that most of my designs these days are for iOS, and a grid system is essential to every design I craft. I start using it early on in the design process, and having a solid grid in place when I design makes sense for me.</p>
<p>I decided to build it after noticing how much time I spent making decisions that I could have easily automated. With this extension, I don’t have to spend time tediously clicking and dragging around to make sure my grid’s shapes and guides are pixel-perfect. This extension <strong>allows me spend more time on other important parts of the process</strong> (such as how the design works and looks).</p>
<p>Now, I just open Adobe Fireworks, create a new project, and then select what iOS device I’ll be designing for and the number of columns I’ll need. Then, the grid appears on my canvas, along with some nicely sized gutters, which help my design breathe a little easier.</p>
<p>Here’s what it looks like (notice the green overlay):</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/12/ios-grid-system-grid-overlay.jpg" title="The iOS grid in practice (view large)." rel="wp-prettyPhoto[g2783]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2012/12/ios-grid-system-grid-overlay.gif" width="500" height="375" alt="iOS Grid System Overlay" /></a><br />
<em>The iOS grid in practice. (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/12/ios-grid-system-grid-overlay.jpg" rel="wp-prettyPhoto[g2783]">Large version</a>)</em></p>
<h3>About The iOS Grid Extension</h3>
<p>The extension is made for Adobe Fireworks and is optimized to help you create designs for all of Apple’s mobile devices (in both portrait and landscape modes) as of March 2013. It will be updated as new iOS devices and resolutions arrive.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/12/grid-full.jpg" title="View large" rel="wp-prettyPhoto[g2783]"><img src="http://media.smashingmagazine.com/wp-content/uploads/2012/12/grid-full.thumbnail.jpg" alt="Grid on the canvas: shapes and guides" width="500" height="406" /></a><br />
<em>iOS Grid System will build your grid automatically on any page in Adobe Fireworks. (<a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2012/12/grid-full.jpg" rel="wp-prettyPhoto[g2783]">Large version</a>)</em></p>
<p><strong>Here’s what’s included in the extension package:</strong></p>
<ul>
<li>Non-Retina iPhone (3GS) grid command<br />
Grid size: 320 </p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/02/freebie-ios-grid-system-a-free-extension-for-adobe-fireworks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Source Plugin: Magnific Popup, A Truly Responsive Lightbox (For jQuery And Zepto.js)</title>
		<link>http://sayingitfirst.com/2013/05/02/open-source-plugin-magnific-popup-a-truly-responsive-lightbox-for-jquery-and-zepto-js/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=open-source-plugin-magnific-popup-a-truly-responsive-lightbox-for-jquery-and-zepto-js</link>
		<comments>http://sayingitfirst.com/2013/05/02/open-source-plugin-magnific-popup-a-truly-responsive-lightbox-for-jquery-and-zepto-js/#comments</comments>
		<pubDate>Thu, 02 May 2013 17:48:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/05/02/open-source-plugin-magnific-popup-a-truly-responsive-lightbox-for-jquery-and-zepto-js/</guid>
		<description><![CDATA[<p>A lightbox is one of those tools that work great on the desktop but often fail on small mobile devices. These days, finding a plugin that is responsive and that displays content right away is hard. For this reason, I created Magnific Popup, an open-source lightbox plugin [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>A lightbox is one of those tools that work great on the desktop but often fail on small mobile devices. These days, finding a plugin that is responsive and that displays content right away is hard. For this reason, I created <a class="colorbox" href="http://dimsemenov.com/plugins/magnific-popup/">Magnific Popup</a>, an open-source lightbox plugin focused on performance.</p>
<p>In this article, <strong>I’ll share the techniques</strong> I employed in creating this plugin, techniques that can make your lightbox much faster and easier to use, whatever the device being used.</p>
<h3>1. Speed</h3>
<p>We might not be able to speed up the loading time of an image with this lightbox plugin, but we can create the perception of a faster loading time.</p>
<h4>Progressive Loading of Images</h4>
<p>The majority of lightbox plugins will fully preload an image before displaying it. This is done to figure out the original size of the image and to center it with JavaScript. Because Magnific Popup centers the content with CSS, we can avoid preloading and instead display the image right away to take advantage of progressive image loading. It will render and show the image while the data is being received.</p>
<p>You can speed this up even more by <a class="colorbox" href="http://www.codinghorror.com/blog/2005/12/progressive-image-rendering.html">progressively rendering the JPEG</a>. It is rendered not from top to bottom, but from low quality to full quality, so the user can discern the image even faster. The type of rendering to use is strictly a matter of preference.</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/03/progressive-loading.jpg" rel="wp-prettyPhoto[g2782]"><img class="alignnone size-full wp-image-157895" alt="Progressive image loading" src="http://media.smashingmagazine.com/wp-content/uploads/2013/03/progressive-loading.jpg" width="500" height="452" /></a></p>
<h4>CSS-Based Resizing</h4>
<p>The CSS-only approach <strong>makes this lightbox extremely flexible.</strong> You can specify sizes in relative units such as ems, resize popups in media queries, and update popup content dynamically without having to worry about how it will be resized and centered. Try to avoid, or at least reduce, the number of resizing properties in a window’s <code>resize</code> event, because it will look much slower than resizing with just pure CSS.</p>
<p>Vertically centering an element with unknown dimensions is probably the most horrifying topic in CSS layout. The main goal for me was to prevent the size of the content area from dynamically updating the contents of the lightbox, and to make it work in IE 8 and above.</p>
<p>Following the principle of progressive enhancement, I decided to <strong>drop the vertical centering feature in IE 7</strong> completely, because the only way to implement it was to use slow CSS expressions, which kill performance in old browsers. In contrast to modern browsers, the resolution of monitors on which IE 7 is being run is unusually easy to predict. We’d know that the user would be on an old PC, which typically has a resolution of somewhere between 800 </p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/05/02/open-source-plugin-magnific-popup-a-truly-responsive-lightbox-for-jquery-and-zepto-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Desktop Wallpaper Calendar: May 2013</title>
		<link>http://sayingitfirst.com/2013/04/30/desktop-wallpaper-calendar-may-2013/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=desktop-wallpaper-calendar-may-2013</link>
		<comments>http://sayingitfirst.com/2013/04/30/desktop-wallpaper-calendar-may-2013/#comments</comments>
		<pubDate>Tue, 30 Apr 2013 21:57:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/04/30/desktop-wallpaper-calendar-may-2013/</guid>
		<description><![CDATA[<p>We always try our best to challenge your artistic abilities and produce some interesting, beautiful and creative artwork. And as designers we usually turn to different sources of inspiration. As a matter of fact, we’ve discovered the best one—desktop wallpapers that are a little more distinctive than [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>We always try our best to challenge your artistic abilities and produce some interesting, beautiful and creative artwork. And as designers we usually turn to different sources of inspiration. As a matter of fact, we’ve discovered the best one—<strong>desktop wallpapers</strong> that are a little more distinctive than the usual crowd.</p>
<p>This creativity mission <a class="colorbox" href="http://www.smashingmagazine.com/tag/wallpapers/">has been going on for over five years now</a>, and we are very thankful to all the designers who have contributed and are still diligently contributing each month. This post features free desktop wallpapers created by artists across the globe for May 2013. Both versions with a calendar and without a calendar can be downloaded for free. It’s time to freshen up your wallpaper!</p>
<p>Please note that:</p>
<ul>
<li>All <strong>images can be clicked on</strong> and lead to the preview of the wallpaper,</li>
<li>You can <a class="colorbox" href="http://www.smashingmagazine.com/2008/03/19/desktop-wallpaper-calendar-join-in/">feature your work in our magazine</a> by taking part in our Desktop Wallpaper Calendar series. We are regularly looking for creative designers and artists to be featured on Smashing Magazine. Are you one of them?</li>
</ul>
<h3 id="the-green-bear-05-2013">The Green Bear</h3>
<p>Designed by <a class="colorbox" href="http://www.pedroroloillustration.com">Pedro Rolo</a> from Portugal.</p>
<p><a class="colorbox" href="http://files.smashingmagazine.com/wallpapers/may-13/the-green-bear/may-13-Green Bear-full.jpg" title="The Green Bear"><img width="500" height="281" alt="The Green Bear" src="http://files.smashingmagazine.com/wallpapers/may-13/the-green-bear/may-13-Green Bear-preview.jpg" /></a></p>
<ul>
<li><a class="colorbox" href="http://files.smashingmagazine.com/wallpapers/may-13/the-green-bear/may-13-Green Bear-preview.jpg" title="The Green Bear - Preview">preview</a></li>
<li>with calendar: <a class="colorbox" href="http://files.smashingmagazine.com/wallpapers/may-13/the-green-bear/may-13-Green Bear-calendar-1024x768.jpg" title="The Green Bear - 1024x768">1024<br />
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/04/30/desktop-wallpaper-calendar-may-2013/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>More Than Just Lorem Ipsum: Content Knowledge Is Power</title>
		<link>http://sayingitfirst.com/2013/04/29/more-than-just-lorem-ipsum-content-knowledge-is-power/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=more-than-just-lorem-ipsum-content-knowledge-is-power</link>
		<comments>http://sayingitfirst.com/2013/04/29/more-than-just-lorem-ipsum-content-knowledge-is-power/#comments</comments>
		<pubDate>Mon, 29 Apr 2013 19:20:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/04/29/more-than-just-lorem-ipsum-content-knowledge-is-power/</guid>
		<description><![CDATA[<p>“Content matters!” “Comp with real copy!” “Have a plan!” By now, you’ve probably heard the refrain: making mobile work is hard if you don’t consider your content. But content knowledge isn’t just about ditching lorem ipsum in a couple of comps. Countless organizations now have a decade [...]</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"><img src="http://statisches.auslieferung.commindo-media-ressourcen.de/advertisement.gif" alt="" border="0" /><br /><a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=1" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=1" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=2" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=2" border="0" alt="" /></a> <a class="colorbox" href="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=target&amp;collection=smashing-rss&amp;position=3" target="_blank"><img src="http://auslieferung.commindo-media-ressourcen.de/random.php?mode=image&amp;collection=smashing-rss&amp;position=3" border="0" alt="" /></a></div>
</td>
</tr>
</table>
<p>“Content matters!” “Comp with real copy!” “Have a plan!” By now, you’ve probably heard the refrain: making mobile work is hard if you don’t consider your content. But content knowledge isn’t just about ditching <em>lorem ipsum</em> in a couple of comps.</p>
<p>Countless organizations now have a decade or two’s worth of Web content &mdash; content that’s shoved somewhere underneath their redesigned-nine-times home page. Content that’s stuck in the crannies of some sub-sub-subnavigation. Content that’s clogging up a CMS with WYSIWYG-generated markup.</p>
<p><strong>Messy, right?</strong> Well, not as messy as it will be &mdash; because legacy content is the thing that loves to rear its ugly head late in the game, “breaking” your design and becoming the bane of your existence.</p>
<p>But when you <strong>take the time to understand the content that already exists</strong>, not only will you be able to ensure that it’s supported in the new design, but you’ll actually make the entire design stronger because you’ll have realistic scenarios to design with and for &mdash; not to mention an opportunity to clean out the bad outdated muck before it obscures your sparkly new design.</p>
<p>Today, we’re going to make existing content work <em>for</em> you, not <em>against</em> you.</p>
<h3>What You Don’t Know <em>Will</em> Hurt You</h3>
<p>When you’re working on something new and fun, ignoring the deep recesses of content is tempting. After all, you’ve got a lot to think about already: designing for touch, dealing with ever-changing screen sizes, adding geolocation features, maybe even blinging things out with a few badges.</p>
<p>But if <a class="colorbox" href="http://bradfrostweb.com/blog/mobile/content-parity/">content parity</a> matters to you (and it damn well should if you care one whit about the “<a class="colorbox" href="http://alistapart.com/article/uncle-sam-wants-you-to-optimize-your-content-for-mobile">large and growing minority of Internet users</a>” who always or mostly access the Web on a mobile device), then at some point you’ll have to deal with the unruly content lurking underneath your website’s neat surface.</p>
<p>Why? Because chances are <strong>there’ll be stuff out there that you’ve never thought about</strong>, much less designed for. And all that stuff has to go somewhere &mdash; too often, shoehorned into a layout it was never meant to inhabit, or perhaps not even migrated into a new template but instead left to wither in an outdated, mobile-unfriendly design.</p>
<p>Take navigation. As <a class="colorbox" href="http://bradfrostweb.com/blog/web/complex-navigation-patterns-for-responsive-design/">Brad Frost has written</a>, designing small-screen navigation for small websites is simply tricky, any way you slice it.</p>
<p>Hard as it already is, it becomes downright impossible if you haven’t dealt with your legacy assets first. You’re sure to end up with problems, like a navigation system that only works for two levels of content when you actually have four levels to contend with, making all of that deeper information accessible only with hard to manage (and find) text links &mdash; or, worse, making it completely inaccessible except through search.</p>
<p>There’s a better way.</p>
<h3>In The Belly Of The Beast</h3>
<p>Mark Boulton has written eloquently on <a class="colorbox" href="http://www.markboulton.co.uk/journal/theinbetween">content-out design</a> &mdash; the concept of determining how your design should shift for varying displays by focusing not on screen sizes, but on where your content naturally breaks down. It’s excellent advice.</p>
<p>But if you’re trying to work with a website with thousands of URLs &mdash; or anything more than a few dozen, really &mdash; <strong>you have to ask:</strong> <em>Which</em> content do I design with? Unless you’re relying on infinite monkeys designing infinite layouts to create custom solutions for every single page, you’re going to have to rely on representative content: a set of content that demonstrates the variety of information that the experience needs to support.</p>
<p>So, how do you know what’s representative? You get your arms around the size, scope, structure and substance of your content.</p>
<p>Yup. <strong>It’s time for the content audit.</strong></p>
<p>People have been talking about content audits and inventories for more than a decade &mdash; in fact, Jeffrey Veen wrote about them on Adaptive Path back in 2002, calling them a “<a class="colorbox" href="http://www.adaptivepath.com/ideas/doing-content-inventory">mind-numbingly detailed odyssey through your web site</a>.” At the time, people were starting to yank their websites from static hand-coded pages and pull them into content management systems, and someone needed to sit down and sort it all out.</p>
<p>More than a decade later, I’d say content audits are more useful than ever &mdash; but in a slightly different way. Today, a content audit isn’t just an odyssey through your website; it’s a window into your content’s nature.</p>
<h4>What To Look For</h4>
<p>You could audit content for all kinds of things, depending on what you want to learn and be able to do with the information. Some audits focus on brand and voice consistency, others on assessing quality or identifying <a class="colorbox" href="http://meetcontent.com/blog/rot-the-low-hanging-fruit-of-content-analysis/">ROT</a>.</p>
<p>There’s nothing wrong &mdash; and quite a lot right &mdash; with these priorities. But if you want to ready your content to be more flexible and adaptable, then you can’t just look at each page individually. You need to start finding <em>patterns</em> in the content.</p>
<p>It’s a simple question, really: <strong>What are we publishing?</strong> If your first answer is “a page,” look again. What’s the shape of this content? What is this content most essentially? Is it an interview, a feature story, a product, a bio, a recipe, an erotic poem, a manifesto? Asking these questions will help you see the natural pieces and parts that make up the content.</p>
<p>When you do, you’ll have a structural model for the content that matches your users’ <a class="colorbox" href="http://danieleizans.com/2012/03/mental-modeling-for-content-work-creation/"><strong>mental</strong> model</a> &mdash; i.e. the way they perceive what they’re looking at and how they understand what it means.</p>
<p><strong>For example</strong>, I recently worked with a large publicly traded company whose website dates back to the early aughts. After a couple of responsive microsites, they’ve caught the bug and want to update everything. Problem is, the existing website’s a mess of subdomains, redirects and thousands of pages that are nowhere near ready for flexible layouts.</p>
<p>Our first step was to dig deep, like a geologist &mdash; except that instead of unearthing strata of shale and sandstone marking bygone eras, we identified and documented all of the forgotten templates, lost content and abandoned initiatives we could.</p>
<p>We ended up with a dozen or so content types that fit pretty much anything the company was producing. Sure, we still ended up with some general “pages.” But more often than not, our audit revealed something more specific &mdash; and useful &mdash; about the content’s nature. When it didn’t, that was often a sign that the content wasn’t serving a purpose &mdash; which put it on the fast track to retirement.</p>
<p><strong>Once you’ve taken stock of what you have</strong>, gotten rid of the garbage and identified the patterns, you’ll also need to decide which attributes each content type needs to include: Do articles have date stamps? Does this need a byline? What about images? Features? Benefits? Timelines? Ingredients? Pull quotes? This will enable you to turn all of those old shapeless pages &mdash; “blobs,” as Karen McGrane has so affectionately <a class="colorbox" href="http://contentsmagazine.com/articles/shifting-the-page/">labeled them</a> &mdash; into a system of content that’s defined and interconnected:</p>
<p><a class="colorbox" href="/wp-content/uploads/2013/03/Content-model1.png" rel="wp-prettyPhoto[g2780]"><img alt="A content model for a recipe" src="/wp-content/uploads/2013/03/Content-model1.png" /></a><br />
<em>This content model shows attributes for the “recipe” content type, and how recipes fit into a broader system.</em></p>
<p>Each bit of structure you add gives you options: new abilities to control how and where content should be presented to best support its meaning and purpose.</p>
<p>Regardless of what you want to do with your content &mdash; launch a responsive website, publish to multiple websites simultaneously, extract snippets of content for the home page, reuse the content in an app, mash it up with a third party’s content &mdash; this sort of structure will make it possible, because it enables you to pick and choose which bits should go where, when.</p>
<h4>Tools for Auditing Content</h4>
<p>The content audit may not be new, but some tools to help you get started are. Lately, I’ve been running initial reports with the <a class="colorbox" href="http://www.content-insight.com">Content Analysis Tool</a> (CAT), which, for a few bucks, produces a detailed report of every single page of content that its spiders can find across your website.</p>
<p>Using CAT’s Web interface, you can sift through the report and see details such as page types, titles, descriptions, images and even the content in <code><br />
<h1></code> tags &mdash; super-useful if you’re assessing content of murky origin, because a headline often gives you at least a glimmer of what a page is about.</p>
<p>Here’s an excerpt of what it found for Smashing Magazine’s own “<a class="colorbox" href="http://www.smashingmagazine.com/guidelines-for-mobile-web-development/">Guidelines for Mobile Web Development</a>” page:</p>
<p><a class="colorbox" href="/wp-content/uploads/2013/04/CAT-Tool-Example.png" rel="wp-prettyPhoto[g2780]"><img alt="An excerpt from the Content Analysis Tool" src="/wp-content/uploads/2013/04/CAT-Tool-Example-Excerpt.png" /></a><br />
<em>The CAT report shows a thumbnail of the page, as well as some data about its content. See the <a class="colorbox" href="/wp-content/uploads/2013/04/CAT-Tool-Example.png" rel="wp-prettyPhoto[g2780]">full screenshot</a> for more.</em></p>
<p>While features such as screenshots of all pages and lists of links are useful for individual analysis, <strong>I prefer to export CAT’s reports into a big ol’ CSV file</strong>, where the raw data looks like this, with each row of the spreadsheet representing a single URL:</p>
<p><a class="colorbox" href="/wp-content/uploads/2013/04/CAT-CSV-Example.png" rel="wp-prettyPhoto[g2780]"><img alt="An excerpt of a raw CSV report from the Content Analysis Tool" src="/wp-content/uploads/2013/04/CAT-CSV-Example-Excerpt.png" /></a><br /><em>CAT also spits out detailed CSVs chockfull of raw data about all pages of a website. See the <a class="colorbox" href="/wp-content/uploads/2013/04/CAT-CSV-Example.png" rel="wp-prettyPhoto[g2780]">full screenshot</a> for all of the fields.</em></p>
<p>It’s not perfect. For example, if content’s been abandoned and removed from navigation but left floating out there in the tubes, CAT typically won’t pick it up either. And if a website’s headlines aren’t marked up using <code><br />
<h1></code> (like Smashing Magazine, which uses <code><br />
<h2></code>s), then it won’t scrape them either.</p>
<p>What it is great for, though, is <strong>getting a quick snapshot of an entire website</strong>. From here, I usually do the following:</p>
<ul>
<li>Add fields for my own needs, such as qualitative rankings or keep/delete notations;</li>
<li>Set up filtering and sorting so that I can slice the data by whichever field I want, such as according to the section where it’s located;</li>
<li>Assess and rank each page according to whatever qualitative attributes we’ve settled on;</li>
<li>Note any patterns in the content types and structures used, as well as relationships to other content;</li>
<li>Define suggested meta-data types and tags that the content should have;</li>
<li>Use <a class="colorbox" href="http://en.wikipedia.org/wiki/Pivot_table">pivot tables</a>, which summarize and sort data across multiple dimensions, to identify trends in the content.</li>
</ul>
<p>With this, I now have both the detailed information to drive specific page-level changes and the high-level patterns to inform structural recommendations, CMS updates, meta-data schema and other efforts to improve content portability and flexibility.</p>
<p>I like using CAT because it was designed by and for content strategists &mdash; and improved features are rolling out all the time &mdash; but you can also use a similar tool from <a class="colorbox" href="http://pro.seomoz.org/tools/crawl-test">SEOmoz</a> (although it tends to sell you on fancy-pants reporting features), or even grab a report from your CMS (depending on which one you use and how it collects information).</p>
<p><strong>Any of these tools will help you quickly collect raw data.</strong> But remember that they’re just a head start. Nothing replaces putting your eyes &mdash; and brain &mdash; on the content.</p>
<h3>The Secret To Scale</h3>
<p>You don’t have to love auditing content. You certainly don’t need to develop a sick addiction to pivot tables (but it’s <a class="colorbox" href="https://twitter.com/redsesame/statuses/293749203841212416">totally OK if you do</a>). What you will love, I promise, is what a deep knowledge of content enables you to do: create an extensible design system that doesn’t devolve at scale.</p>
<p>For example, let’s look at some of the larger websites that have started using responsive design. There’s higher education, of course, where early adopters such as the <a class="colorbox" href="http://nd.edu">University of Notre Dame</a> were quickly followed by a <a class="colorbox" href="http://weedygarden.net/highered-rwd-directory">rash of college websites</a>.</p>
<p><strong>What do most of these websites have in common?</strong> Two things: a lot of complex content and a responsive system that carries through to only a handful of pages, like the UCLA’s website, where the home page and a few key pages are responsive, but the deeper content is not:</p>
<p><a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/UCLA-Home-and-Admissions.jpg" rel="wp-prettyPhoto[g2780]"><img alt="UCLA’s responsive home page and non-responsive admissions page" src="/wp-content/uploads/2013/03/UCLA-Home-and-Admissions-Small.jpg" /></a><br /><em>UCLA’s home page is responsive, but most of the website, like this landing page, is not. <a class="colorbox" href="http://media.smashingmagazine.com/wp-content/uploads/2013/04/UCLA-Home-and-Admissions.jpg" rel="wp-prettyPhoto[g2780]">Larger view</a>.</em></p>
<p>Why doesn’t that design go deeper? I’d bet it’s because making a responsive website scale takes work, as Nishant Kothary summed up brilliantly in his <a class="colorbox" href="http://rainypixels.com/words/the-story-of-the-new-microsoft-com">story of Microsoft’s new responsive home page</a> from late 2012:</p>
<blockquote>
<p>&#8220;The Microsoft.com team built tools, guidelines, and processes to help localize everything from responsive images to responsive content into approximately 100 different markets… They adapted their CMS to allow Content Strategists to program content on the site.&#8221;</p>
</blockquote>
<p>In other words, a home page isn’t just a home page. You have to change both your content and the jobs of the people who manage it to make it happen.</p>
<p>But one industry has had some luck in building responsively at scale: the media &mdash; including massive enterprises such as Time, People and, of course, the Boston Globe. These organizations manage as much or even more content than Microsoft and universities, but as publishers with a long history of creating professional, planned, organized content, <strong>they have a huge leg up: they know what they publish</strong>, whether it’s editorials or features or profiles or news briefs. Because of this, everything they publish fits into a system &mdash; making it much easier to apply responsive design patterns across all of their content.</p>
<h3>Making Tough Choices</h3>
<p>When you start breaking down your big, messy blobs of content and understanding how they really operate, you’ll realize there’s always more you could do: add more structure, more editing, more CMS customization. It never ends.</p>
<p>That’s OK.</p>
<p>When you understand the realities of what you’re dealing with, you’re better equipped to prioritize what you do &mdash; and what you choose not to do. <strong>You can make smart trade-offs</strong> &mdash; like deciding how much time you’re willing to invest now in order to have the flexibility to do more later, or what level of process change the current staff can handle versus the amount of flexibility you could use in the content.</p>
<p>There are no right answers. All we can do is find the right balance for each project, team and audience &mdash; and recognize that some structure is going to serve us a whole lot longer than none will.</p>
<h3>Everyone’s Job</h3>
<p>I get it. Going through endless reams of content ain’t your thing. You’re a designer, a developer, a project manager, damn it. You just want to get on with it, right?</p>
<p>We all do. But the more you seek to understand your content, the better your other work will be. The less often your project will go off the rails right around the time it’s supposed to launch. The fewer problems you’ll have with designs that “break” when real content gets inputted. The more the organization will be able to keep things in order after launch.</p>
<p>Best of all, <strong>the more your users will get the content they need</strong> &mdash; wherever and however they want it.</p>
<p><em>Thanks and credits go to <a class="colorbox" href="http://ricardogimenes.com/">Ricardo Gimenes</a>, for preparing the front page image.</em></p>
<p><em>(al)</em></p>
<hr />
<p><small>© Sara Wachter-Boettcher for <a class="colorbox" href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2013.</small></p>
<p>Source: <a href="http://www.smashingmagazine.com/2013/04/29/content-knowledge-is-power/" class="colorbox" title="More Than Just Lorem Ipsum: Content Knowledge Is Power">Smashing Magazine</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://www.smashingmagazine.com/2013/04/29/content-knowledge-is-power/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=More%20Than%20Just%20Lorem%20Ipsum%3A%20Content%20Knowledge%20Is%20Power%20http://www.smashingmagazine.com/2013/04/29/content-knowledge-is-power/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/04/29/more-than-just-lorem-ipsum-content-knowledge-is-power/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title></title>
		<link>http://sayingitfirst.com/2013/04/27/2779/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=2779</link>
		<comments>http://sayingitfirst.com/2013/04/27/2779/#comments</comments>
		<pubDate>Sat, 27 Apr 2013 18:32:00 +0000</pubDate>
		<dc:creator>SayingItFirst</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://sbkmconsulting.com/2013/04/27/2779/</guid>
		<description><![CDATA[<p>Source: Random Acts of Progress &#160;&#160;</p><p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></description>
				<content:encoded><![CDATA[<div class="feedflare">
</div>
<p>Source: <a href="http://feedproxy.google.com/~r/RandomActsOfProgress/~3/mDUXECnrFlg/" class="colorbox" title="">Random Acts of Progress</a></p>
<p><span style="margin-left:10px"><a href="http://www.facebook.com/sharer/sharer.php?u=http://feedproxy.google.com/~r/RandomActsOfProgress/~3/mDUXECnrFlg/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/facebook.png" /></a>&nbsp;&nbsp;<a href="http://twitter.com/intent/tweet?text=%20http://feedproxy.google.com/~r/RandomActsOfProgress/~3/mDUXECnrFlg/"><img src="http://sbkmconsulting.com/wp-content/plugins/wp-rss-multi-importer/images/twitter.png" /></a></span></p>
<p><a href="http://sayingitfirst.com">SayingItFirst | Naperville SEO/SEM Internet Marketing Technology Company</a></p>]]></content:encoded>
			<wfw:commentRss>http://sayingitfirst.com/2013/04/27/2779/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
