• Feed RSS

Guide to Website Navigation Design Patterns

Guide to Website Navigation Design Patterns: "
Ultimate Guide to Website Navigation Design Patterns

In web design, there are certain common design patterns that are used for interaction. Site navigation has a wide variety of common and familiar design patterns that can be used as a foundation for building effective information architecture for a website.

This guide covers popular site navigation design patterns. For each site navigation design pattern, we will discuss its common characteristics, its drawbacks, and when best to use it.



Top Horizontal Bar Navigation


Top horizontal bar navigation is one of the two most popular kinds of site navigation menu design patterns out there. It’s used most frequently as the primary site navigation menu, and is most commonly located either directly above or directly below the site header of all web pages in a site.

Top Horizontal Bar Navigation

The top horizontal bar navigation design pattern is sometimes paired with drop-down menus whereby hovering on a navigation item reveals second-level child navigation items.

Common Characteristics of Top Horizontal Bar Navigation


  • Navigation items are text links, button-shaped, or tabbed-shaped
  • Horizontal navigation is often placed directly adjacent to the site’s logo
  • It is often located above the fold



Drawbacks of Top Horizontal Bar Navigation


The biggest drawback to top horizontal navigation is that it limits the number of links you can include without resorting to sub-navigation. For sites with only a few pages or categories, this isn’t a hindrance, but for sites with complex information architecture and many sections, this is not an ideal primary navigation menu option without the help of sub-navigation.

When to Use Top Horizontal Bar Navigation


Top horizontal bar navigation is perfect for sites that only need to display 5-12 navigation items in the main navigation. It is also the only option for primary navigation for single-column website layouts (aside from footer navigation, which is generally used as a secondary navigation system). When combined with dropdown sub-navigation, the top horizontal bar navigation design pattern can hold more links.

Vertical Bar/Sidebar Navigation


Vertical bar/sidebar navigation is when navigation items are arranged in a single column, one on top of another. It’s often found on the top-left column, preceding the main content area — according to a usability study on navigation patterns on left-to-right readers, vertical navigation bars on the left performs better than vertical navigation bars on the right.

The vertical bar/sidebar navigation design pattern is seen all over the place, on virtually every kind of website. Part of that is because vertical navigation is one of the most versatile patterns out there, able to accommodate a long list of links.

Vertical Bar/Sidebar Navigation

It can be used alongside sub-navigation menus, or on its own. It’s easily used for primary site navigation that contains a lot of links. Vertical bar/sidebar navigation can be integrated into almost any kind of multi-column design layout.

Common Characteristics of Vertical Bar/Sidebar Navigation


  • Text links for navigation items are very common (with and without icons)
  • Tabs are rarely used (except for the stacked tabs navigation pattern)
  • Vertical navigation menus usually have plenty of links



Drawbacks of Vertical Bar/Sidebar Navigation


Vertical menus, because of their ability to handle many links, can sometimes get overwhelming to users when they are too lengthy. Try to limit the number of links you include, and instead, use fly-out sub-navigation menus for sites with more content. Also, consider dividing the links into intuitive categories to help users find links of interest quicker.

When to Use Vertical Bar/Sidebar Navigation


Vertical navigation is suitable for almost any kind of site, but especially sites that have more than a handful of main navigation links.

Tabs Navigation


Tabs navigation can be styled virtually any way you want, from realistic, textured tabs that look straight out of a notebook to glossy, rounded tabs and simple, squared-edge tabs. They’re seen on virtually every kind of site, and can be incorporated into almost any visual style.

Tabs Navigation

Tabs have one distinct advantage over other types of navigation: they have a positive psychological effect on visitors. People associate tabs with navigation, because people are used to seeing tabs in notebooks or binders, and associate it with turning to a new section. This real-world metaphor makes tabs navigation intuitive.

Common Characteristics of Tabs Navigation


  • Generally resemble and function like real-world tabs (as seen in filing systems with folders, notebooks, binders, etc.)
  • Usually horizontally-oriented but occasionally vertical (stacked tabs)



Drawbacks of Tabs Navigation


The biggest drawback to tabs is that they’re more work to design than simple top horizontal bars; they generally require more markup, image assets, and CSS depending on the visual complexity of the tabs.

The other drawback to tabs is that they don’t work well for navigation with a lot of links, unless they’re arranged vertically (and even then, they can look awkward if there are too many).

