Every now and again we showcase fantastic favicons, those tiny pieces of art that you’ll find in your browser’s address bar or when rifling through your bookmarks. These little gems are important because they serve as visual indicators to help visitors easily identify content in their browser. That aside, favicons are just nice to look at, and way too many websites don’t make use of them. We want to change that, which is why we are presenting what is now the ninth episode in our favicons series: a small article with tiny images and fast loading time… for a change.
Any picture’s merit is debatable. But notice that these favicons were chosen not simply for their beauty and originality; it was important to us also that each fit the overall website design and logo. Pay attention to the details of the design.
All favicons are linked, of course, to the websites from where they were taken (if they still exist). Click on them to get more insight into how favicon design relates to overall layout design. The order here does not indicate any ranking.
Every now and again we showcase fantastic favicons, those tiny pieces of art that you’ll find in your browser’s address bar or when rifling through your bookmarks. These little gems are important because they serve as visual indicators to help visitors easily identify content in their browser. That aside, favicons are just nice to look at, and way too many websites don’t make use of them. We want to change that, which is why we are presenting what is now the ninth episode in our favicons series: a small article with tiny images and fast loading time… for a change.
href="http://www.smashingmagazine.com/2010/03/14/2007/06/14/creative-favicons-when-small-is-beautiful/">Part 3: Creative Favicons: When Small Is Beautiful
href="http://www.smashingmagazine.com/2010/03/14/2007/03/29/inspire-yourself-more-creative-favicons/">Part 2: Inspire Yourself: More Creative Favicons
Any picture’s merit is debatable. But notice that these favicons were chosen not simply for their beauty and originality; it was important to us also that each fit the overall website design and logo. Pay attention to the details of the design.
All favicons are linked, of course, to the websites from where they were taken (if they still exist). Click on them to get more insight into how favicon design relates to overall layout design. The order here does not indicate any ranking.
Last week we unveiled our newest toy, Open Site Explorer, to the world and the response was phenomenal. Now we want to take some time and really show everyone just what this powerful link analysis tool is capable of and answer your questions, so we’re hosting not one, but two FREE Webinars this week (it’s the same content, run twice to help accomodate schedules and time zones).
The presentations will be 60 minutes each, 25 minutes of slides, followed by 35 minutes of Q+A on Wednesday, January 27th at 2:00PM (PST), and Thursday, January 28th at 10:00AM (PST) In each live webinar, Rand will show you around Open Site Explorer, offer tips and strategies for getting the most out of it, explain our new Domain Authority & Page Authority metrics, and answer your questions.
Here’s the catch: each webinar is limited to 1,000 attendees. The last time we announced a webinar on the blog, we had over 3,000 people try to register in the first hour, so if you want to attend one of the live sessions, register quickly. If you can’t make it, we’ll have a recording of the presentation available in a couple of days on our webinars page.
Looooove Webinars and can’t get enough of ‘em? Then you should totally become a PRO Member! In the last couple of months we’ve started running regular webinars just for PRO Members and they’ve been really popular.
A slide from our December PRO Webinar on Link Building Strategies
A slide from our January PRO Webinar on SEO Strategies for 2010
In February we’re stepping it up even more. In addition to our monthly educational webinar (February 4th on Analytics), we’re adding a second monthly webinar where we’ll be performing live site reviews of sites submitted by our PRO Members!
PRO Members can head over to the PRO Webinars page for more info on February’s webinars, as well as recordings and slide decks from past webinars. If you’d like to join us for the next PRO Webinar–and possibly even get a live site review–sign up for PRO to access the PRO Webinar page for registration details or just watch your inbox for an invite.
Last week we unveiled our newest toy, Open Site Explorer, to the world and the response was phenomenal. Now we want to take some time and really show everyone just what this powerful link analysis tool is capable of and answer your questions, so we’re hosting not one, but two FREE Webinars this week (it’s the same content, run twice to help accomodate schedules and time zones).
The presentations will be 60 minutes each, 25 minutes of slides, followed by 35 minutes of Q+A on Wednesday, January 27th at 2:00PM (PST), and Thursday, January 28th at 10:00AM (PST) In each live webinar, Rand will show you around Open Site Explorer, offer tips and strategies for getting the most out of it, explain our new Domain Authority & Page Authority metrics, and answer your questions.
Here’s the catch: each webinar is limited to 1,000 attendees. The last time we announced a webinar on the blog, we had over 3,000 people try to register in the first hour, so if you want to attend one of the live sessions, register quickly. If you can’t make it, we’ll have a recording of the presentation available in a couple of days on our webinars page.
Looooove Webinars and can’t get enough of ‘em? Then you should totally become a PRO Member! In the last couple of months we’ve started running regular webinars just for PRO Members and they’ve been really popular.
A slide from our December PRO Webinar on Link Building Strategies
A slide from our January PRO Webinar on SEO Strategies for 2010
In February we’re stepping it up even more. In addition to our monthly educational webinar (February 4th on Analytics), we’re adding a second monthly webinar where we’ll be performing live site reviews of sites submitted by our PRO Members!
PRO Members can head over to the PRO Webinars page for more info on February’s webinars, as well as recordings and slide decks from past webinars. If you’d like to join us for the next PRO Webinar–and possibly even get a live site review–sign up for PRO to access the PRO Webinar page for registration details or just watch your inbox for an invite.
This question and the problems surrounding it run rampant through the SEO world. It usually arises when someone starts doing searches like this:
Google claims to have 93,800 pages indexed on the root domain, seomoz.org. That sounds pretty good, but when I ran that search query last week, the number was closer to 75,000 and when I run it again from Google.co.uk 60 seconds later, the number changes even more dramatically:
How about if I hit refresh on my Google.com results again:
Doh! Google just dropped 8,500 of my pages out of their index. That sucks – but not nearly as much as managers, marketing directors and CEOs who use these numbers as actual KPIs! Can you imagine? A number that means nothing, fluctuates 300% between data centers, can change at a moment’s notice and provides no actionable insight being used as a business metric?
And yet… It happens.
Fortunately, there’s an easy way to get much, much better data than what the search engines provide through "site:" queries and this post is here to walk you through that process step-by-step.
Step 1: Go to Traffic Sources in Your Analytics
Click the "traffic sources" link in Google analytics or Omniture (it can also be called "referring sources" in other analytics packages).
Step 2: Head to the Search Engines Section
We want to find out how many pages the search engines have indexed, so the obvious next step is to go to the "search engines" sub-section.
Step 3: Choose an Engine
Choose the engine you want indexation data on and click. If you have both paid and organic traffic from this engine, you’ll want to display organic only at this step, too.
Step 4: Filter by Landing Pages
The "Landing Page" filter in the dropdown will show you the traffic each individual page on your site received from the engine you’ve selected. This also produces the magical "total" number of pages that have received traffic, described in the last step.
Step 5: Record the Number at the Bottom
That count tells you the unique number of pages that received at least one visit from searches performed on Google. It’s the Holy Grail of indexation – a number you can accurately track over time to see how the search engine is indexing your site. On its own, it isn’t particularly useful, but over time (I usually recommend recording monthly, but for some sites, every 2-3 months can make more sense), it gives you insight into whether your pages are doing better or worse at drawing in traffic from the engine.
Now, technically I’m being a bit cheeky here. This number doesn’t tell you the full story – it’s not showing the actual number of pages a search engine has crawled or indexed on your site, but it does tell you the unique number of URLs that received at least 1 visit from the engine. In my opinion this data is far more accurate and more actionable. The first adjective – accurate – is hard to argue (particularly given the visual evidence atop this post), but the second requires a bit of an explanation.
Why is Number of Pages Receiving ≥1 Visit Actionable?
Indexation numbers alone are useless. Businesses and websites use them as KPIs because they want to know if, over time, more of their pages are making their way into the engines’ indices. I’d argue that actually, you don’t care if your pages are in the indices – you care if your pages have the opportunity to EARN TRAFFIC!
Being a row in a search index means nothing if your page is:
too low in PageRank/link juice to appear in any results
displaying content the engines can’t properly parse
devoid of keywords or content that could send traffic
broken, misdirected or unavailable
a duplicate of other pages that the engine will rank instead
Thus, the metric you want to count over time isn’t (in most cases) number of pages indexed, it’s number of pages that earned traffic. Over time, that’s the number you want to rise, the number you want marketers to concentrate on and the KPI that’s meaningful. It tells you whether the engine is crawling, indexing AND listing your pages in the results where someone might (has) actually click(ed) them.
If the number drops, you can investigate the actual pages that are no longer receiving traffic by exporting the data to Excel and doing a side-by-side with the previous month. If the number rises, you can see the new pages getting traffic. Those individual URLs will tell a story – of pages that broke, that stopped being linked-to, that fell too far down in paginated results or lost their unique content. It’s so much better than playing the mystery game that SEOs so often confront in the face of "lower indexation numbers" from the site: command.
Some Necessary Caveats
This methodology certainly isn’t perfect, and there are some important points to be aware of (thanks especially to some folks in the comments who brought these up):
Google Analytics (and many other analytics packages) use sampled data at times to make guesstimates. If you want to be sure you’re getting the absolute best number, export to CSV and do the side-by-side in Excel. You can even expunge similar results from two time period to see only those pages that uniquely did/didn’t receive traffic. In many of these cases, you might also only care about pages that gained/lost 5/10/20+ visits.
Greater accuracy can be found from shrinking the time period in the analytics, but it also reduces the liklihood that a page receiving very long tail query traffic once in a blue moon will be properly listed, so adjust accordingly, and plan for imperfect data. This method isn’t foolproof, but it is (in my opinion), better than the random roulette wheel of site: queries.
This technique isn’t going to help you catch other kinds of SEO issues like duplicate content (it can in some cases, but it’s not as good as something like GG WM Tools reporting) or 301s, 302s, etc. which can require a crawling solution.
I’d, of course, love your feedback. I know many SEOs are addicted to and supportive of the site: command numbers as a way to measure progress, so maybe there’s things I’m not considering or situations where it makes sense. I also know that many of you like the number reported in Google Webmaster tools under the Sitemaps crawl data (I’m skeptical of this too, for the record) and I’d like to hear how you find value with that data as well.
p.s. Tomorrow we’ll be announcing two webinars (open to all) about using Open Site Explorer to get ACTIONABLE data. Be sure to leave either Wednesday the 27th at 2pm Pacific or Thursday the 28th at 10am Pacific free
This question and the problems surrounding it run rampant through the SEO world. It usually arises when someone starts doing searches like this:
Google claims to have 93,800 pages indexed on the root domain, seomoz.org. That sounds pretty good, but when I ran that search query last week, the number was closer to 75,000 and when I run it again from Google.co.uk 60 seconds later, the number changes even more dramatically:
How about if I hit refresh on my Google.com results again:
Doh! Google just dropped 8,500 of my pages out of their index. That sucks – but not nearly as much as managers, marketing directors and CEOs who use these numbers as actual KPIs! Can you imagine? A number that means nothing, fluctuates 300% between data centers, can change at a moment’s notice and provides no actionable insight being used as a business metric?
And yet… It happens.
Fortunately, there’s an easy way to get much, much better data than what the search engines provide through "site:" queries and this post is here to walk you through that process step-by-step.
Step 1: Go to Traffic Sources in Your Analytics
Click the "traffic sources" link in Google analytics or Omniture (it can also be called "referring sources" in other analytics packages).
Step 2: Head to the Search Engines Section
We want to find out how many pages the search engines have indexed, so the obvious next step is to go to the "search engines" sub-section.
Step 3: Choose an Engine
Choose the engine you want indexation data on and click. If you have both paid and organic traffic from this engine, you’ll want to display organic only at this step, too.
Step 4: Filter by Landing Pages
The "Landing Page" filter in the dropdown will show you the traffic each individual page on your site received from the engine you’ve selected. This also produces the magical "total" number of pages that have received traffic, described in the last step.
Step 5: Record the Number at the Bottom
That count tells you the unique number of pages that received at least one visit from searches performed on Google. It’s the Holy Grail of indexation – a number you can accurately track over time to see how the search engine is indexing your site. On its own, it isn’t particularly useful, but over time (I usually recommend recording monthly, but for some sites, every 2-3 months can make more sense), it gives you insight into whether your pages are doing better or worse at drawing in traffic from the engine.
Now, technically I’m being a bit cheeky here. This number doesn’t tell you the full story – it’s not showing the actual number of pages a search engine has crawled or indexed on your site, but it does tell you the unique number of URLs that received at least 1 visit from the engine. In my opinion this data is far more accurate and more actionable. The first adjective – accurate – is hard to argue (particularly given the visual evidence atop this post), but the second requires a bit of an explanation.
Why is Number of Pages Receiving ≥1 Visit Actionable?
Indexation numbers alone are useless. Businesses and websites use them as KPIs because they want to know if, over time, more of their pages are making their way into the engines’ indices. I’d argue that actually, you don’t care if your pages are in the indices – you care if your pages have the opportunity to EARN TRAFFIC!
Being a row in a search index means nothing if your page is:
too low in PageRank/link juice to appear in any results
displaying content the engines can’t properly parse
devoid of keywords or content that could send traffic
broken, misdirected or unavailable
a duplicate of other pages that the engine will rank instead
Thus, the metric you want to count over time isn’t (in most cases) number of pages indexed, it’s number of pages that earned traffic. Over time, that’s the number you want to rise, the number you want marketers to concentrate on and the KPI that’s meaningful. It tells you whether the engine is crawling, indexing AND listing your pages in the results where someone might (has) actually click(ed) them.
If the number drops, you can investigate the actual pages that are no longer receiving traffic by exporting the data to Excel and doing a side-by-side with the previous month. If the number rises, you can see the new pages getting traffic. Those individual URLs will tell a story – of pages that broke, that stopped being linked-to, that fell too far down in paginated results or lost their unique content. It’s so much better than playing the mystery game that SEOs so often confront in the face of "lower indexation numbers" from the site: command.
Some Necessary Caveats
This methodology certainly isn’t perfect, and there are some important points to be aware of (thanks especially to some folks in the comments who brought these up):
Google Analytics (and many other analytics packages) use sampled data at times to make guesstimates. If you want to be sure you’re getting the absolute best number, export to CSV and do the side-by-side in Excel. You can even expunge similar results from two time period to see only those pages that uniquely did/didn’t receive traffic. In many of these cases, you might also only care about pages that gained/lost 5/10/20+ visits.
Greater accuracy can be found from shrinking the time period in the analytics, but it also reduces the liklihood that a page receiving very long tail query traffic once in a blue moon will be properly listed, so adjust accordingly, and plan for imperfect data. This method isn’t foolproof, but it is (in my opinion), better than the random roulette wheel of site: queries.
This technique isn’t going to help you catch other kinds of SEO issues like duplicate content (it can in some cases, but it’s not as good as something like GG WM Tools reporting) or 301s, 302s, etc. which can require a crawling solution.
I’d, of course, love your feedback. I know many SEOs are addicted to and supportive of the site: command numbers as a way to measure progress, so maybe there’s things I’m not considering or situations where it makes sense. I also know that many of you like the number reported in Google Webmaster tools under the Sitemaps crawl data (I’m skeptical of this too, for the record) and I’d like to hear how you find value with that data as well.
p.s. Tomorrow we’ll be announcing two webinars (open to all) about using Open Site Explorer to get ACTIONABLE data. Be sure to leave either Wednesday the 27th at 2pm Pacific or Thursday the 28th at 10am Pacific free
As Web developers and designers, we are spoilt for choice right now. To build a complex Web application or even just spice up a website with some highly interactive interface element, we have hundreds of pre-built solutions to choose from. Every library comes with widgets and solutions, and every developer tries to make a name for him or herself by releasing a funky JavaScript solution to a certain interface problem. We can pick from dozens of menus, image carousels, tabs, form validators and “lightboxes.”
Having this much choice makes it easy for us to pick and choose, which is where things go wrong. In most cases, we measure the quality of a solution by its convenience to us. Our main reasons for picking one solution over another are: Does it do what I need it to do? Does it look cool? Does it sound easy to use? Would I want to use it? Does it use the framework I’m committed to?
width="650">
width="650">
style="width:650px;">
src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in Find The Right JavaScript Solution With A 7-Step Test" border="0" />
/>
href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56" >
src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in Find The Right JavaScript Solution With A 7-Step Test" />
href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63" >
src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in Find The Right JavaScript Solution With A 7-Step Test" />
href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64" >
src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in Find The Right JavaScript Solution With A 7-Step Test" />
As Web developers and designers, we are spoilt for choice right now. To build a complex Web application or even just spice up a website with some highly interactive interface element, we have hundreds of pre-built solutions to choose from. Every library comes with widgets and solutions, and every developer tries to make a name for him or herself by releasing a funky JavaScript solution to a certain interface problem. We can pick from dozens of menus, image carousels, tabs, form validators and “lightboxes.”
Having this much choice makes it easy for us to pick and choose, which is where things go wrong. In most cases, we measure the quality of a solution by its convenience to us. Our main reasons for picking one solution over another are:
Does it do what I need it to do?
Does it look cool?
Does it sound easy to use?
Would I want to use it?
Does it use the framework I’m committed to?
The things you should really look for are different, though:
How stable is the solution?
/> Is a good alternative available if this one doesn’t work?
How easy is it to customize?
/> Do you need to be a JavaScript expert to modify the widget?
How usable and accessible is it?
/> Are users who don’t have a mouse or are on a mobile browser blocked?
Do you understand what’s going on?
/> Would you be able to fix a problem and explain it to others?
Is it a contained solution?
/> Will other scripts be able to interfere with it, or would it contaminate the document?
How dedicated is the developer?
/> Will the solution be maintained in the future?
What is supported, and how can you extend functionality?
/> A new browser and client request is always around the corner?
In this article, we’ll show some ways to find out more about these issues. First of all, though, understanding what it means to develop for the Web is important.
It’s Not About You
Most of the reasons why we choose a particular solution right away are very much about us, and this is where we tread on thin ice. We don’t consume what we put on the Web; rather, people we don’t know do, and we can’t make assumptions about their ability, set-up, technical understanding or taste. We won’t make our product a success; we only build it, and thus we are the worst testers of it possible.
I’ve been developing for the Web professionally for over 10 years now, working on everything from personal blogs to multi-language enterprise CMS solutions to complex Web applications, and I’ve learnt one thing on the journey: never build for yourself or the client. Instead, build for the people who will use the product and the poor person who has to take over the project when you leave.
Much as we have to act now to minimize our massive carbon footprint, we need to leave a cleaner Web behind. To keep the Web a thriving market and sustainable work environment, we have to change the way we work in it and leave behind unmaintainable, bloated and semi-workable, albeit pretty, solutions. We have to make it easier for people to use Web applications and save other developers from wasting hours trying to understand what we did when they are asked to change or extend it at a later stage.
Introducing The 7-Step Test For JavaScript Widgets
To this end, I’ve put together a seven-step test to apply to any out-of-the-box widget you find. All of the recommendations have a rationale, so please ponder it before dismissing the arguments as “elitist” or “not really suitable to our environment.”
Let’s not forget that even when something is free, its developer will try to sell it to you for the fame, and many a solution is defended tooth and nail on mailing lists instead of being changed or updated. The reason is that, as developers we are always on the move. Maintaining and extending an old solution is not as sexy as creating a cool new one. This leads to ruins that once enjoyed love when they were state of the art but now rust away on the Internet.
To kick the tires of any out-of-the box solution, I mostly use one tool: the Firefox Web developer toolbar. It is available
href="https://addons.mozilla.org/en-US/firefox/addon/60">on the Firefox Add-On website and gives you an easy way to test what’s happening in your widget of choice.
Okay, here goes: seven things to test when deciding on a JavaScript solution.
1. What Happens If JavaScript Is Turned Off?
The first test I do with any widget is turn off JavaScript… not after the document has loaded but before. Turning off JavaScript with the Web developer toolbar is very easy. Simply select “Disable All JavaScript” from the “Disable” menu and reload the page:
/>
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/12/litmus-disable-javascript.jpg" width="400" height="333" alt="Litmus-disable-javascript in Find The Right JavaScript Solution With A 7-Step Test" />
The rationale is that there are a lot of reasons why JavaScript may not be used: company proxies or personal firewalls could filter it out, other scripts could create errors and mess with yours, or the system in use could simply not have JavaScript enabled. Think of mobile environments, for example.
You don’t need full functionality when JavaScript is not available, just a working interface that doesn’t overload users and interactive elements that work. If a button does nothing when users activate it, those users will stop trusting you; after all, you haven’t kept your promises.
Overloading is another issue. A lot of widgets use CSS and JavaScript to squeeze a lot of content into a very small space: think tabbed content elements and image carousels. What should be their fallback? If you turn off JavaScript and have 50 pictures where you planned for 2, then that would be a good user experience. A better fallback would be a server-side solution for the same functionality or to show the first 2 and then offer a link to a gallery page with the remaining pictures.
Sometimes the JavaScript for a particular widget is actually very good but the demo websites have been done badly. Hiding elements with CSS and then revealing them with JavaScript, for example, is very common. But if JavaScript is turned off, the solution will break. Good demos and solutions use JavaScript to add a class to the body of the document and make all of the CSS dependent on that class.
The trick that any good JavaScript widget should do is to make any functionality depend on JavaScript by using JavaScript; that way, you never have any functionality that won’t work. This technique is called “unobtrusive JavaScript,” and I have
href="http://onlinetools.org/articles/unobtrusivejavascript/">written a course on it and
href="http://icant.co.uk/articles/seven-rules-of-unobtrusive-javascript/">set a few rules for it a while back.
2. How To Change The Look, Feel And Content?
A widget whose look and feel are hard-coded is a pain to maintain. You cannot expect future designers to know how to change a certain color by hunting through your JavaScript files. This is how we end up with bloated CSS files, because people add random IDs and classes to enhance the specificity of their CSS selectors.
Good widgets have their look and feel contained in a CSS file and give you handles (i.e. dynamically applied classes) to apply your own styling. If you find yourself having to change JavaScript to change the look and feel, alarm bells should go off in your head.
This gets worse if you have content such as text labels in the JavaScript or if only a fixed number of elements can be displayed (as in the case of navigation menus). Labels and number of elements are what change the most in any Web product. For starters, you will probably roll out your product across different markets and will have to translate the buttons and menus.
Good gadgets have
href="http://dev.opera.com/articles/view/json-configuration-for-javascript/">configuration objects that allow you to change the number of elements and define the text labels without having to change the main JavaScript. The reason for this is that the functional part of the widget should be separated from the maintainer. If the widget has a security or performance problem, you should be able to replace it without losing your configuration and localization work. Otherwise people would be very likely to keep insecure code on the Web, which is one of the reasons why our inboxes are full of spam.
3. How Usable And Semantic Is The Final Product?
A lot of widget creators are very happy to announce that their products are “Web-standards compliant” and accessible because of it. While Web-standards compliance is important, it does not indicate the quality or usefulness of the product. One cannot really validate semantics with an automated tool. For example, the following examples are both valid HTML:
The second example works without JavaScript and uses much less HTML. It also requires much less CSS for styling because you would simply take advantage of the cascade.
Furthermore, the HTML on which the widget is based is only half the story. What the JavaScript generates also needs to be valid, usable and accessible, and you can check this when you check the generated source in the Web developer toolbar.
To do this, right-click anywhere in the document and select Web Developer → View Source → View Generated Source:
/>
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/12/litmus-view-generated-source.jpg" alt="Litmus-view-generated-source in Find The Right JavaScript Solution With A 7-Step Test" />
Usability and accessibility (accessibility being, in essence, merely a more comprehensive understanding of usability) are harder to test. But one very good test is to check how keyboard-accessible a widget it. Keyboard-only users are on the rise, and widgets that work only with mouse-over events would not usable on a touchscreen mobile, for instance. Many widgets provide basic keyboard access (e.g. using the Tab key to jump from one link to another, and the Enter key to activate each), but this is not proper accessibility.
A menu, for example, should not be navigated by tabbing through each of the items because this would require far too many keystrokes. Instead, the user should be able to tab to the main menu bar and from there use the cursor keys to navigate.
A modal pop-up (commonly called a lightbox) should be able to be closed with a keyboard by hitting the Escape key or by tabbing to the “Close” button. If it is a multi-item lightbox, you should also be able to navigate the items with the cursor keys.
The
href="http://www.w3.org/TR/wai-aria-practices/#kbd_generalnav">W3C’s WAI websites have some great examples of how widgets should react to keyboard use, and Todd Kloots of Yahoo does a
href="http://www.yuiblog.com/blog/2009/02/23/managing-focus/">great job of explaining the techniques behind good keyboard usability (also
href="http://developer.yahoo.com/yui/theater/video.php?v=kloots-a11y">as a video and
href="http://developer.yahoo.com/yui/theater/video.php?v=kloots-yuiconf2009-a11y">using YUI3 and
href="http://ericmiraglia.com/blog/?p=132">focusing on WAI-ARIA). Patrick Lauke of Opera also wrote
href="http://24ways.org/2009/dont-lose-your-focus">a great article on the subject and
href="http://www.splintered.co.uk/news/112/">gave a presentation at last year’s Future of Web Design. If you are a Mac user, make sure to
href="http://www.456bereastreet.com/archive/200906/enabling_keyboard_navigation_in_mac_os_x_web_browsers/">turn on keyboard access before declaring a widget faulty.
People also need to be able to resize the text in their browser. So test the widgets at several text sizes. Using Internet Explorer 6 for this is important because it is the main culprit in font-resizing issues. Newer browsers do a much better job of zooming the entire interface, but you cannot expect end users to know how to use them.
4. Do You Understand What’s Going On?
If you’ve read the Harry Potter books (or even seen the movies), you know that you shouldn’t trust magic without knowing what is going on. A book that responds to your writing is as suspicious as a widget that does something so amazing that you have no clue how it happened.
Remember, if the doo-dad stops working, you will be asked to fix it or explain what went wrong. Therefore, it is important to at least know the basics of what JavaScript spell was cast to transform a list of images into an all-singing, all-dancing carousel.
Good widgets have technical documentation for that kind of thing, and some even fire off custom events that tell you when something is happening. That way, you can debug the tool by waiting for these events and analyzing the current state of play. It also allows you to extend functionality, which we’ll come back to in step #7.
5. Does It Play Well With Others?
The biggest problem with any JavaScript on the Web right now is that its security model gives every script on the page the same rights. This means that one bad script can mess up the user’s whole experience because it may override parts of another script.
The places where scripts can clash are in variable and function names and events. If your widget does not protect its variables and function names or if it applies event functionality to elements without checking that other scripts are doing the same, you’ll have a problem.
Say you have an element with the ID menu, and you have one script that turns its HTML content into a drop-down menu and another that enhances the different links by showing a beautiful roll-over message. If neither of these scripts append to the existing functionality and just apply it, you’ll have either a beautiful roll-over or a menu, depending on which script is applied last.
The good news is that for widgets that are based on libraries, this “event clash” is very unlikely because libraries work around that out of the box. You can test for the problem of function and variable names that can be overwritten by other scripts.
href="http://www.jslint.com/">JSLint is a tool and website where you can check JavaScript for syntactical problems such as unprotected variables. It is a very strict tool, though, and not all of its warnings are actually deal-breakers. But testing with JSLint is the hallmark of a professional Web developer. You do want your code to play well with others.
6. How Dedicated Is The Maintainer?
When choosing a widget, you want to be very sure that the maintainer is dedicated to keeping it up to date and to fixing the script for future browsers and environments. This is rarely the case, and a lot of software is released with an “as is” statement, absolving the creator of any liability for problems it may cause now or in the future.
Software, especially the kind that is executed in the browser and for Web consumption, has to constantly evolve. Things that were once state of the art might be clumsy now. Some software turned out to perform poorly or be outright security holes.
Whenever people claim that we have a great baseline environment on the Web for screen space and processing power, something comes along that debunks it. Right now, testing on dual or quad-core processors with resolutions starting at 1280 might be normal for us designers, but given the sales figures of smartphones and netbooks, planning for audiences other than these high-end ones might be a good idea.
For developers, maintenance is the most boring task. When we release awesome widgets to the world, we don’t want to think about that phase of software delivery. Granted, most widgets are released as open source, but sadly, not many developers fix or improve on other people’s work; building and releasing something almost identical but slightly modified is much more fun.
As the user of someone else’s widget, you don’t want this to fly back in your face, so you need to see just how dedicated the developer is. A few questions to ask are:
Is there a simple way to report bugs?
Is there trail of improvements and bug fixes?
Is there a history of comments and changes to the widget based on that feedback?
Has the widget been used in real scenarios, large projects or implementations similar to yours? What were the experiences of those who used it?
Does the solution have a community (i.e. are there a few people on mailing lists or in forums helping each other out, rather than overloading the original developer)?
If the developer has no big personal stake in the widget or there is no group of developers or commercial users, then there is a high chance that you will see few or no fixes or improvements in future, and you will be responsible for supporting the next browser version that behaves badly.
7. Is There A Testing Plan, And Is Upgrading And Extending Easy?
One last thing to consider is what will happen in future. Claims that the widget will “work in every environment” are bogus because that cannot be done. The great power of the Web is that software solutions can adapt to the environment they are being used in. If you use Netscape 4, you should see a few images; if you use the newest Webkit browser, you should see a fancy image carousel with animation and fading; that sort of thing.
A good widget will have a proven test report covering which browsers and environments it has been tested in and what the known issues are. There will always be issues, and claiming otherwise is arrogant or ignorant.
Upgrading your widget should be easy and painless, and there should be some versioning in place, with new versions being backwards-compatible.
Extending the widget should be easy. We spoke earlier about not being limited to a particular number of items or a certain look and feel. But if you really use a widget, you will find you have to override certain functionality and react to various changes. Good widgets either have an API (a programming interface to extend it) or fire custom events for you to listen to. Custom events are “interesting moments” in a user’s interaction with the widget. For example, a button will tell the script when you have activated it, and if you write the widget a certain way, you can tell the world (or in this case, other scripts) when something happens to it. You can notify that a container has been opened, that data has returned from the Web or that a menu was too large to be displayed to the right and had to be moved to the left.
Widgets built with the Yahoo User Interface library, for example, come
href="http://developer.yahoo.com/yui/docs/YAHOO.widget.AutoComplete.html#events">with a lot of custom events:
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/12/litmus-events.jpg" alt="Litmus-events in Find The Right JavaScript Solution With A 7-Step Test" />
/> This allows you to monitor what is going on (like for debugging purposes) and extend functionality. The
href="http://developer.yahoo.com/yui/examples/autocomplete/ac_basic_xhr_log.html">demo page for the AutoComplete control, for example, displays in a logging console on the right what happens “under the hood” when you use the auto-complete field.
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/12/litmus-events-logging.jpg" alt="Litmus-events-logging in Find The Right JavaScript Solution With A 7-Step Test" />
/> By subscribing to these events in JavaScript, overriding the original functionality for something new is pretty easy; in this case, we have an
href="http://developer.yahoo.com/yui/examples/autocomplete/ac_flickr_xml.html">auto-complete that returns photos and allows you to collect them.
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/12/litmus-event-override.jpg" alt="Litmus-event-override in Find The Right JavaScript Solution With A 7-Step Test" />
/> Custom events are a great way to extend a widget while keeping the core code easy to upgrade.
One Final Word On Size
One last thing to mention: some widget developers use a certain argument to advocate for their solution but which is totally irrelevant to your decision, and that is size.
Advertising-speak like “A drop-down menu in 20 lines of JavaScript” or “A full featured lightbox in under 2 KB” is fun and good for the developer’s ego, but in reality it is no measure of the quality of the solution. While you should avoid JavaScript solutions that are massive (let’s say 100 KB), code that has been written to be very generic and easy to extend will always be bigger than code that has been written to serve a single purpose. Any widget whose size is proudly trumpeted and is meant to be used by people who are not as good at developing as the initial owner will get bigger over time anyway. Developers like to play the numbers game, but maintainable code is different than extreme number-crunching.
And if you get your kicks from this sort of thing, try the demo scene in which Farbrausch proved with
href="http://www.pouet.net/prod.php?which=1221">The Product in 2000 that you can fit a seven-minute animation with music and synthesized voices into 64 KB.
For the past 15 months, we’ve been working hard to improve Linkscape, our index of the WWW. Today, we’re releasing an entirely new platform for Linkscape’s index with more accessible data than ever before. And, for the next 48 hours, full functionality is available entirely for free:
The new tool, Open Site Explorer, makes gathering, sorting and exporting link data easier than ever. It’s built with speed and accessibilty at the forefront and provides a tremendous amount of information about the links to any page or site. Since there’s a lot to cover, let’s dive right into some of the features and functionality.
#1 – Fast Access to Top Level Metrics
At the top of every results page, you’ll find the key metrics we have on your page – the importance/ranking ability of that URL (Page Authority) and root domain (Domain Authority), the number of linking root domains and the total number of links.
#2 – See Up to 10,000 Links Alongside Anchor Text & Key Metrics
You can browse through up to 10,000 links (this is restricted to 1,000 for non-PRO members normally, but will be completely free to everyone for the first 48 hours). We also offer CSV export functionality, but it won’t be available until the weekend (and then, only to PRO members – CSV takes up a LOT of bandwidth for 10K rows ).
#3 – Filtering for the Links You Want to See
As you drill down in the list of links, you can exclude nofollowed links or see only the 301s that point to a page. You also have the ability to sort by the location from which you want to see links – internal vs. external – and links that point to a given page, all pages on a subdomain or an entire root domain.
#4 – Display Root Domains that Contain Links
The second tab in Open Site Explorer (OSE for short) is the linking root domains. We realized that a lot of people want to get a quick glance of the types of sites that are sending links to a given page or domain, and thus created this unique view. In the future (probably a couple months away), you’ll also be able to click an individual domain and see a list of pages from that site that link to the target of your choice.
#5 – Review Anchor Text Term & Phrase Distribution
Anchor text is often the missing link in a "why does that guy rank there?" puzzle. We’re opening up the anchor text distribution so you can learn more about your own sites and pages and those of the competition. You can also sort by both the number of root domains that contain a link with a particular anchor text term (single word) or phrase and the raw number of links containing that anchor text.
#6 – Pie Chart Displays of Link Data
Many SEOs worry that, particularly on small sites, they may be seeing lots of numbers of links, but the sources aren’t ideal. In this view, we try to illustrate through pie charts the percentage of links that come from internal vs. external pages and are followed vs. nofollowed. This view is at the top of the "full metrics" tab.
#7 - Rejoice in Data Junkie Heaven
Additionally in the "full metrics" tab, you’ll find a list of all the Linkscape data we’ve got including mozRank (an algorithm similar to Google’s PageRank), mozTrust (akin to TrustRank) and many more. You can also see the more refined link counts and data for an individual URL, the subdomain it’s on and the hosting root domain.
#8 – Compare Pages/Sites Link Metrics to One Another
A frequently requested feature is the ability to compare one site/page against another. OSE makes this quick and easy with a comparison view drop-down. If you click the "-" symbol again, you can return to the individual report view.
#9 – Graphical Views of Metric Comparisons
In the comparison view, we show nice visual charts that you can embed in a client report or send to your boss to help illustrate just how challenging it might be to take on a particular competitor. For example, you can see above that Fred Wilson has a long way to go to reach Guy Kawasaki‘s stats on his blog (granted, Guy’s posts are designed for a much broader audience and he’s been blogging for longer).
#10 – Compare Links Side by Side
At the bottom of this comparative view you’ll see links side-by-side. We noticed a lot of SEOs open two browser windows with lists of links to compare them against one another and thought "why not make that easier?!" With this feature, you can scroll through the links for two pages to get a fast sense for the quality and variety of sources that point to each.
New Metrics – Domain Authority & Page Authority
We’ve got much more information coming soon about these two metrics, but basically, we’re using our ranking models to build predictions about how well an individual page might perform in the search engines (Page Authority) or how well content on a root domain would do (Domain Authority). These aren’t like PageRank or mozRank at all – they’re much broader.
Authority scores take into account all the metrics we have about a page and hundreds of derivatives of those metrics. We’ve put the scores on a classic 0-100 scale that’s logarithmic (so moving from a 50 to a 60 is much harder than moving from a 10 to a 20). Over time, these metrics will change and evolve as we get better and better with our machine learning systems (and as the engines and the web itself changes). Watch for this week’s Whiteboard Friday with much more detail on this subject. For now Open Site Explorer is the only place to get Domain/Page Authority data, but we’ll be rolling it into the SEOmoz toolbar and other tools over the next few months.
Linkscape’s Index Update
Linkscape itself has also updated – growing to a whopping 65 billion URLs with 45 day minimum freshness. As Nick’s previous post on the Trillion+ URLs Linkscape has seen shows, freshness is one of the most critical metrics for those who care about accurate link data, and we’re working hard to keep our index as up-to-date as possible. Linkscape recrawls every page in the index each month, so no "old data" is stored or served. Our current metrics for this index are:
Links passed through 301s: 8.61 billion (just over 1% of all links go through a 301)
mozRank Correlations to Google Toolbar PageRank
Individual page mR: 0.42 (avg. error +/- 0.56 from PR)
Subdomain mR: 0.45 (avg. error +/- 0.35 from PR)
Root domain mR: 0.45 (avg error +/- 0.37 from PR
File Extensions
html: 26.5%
php: 21.7%
htm: 10.6%
asp: 5.7%
aspx: 2.9%
cgi: 0.89%
API Update
Finally, we’ve also updated the SEOmoz API – you can now get lists of links for any URL for FREE along with tons of other link data and metrics. Sarah & Nick have a blog post coming soon with more, but for now, check out the API page to get a developer key and the API Wiki for more details.
Answers to Common Questions About OSE
What’s the difference between OSE and Linkscape?
Open Site Explorer provides a fast, free, more basic view of link data while Linkscape provides power users the ability to refine by dozens of filters, search within link anchor text, URLs and domains. Linkscape will let you dig into significantly more metrics and details on a per link basis on things like mozRank passed, Domain mozTrust, juice per anchor text, links from particular TLDs, etc.
OSE is substantively faster than Linkscape, and not as metrics heavy. It’s designed to give the "500 foot view" vs. the deep, in-the-weeds look you can get in Linkscape. Certainly feel free to try both and use the one that suits you best.
Why is OSE on a separate domain?
Three big reasons, actually:
We’ve haven’t tried the microsite strategy in a long time (since the first launch of the Web 2.0 Awards), and want to test and see lots of SEO and strategic/branding (we’ll have some cool data to report in the next few weeks/months)
OSE is built entirely on the SEOmoz API platform – we wanted to show off just how much you can build using that service
SEOmoz engineers are very busy working on another exciting launch (scheduled for June) so we wanted to split resources without putting a load on folks focused on our site (PRO members may see some previews of that even earlier)
What will OSE continue to offer for free?
For the first 48 hours, registered members (anyone with a free SEOmoz account) will get the full PRO features (unlimited metrics, up to 10K links per report, full anchor text data, etc). After that, anyone can still get up to 1,000 links per search and a sampling of metrics. You can see a full breakdown in the bottom right-hand corner of the homepage.
Why Call it "Open" Site Explorer?
We’re aiming to give out more link data than anyone else on the web for free. Open Site Explorer not only gives out lots and lots of links (up to 1,000), but also metrics and link numbers for free (permanently). We also provide a free API that lets you use any of the data (including lists of links) in your applications, public or private. Our goal is to be transparent with this data – to show exactly how many pages/domains are in our index, show accuracy with freshness and canonicalize and re-crawl like a search engine. We’re trying to take the web’s link graph and make it as available as possible and use the revenue component of PRO membership to accelerate growth on index freshness, quality and size.
Please Give Us Feedback!
We’d love to hear from you. If you have suggestions, bug reports (this is a first launch, after all) or ideas for future iterations, please leave them in the comments or send them via the Open Site Explorer feedback form. We’re of course very excited for the launch of OSE and would certainly appreciate you sharing and helping us spread it around. The free period ends at 8am Pacific on Friday, January 22nd, but PRO members will continue to be able to access all the features and unlimited reports (and free reports will still provide up to 1,000 links).
p.s. Two great posts with more information on this topic appeared in the last 24 hours and are worth sharing:
For the past 15 months, we’ve been working hard to improve Linkscape, our index of the WWW. Today, we’re releasing an entirely new platform for Linkscape’s index with more accessible data than ever before. And, for the next 48 hours, full functionality is available entirely for free:
The new tool, Open Site Explorer, makes gathering, sorting and exporting link data easier than ever. It’s built with speed and accessibilty at the forefront and provides a tremendous amount of information about the links to any page or site. Since there’s a lot to cover, let’s dive right into some of the features and functionality.
#1 – Fast Access to Top Level Metrics
At the top of every results page, you’ll find the key metrics we have on your page – the importance/ranking ability of that URL (Page Authority) and root domain (Domain Authority), the number of linking root domains and the total number of links.
#2 – See Up to 10,000 Links Alongside Anchor Text & Key Metrics
You can browse through up to 10,000 links (this is restricted to 1,000 for non-PRO members normally, but will be completely free to everyone for the first 48 hours). We also offer CSV export functionality, but it won’t be available until the weekend (and then, only to PRO members – CSV takes up a LOT of bandwidth for 10K rows ).
#3 – Filtering for the Links You Want to See
As you drill down in the list of links, you can exclude nofollowed links or see only the 301s that point to a page. You also have the ability to sort by the location from which you want to see links – internal vs. external – and links that point to a given page, all pages on a subdomain or an entire root domain.
#4 – Display Root Domains that Contain Links
The second tab in Open Site Explorer (OSE for short) is the linking root domains. We realized that a lot of people want to get a quick glance of the types of sites that are sending links to a given page or domain, and thus created this unique view. In the future (probably a couple months away), you’ll also be able to click an individual domain and see a list of pages from that site that link to the target of your choice.
#5 – Review Anchor Text Term & Phrase Distribution
Anchor text is often the missing link in a "why does that guy rank there?" puzzle. We’re opening up the anchor text distribution so you can learn more about your own sites and pages and those of the competition. You can also sort by both the number of root domains that contain a link with a particular anchor text term (single word) or phrase and the raw number of links containing that anchor text.
#6 – Pie Chart Displays of Link Data
Many SEOs worry that, particularly on small sites, they may be seeing lots of numbers of links, but the sources aren’t ideal. In this view, we try to illustrate through pie charts the percentage of links that come from internal vs. external pages and are followed vs. nofollowed. This view is at the top of the "full metrics" tab.
#7 - Rejoice in Data Junkie Heaven
Additionally in the "full metrics" tab, you’ll find a list of all the Linkscape data we’ve got including mozRank (an algorithm similar to Google’s PageRank), mozTrust (akin to TrustRank) and many more. You can also see the more refined link counts and data for an individual URL, the subdomain it’s on and the hosting root domain.
#8 – Compare Pages/Sites Link Metrics to One Another
A frequently requested feature is the ability to compare one site/page against another. OSE makes this quick and easy with a comparison view drop-down. If you click the "-" symbol again, you can return to the individual report view.
#9 – Graphical Views of Metric Comparisons
In the comparison view, we show nice visual charts that you can embed in a client report or send to your boss to help illustrate just how challenging it might be to take on a particular competitor. For example, you can see above that Fred Wilson has a long way to go to reach Guy Kawasaki‘s stats on his blog (granted, Guy’s posts are designed for a much broader audience and he’s been blogging for longer).
#10 – Compare Links Side by Side
At the bottom of this comparative view you’ll see links side-by-side. We noticed a lot of SEOs open two browser windows with lists of links to compare them against one another and thought "why not make that easier?!" With this feature, you can scroll through the links for two pages to get a fast sense for the quality and variety of sources that point to each.
New Metrics – Domain Authority & Page Authority
We’ve got much more information coming soon about these two metrics, but basically, we’re using our ranking models to build predictions about how well an individual page might perform in the search engines (Page Authority) or how well content on a root domain would do (Domain Authority). These aren’t like PageRank or mozRank at all – they’re much broader.
Authority scores take into account all the metrics we have about a page and hundreds of derivatives of those metrics. We’ve put the scores on a classic 0-100 scale that’s logarithmic (so moving from a 50 to a 60 is much harder than moving from a 10 to a 20). Over time, these metrics will change and evolve as we get better and better with our machine learning systems (and as the engines and the web itself changes). Watch for this week’s Whiteboard Friday with much more detail on this subject. For now Open Site Explorer is the only place to get Domain/Page Authority data, but we’ll be rolling it into the SEOmoz toolbar and other tools over the next few months.
Linkscape’s Index Update
Linkscape itself has also updated – growing to a whopping 65 billion URLs with 45 day minimum freshness. As Nick’s previous post on the Trillion+ URLs Linkscape has seen shows, freshness is one of the most critical metrics for those who care about accurate link data, and we’re working hard to keep our index as up-to-date as possible. Linkscape recrawls every page in the index each month, so no "old data" is stored or served. Our current metrics for this index are:
Links passed through 301s: 8.61 billion (just over 1% of all links go through a 301)
mozRank Correlations to Google Toolbar PageRank
Individual page mR: 0.42 (avg. error +/- 0.56 from PR)
Subdomain mR: 0.45 (avg. error +/- 0.35 from PR)
Root domain mR: 0.45 (avg error +/- 0.37 from PR
File Extensions
html: 26.5%
php: 21.7%
htm: 10.6%
asp: 5.7%
aspx: 2.9%
cgi: 0.89%
API Update
Finally, we’ve also updated the SEOmoz API – you can now get lists of links for any URL for FREE along with tons of other link data and metrics. Sarah & Nick have a blog post coming soon with more, but for now, check out the API page to get a developer key and the API Wiki for more details.
Answers to Common Questions About OSE
What’s the difference between OSE and Linkscape?
Open Site Explorer provides a fast, free, more basic view of link data while Linkscape provides power users the ability to refine by dozens of filters, search within link anchor text, URLs and domains. Linkscape will let you dig into significantly more metrics and details on a per link basis on things like mozRank passed, Domain mozTrust, juice per anchor text, links from particular TLDs, etc.
OSE is substantively faster than Linkscape, and not as metrics heavy. It’s designed to give the "500 foot view" vs. the deep, in-the-weeds look you can get in Linkscape. Certainly feel free to try both and use the one that suits you best.
Why is OSE on a separate domain?
Three big reasons, actually:
We’ve haven’t tried the microsite strategy in a long time (since the first launch of the Web 2.0 Awards), and want to test and see lots of SEO and strategic/branding (we’ll have some cool data to report in the next few weeks/months)
OSE is built entirely on the SEOmoz API platform – we wanted to show off just how much you can build using that service
SEOmoz engineers are very busy working on another exciting launch (scheduled for June) so we wanted to split resources without putting a load on folks focused on our site (PRO members may see some previews of that even earlier)
What will OSE continue to offer for free?
For the first 48 hours, registered members (anyone with a free SEOmoz account) will get the full PRO features (unlimited metrics, up to 10K links per report, full anchor text data, etc). After that, anyone can still get up to 1,000 links per search and a sampling of metrics. You can see a full breakdown in the bottom right-hand corner of the homepage.
Why Call it "Open" Site Explorer?
We’re aiming to give out more link data than anyone else on the web for free. Open Site Explorer not only gives out lots and lots of links (up to 1,000), but also metrics and link numbers for free (permanently). We also provide a free API that lets you use any of the data (including lists of links) in your applications, public or private. Our goal is to be transparent with this data – to show exactly how many pages/domains are in our index, show accuracy with freshness and canonicalize and re-crawl like a search engine. We’re trying to take the web’s link graph and make it as available as possible and use the revenue component of PRO membership to accelerate growth on index freshness, quality and size.
Please Give Us Feedback!
We’d love to hear from you. If you have suggestions, bug reports (this is a first launch, after all) or ideas for future iterations, please leave them in the comments or send them via the Open Site Explorer feedback form. We’re of course very excited for the launch of OSE and would certainly appreciate you sharing and helping us spread it around. The free period ends at 8am Pacific on Friday, January 22nd, but PRO members will continue to be able to access all the features and unlimited reports (and free reports will still provide up to 1,000 links).
p.s. Two great posts with more information on this topic appeared in the last 24 hours and are worth sharing:
When designing a large website, especially one that contains a store, you may be required to design a system for ordering online, or a multi-step process of another sort. Walking users through this process by making it easy and intuitive is key to helping increase conversion rates. Any frustration along the way may cause them to leave and pursue other options. Progress trackers are designed to help users through a multi-step process and it is vital that such trackers be well designed in order to keep users informed about what section they are currently on, what section they have completed, and what tasks remain.
In this article we will look at various uses of progress trackers and see how they’ve been implemented, what they are doing well, and what they are not doing well.
You may not be familiar with the term ‘progress tracker’, also called a ‘progress indicator’ — but chances are good that you have encountered one at one time or another. They are used in online stores when placing an order, signing up to an online product or service, or even when booking a holiday online. Progress trackers guide the user through a number of steps in order to complete a specified process.
width="650">
width="650">
style="width:650px;">
src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in Progress Trackers in Web Design: Examples and Best Practices" border="0" />
/>
href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56" >
src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in Progress Trackers in Web Design: Examples and Best Practices" />
href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63" >
src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in Progress Trackers in Web Design: Examples and Best Practices" />
href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64" >
src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in Progress Trackers in Web Design: Examples and Best Practices" />
src="http://imp.constantcontact.com/imp/cmp.jsp?impcc=IMP_DIMPBPRSMASHRSS&o=http://img.constantcontact.com/lp/images/standard/spacer.gif" alt="Spacer in Progress Trackers in Web Design: Examples and Best Practices" border="0" width="1" height="1" />
/> When designing a large website, especially one that contains a store, you may be required to design a system for ordering online, or a multi-step process of another sort. Walking users through this process by making it easy and intuitive is key to helping increase conversion rates. Any frustration along the way may cause them to leave and pursue other options. Progress trackers are designed to help users through a multi-step process and it is vital that such trackers be well designed in order to keep users informed about what section they are currently on, what section they have completed, and what tasks remain.
In this article we will look at various uses of progress trackers and see how they’ve been implemented, what they are doing well, and what they are not doing well.
[Offtopic: By the way, did you know that Smashing Magazine has a
href="http://creatives.commindo-media.de/www/delivery/ck.php?oaparams=2__bannerid=1249__zoneid=0__cb=be1da96c6d__oadest=http%3A%2F%2Fm.smashingmagazine.com">mobile version? Try it out if you have an iPhone, Blackberry or another capable device.]
What are Progress Trackers?
You may not be familiar with the term ‘progress tracker’, also called a ‘progress indicator’ — but chances are good that you have encountered one at one time or another. They are used in online stores when placing an order, signing up to an online product or service, or even when booking a holiday online. Progress trackers guide the user through a number of steps in order to complete a specified process.
class="showcase">
href="http://www.game.co.uk/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/game_pr.gif" alt="Game Pr in Progress Trackers in Web Design: Examples and Best Practices" width="548" height="54" />
/> An example of a progress tracker at
href="http://www.game.co.uk">Game
The Difference Between Progress Trackers and Breadcrumbs
As we have detailed previously in
href="http://www.smashingmagazine.com/2009/03/17/breadcrumbs-in-web-design-examples-and-best-practices-2/">Breadcrumbs In Web Design: Examples And Best Practices, breadcrumbs are a way of enhancing navigation by revealing a user’s current location. Initially, breadcrumbs and progress trackers may seem very similar and in many ways they are, however, there are significant differences.
Breadcrumbs show you only where you have been (or what sections are above the current section in the application’s hierarchy), whereas progress trackers indicate a set path that a user follows to complete a specific task. Progress trackers show you not only where you are currently located, but also what steps you have previously taken, and what steps you are about to take.
class="showcase">
href="http://coolspotters.com/musicians/michael-jackson/and/albums/thriller">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/breadcrumbs_pr.gif" alt="Breadcrumbs Pr in Progress Trackers in Web Design: Examples and Best Practices" width="550" height="31" />
/> Example of breadcrumbs at
href="http://coolspotters.com">Coolspotters
Progress trackers are best used when there is a specific goal to achieve. They are synonymous with conversion and are used as a way of improving usability — which is key when
href="http://www.smashingmagazine.com/2009/05/15/optimizing-conversion-rates-its-all-about-usability/">optimizing conversion rates. Conversion is all about selling online so you will see a progress tracker in some form in almost every online store.
Now that we’ve reviewed what a progress tracker is, let’s look at situations that would require or even benefit from the implementation of a well-designed progress tracker.
Uses of Progress Trackers
As mentioned previously, progress trackers can be used in a variety of contexts. The following three are the most common.
1. Online Ordering
/> By far the most common application of progress trackers is in conjunction with online purchasing, since this usually involves multiple steps.
class="showcase">
href="https://hmv.com/hmvweb/checkoutRegister.do">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/hmv_pr.gif" alt="Hmv Pr in Progress Trackers in Web Design: Examples and Best Practices" width="577" height="33" />
/> The progress tracker used by
href="https://hmv.com/hmvweb/checkoutRegister.do">HMV.
class="showcase">
href="https://www.etsy.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/etsy_pr.gif" alt="Etsy Pr in Progress Trackers in Web Design: Examples and Best Practices" width="396" height="36" />
/> The progress tracker used at
href="https://www.etsy.com">Etsy.
2. Feature Tour Guides
/> Progress trackers are also used to guide users through the features of online products and services, as demonstrated in the following examples:
class="showcase">
href="http://searchinsidevideo.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/searchInsideVideo_pr.gif" alt="SearchInsideVideo Pr in Progress Trackers in Web Design: Examples and Best Practices" width="488" height="48" />
/> Progress tracker as used by
href="http://searchinsidevideo.com">Search Inside Video.
class="showcase">
href="http://www.flickr.com/tour/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/flickr.jpg" alt="Flickr in Progress Trackers in Web Design: Examples and Best Practices" width="596" height="43" />
/>
href="http://www.flickr.com/tour/">Flickr’s tour page provides a look at the features of their service.
3. Multi-Step Forms
/> If a form requires a lot of user input, it may be best to split the form into multiple steps.
class="showcase">
href="https://secure.livestream.com/myaccount/launchchannel">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/livestream_pr.gif" alt="Livestream Pr in Progress Trackers in Web Design: Examples and Best Practices" width="375" height="41" />
/>
href="https://secure.livestream.com/myaccount/launchchannel">Livestream’s progress tracker design.
class="showcase">
href="http://planner.builtbybuffalo.com/step-1/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/buffalo_pr.gif" alt="Buffalo Pr in Progress Trackers in Web Design: Examples and Best Practices" width="559" height="259" />
/> The progress tracker used on
href="http://planner.builtbybuffalo.com/step-1/">Buffalo’s Project Planner form
Best Practices in Progress Tracker Design
Indicating a Logical Progression
/> Most progress trackers are designed to display the steps from left to right. In most lands, people read from left to right, so it makes sense that progress trackers follow that pattern. That isn’t enough though — there has to be something that informs the user that they are performing a multi-step process.
class="showcase">
href="http://www.blockbuster.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/blockbuster_pr.gif" alt="Blockbuster Pr in Progress Trackers in Web Design: Examples and Best Practices" width="598" height="29" />
/>
href="http://www.blockbuster.com">Blockbuster have included both arrows and numbers in their progress tracker, thus clearly communicating a logical progression.
Keeping the User Informed of their Location
/> One key aspect of good progress tracker design is keeping the user informed of where the user is in the process. This complements the logical progression because the user will know where they are in relation to where they have been, and what sections are to follow.
class="showcase">
href="http://www.mrandmrssmith.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/mrandmrsSmith_pr.gif" alt="MrandmrsSmith Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="36" />
/>
href="http://www.mrandmrssmith.com/">Mr and Mrs Smith indicates the user’s current location by clearly highlighting the current step and turning the arrow downwards.
Positioning
/> Since progress trackers are a form of navigation, it is best to place them below the primary and secondary navigation (such as breadcrumbs) and above the content that the progress tracker relates to. Also, while a progress tracker can act as a page title, it is best to place the title of the current section underneath the progress tracker, to reinforce the current location.
class="showcase">
href="https://www.gamestation.co.uk/Checkout/Basket/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/gamestation.jpg" alt="Gamestation in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="241" />
/>
href="https://www.gamestation.co.uk/Checkout/Basket/">Gamestation places their progress tracker clearly below the primary and secondary navigation.
Implementations of Progress Trackers
Plain Text
/> Below is an example of a plain text progress tracker on
href="http://mediatemple.net">Media Temple’s website. One benefit of a plain text progress tracker is that it can be edited easily.
class="showcase">
href="http://mediatemple.net">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/mediaTemple_pr.gif" alt="MediaTemple Pr in Progress Trackers in Web Design: Examples and Best Practices" width="485" height="45" />
Sprite-Based
/>
href="http://www.sovereign.com">Sovereign uses the popular CSS sprites technique to build their progress tracker and reduce HTTP requests going through the online booking process.
class="showcase">
href="http://www.sovereign.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/sovereign_pr.gif" alt="Sovereign Pr in Progress Trackers in Web Design: Examples and Best Practices" width="518" height="240" />
Design Mistakes to Avoid
Indistinguishable from Breadcrumbs
/>
href="http://www.typepad.com/go/design-assistant/">TypePad’s Design Assistant can be very easily confused with a breadcrumb navigation system.
class="showcase">
href="http://www.typepad.com/go/design-assistant/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/typepad.jpg" alt="Typepad in Progress Trackers in Web Design: Examples and Best Practices" width="560" height="60" />
Not Enough Information
/>
href="http://easyjet.com">easyJet’s old progress tracker on their booking path was poorly executed. Although it gave you the total number of steps in the process, it didn’t indicate which steps you’ve completed or which were remaining.
class="showcase">
href="http://easyjet.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/easyjet_pr.gif" alt="Easyjet Pr in Progress Trackers in Web Design: Examples and Best Practices" width="389" height="91" />
Their new progress tracker, launched within the last few weeks, is a big improvement, indicating current location, past steps, and steps to come. They now also make good use of the page title which has descriptive wording to complement the current progress tracker label.
class="showcase">
href="http://easyjet.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/easyjetNew_pr.gif" alt="EasyjetNew Pr in Progress Trackers in Web Design: Examples and Best Practices" width="515" height="81" />
No Sense of Progression
/>
href="http://www.daniblack.com">daniblack incorrectly uses a tab system for their progress tracker. The problem with this is that tabs don’t offer any visual representation of progress. The addition of numbers or arrows would give at least some sort of indication of progression in this example.
class="showcase">
href="http://www.daniblack.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/daniblack_pr.gif" alt="Daniblack Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="49" />
Progress Tracker Showcase
Now that we know what a progress tracker is, how it is used, and the best approach to its design, let’s look at a number of well-designed progress trackers currently in use.
href="http://battle.net">Battle.net uses the method of incrementally filling a bar as you progress through the steps in their sign-up form.
class="showcase">
href="http://battle.net">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/battlenet.jpg" alt="Battlenet in Progress Trackers in Web Design: Examples and Best Practices" width="413" height="54" />
href="http://www.ikea.com">Ikea
class="showcase">
href="http://www.ikea.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/ikea_pr.gif" alt="Ikea Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="60" />
href="http://www.amazon.com/">Amazon has a shopping trolley travelling across their progress tracker, leaving an orange line marking where it has been.
class="showcase">
href="http://www.amazon.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/amazon_pr.gif" alt="Amazon Pr in Progress Trackers in Web Design: Examples and Best Practices" width="427" height="39" />
class="showcase">
href="http://www.organicsupermarket.ie/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/organicSupermarket_pr.gif" alt="OrganicSupermarket Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="59" />
href="http://www.threadless.com/">Threadless
class="showcase">
href="http://www.threadless.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/threadless_pr.gif" alt="Threadless Pr in Progress Trackers in Web Design: Examples and Best Practices" width="280" height="54" />
href="http://www.uo.com.au/">Urban Originals
class="showcase">
href="http://www.uo.com.au/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/urbanOriginals_pr.gif" alt="UrbanOriginals Pr in Progress Trackers in Web Design: Examples and Best Practices" width="594" height="35" />
href="http://firebox.com/">Firebox
class="showcase">
href="http://firebox.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/firebox_pr.gif" alt="Firebox Pr in Progress Trackers in Web Design: Examples and Best Practices" width="580" height="35" />
href="http://www.apple.com/">Apple
class="showcase">
href="http://www.apple.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/apple_pr.gif" alt="Apple Pr in Progress Trackers in Web Design: Examples and Best Practices" width="593" height="40" />
href="http://www.vitradirect.com/">Vitradirect
class="showcase">
href="http://www.vitradirect.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/vitradirect_pr.gif" alt="Vitradirect Pr in Progress Trackers in Web Design: Examples and Best Practices" width="576" height="65" />
href="http://www.mousetominx.co.uk/">Mouse to Minx
class="showcase">
href="http://www.mousetominx.co.uk/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/mousetominx_pr.gif" alt="Mousetominx Pr in Progress Trackers in Web Design: Examples and Best Practices" width="322" height="25" />
href="http://www.cafepress.co.uk/">CafePress
class="showcase">
href="http://www.cafepress.co.uk/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/cafepress_pr.gif" alt="Cafepress Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="34" />
href="http://www.topshop.com/">Topshop
class="showcase">
href="http://www.topshop.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/topshop_pr.gif" alt="Topshop Pr in Progress Trackers in Web Design: Examples and Best Practices" width="501" height="30" />
href="http://johnlewis.com/">John Lewis uses an image of a truck travelling along their progress tracker.
class="showcase">
href="http://johnlewis.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/johnlewis_pr.gif" alt="Johnlewis Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="76" />
href="http://comet.co.uk/">Comet ticks off sections that have already been completed.
class="showcase">
href="http://comet.co.uk/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/comet_pr.gif" alt="Comet Pr in Progress Trackers in Web Design: Examples and Best Practices" width="561" height="29" />
href="http://www.boots.com/">Boots‘ Progress tracker spans the width of the page.
class="showcase">
href="http://www.boots.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/boots_pr.gif" alt="Boots Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="29" />
href="http://www.webmd.com/diet/weight-loss-surgery/weight-loss-surgery-health-check/default.htm">Web MD uses a progress bar and percentage values as a way of tracking progress on their health check questionnaires.
class="showcase">
href="http://www.webmd.com/diet/weight-loss-surgery/weight-loss-surgery-health-check/default.htm">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/webmd_pr.gif" alt="Webmd Pr in Progress Trackers in Web Design: Examples and Best Practices" width="582" height="19" />
href="http://www.argos.co.uk/">Argos
class="showcase">
href="http://www.argos.co.uk/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/argos_pr.gif" alt="Argos Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="60" />
href="http://www.altrec.com/">Altrec
class="showcase">
href="http://www.altrec.com/">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/altrec_pr.gif" alt="Altrec Pr in Progress Trackers in Web Design: Examples and Best Practices" width="490" height="56" />
href="https://www.surfride.com">SurfRide
class="showcase">
href="https://www.surfride.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/surfride_pr.gif" alt="Surfride Pr in Progress Trackers in Web Design: Examples and Best Practices" width="535" height="51" />
href="http://www.iworkwear.nl">iWorkwear
class="showcase">
href="http://www.iworkwear.nl">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/iworkwear_pr.gif" alt="Iworkwear Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="77" />
href="http://www.zumiez.com">Zumiez
class="showcase">
href="https://www.zumiez.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/zumiez_pr.gif" alt="Zumiez Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="24" />
href="http://www.toysrus.com">Toys”R”Us
class="showcase">
href="http://www.toysrus.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/toysrus_pr.gif" alt="Toysrus Pr in Progress Trackers in Web Design: Examples and Best Practices" width="599" height="58" />
href="http://www.ebags.com">eBags
class="showcase">
href="http://www.ebags.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/ebags_pr.gif" alt="Ebags Pr in Progress Trackers in Web Design: Examples and Best Practices" width="514" height="42" />
href="http://www.footlocker.com">Foot Locker
class="showcase">
href="http://www.footlocker.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/footlocker_pr.gif" alt="Footlocker Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="29" />
href="http://www.theultimategreenstore.com">The Ultimate Green Store
class="showcase">
href="http://www.theultimategreenstore.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/theultimategreenstore_pr.gif" alt="Theultimategreenstore Pr in Progress Trackers in Web Design: Examples and Best Practices" width="540" height="25" />
href="http://www.crateandbarrel.com">Crate and Barrel
class="showcase">
href="http://www.crateandbarrel.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/crateandbarrel_pr.gif" alt="Crateandbarrel Pr in Progress Trackers in Web Design: Examples and Best Practices" width="516" height="37" />
class="showcase">
href="http://www.pistolclothing.com.au">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/pistolclothing_pr.gif" alt="Pistolclothing Pr in Progress Trackers in Web Design: Examples and Best Practices" width="389" height="35" />
class="showcase">
href="http://www.americanapparel.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/americanapparel_pr.gif" alt="Americanapparel Pr in Progress Trackers in Web Design: Examples and Best Practices" width="575" height="22" />
href="http://www.pcworld.co.uk">PC World
class="showcase">
href="http://www.pcworld.co.uk">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/pcworld_pr.gif" alt="Pcworld Pr in Progress Trackers in Web Design: Examples and Best Practices" width="552" height="23" />
href="http://www.abelandcole.co.uk">Abel & Cole
class="showcase">
href="http://www.abelandcole.co.uk">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/abelandcole_pr.gif" alt="Abelandcole Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="57" />
href="http://www.eccousa.com">Ecco USA
class="showcase">
href="http://www.eccousa.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/ecco_pr.gif" alt="Ecco Pr in Progress Trackers in Web Design: Examples and Best Practices" width="291" height="28" />
href="http://www.designpublic.com">Design Public
class="showcase">
href="http://www.designpublic.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/designpublic_pr.gif" alt="Designpublic Pr in Progress Trackers in Web Design: Examples and Best Practices" width="333" height="34" />
href="http://www.golfsmith.com">Golfsmith uses a combination of numbers and a progress bar with an arrow.
class="showcase">
href="http://www.golfsmith.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/golfsmith_pr.gif" alt="Golfsmith Pr in Progress Trackers in Web Design: Examples and Best Practices" width="369" height="26" />
href="http://www.petco.com">PETCO
class="showcase">
href="http://www.petco.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/petco_pr.gif" alt="Petco Pr in Progress Trackers in Web Design: Examples and Best Practices" width="375" height="18" />
class="showcase">
href="http://www.footballfanatics.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/footballfanatics_pr.gif" alt="Footballfanatics Pr in Progress Trackers in Web Design: Examples and Best Practices" width="357" height="34" />
href="http://www.habitat.com">The Habitat Company
class="showcase">
href="http://www.habitat.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/habitat_pr.gif" alt="Habitat Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="28" />
class="showcase">
href="http://www.waltons.co.uk">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/walton_pr.gif" alt="Walton Pr in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="48" />
href="http://www.lookfantastic.com">lookfantastic uses icons to visually enhance their progress tracker.
class="showcase">
href="http://www.lookfantastic.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/lookfantastic_pr.gif" alt="Lookfantastic Pr in Progress Trackers in Web Design: Examples and Best Practices" width="337" height="58" />
href="http://www.diy.com">B&Q
class="showcase">
href="http://www.diy.com">
src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/bq.gif" alt="Bq in Progress Trackers in Web Design: Examples and Best Practices" width="600" height="36" />
Related posts
You may be interested in the following related posts:
href="http://www.smashingmagazine.com/2010/01/04/showcase-of-modern-navigation-design-trends/">Showcase Of Modern Navigation Design Trends
href="http://www.smashingmagazine.com/2009/10/13/call-to-action-buttons-examples-and-best-practices/">Call to Action Buttons: Examples and Best Practices
href="http://www.smashingmagazine.com/2009/09/28/search-results-design-best-practices-and-design-patterns/">Search Results Design: Best Practices and Design Patterns
"Don’t do viral marketing until your product doesn’t suck. If you do, more people will find out your product sucks." This pearl of wisdom from serial entrepreneur Dave McClure applies well not only to product development, but also to conversion rate optimization. The extension would be "don’t focus on getting more visitors until your site converts the visitors it already gets."
This is a sentiment we’ve taken to heart here at SEOmoz. So in this post we will share how we grew traffic and conversions in 2009, as well as some of the valuable lessons we’ve learned in the process, which we’re excited to execute on in 2010.
Traffic Statistics from 2009
In the past, SEOmoz has shared data about the traffic we receive (see past years – 2006, 2007). In 2008, we somehow skipped out, but this year, we’re bringing sexy back. Yes, it’s probably helpful to our competitors, but it’s also hugely valuable to our members (we hope) and part of our core value of transparency. So in the same vein of Rand’s blog posts about the venture funding process, we’re opening the kimono and sharing some analysis in hopes that others can benefit from our traffic and conversion rate learnings.
We’ll start with an overview of visitor and broad traffic data:
The early part of the year featured a big growth, as the overall popularity of the site spiked, new traffic sources (like Twitter) started bringing in visitors and we had some big successes with email marketing. The latter part of the year saw relatively steady numbers, with a small, predictable fall in December for the holidays.
Return visits show a fairly similar trend, with a slight drop in Q4 (though, as you’ll see below, it was a massive growth from 2008).
We’ve come a long way in 2009 – growing traffic to the site as a whole and to the blog. Revenue was also up over 250%, so it’s not just additional visits or visitors – conversions have also been improving.
All this raw data is interesting, but it’s even more valuable to dig in deep and identify the opportunities for improvement.
11 Conversion Rate Optimization Lessons We Learned in 2009
If marketers are captains of leaking ships, finding ways to remove more water faster might work, but plugging the holes and improving conversion rates is much more efficient. At SEOmoz we’re proud of the ship we’re sailing, but there’s also a laundry list of ways we can improve. So based on some of the things we learned in 2009, here are some of the holes we will look to plug to keep the Moz ship rising in 2010.
A note on #10 – there are several ways to implement form field tracking, including onclick events or using the track event in Google Analytics. Additionally, Clicktale, though not part of Google Analytics, is a really useful tool for tracking abandonment. For more information on the subject, Distilled’s Duncan Morris has a detailed follow up post on using jquery and GA to track form abandonment.
The takeaways from these slides shouldn’t be – do exactly what we’re doing on your pages – but rather, find a process at your company to identify where your traffic is going, where you are losing customers, and make small conversion rate improvements because, depending on how you monetize your site, making incremental conversion rate improvements could be the most efficient way to hit your revenue goals this year.
For us at SEOmoz, 2009 was an outstanding traffic year. We’re certainly proud of the fact that over 100,000 more visitors will visit the site this January than last January, but we are also well aware of the fact that more traffic does not equate to more revenue. So for this reason, we will continue to place our efforts on better converting the visitors we already have and better retaining our existing PRO members.
In closing, please note that this post is not meant to bash SEO, PPC, social media marketing, or any other traffic building tactics. Getting traffic to websites is what we do. It’s at the core of what we do at SEOmoz! Our goal is simply to be transparent about how we’re working to improve our business. Admittedly, however, when Rand says conversion rate optimization will be a major trend in 2010, it’s possible he’s projecting just a little.
"Don’t do viral marketing until your product doesn’t suck. If you do, more people will find out your product sucks." This pearl of wisdom from serial entrepreneur Dave McClure applies well not only to product development, but also to conversion rate optimization. The extension would be "don’t focus on getting more visitors until your site converts the visitors it already gets."
This is a sentiment we’ve taken to heart here at SEOmoz. So in this post we will share how we grew traffic and conversions in 2009, as well as some of the valuable lessons we’ve learned in the process, which we’re excited to execute on in 2010.
Traffic Statistics from 2009
In the past, SEOmoz has shared data about the traffic we receive (see past years – 2006, 2007). In 2008, we somehow skipped out, but this year, we’re bringing sexy back. Yes, it’s probably helpful to our competitors, but it’s also hugely valuable to our members (we hope) and part of our core value of transparency. So in the same vein of Rand’s blog posts about the venture funding process, we’re opening the kimono and sharing some analysis in hopes that others can benefit from our traffic and conversion rate learnings.
We’ll start with an overview of visitor and broad traffic data:
The early part of the year featured a big growth, as the overall popularity of the site spiked, new traffic sources (like Twitter) started bringing in visitors and we had some big successes with email marketing. The latter part of the year saw relatively steady numbers, with a small, predictable fall in December for the holidays.
Return visits show a fairly similar trend, with a slight drop in Q4 (though, as you’ll see below, it was a massive growth from 2008).
We’ve come a long way in 2009 – growing traffic to the site as a whole and to the blog. Revenue was also up over 250%, so it’s not just additional visits or visitors – conversions have also been improving.
All this raw data is interesting, but it’s even more valuable to dig in deep and identify the opportunities for improvement.
11 Conversion Rate Optimization Lessons We Learned in 2009
If marketers are captains of leaking ships, finding ways to remove more water faster might work, but plugging the holes and improving conversion rates is much more efficient. At SEOmoz we’re proud of the ship we’re sailing, but there’s also a laundry list of ways we can improve. So based on some of the things we learned in 2009, here are some of the holes we will look to plug to keep the Moz ship rising in 2010.
A note on #10 – there are several ways to implement form field tracking, including onclick events or using the track event in Google Analytics. Additionally, Clicktale, though not part of Google Analytics, is a really useful tool for tracking abandonment. For more information on the subject, Distilled’s Duncan Morris has a detailed follow up post on using jquery and GA to track form abandonment.
The takeaways from these slides shouldn’t be – do exactly what we’re doing on your pages – but rather, find a process at your company to identify where your traffic is going, where you are losing customers, and make small conversion rate improvements because, depending on how you monetize your site, making incremental conversion rate improvements could be the most efficient way to hit your revenue goals this year.
For us at SEOmoz, 2009 was an outstanding traffic year. We’re certainly proud of the fact that over 100,000 more visitors will visit the site this January than last January, but we are also well aware of the fact that more traffic does not equate to more revenue. So for this reason, we will continue to place our efforts on better converting the visitors we already have and better retaining our existing PRO members.
In closing, please note that this post is not meant to bash SEO, PPC, social media marketing, or any other traffic building tactics. Getting traffic to websites is what we do. It’s at the core of what we do at SEOmoz! Our goal is simply to be transparent about how we’re working to improve our business. Admittedly, however, when Rand says conversion rate optimization will be a major trend in 2010, it’s possible he’s projecting just a little.
CSS and JavaScript are extremely powerful tools for designers and developers. However, sometimes it’s difficult to come up with the one excellent idea that would solve a problem that you are facing right now. Good news: almost every day designers and developers come up with fresh and clever CSS tricks and techniques and share them with other developers online. We regularly collect all these tricks, filter them, sort them, revise them and prepare them for Smashing Magazine readers.
In this post we present 45 useful CSS/JavaScript-techniques that may help you find clever solutions to some of your problems or just get inspired by what is possible with CSS. We cover interesting CSS-techniques, navigation menus, CSS typography, CSS lists and CSS buttons. The focus of this post lies on CSS; please notice that some of the techniques use JavaScript or PHP for enhanced functionality.
Please notice that this is the first part of our large round-up of fresh CSS/JavaScript-techniques. Other techniques (CSS tables, CSS layouts, CSS for Mobile and CSS forms) will be featured in an upcoming article. So don’t forget to subscribe to our RSS-feed and follow us on Twitter for similar articles and a stream of useful resources. Please also let us know what we should change or improve in our future posts!
src="http://imp.constantcontact.com/imp/cmp.jsp?impcc=IMP_DIMPBPRSMASHRSS&o=http://img.constantcontact.com/lp/images/standard/spacer.gif" alt="Spacer in 45 Powerful CSS/JavaScript-Techniques" border="0" width="1" height="1" />
CSS and JavaScript are extremely powerful tools for designers and developers. However, sometimes it’s difficult to come up with the one excellent idea that would solve a problem that you are facing right now. Good news: almost every day designers and developers come up with fresh and clever CSS tricks and techniques and share them with other developers online. We regularly collect all these tricks, filter them, sort them, revise them and prepare them for Smashing Magazine readers.
In this post we present 45 useful CSS/JavaScript-techniques that may help you find clever solutions to some of your problems or just get inspired by what is possible with CSS. We cover interesting CSS-techniques, navigation menus, CSS typography, CSS lists and CSS buttons. The focus of this post lies on CSS; please notice that some of the techniques use JavaScript or PHP for enhanced functionality.
Please notice that this is the first part of our large round-up of fresh CSS/JavaScript-techniques. Other techniques (CSS tables, CSS layouts, CSS for Mobile and CSS forms) will be featured in an upcoming article. So don’t forget to
href="http://rss1.smashingmagazine.com/feed/">subscribe to our RSS-feed and
href="http://twitter.com/smashingmag">follow us on Twitter for similar articles and a stream of useful resources. Please also let us know what we should change or improve in our future posts!
We are aware that many readers are tired of “lists” floating around in the Web, but we are confident that the vast majority of our visitors will benefit from this post format and will find at least some of the techniques featured in this post useful.
By the way, did you know that Smashing Magazine has one of the most influential and popular Twitter accounts? Join our discussions and get updates about useful tools and resources —
href="http://creatives.commindo-media.de/www/delivery/ck.php?oaparams=2__bannerid=1252__zoneid=0__cb=c3f655874b__oadest=http%3A%2F%2Ftwitter.com%2Fsmashingmag">follow us on Twitter.
Interesting CSS Techniques
href="http://www.zurb.com/article/304/behind-the-scenes-building-the-new-visual">Building the New Visual Annotations
/>These note overlays are composed of two main elements, an overlay with the shine and a border with the transparency. A very interesting, yet simple technique by the ZURB Design Agency, designers who have written a
href="http://www.smashingmagazine.com/author/dmitry-dragilev/">series of articles on Smashing Magazine as well.
href="http://www.komodomedia.com/blog/2009/03/sexy-music-album-overlays/">Sexy Music Album Overlays
/>This aticle shows how to style your music streams and provides you some graphics to do so.
href="http://tutorialzine.com/2009/12/colorful-clock-jquery-css/">A Colorful Clock With CSS & jQuery
/>This tutorial describes how one can create a clock using basic CSS and JavaScript.
href="http://www.pvmgarage.com/en/2010/01/how-to-create-depth-and-nice-3d-ribbons-only-using-css3/">How To Create Depth And Nice 3D Ribbons Only Using CSS3
/>We will use box-shadow to create a drop-shadow with RGBa, a color model that allows an optimized contrast with any kind of backgrounds. RGBa is the standard RGB model (0,0,0 – 255,255,255) and it adds the last option (a) for the opacity. We can use this model also for other properties and it works with the new browser.
href="http://tutorialzine.com/2010/01/advanced-event-timeline-with-php-css-jquery/">Advanced Event Timeline With PHP, CSS & jQuery
/>This Advanced Event Timeline is used with the help of PHP, MySQL, CSS and jQuery. The result: a nice time line with clickable events. Adding new ones is going to be as easy as inserting a row in the database.
href="http://www.romancortes.com/blog/css-3d-meninas/">CSS 3D Meninas
/>“I’ve took the classic paint The Maids of Honour (Las Meninas) and created a CSS pseudo-3D / Parallax effect. It is pure CSS, no JavaScript or Flash is involved. It has been tested and is working on Internet Explorer 8, Firefox 3, Opera 9, Safari 3, Chrome 4 and Konqueror 3.5, and it validates, too.
href="http://buildinternet.com/2009/09/sproing-make-an-elastic-thumbnail-menu/">Sproing! – Make An Elastic Thumbnail Menu
/>“In an ongoing attempt to offer alternative methods to spruce up menus, I’ve pieced together an elastic thumbnail menu. It magnifies menu items when they are hovered over and menu items expand upwards.
href="http://www.zurb.com/article/292/how-to-create-simple-and-effective-sub-na">How to Create Simple and Effective Sub Navs with Definition Lists
/>“When we need simple and effective on-page navigation, to either jump to content on the page or flip to another view, we use the dl element. Its sub elements, the dt and dd, make it very easy for us to create inline links with a clear label. Here we’re going to share with you a fast, lightweight method for how we’ll use CSS to do it.”
href="http://designm.ag/tutorials/sticky-sidenav-layout/">Sticky SideNav Layout with CSS
/>Learn how to create a fixed sidenav layout for your blog or website. Having a fixed sidenav comes in handy when dealing with blog style websites where the content is extremely tall and there is a need for good amount of scrolling. The fixed navigation allows the user to cruise through the content without scrolling back up to the top to navigate through the rest of the site.
href="http://css-tricks.com/unobtrusive-page-changer/">Unobtrusive Dropdown Page Changer
/>Using a <select> dropdown menu to create navigation isn’t as common as it once was, but it’s still around. It got ripped on pretty good for being an inaccessible / obtrusive. Indeed a lot of the scripts you’ll find out there for creating a menu like this are this way. Bummer. Let’s make one that works with or without JavaScript.
href="http://kntl.org/css-imageless-but-cool-javascript-and-jquery">CSS Navigation: No JavaScript, jQuery or Image Required, Free CSS Navigation / Pagination with Tooltip
/>CSS-based navigation / pagination bar without JavaScript. There is a tooltip on hover for the ‘previous’ and ‘next’ page’s bullets that makes navigation easier.
href="http://www.code-pal.com/how-to-code-an-overlapping-tabbed-main-menu/">How to Code an Overlapping Tabbed Main Menu
/>Main navigation menu is that part of a website design that makes the whole site look lively and complete. But the most common type of navigation menu style still being used a lot is the tabbed navigation menu. Here is a tutorial on how to code an overlapping tabbed menu.
href="http://css-tricks.com/long-dropdowns-solution/">Solution For Very Long Dropdown Menus
/>“I like to be confident with post titles, but the reality in this case is a possible solution for very long dropdowns. The problem with long dropdowns is that the dropdown itself can go below the “fold” of the website. That is, below the visible area of the browser window. So in order to access those menu items down below, you need to scroll your browser window. For those of us with scroll wheels of some kind on our mice (mouses?), it’s not a big deal. For those without, those lower menu items are totally inaccessible, because to use the browser scrollbar means mousing off the menu (and probably having it close).”
href="http://www.sohtanaka.com/web-design/mega-drop-downs-w-css-jquery/">Mega Drop Down Menu w/ CSS & jQuery
/>When used properly, mega drop down menus can be quite efficient for large scale websites. Let’s experiment with different ways of implementing this technique. A tutorial by Soh Tanaka, Smashing Magazine’s regular author.
href="http://line25.com/tutorials/how-to-create-a-cool-anaglyphic-text-effect-with-css">How to Create a Cool Anaglyphic Text Effect with CSS
/>Anaglyphs are those amazing 3D images that are created by offsetting two of the red, green and blue channels, and are viewed with those nerdy looking 3D glasses with different coloured lenses. I don’t know if this effect works for real, as I’ve unfortunately misplaced my 3D specs, but it’s a pretty cool text effect nevertheless! Let’s take a look at how a similar style can be created for sprucing up your web designs, while taking into consideration semantics and avoiding the repetition of any markup.
href="http://csswizardry.com/2009/12/typographic-work-planner/">Typographic work planner
/>Enter this, a little HTML/CSS typographic work planner. By using some super-semantic HTML and a dash of CSS you can craft a beautiful looking yet incredibly simple work planner for you and your staff.
href="http://orderedlist.com/our-writing/resources/html-css/thinning-text-in-webkit-safari/">Thinning Text in Webkit (Safari)
/>Safari has a not-so-lovely way of bulking up text using sub-pixel rendering. On previous versions of Safari, this was fixed with a text-shadow declaration, but since Snow Leopard that method no longer works. Fortunately, there is an alternative.
href="http://jackosborne.co.uk/articles/pseudo-drop-caps/">Pseudo Drop Caps
/>They’ve been around for a while now, appearing in magazines, print and now the web. Designers and developers alike have experimented with multiple workarounds from using inline styles to using image replacement but with both of these solutions there are problems. For example, what happens when you recreate your site and decide that you no longer want to upload the drop cap images, you’re now going to left with a broken image at the start of every single post that you had previously created, this is obviously assuming you haven’t used text-indent. If you decided to go down on the inline style route then your are just bad, just very bad.
href="http://perishablepress.com/press/2009/11/09/perfect-pre-tags/">How to Create Perfect Pre Tags
/>If you operate a website that features lots of code examples, you know how important it is to spend some quality time styling the &tl;pre> element. When left unstyled, wild <pre> tags will mangle your preformatted content and destroy your site’s layout. Different browsers treat the <pre> tag quite differently, varying greatly in their default handling of font-sizing, scrollbar-rendering, and word-wrapping. Indeed, getting your preformatted code to look consistent, usable, and stylish across browsers is no easy task, but it certainly can be done. This article explains everything you need to create proper <pre> tags.
href="http://forabeautifulweb.com/blog/about/improve_your_web_typography_with_baseline_shift/">Improve your web typography with baseline shift
/>The baseline is an invisible line onto which all type characters sit, although of course some characters (including ‘j’, ‘p’, ‘g’ and ‘y’) have descenders that hang below the baseline. Baseline shift involves moving characters up or down in relation to the baseline and using it effectively can make a huge difference to the professional look of your type. Although baseline shift has traditionally been a part of using tools like InDesign or Quark, there are ways to accomplish the same results using CSS.
href="http://lamb.cc/typograph/">Typograph – Scale & Rhythm
/>This page is both an essay and a tool. It sets out to explore how two, intertwined concepts, often playful but sometimes cheeky, can be encouraged to dance in web pages. Drag the colored boxes along the scale to throw these words anew. For the most part, this text is just a libretto for the performance you are about to play upon it.
href="http://tutorialzine.com/2009/11/fancy-quotes/">Fancy Quotes With jQuery, AJAX & CSS
/>Learn how to create a fancy quote rating system that will display a number of famous quotes and will enable site visitors to rate their favorites.
href="http://www.cssnewbie.com/how-to-create-simple-stylish-and-swappable-image-captions/">How To Create Simple, Stylish and Swappable Image Captions
/>Most image caption solutions require a lot of excessive HTML, make it difficult to redesign or don’t communicate clearly that they belong to an image. Let’s see what we can do to address these problems.
href="http://www.devlounge.net/design/styling-photo-captions-with-css">Styling photo captions with CSS
/>Sure, some photos are self-explanatory, but most photos are best served with text captions. It’s true for traditional media like newspapers and magazines, and just as true for blog posts and web articles. Here’s a quick tip on using photo captions and styling them nicely with the magic of CSS.
href="http://www.cs.tut.fi/~jkorpela/www/captions.html">Image captions on Web pages
/>This document suggests three ways of presenting an image with a caption in HTML. Styling in CSS is also discussed.
href="http://www.sohtanaka.com/web-design/styling-post-headings-that-stick-out/">Styling Post Headings That Stick Out
/>“Recently, I’ve noticed a trend in blog post headings where it sticks out of its base layout. I would like to share this technique for those who would like to give their post headings a new style. One tip to keep in mind when designing this is to make sure it fits your target audience screen resolution size. Note that this technique may vary depending on your design. My goal is for you to grasp the main concept in this tutorial so you can experiment and apply it to your own projects.”
href="http://www.electrictoolbox.com/ellipsis-html-css/">Using ellipsis with HTML and CSS
/>If the text is too wide to fit into a container, a nice solution can be to have ellipsis to show there’s more information available. While not currently part of the official HTML specifications, it is possible to have ellipsis defined in CSS and it works for Internet Explorer, Safari, Chrome and Opera. It doesn’t work for Firefox but there’s a workaround that can be done with jQuery.
href="http://www.jcargoo.org/2009/11/5-message-boxes-to-style-your.html">5 Message Boxes to Style your Notifications with CSS
/>This article presents free notification boxes to use/customize as well as a very simple technique to create your own ones inspired from this roundup.
CSS Lists
href="http://www.cssnewbie.com/word-style-outline/">Create a Microsoft Word-Style Outline with CSS
/>As you can see, the browser doesn’t bother to vary the indentation style much, or change the list type from roman numerals to alphabetical characters and so on… all the things we’re so used to seeing because Microsoft Word and other writing programs do them by default. So let’s use a bit of CSS ingenuity to make a Microsoft Word-styled outline using ordered lists!
href="http://mattbango.com/notebook/web-development/pure-css-timeline/">Pure CSS Timeline
/>“I wanted to build a CSS timeline for the “About” section of my site while using some clean and simple markup. I wanted to avoid using images as much as possible, so I spent a few minutes prototyping some options and came up with a solution using unordered lists. The result is a simple and clean looking timeline with some very straight forward markup. In this article I’ll share my approach to creating a timeline out of CSS and HTML which results in a nice looking, simple timeline.”
href="http://dev.opera.com/articles/view/automatic-numbering-with-css-counters/">Automatic numbering with CSS Counters
/>When writing documents, it is often useful to number sections and have a table of contents. You can number these by hand, directly in the markup, but this can be time consuming if the order changes and you have to edit all the numbers. CSS2.1 gives us a automated way to generate numbers using CSS counters, and this article will walk you through how to use them. One word of note before we start is that CSS counters are not yet implemented in IE, although they are on the roadmap for IE8.
href="http://css-tricks.com/elastic-calendar-styling-with-pure-css/">Elastic Calendar Styling with CSS
/>A traditional calendar is a grid of numbered boxes on a page. As a web designer, you might go right for a table, and I wouldn’t fault you for that. Tables, though, can sometimes be tough to muscle into shape. The CSS purist in me gets pissed when I set the width of a table (or a cell) and it decides it knows better and grows or shrinks as it sees fit.
/> You can tackle calendar styling with pure CSS, and I feel it makes just as much sense semantically as a table does. What is a calender, if not an ordered list of days? By using CSS, we can even do some cool things like do all our sizing with ems so our calendar layout will be elastic. That is, grow in both width and height when text is resized in browsers, while greatly increasing accessibility.
href="http://css-tricks.com/style-a-list-with-one-pixel/">Style a List with One Pixel
/>A one-pixel background image can be a pretty versatile thing. With repeat-x it can be a horizontal line, repeat-y makes a vertical line, and repeat makes it a fill color. Just as a little fun proof of concept, we can use that to create a depth-chart looking unordered list.
href="http://www.webdesignerwall.com/tutorials/style-your-ordered-list/">Style Your Ordered List
/>By default, most browsers display the ordered list numbers same font style as the body text. Here is a quick CSS tutorial on how you can use the ordered list (ol) and paragraph (p) element to design a stylish numbered list.
href="http://blog.innovativethought.net/2007/06/11/simulating-a-table-using-an-unordered-list/">Simulating a Table Using an Unordered List
/>Your first question immediately might be, “why would I want to simulate a table with a list, why not just use a table?” With the raise in popularity of AJAX sortable list elements, using list items to represent a multiple column data table can allow for easy sorting of various more “tabley” information. So let’s get started.
href="http://www.marcofolio.net/css/8_different_ways_to_beautifully_style_your_lists.html">8 different ways to beautifully style your HTML lists with CSS
/>“The use of HTML lists (<ol> for an ordered list, <ul> for an unordered list) is very common these days. Today, we’re going to look a little bit further than creating regular lists, by showing 8 different ways to beautifully style your HTML lists with CSS. We’ll use some pure CSS techniques to make a bored list look awesome (and even have some extra functionality).”
href="http://buildinternet.com/2009/09/quick-tip-simplify-list-margins-with-css/">Quick Tip – Simplify List Margins with CSS
/>Have you ever set default margins for a layout, and then had to go back and manually adjust all of your lists? By default, list item markers have a negative positioning in relationship to the list item itself. This means that zero-ing out margins automatically leads to an overflow if the list is contained inside anything else. Wouldn’t it be easier to put the list item marker at the same starting point as other elements instead? Lucky for us, there’s a style to help do just that. Let’s see what can be done with the list-style-position property.
href="http://perishablepress.com/press/2009/08/16/sexy-html-list-tricks/">Sexy HTML List Tricks
/>Behold the ubiquitous list elements, <ul> and <ol>. These two sexy elements help millions of websites display lists of information in clean, semantic fashion. Without them, we’d be crawling around like filthy cavemen, eating dirt and howling at the moon. But these list elements aren’t just sexy, they are also extremely flexible, enabling us humble designers to create robust list configurations that are semantically versatile and highly customizable.
href="http://iloveusability.com/usability-tip/clickable-list-item/">Clickable <li>
/>I originally coded the markup to be a table, but discovered a problem when I tried to make the whole row clickable. I ended up with a list of articles instead.
href="http://www.p51labs.com/simply-buttons-v2/">Simply-Buttons v2
/>This technique presents buttons of the size that always fits the content. There are 3 states: inactive, active and hover. The technique works in all major browsers and doesn’t require JavaScript.
href="http://www.oscaralexander.com/tutorials/how-to-make-sexy-buttons-with-css.html">How to make sexy buttons with CSS
/>This tutorial will teach you how to create pretty looking textual buttons (with alternate pressed state) using CSS. Dynamic buttons save you heaps of time otherwise spent creating graphics and will basically make you a happier person at the end of the day.
href="http://www.sohtanaka.com/web-design/liquid-color-adjustable-css-buttons/">Liquid & Color Adjustable CSS Buttons
/>When working on a large site with multiple buttons, it can be quite tedious to make all the buttons in Photoshop. Making future adjustments on the verbiage and colors can be also be time consuming. By having dynamic buttons, this scenario is much easier to handle, and by having liquid and color adjustable buttons with CSS, we are able to change the verbiage and colors in a flash.
href="http://inspectelement.com/tutorials/create-a-button-with-hover-and-active-states-using-css-sprites/">Create a Button with Hover and Active States using CSS Sprites
/>Too many designers neglect the click state (active-property in CSS) in web design, either because they’re unaware of it, underestimate the importance of it or are plain lazy. It’s a simple effect that improves usability by giving the user some feedback as to what they’ve clicked on but can also add depth to a design.
href="http://stopdesign.com/archive/2009/02/04/recreating-the-button.html">Recreating the button
/>“I thought it would be interesting to provide a portion of the background on buttons here, and discuss some of the iterations we’ve been through so far to get to the current state.”
href="http://stackoverflow.com/questions/520640/how-can-i-use-googles-new-imageless-button-how-could-i-reverse-engineer-or-rol">Google’s Imageless Buttons
/>An interesting discussion about various buttons design techniques to reconstruct Google’s imageless buttons.
Stay tuned!
This is the first part of our large round-up of fresh CSS/JavaScript-techniques. Don’t forget to
href="http://rss1.smashingmagazine.com/feed/">subscribe to our RSS-feed and
href="http://twitter.com/smashingmag">follow us on Twitter for similar articles and a stream of useful resources. Please also let us know what we should change or improve in our future posts!
There are very few who would argue against the notion that most freelance professionals, especially those operating in the design/development and writing arenas, tend to operate from a creative base. They are, by and large, a group that has chosen to let the right side of their brain steer them as far as the road stretches out before them. Having embraced their creative and artistic nature, merging it into their career path and never looking back. And for the most part, a creative mind fits well in this freelance environment where they ultimately call all the shots and are bound by very few restraints. For the most part.
However this road is not without its bumps, and for a lot of freelancers, these bumps come when the left brain must be engaged to navigate the terrain. Most of us are familiar with the concept of ‘′Right Brain vs. Left Brain’, wherein it has been shown that the two hemispheres of the brain control different modes of thinking. The right is the creative and artistic side, the left being the more logical and analytical.
Given that most of us are less apt to be full-minded, where we excel in both modes of thinking, there always tends to be some issues when it comes time for you to mentally cross-over to the otherside for a spell. This can be a problem in freelancing, because though we prefer to tend right, we have to handle every aspect of our business and that means every so often, going left.
There are very few who would argue against the notion that most freelance professionals, especially those operating in the design/development and writing arenas, tend to operate from a creative base. They are, by and large, a group that has chosen to let the right side of their brain steer them as far as the road stretches out before them. Having embraced their creative and artistic nature, merging it into their career path and never looking back. And for the most part, a creative mind fits well in this freelance environment because they ultimately call all the shots and are bound by very few restraints — for the most part.
This road, however, is not without its bumps, and for a lot of freelancers, these bumps come when the left brain must be engaged to navigate the terrain. Most of us are familiar with the concept of right brain vs. left brain, wherein it has been shown that the two hemispheres of the brain control different modes of thinking. The right is the creative and artistic side, the left being the more logical and analytical.
Given that most of us are less apt to be full-minded (meaning we excel in both modes of thinking), there tend to be some issues when it comes time for you to mentally cross over for a short time to the other side. This can be a problem in freelancing, because though we might prefer to turn right, we have to handle every aspect of our business and that means every so often going left.
The administrative side of the job tends to be left-brain-heavy, and can prove difficult for some right-brainers to tackle. Below, I have broken down the offending areas that often hang us up, and have provided some tips for how to make it through these left-brained business barriers.
By the way, did you know that Smashing Magazine has a mobile version? Try it out if you have an iPhone, Blackberry or another capable device.
Scheduling
The first administrative task we will look at is scheduling. Not only because of its importance to our freelance business, but because effective time management can aid with the other elements of your admin responsibilities. This tends to be very difficult for extremely creative individuals for the simple fact that right-brainers tend to be more random and less sequential in thought. And since scheduling creativity is not something we can always effectively manage, we tend to overlook the idea of scheduling our work altogether.
Ironically, this often-avoided admin element by creatives can actually help stimulate our creative workflow. Scheduling different left-brained administrative tasks to be handled throughout the day offers your creative mind a change of gears. It essentially unplugs you from the mindset you’re in when you create and gives your often overworked right brain a bit of a break. So when you return to the right side of things, you do so refreshed and recharged. Scheduling your day, therefore, can benefit both sides of your freelance business.
The more fun that it is for you to use, the more likely it is that you’re going to use it. Find an easy-to-use time management app with a fun UI and you will find that it is easier to motivate yourself to open it up and dive in.
Be strict with yourself about all the self-imposed schedules you have come up with. By enforcing the schedules and through repetition, they will eventually become second nature and will be easier to work into your routine.
Do not be too hard on yourself, just let your system evolve with you. Chances are, you are going to have a period of adjustment for this, so let it evolve and grow to suit you better rather than get frustrated and give up. The better the fit, the better it will serve your business.
Always set yourself up with a redundancy system! Given that you may not be used to scheduling yourself, it may behoove you to have to have a backup plan. Having the extra coverage may also provide some peace of mind.
Accounting
The next administrative task we’ll talk about is the bookkeeping side of business. I have always had an aversion to numbers, math and anything accounting related, so this was a big adjustment for me as I imagine it has been for a lot of other freelancers. The easy answer for these woes is to simply hire an accountant, but for some — especially those just starting out in the business — this is not necessarily an affordable plan of attack. So we have to take these tasks upon ourselves and be able to make sense of it all.
The great thing about this area of your freelance life is that so many application authors understand our pain and they have developed wonderful programs that take most of the guesswork out of the equation for you. Client, account, and project management are becoming easier-than-ever for the right-brained inhabitants with applications like Billings. In these cases the software essentially handles most of this for you, while you simply input a bit of data.
Find a program that is suited to your needs only. The bells and whistles that go above and beyond are not necessary, and may only cause confusion. Especially in the beginning, keep it simple so you do not get overwhelmed.
Make sure that you stay on top of these tasks. The bookkeeping is what keeps you going and stable, so make sure you do not get behind in your billing…that’s the client’s job. Set billing reminders and collection reminders so that you do not let anything fall through the cracks.
The less time it takes to get done, the less apt we are to put it off. Creating templates for your accounting paperwork can help cut down the time and thought that has to go into it. And that will naturally make us more prone to tackling.
Help avoid penalties for your accounting practices. Each country and province has different laws and regulations that are governing your business and the taxes that accompany it. Be sure that you find out what they are and keep up with changes to avoid accumulating penalties and fines.
Correspondence
Another aspect of the administrative side to your freelance business that will often draw periods of procrastination is your business correspondence. This is not referring to replying to a pen pal or any kind of creative writing; this generally is detailed and contractual which immediately presents itself as a barrier to the right-brained thinkers. So it is a natural reaction for the creatively minded to avoid dealing with the inbox or returning messages that we cannot deny are important. Even though this is not occurring face-to-face, we still feel out of our element, so we put off until tomorrow what should have been done today.
Once again, the right-brainers tend to think more randomly than sequentially, so communicating our thoughts to those populating the opposite sphere can prove problematic. But this is where the scheduling can further assist you. Most of our business runs on some form of back-and-forth communication — be it with clients, users, colleagues, etc. — so making time every day to sort through your inbox will keep it running smoothly. Getting back in a timely fashion will reflect positively on you and build trust in your brand.
Again, get time on your side and this will help get you going. If you find that you are regularly responding to the same types of queries, create copy templates to move your mail along.
Prioritize and categorize and the task will fly past. Keeping a hierarchy of your correspondences and having them separated by types will keep you rolling through quick and easy. Again, this breaking down and separating of your messages may not be the easiest for the right-brainers to build into a habit, but it is certainly worth a try.
Get in and get out! Try to keep your inbox empty and your messages filed away for easy reference and prioritization. If it is a message that can be replied to quickly, then go ahead and immediately get this done, otherwise file it for later.
Brevity is beyond key; it is your best friend. Keep your correspondence brief and to the point and avoid venturing down unnecessary avenues that open yourself up to further questions. If you ramble on, you are simply wasting time that you could be using elsewhere.
Client Relations
Another oftentimes administrative nightmare that freelancers come across is the client relations portion of the position. There is a reason we like the solitude that tends to accompany the freelance career path, and so breaking out of that solitary shell to be able to effectively communicate with clients can be daunting. It’s no secret that in order for your business to thrive, you need to have a client base to build upon. And as should be no secret to anyone, the way you deal with your clients will often determine if they will return.
As a creative individual whose train of thought pulls right, interacting with those on the left side of the tracks will not always go smoothly. In fact, it may not translate well. The means and methods that right-brainers subscribe to, even in explanations and conversations, can tend to be hard to follow for lefters, and vice versa. So it is imperative that we try to make an effort to keep these interactions focused and on topic. And by understanding that such a translation gap exists, we can make more of an effort to bridge the gap when we deal with our clients.
Try to step outside your regular right-brained random ways. Momentarily leave them behind and organize your thoughts before meetings. Taking notes and outlining the points you need to cover beforehand can help you stay focused and have an easier time following.
Just as we are often responsible for steering clients towards a decision once they employ us, we need to continue to make strides towards being able to steer the conversation. This helps to ensure we stay comfortable as we converse, and it keeps us in our element as much as possible.
Since it is necessary for us to understand the project from every angle, have your clients explain their approach from many directions. This may help you find a way to relate to it when you otherwise wouldn’t.
It may sound cheesy, but you may want to set up dry-run practices with some of your non-creative friends or family. Running through your side of the conversation with someone who does not work from a creative place may prepare you for meetings with clients.
Backups and Updates
When it comes to important administrative tasks that so many freelancers tend to let slip through the cracks, keeping up with backups and updates ranks high on the list for right-brainers. Creative people tend to work in the moment of inspiration, and we are enveloped by that moment. But the moment moves on, and when it does move on, we are swallowed up by the next task. With our ever-forward-moving momentum pushing against us, we forget to look back, let alone backup (…sorry). And stopping in the middle of our creative flow to update our software doesn’t exactly rank high either.
Naturally, as a freelancer you are going to be the only one managing and keeping records of what is happening on your end, including those ever-precious works-in-progress. Losing them would be devastating, but remembering to back them up, wouldn’t exactly be a right-brainer move …though I think it may be a both-brain sphere issue. It seems that most of us do not consider backing up our files until something actually happens to cause our drive to crash and we lose them all. But again, in the freelance field you are on your own when it comes to data loss, there is no IT department backing you up, so to speak.
Automation is a right-brainer’s buddy, and it just means that you may actually get your backups and updates done! Finding a service that backs up your data automatically takes the stress off you and ensures that you won’t have to worry about any right-brained interference in this area.
Take a moment, and take a hike! For many of us, as long as we are at our computer, we will not have the willpower to stop working and get our backups and updates done. So walk away. Give yourself a break, start the process and come back later ready to go.
A lot of basic software updates are quick and easy and do not interrupt your workflow for very long. Scheduling can definitely work with you in this arena, as most productivity methods encourage you to take short breaks throughout your work day. Set up to run updates during these breaks so that you know they get done.
Once again, turn to prioritization and a left-brained-style breakdown to get over the procrastination hump that bars most creatives (and so many more) from getting their updates and backups done. Decide what are your most important files and programs, and make sure that they get done first and foremost. Then as you work through your week, work through your lower-priority items.
Overall Advice
You are creative, so act like it!
Overall, you cannot ignore your administrative responsibilities and hope they go away. So do what it is that you do best — approach it creatively. The interwebs are alive with creative solutions to so many different problems that you are bound to be able to find one that fits yours. If not, maybe come up with your own. Nothing is out of reach for the creative mind, because we know no limitations…even the occasional cross-over to the left side.
Inspiration is the easy part, now lets talk motivation!
One of the hardest things for most creative-minded individuals to do when approaching the territory of the left, is getting motivated to tackle these tasks. Even those of us not prone to procrastination will tend to let the left work pile up longer than the right simply because it is a less comfortable fit for us. The thing to remember is that getting started is usually the hardest part. Not to go all Nike on you, but just do it. Force yourself to get started, and let it roll. Immerse yourself in as much of a creative environ as you can to help smooth the transition, and run with it!
Do not elaborate, that just complicates!
You know if it rhymes it’s got to be true (even though that absolute doesn’t rhyme, but still…). Another important thing to remember is to keep things simple to help with these momentary forays into foreign territories. Remember that this is not where your strengths lie, so it may be best for you not to take on too much in one bite. Keep things as concise and brief as you can, taking them a piece at a time. As right-brained thinkers we tend to see things as a whole rather than in parts, so try to find the different parts and break them down, tackling one at a time. That was the reason for breaking everything apart above, so that you could see a way to start separating the different parts from the whole. This can make the tasks at hand seem less overwhelming.
It’s in your reach, you just have to try for it!
An important thing to remember, overall, is that just because we tend to prefer one mode of thinking (be it right- or left-brained), we can improve our abilities within each side through exercises that stimulate the different hemispheres. The problem tends to arise when there is an imbalance in educational focus that fails to appeal to both sides of the brain. This doesn’t mean it is beyond us, just that we have not worked at improving the opposite sphere. So the more that we keep those sides stimulated, the easier the tasks that fall to that side of the brain will be to take on.
Further Resources
That was a look at the administrative side of the freelancing gig, from a right-brained perspective. Below are a few more resources that will further fill you in on the creative’s take on the linear-thinking side of the coin.
Billings – Billings 3 is a great user-friendly accounting app for Macs built with right-brained creatives in mind.
Dropbox – Dropbox is a great automated backup system with a range of packages and benefits for keeping your data safe.
Collabtive – Collabtive is web-based project management software geared towards freelancers and small businesses.
Invoice Journal – Invoice Journal is an awesome open source app for invoicing that is web-based so you can access your account from anywhere.
Skype – Skype is a fantastic communications tool for freelancers to contact their clients and colleagues via their computers.
Smashing Magazine is offering a student trainee position in Smashing Magazine’s Office in Freiburg, Germany. We are looking for a motivated trainee student who wants to learn about online publishing and editorial work. You can gather a first hand experience from one of the most successful blogs by working side by side with the Smashing Magazine’s editorial team. Details.