When to Use Tabs Navigation


Tabs are appropriate for virtually any main navigation, though they are limited in the number of links they can display, especially when used horizontally. Using them for main navigation with a different style of sub-navigation for larger sites is a good option.

Breadcrumb Navigation


Breadcrumbs, which get their name from the Hansel and Gretel fairy tale of leaving breadcrumbs along the journey so they could find their way back home, show you where you are on a website. They are a form of secondary navigation, helping support the site’s primary navigation system.

Breadcrumb Navigation

Breadcrumbs are useful in sites with multiple levels of web page hierarchy. They help orient visitors as to where they are relative to the entire site. If a visitor wants to go back a level, they can just click on the appropriate breadcrumb navigation item.

Common Characteristics of Breadcrumb Navigation


  • Usually formatted as a horizontal list of text links, often with left-pointing arrows between them to denote hierarchy
  • Never used for primary navigation



Drawbacks of Breadcrumb Navigation


Breadcrumbs don’t work well on sites with shallow navigation. They can also be confusing when a site doesn’t have clearly compartmentalized and categorized content.

When to Use Breadcrumb Navigation


Breadcrumbs are best suited to sites that have clearly defined sections and multiple levels of content categorization. Without distinct sections, breadcrumbs can do more to confuse visitors than to help them.

Tags Navigation


Tags are commonly used on blogs and news sites. They’re often organized into a tag cloud, which may arrange the navigation items alphabetically (often with different-sized links to indicate how much content is filed under a particular tag), or in order of popularity.



Tags are excellent secondary navigation and are rarely seen as primary navigation. They can aid in findability and site exploration. Tag clouds usually appear on either a sidebar or footer.

If a tag cloud isn’t present, then tags are often included in the meta information at the top or bottom of a post; this format makes it easy for users to find similar content.

Common Characteristics of Tags Navigation


  • Tags are a common feature content-centered sites (blogs and news sites)
  • Only text links
  • Links are often of varying sizes when arranged in a tag cloud to denote popularity
  • Often included in a post’s meta information

Drawbacks of Tags Navigation


Tags are strongly associated with blogs and news sites (and, to a lesser extent, e-commerce sites), so if your site is of a different nature, it might not be useful to you. Tags also require a certain amount of work on the part of your content creators, as each post needs to be accurately tagged in order for the system to be effective.

When to Use Tags Navigation


Tagging content with keywords is good if you cover plenty of topics; if you only have a few pages (perhaps your website is a company site), then tagging content may not be needed. Whether you decide to also incorporate a tag cloud or just include tags in meta information will depend on your design.

Search Navigation


Site search has become a popular navigation method in recent years. It’s well-suited for sites with tons of content (like Wikipedia), which are difficult to navigate otherwise. Search is also seen commonly on blogs and news sites, as well as e-commerce sites.



Search is useful to visitors who know exactly what they’re looking for. But including a search option isn’t an excuse to ignore good information architecture. It’s still important to make sure that your content is findable for visitors who might not know exactly what they’re looking for or are browsing to discover potentially interesting content.

Common Characteristics of Search Navigation


  • Search bars are usually located in the header or near the top of a sidebar
  • Search bars are often repeated on auxiliary sections of a page layout, such as the footer

Drawbacks of Search Navigation


One of the biggest drawbacks to search is that not all search engines are created equal. Depending on what solution you have chosen, your site’s search feature may not produce accurate results or may be missing things such as post meta data. Search navigation, for a majority of the sites, should be a secondary form of navigation. Search is the fallback option the user will choose when they cannot navigate to what they’re looking for.

When to Use Search Navigation


For sites with tons of pages and complex information architecture, you certainly need to include a search feature. Without it, users are likely to get frustrated having to wade through links and multiple levels of navigation to get to the specific information they want.

E-commerce sites are another area where search is important, though it’s vital that search results on e-commerce sites are filterable and sortable depending on the size of the site’s inventory.

Fly-Out Menu and Drop-Down Menu Navigation


Fly-out menus (used with vertical bar/sidebar navigation) and drop-down menus (typically used on top horizontal bar navigation) are great for robust navigation systems. They keep the overall look of your site uncluttered, but also make deeper sections easily accessible.

Fly-Out Menu and Drop-Down Menu Navigation

They’re generally used in conjunction with horizontal, vertical navigation, or tabs as part of the site’s primary navigation system.

Common Characteristics Fly-Out Menu and Drop-Down Menu Navigation


  • Used for multi-level information architecture
  • Uses JavaScript and/or CSS for hiding and showing the menus
  • Links displayed in the menus are child items of the primary item
  • Menus are most often activated by mouse hover, but sometimes also mouse click



Drawbacks of Fly-Out Menu and Drop-Down Menu Navigation


Unless you put some indication (often an arrow icon) next to your main navigation links, visitors might not realize there’s a drop-down or fly-out menu with sub-navigation items. It’s important to make this obvious. Also, drop-downs and fly-outs can make navigation on mobile devices very difficult, so be sure your mobile stylesheets takes into account this situation.

When to Use Fly-Out Menu and Drop-Down Menu Navigation


If you want to visually hide a large or complex navigation hierarchy, drop-downs and fly-outs are a great option as they let the user decide what they want to see, and when they want to see them. They can be used to display a large number of links on demand without cluttering up the web page. They’re also excellent for displaying child pages and local navigation without requiring visitors to click through to a new page first.

Faceted/Guided Navigation


Faceted/guided navigation (also called faceted search or guided search) is most commonly seen on e-commerce sites. Basically, guided navigation presents you with additional filters of content attributes. Say you’re browsing for a new LCD monitor, the guided navigation options might list things like size, price, brand, and so on. Based on these content attributes, you are able to navigate to items that match your criteria.



Guided navigation is invaluable on large e-commerce sites with a huge and varied inventory. Straight search options often make it difficult for a user to find what they want, and increase the likelihood that they might miss a product. For example, they might search for a product in "taupe" when you’ve got it marked as "tan" or "beige", even though it’s exactly what they were looking for.

Common Characteristics of Faceted/Guided Navigation


  • Mostly seen on e-commerce sites
  • Usually let users filter multiple times for different characteristics
  • Almost always uses text links, broken down by category or in drop-down menus
  • Often paired with breadcrumb navigation

Drawbacks of Faceted/Guided Navigation


Guided navigation can be confusing for some users. In addition, there’s no guarantee that the user will be looking for one of your pre-defined categories.

When to Use Faceted/Guided Navigation


Faceted navigation is very useful on large e-commerce sites. It makes it easier for users to tailor their shopping experience, and to find exactly what they’re looking for. It can also be useful on other directory-style sites.

Footer Navigation


Footer navigation is mostly used as secondary navigation, and may contain links that don’t fit within the main navigation, or include a simplified site map of links.



Visitors who can’t find what they’re looking for in the primary navigation menu often look at footer navigation afterwards.

Common Characteristics of Footer Navigation


  • Footer navigation is often used as a catch-all for navigation items that don’t fit elsewhere
  • Usually uses text links, occasionally with icons
  • Often used for links to pages that aren’t mission-critical

Drawbacks of Footer Navigation


If your pages are long, no one’s going to want to scroll to the bottom to get to your footer just to navigate your site. With longer pages, footer navigation is best left to repeating links and serving as a condensed site map. It should not be relied upon as a primary form of navigation.

When to Use Footer Navigation


Most sites have some kind of footer navigation, even if it’s just repeating navigation that’s elsewhere. Consider what would be useful to have there, and what your visitors will most likely be looking for.

Conclusion


Most websites use more than one navigation design pattern. For example, a website might have a horizontal top bar as a primary navigation system, with a vertical bar/sidebar navigation system to support it, along with footer navigation for redundancy, convenience, and auxiliary pages.

When selecting which navigation design patterns to base your navigation system on, you must choose ones that support the information structure and nature of your website. Navigation is an important part of a website’s design, and having a solid foundational design is imperative to its effectiveness.

Related Content



About the Author


Cameron Chapman is a professional web and graphic designer with over 6 years of experience in the industry. She’s also written for numerous blogs such as Smashing Magazine and Mashable. You can find her personal web presence at Cameron Chapman On Writing. If you’d like to connect with her, check her out on Twitter.
"
read more

The Benefits of Wireframing a Design

The Benefits of Wireframing a Design: "
The Benefits of Wireframing a Design

Wireframing is an extremely important phase of the web development process. While it’s tempting to skip this step and proceed from the design brief and information architecture directly into design, it pays huge dividends to create wireframes somewhere in between of conceptual site planning and actual development of a site. Wireframing will allow you to do several things far more efficiently, and the time and effort you put into this phase pays dividends in the greater scheme of things.

In this article, I will go over five key benefits of website wireframing. What I’ll discuss are direct observations based on what we’ve experienced at the agency I work at.



What Is a Wireframe?


Before exploring these wireframing advantages in more detail, let’s pause for a minute to talk about what a wireframe is. A wireframe is a low-fidelity visual representation of a website’s layout design, sometimes referred to as a skeleton, outline or blueprint. Often, a wireframe represents the basic page layout structure and navigational scheme of the site’s pages, as well as major site components (like web forms and ad units).

Wireframe example 1

A wireframe does not contain finished design elements as such, but does display where design elements will appear on the page. Wireframes are normally produced in grayscale using off-the-shelf wireframing software such as Mockingbird or, in its simplest form, paper and pencil.

Wireframes allow project team members and clients to do such things as:

  • Test and refine navigation
  • See how content lays out on the page
  • Study and rapidly refine the user interface design of web forms and interactive elements
  • Evaluate overall effectiveness of the page layout against usability best practices
  • Determine web development/programming requirements

Here is an example of a wireframe for a home page:

Wireframe example 2

Here is an example of a wireframe for an interior page:

Wireframe example 3

To learn more about wireframes, as well as to discover tools, software and resources about wireframes, read the Ultimate Guide to Website Wireframing.

Let’s now go over the key benefits of wireframing web designs.

Wireframes Make Design Changes More Efficient


It takes a lot more time, effort and expertise to create a web page design than a wireframe. When the first thing clients see is a finished design, they are seeing something that has taken considerable time to produce and will involve (potentially) considerable expense to revise.

The bad news, especially from a cost standpoint, is that design changes are just about inevitable. I’ve worked on web development projects on the agency and client side for more than 15 years, and I’ve yet to see one that didn’t involve multiple (and often extensive) design changes.

However, when we review wireframes, both internally and with clients, design changes can be reworked in a matter of minutes. Don’t like the size of the header? Make it smaller. Too small now? Let’s see it a hair bigger. Is the conversion zone overshadowed by the logo? Let’s take a look at it this way.

Changes like the ones above, when made to full-blown, high-fidelity designs, can run up thousands of dollars of expense (to say nothing of extending the timeline to complete the project). Knowing the impact in time and cost to making design changes, clients and web development team members become almost reluctant to voice concerns for fear of the time and cost involved in addressing design issues.

The point to remember: Wireframing makes it quick and inexpensive to tweak or even overhaul a design at exactly the time when you want to be doing major changes and fine-tuning.

Wireframes Make Site Navigation Designs Better


One of the most important factors in web design is content findability, and an intuitive site navigation design is important in this regard. If users cannot easily get to where they want to go on a site, they’re gone.

As users become increasingly more web-savvy, the negative impact of shoddy navigation increases. Unfortunately, clients, designers and even developers have a difficult time evaluating navigation until they actually have an opportunity to use it.

Wireframes allow people to give the new site a test run: to see how easy or difficult it is to locate key pages; to determine whether dropdown menus clarify or confuse the user; to find out whether breadcrumbs are useful or distracting; to understand whether the overall navigational scheme is intuitive, incomprehensible or somewhere in between.

When site navigational issues come to light after designs are completed, it’s a bit like realizing your ceilings are too low after the house has been built. Changes to navigation can run the gamut, but many of them are almost prohibitively expensive to correct. I think this is one reason why we see so many websites — even large and sophisticated ones that display wonderfully creative content and dazzling design — still manage to deliver an overall inferior user experience.

Wireframes Make Content Development More Design Friendly


As a content person, I love how wireframes help us get everything we can out of web copy from a design standpoint.

How Wireframes Can Improve Content


Content — whether inserted for SEO purposes or for human readers (great content addresses the needs of both) — can look clunky or elegant.

An example of clunky content is something you see every day: large blocks of undifferentiated text. Nobody is going to read it. Elegant content — content that informs and persuades — makes use of design elements such as readable fonts, properly sized fonts, numbered lists, bullets and well-positioned subheads. In a wireframe, it’s easy to play around with these elements and arrive at a formatting scheme that will maximize readability and persuasiveness.

How Wireframes Can Improve User Interface Copy


For the user’s interface, little pieces of copy can be far more important than big ones. Example: should the call to action button say Learn More, More Information or Click Here? How the client and design team answer that question will have an enormous impact on conversions.

And yet, when content and user interface copy issues are addressed while reviewing a finished design, there’s a tendency to live with a problem and to compromise the effectiveness of the copy in an effort to contain cost and keep the project on schedule.

When content issues are dealt with at the wireframing stage, making changes is a piece of cake. Result: a website that blends the best of copy and design and maximizes user experience on every page.

Wireframes Help Clients Help Their Cause


Wireframes are a visual way to evaluate a new website and, as we all know, a picture is worth a thousand words. When clients green light the design phase of a project based on a sitemap and a few static design layouts, they are, to a certain extent, driving blind.

In my experience, this causes many a web development project to fall short of client expectations. As an agency, we have an obligation to give clients a clear understanding of what is going to be developed, and wireframes, for all the reasons enumerated above, allow us to do exactly that. We want our clients to see what the site will look like (at least roughly), to feel the navigation and to read the content in context.

When clients are confronted with a wireframe, their reaction ranges from shock to total satisfaction (usually somewhere in between). And from our point of view, there is no wrong response. It is far easier and less costly — and puts far less strain on the relationship — to address issues in this early phase of the project than later on, or worse, to launch a site knowing it has serious deficiencies.

Almost inevitably, wireframes generate a useful punch list of changes that are routine to make early on. In some cases, a wireframe leads a client to rethink their approach on a more strategic level. Comments we typically hear include:

  • I didn’t realize our product line was this confusing
  • We have too many options in our navigation: our key pages are getting lost in the shuffle
  • Our call to action is weak
  • Our Contact form takes too long to fill out
  • We’re talking too much about ourselves and not enough about our customer
  • Our most important product photos are below the fold: nobody’s going to see them

When we have conversations around topics like those above at the wireframing stages, they lead to happy resolutions. When these conversations occur after design and development are completed, they frequently do not.

Wireframes Help Web Developers


I’m about as far away from being a programmer as you can get, but my sense is that when you give programmers marching orders without the benefit of a wireframe, you’re asking them to do the job with one hand tied behind their back. If all the web developer has to go on is a sitemap, design templates and a bunch of verbal instructions from the client and project manager, there are going to be a lot of questions and assumptions as the build process moves forward.

Wireframes give web developers a clear path of what has to be done. It clarifies the direction and objectives of the site build and allows for better decision-making as to which web technologies, techniques and processes should be used in order to achieve an excellent result.

Summary


A web development project is a lot like building a house. Both are complicated projects. Both involve teams of specialists working in concert to give concrete form to a client’s vision. If you are going to build a house, you naturally want the best builder you can find. But you also want to equip the builder with the right tools. And you want to make sure the builder has the right process in place to get the job done on time and within budget.

Wireframing is not a cure-all, but is something we’ve found to be a very valuable tool — one we would never dream of giving up.

Related Content



About the Author


Brad Shorr is Director of Content Marketing for Straight North, a Chicago-based interactive marketing agency that specializes in marketing strategy, Web development and Internet marketing services that include search engine optimization, PPC management, social media and e-mail marketing. Follow Brad Shorr on Twitter: @bradshorr and Straight North on Facebook.
"
read more

10 Tips for Optimizing Your Website’s Speed

10 Tips for Optimizing Your Website’s Speed: "
10 Tips for Optimizing Your Website's Speed

Web page speed and performance is very important to the user experience. If your site is too slow, you’ll not only be losing visitors, but also potential customers. Search engines like Google factor a website’s speed into account in search rankings, so when optimizing your site’s speed, you should take everything into consideration. Every millisecond counts.

Here are just a few basic and general suggestions for improving a site’s performance.



1. Defer Loading Content When Possible


Ajax allows us to build web pages that can be asynchronously updated at any time. This means that instead of reloading an entire page when a user performs an action, we can simply update parts of that page.

We can use an image gallery as an example. Image files are big and heavy; they can slow down page-loading speeds of web pages. Instead of loading all of the images when a user first visits the web page, we can just display thumbnails of the images and then when the user clicks on them, we can asynchronously request the full-size images from the server and update the page. This way, if a user only wants to see a few pictures, they don’t have to suffer waiting for all of the pictures to download. This development pattern is called lazy loading.

Ajax/web development libraries like jQuery, Prototype, and MooTools can make deferred content-loading easier to implement.

2. Use External JS and CSS Files


When the user first loads your web page, the browser will cache external resources like CSS and JavaScript files. Thus, instead of inline JavaScript and CSS files, it’s best to place them in external files.

Using inline CSS also increases the rendering time of a web page; having everything defined in your main CSS file lets the browser do less work when rendering the page, since it already knows all the style rules that it needs to apply.

As a bonus, using external JavaScript and CSS files makes site maintenance easier because you only need to maintain global files instead of code scattered in multiple web pages.

3. Use Caching Systems


If you find that your site is connecting to your database in order to create the same content, it’s time to start using a caching system. By having a caching system in place, your site will only have to create the content once instead of creating the content every time the page is visited by your users. Don’t worry, caching systems periodically refresh their caches depending on how you set it up — so even constantly-changing web pages (like a blog post with comments) can be cached.

Popular content management systems like WordPress and Drupal will have static caching features that convert dynamically generated pages to static HTML files to reduce unnecessary server processing. For WordPress, check out WP Super Cache (one of the six critical WordPress plugins that Six Revisions has installed). Drupal has a page-caching feature in the core.

There are also database caching and server-side scripts caching systems that you can install on your web server (if you have the ability to do so). For example, PHP has extensions called PHP accelerators that optimize performance through caching and various other methods; one example of a PHP accelerator is APC. Database caching improves performance and scalability of your web applications by reducing the work associated with database read/write/access processes; memcached, for example, caches frequently used database queries.

4. Avoid Resizing Images in HTML


If an image is originally 1280x900px in dimension, but you need to have it be 400x280px, you should resize and resave the image using an image editor like Photoshop instead of using HTML’s width and height attributes (i.e. <img width="400" height="280" src="myimage.jpg" />). This is because, naturally, a large image will always be bigger in file size than a smaller image.

Instead of resizing an image using HTML, resize it using an image editor like Photoshop and then save it as a new file.

5. Stop Using Images to Display Text


Not only does text in an image become inaccessible to screen-readers and completely useless for SEO, but using images to display text also increases the load times of your web pages because more images mean a heavier web page.

If you need to use a lot of custom fonts in your website, learn about CSS @font-face to display text with custom fonts more efficiently. It goes without saying that you have to determine whether serving font files would be more optimal than serving images.

6. Optimize Image Sizes by Using the Correct File Format


By picking the right image format, you can optimize file sizes without losing image quality. For example, unless you need the image transparency (alpha layers) that the PNG format has to offer, the JPG format often displays photographic images at smaller file sizes.

To learn more about how to decide between JPG, PNG, and GIF, read the following guides:


Additionally, there are many tools you can use to further reduce the file weights of your images. Check out this list of tools for optimizing your images.

7. Optimize the Way You Write Code


Look around your source code. Do you really need all the tags you’re using or can you use CSS to help out on the display? For example, instead of using <h1><em>Your heading</em></h1>, you can easily use CSS to make your headings italics using the font-style property. Writing code efficiently not only reduces file sizes of your HTML and CSS documents, but also makes it easier to maintain.

8. Load JavaScript at the End of Your Document


It’s best if you have your scripts loading at the end of the page rather than at the beginning. It allows for the browser to render everything before getting started with the JavaScript. This makes your web pages feel more responsive because the way JavaScript works is that it blocks anything below it from rendering until it has finished downloading. If possible, reference JavaScript right before the closing <body> tag of your HTML documents. To learn more, read about deferring the loading of JavaScript.

9. Use a Content Delivery Network (CDN)


Your site’s speed is greatly affected by where the user’s location is, relative to your web server. The farther away they are, the more distance the data being transmitted has to travel. Having your content cached across multiple, strategically placed geographical locations helps take care of this problem. A CDN will often make your operating cost a little higher, but you definitely gain a speed bonus. Check out MaxCDN or Amazon Simple Storage Service (Amazon S3).

10. Optimize Web Caching


Along with using caching systems, you should create websites that utilize web caching as much as possible. Web caching is when files are cached by the web browser for later use. Things that browsers can cache include CSS files, JavaScript files, and images.

Aside from the basics, such as putting CSS and JavaScript code that are used in multiple pages in external files, there are many ways to make sure that you are caching your files in the most efficient way possible.

For example, you can set HTTP response headers such as Expires and Last-Modified to reduce the need of re-downloading certain files when the user comes back to your site. To learn more, read about caching in HTTP and leveraging browser caching.

To set up HTTP Expires headers in Apache, read this tutorial on adding future expires headers.

Related Content



Raphael Caixeta is a PHP and iOS developer and co-founder of Grip’d. He likes to blog about web and iOS development at raphaelcaixeta.com. If you’d like to connect with him, you can follow him on Twitter @raphaelcaixeta and add him on Facebook (raphaelcaixeta).
"
read more

33 Developers you MUST Subscribe to as a JavaScript Junkie

33 Developers you MUST Subscribe to as a JavaScript Junkie: "
As JavaScript developers, we have quite crazy requirements. The playing field is in a state of constant flux and one of the best ways to keep up is interacting with other developers and reading their code. Blogs, such as the one you’re reading, are a perfect amalgamation of these two activities.

Today, I’d like to bring your attention to a number of blogs written by pretty well versed developers, focusing on JavaScript development, that you owe yourselves to bookmark.





A Quick Word on my Choices


Even though these blogs aren’t updated often, in fact a lot of them get updated maybe thrice a year, the content they do have are worth their weight in, well, smartly written JavaScript. The developers below vary from wildly popular to almost obscure but they have one thing in common — their passion for JavaScript.

I’ve limited myself to a cliff notes version of each dev to keep it short. Don’t loiter around — click on those links and get reading!




John Resig


Developer Image




Douglas Crockford


Developer Image




Dean Edwards


Developer Image




Nicholas C. Zakas


Developer Image




Dustin Diaz


Developer Image




Brendan Eich


Developer Image

  • Find his musings on JavaScript at his blog.
  • Inventor of the JavaScript language.
  • Works at Mozilla.
  • Remember to check out his podcast, as well.
  • Tweets at @BrendanEich



David Flanagan


Developer Image




Thomas Fuchs


Developer Image




Paul Irish


Developer Image




Yehuda Katz


Developer Image




Juriy Zaytsev


Developer Image




Peter van der Zee


Developer Image

  • Find his musings on JavaScript at his blog.
  • Creator of the JS1K competition
  • Tweets at @kuvos



Stoyan Stefanov


Developer Image




Dmitry Baranovskiy


Developer Image




Lucas Smith


Developer Image

  • Find his musings on JavaScript at his blog.
  • YUI team member
  • Tweets at @ls_n



Ben Alman


Developer Image

  • Find his musings on JavaScript at his blog.
  • Contributor to the jQuery and Modernizr projects.
  • Creator of so many jQuery plugins that we’re ethically obligated to use the word buttload.
  • Tweets at @cowboy



Rey Bango


Developer Image

  • Find his musings on JavaScript at his blog.
  • jQuery team member.
  • Works at Microsoft.
  • Tweets at @reybango



Remy Sharp


Developer Image




Cody Lindley


Developer Image




James Padolsey


Developer Image




Oliver Steele


Developer Image




Ben Cherry


Developer Image

  • Find his musings on JavaScript at his blog.
  • Works at Twitter.
  • Github repos here.
  • Tweets at @bcherry



Michael Bolin


Developer Image




James Coglan


Developer Image




Angus Croll


Developer Image

  • Find his musings on JavaScript at his blog.
  • Works at Twitter.
  • Tweets at @angusTweets



John-David Dalton


Developer Image

  • Find his musings on JavaScript at his blog.
  • Author of the FuseJS library.
  • Github repos here.
  • Tweets at @jdalton



Andrea Giammarchi


Developer Image




Peter Michaux


Developer Image

  • Find his musings on JavaScript at his blog.
  • Dude is a darn enigma, wrapped in a riddle, shrouded in mystery. The articles are pretty much one of the best you’ll get to read so don’t miss out.



Christian Heilmann


Developer Image




Dion Almaer


Developer Image




Rebecca Murphey


Developer Image




David Walsh


Developer Image




Addy Osmani


Developer Image

  • Find his musings on JavaScript at his blog.
  • Member of the jQuery team [bug triage and API docs].
  • Tweets at @addyosmani



That’s a Wrap!


I’m sure a lot of you are frothing at the mouth by this list not including someone. Fret not! Chime in below and I’ll make sure to keep this list periodically updated.
"
read more