Website Design

0

This is a primary topic

0

Can Alexa Really Rank Traffic

For the people who do not know Alexa.com it may sound like some dirty site with seedy undertones, but this site is safe to visit at work. The foundation of Alexa is a toolbar that users install on their web browsers and results provided by Google.

The Alexa tool bar has been looked down upon for some time due to its data mining capabilities. All of the data that makes Alexa what it is, is collected through this toolbar. Since 1996, web surfers have been showing Alexa what sites they visit, how often and other non-identifiable (Really?) data that others may find of interest. This data is then compiled into Related Links and Traffic Rankings to be in turn offered to people who visit the Alexa site, use the toolbar or are willing to pay for it.

Alexa has often been classified as spyware as it records what websites its' users view. This is untrue as it states far down in the depths of its policies what its' intentions are. The tool bar is though, the closest software can get to being spyware, without being spyware in the full sense of the term.

How accurate are the Alexa Traffic Rankings?

Many people ask "How accurate are the Alexa Traffic Rankings?" and the truth is that it can vary with the size of the site. The more visitors a site gets, the more likely their Traffic Rank is a true indication of where they are compared to other sites.

The Traffic Ranking provided by Alexa is 100% determined by how many times your sites is visited by people who have the tool bar installed. The problem with this is that not all user have the tool bar installed and the main users of it are webmasters and others in the net related field. This small niche of people can provided skewed results that only reflect their industry.

Another problem that arises from the way Alexa rankings are collected is the possibility of the results being manipulated by other webmasters. It has been shown that over a period of a few weeks, you can change your sites ranking just by having the toolbar installed and visiting your site regularly.

It could be possible that Alexa could reduce the accuracy of their results, without external influences. When a new site features on the Alexa site as a "Top Mover and Shaker", many people would investigate what the site is about, causing its ranking to rise.

Overall, I would say that the rankings are fairly accurate for the top 1000 sites.

What can the Alexa Traffic Rankings be used for?

As the Traffic Rankings are more accurate with higher traffic sites, the traffic rankings can be used to compare similar sites, or what sites are the most visited. For example Alexa can tell you that the top five sites are:

  1. Yahoo!
  2. MSN
  3. Google
  4. Ebay
  5. Microsoft

Similar top site lists can show you what sites receive the most traffic in their category.

0

Detecting internal redirects in url rewrite

Question

My current .htaccess file does a conditional internal redirect using quite a few RewriteRules to the contents of a sub-directory.

I am now wanting to ban all access to this sub-directory, unless they have been redirected by an internal redirect (RewriteRule).

What could I use to create this conditional statement?

Answer

Use the server variable {THE_REQUEST}, which examines the original request header sent by the browser, and is unaffected by internal rewrites (redirects are, by definition, external).

A typical request from the browser looks like this:

GET /subdir/file.ext HTTP/1.1

So, you can detect and redirect or forbid any direct access to the rewritten URL by using:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /subdir/file\.ext\ HTTP/
RewriteRule ^subdir/file\.ext$ http://www.example.com/original_fileURL [R=301,L]

-or-

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /subdir/file\.ext\ HTTP/
RewriteRule ^subdir/file\.ext$ - [F]

The redirect method is better in that it is 'friendlier' to the user, and can also be used to update any search results that now include the subdirectory URL. These rules work for all HTTP methods, such as GET, HEAD, PUT, PROPFIND, etc. as matched by the "[A=Z]{3,9}" pattern.

0

Table and CSS based layouts

In the past few years and well into 2006, there has been a push for web designers to move from the old style of using tables to layout a website and use CSS based layouts instead. Although CSS has many positive points, there are a few point that will be its down fall, until they are fixed.

CSS Flaws

Although the idea of CSS is good, implementations are buggy at the moment.

  • Internet Explorer does not work out the correct width for elements
  • Opera floats elements differently to every other browser
  • Many browsers lack all CSS features; Internet Explorer does not support dotted borders
  • Collapsing margins can be confusing

As the current implementations of CSS can have many bugs, creating a complex and good looking site in many browsers requires more time than conventional layouts and the use of "tricks of the trade". Table based layouts have been around longer and any bugs have long since been fixed.

CSS claims

Many sites are proclaiming that CSS layouts:

  • make your pages load faster
  • lower your hosting costs
  • make your redesigns more efficient and less expensive
  • help you maintain visual consistency throughout your sites
  • make your sites more accessible to all viewers and user agents

Although some of these claims are true, many are not.

Faster?

CSS is proven to make you pages load faster if your CSS is stored in a separate file. This is because the CSS file only needs to be transfered to your computer once, and not with every page view. Table based layouts are known to have more HTML code and take a bit more time to load.

Lower your hosting costs?

As CSS can be stored in a separate file and only needs to be downloaded once, it means that less data is transfered with each page meaning lower bandwidth costs. This would only be noticed on larger sites though.

Make your redesigns more efficient and less expensive?

No. At the moment CSS will make your redesigns more expensive and less efficient. As there are many flaws and bugs in CSS implementations, it will take more time to test and fix layouts that display differently in different browsers.

Help you maintain visual consistency throughout your sites

No, not without testing. As CSS implementations differ, your web page may look different on different web browsers without a lot of work.

Make your sites more accessible to all viewers and user agents

No, not without testing. The most common way to get around buggy CSS implementations is to create hacks based on exploiting other minor bugs. The result is often invalid CSS, although it many display fine. If CSS usage is not valid, there is more chance that a new browser will have problems. When the new Internet Explorer 7 comes out, it is expected that many hacks will not work and some sites will need to be redesigned.

Summary

In a perfect world, all browsers would render a CSS website the same way. This is not the case at the moment as there are so many differing CSS implementations that a website will not be the same in all browsers without a lot of work. Table based layouts will still exist for a many years after all the bugs are ironed out of all the differing CSS implementations.

0

Website success in 9 steps

Some websites seem to have instant fame, but most tend to lack growth and lack careful planning. There are 9 steps that all webmasters should undertake while developing a website:

  • Planning
  • Simple Layout
  • Quality Content
  • Update
  • Backup
  • One incoming link
  • User interaction and Community
  • Reinvestment
  • Dedication

Planning

Before you start to design a website, you need to think about why you are creating the website and what its goals are. Try to answer the following questions before going any further:

  • What is the aim of the site?
  • Who is the site aimed at?
  • What content will the website have?
  • Who is in charge of each job on the website?
  • How are you going to backup?
  • Do you have room to grow?
  • How can you make sure that your site is secure?
  • How can you tell if your site is a success or failure?

Simple Layout

Many designers will spend countless hours on a website design, only to find that somethings are not compatible in some browsers. When designing a layout:

  • A simple layout will :
    • take less maintenance
    • be easier to read
    • be quicker to create
  • It does not need to look too flash, but it does reflect your professional image
  • Content is more important that layout

Quality Content

Quality content is the biggest key to a successful website. It may sound simple to start with, but finishing off things that your have started and making sure that what you do is complete, can be the hardest thing. When creating content make sure that:

  • It can be read / skimmed with ease
  • There are no:
    • Spelling mistakes
    • Grammar mistakes
    • Errors
    • Broken images
    • Incorrect information
  • That it is original

Update

If you want visitors to return, you need to make sure that your site has new content and is kept up to date. An up to date site will also archive a better listing in Google. When updating your site, watch out for:

  • 404 links
  • Out of date or wrong information
  • Things that could be improved
  • Ideas for new pages / sites
  • Things that can be expanded on

Backup

There is no point putting a lot of work into a website if you are going to loose the entire site during the first major catastrophe. Mistakes happen, a backup every now and then will be worth its weight in gold. When backing up remember:

  • Back up often
  • Back up everything
  • Test all backups work
  • Backup now!

One incoming link

Do not believe the myths saying that "the more links the better", and "more links means a better position in Google". Links will come naturally to a good site with solid content. All you need at the start it one link to your site from a page that can be found from Google, and that is it. Google and all the other search engines will find your site through that link and tell the world about your site.

User interaction and Community

For a site to be truly successful, there needs to be a lot of user interaction. You are not going to be able to create a very large website single handedly, but you can with help from your websites users. Allow users to add to your site, even if it is only in the form of comments.

Reinvestment

Most websites make money, ether from advertising or e-commerce. One important method of making your website grow is reinvestment. No matter how small your profit margin is, you should be spending at least 5 percent of your profit on ways to help growth. This could be in the form of advertisement, creating more content, camera gear or even getting a better looking logo created.

Dedication

To have a successful website, you need to be dedicated. No website can function without time and effort and if you lack one or both of these, your website will be an instant failure. You need determination and to work on your site for well over a year. If your do not have the dedication, do not bother.

0

Fixed width layouts versus flexible layouts

I have recently been redesigning my website and found myself having to decide what if my website design should be a flexible (liquid) design or a fixed width design. Lets have a look at the positive and negative points of each design.

Possible Layouts

There is really more than just flow and fixed width designs.

  • Flexible (Liquid)
  • Fixed Width
    • Relative width
  • Hybrid mixture of fixed columns and flexible columns

Fixed Width

A fixed width design has a specific width that does change size when the browser is larger or small. They are often aligned center, to the left, or in some cases to the right.

The fixed width design allows more control on how the web page looks, and the designer can control the average number of words per line, the scannability of page items and make the page look the same in all browsers.

On the downside, a fix width layout does not cater for a wider range of user specified font sizes and can be hard to read on extremely small or large monitors.

Relative Width

With the help of dynamic measurements like EM, a fixed width design can be a bit more flexible. The EM units allow the width of a site to be set in proportion to the current font size. This means that the site can become larger as the user changes the default font size on their browser. 

Flexible Width

A flexible width design ( also referred to as a fluid, liquid or dynamic design ) fulls the entire browser window by using percentages rather than pixel values to specify the width.

A design with a flexible width tends to be a lot more accessible, allowing the user the increase or decrease the font size without significant disruption to the layout. 

The problems with a flexible width design is that there is less control on where things are placed and appearance will be different on each browser and at each font size. Also the lack of control means that you can not control the average number of words per line and the scannability of page items.

Hybrid

To complicate things still further you also get a hybrid approach that uses both fixed and liquid elements. Take for example a three-column layout where the left and right columns might have a fixed width while the central column scales to fill the intervening space. This central column would expand and contract as you resize the browser, or when viewed at different screen resolution.

Summary

From my point of view, the best design would be centered in the window and have the width based on the size of the font. This would mean that as the user increases font size, the layout becomes larger, and there is still the same number of words per line. It should also stop expanding when it fulls the window so that the user will never have to scroll sideways. As this is not possible in all browsers yet, this will have to be left for the future.

0

Ugly website designs can be effective

It has recently been discovered that an ugly website can be more effective than a professional looking site.

Simple or Unprofessional

There are a few reasons to why an ugly websites could have more success than a professional site

  • Simple and easy to use
  • Unprofessional look
  • Priorities

There is a striking difference between the reasons with one focusing on usability and another focusing on character and perception.

Usability

When it comes down to it, ugly sites often lack style, stunning graphics and have an inherently basic layout. All these can be in the sites favor if done correctly. The advantages that simplicity and a lack of style has are:

Compatibility
A simple design tends to not use the most recent innovations and breakthroughs. This means that older browsers can still access the website.
Accessibility
A more complex site will use images and layout techniques that disrupt a blind user's screen reader and prevent a disabled user from enlarging the font.
Compute-ability
Can computers and search engines understand and search the website. The less flash, images and forms a website has, the easier it is to search.
Speed
A website with less graphics is faster to load and does not leave the user waiting. There will always be more people on the web with slow connections than fast connections, so think speed when designing.
Navigation
A user will be able to understand how to navigate a simple website in less time. With some complex websites, a user might not find what they are looking for and leave the website.
Distracting Graphics
Moving items attract attention and unless it is the feature, it should not move. I have stopped visiting some websites just because I can not focus on their content when their page elements are moving.

Character and perception

Are all corporations out to make money? Well that is the way many of us feel these days. It seems that we have become wary of professional and corporate looking website as they often charge fees. 

Websites that do not look professional (and are uglier because of this) tend to look more home made and less 'out to make a buck'. They can say to the user:

You can trust us. We are a family run business and do not employ a marketing team. Our website is simple, but functional. Most importantly, our goal is to serve our customers, not necessarily learn HTML.

or with skill can say:

We are the cheapest around. What we don't spend on website design saves you money.

Prioritising

In the end, users are visiting your site for its content not for its look. You should spend more time on the function and content of your site and less on the form and design. The uglier and simpler your site is, the more time you save for attracting users with what they are looking for.

The first things that you should focus on are:

  • Content
  • Features
  • Functions

Once you have a lot of content and features, work on:

  • Usability
  • Logo Branding

Only when your site is successful and people start making criticism of your site in their blogs should you focus on:

  • Simple but good-looking design
  • Functions thet are aimed at the minority of your users
0

Adsense tips and tricks

Many webmasters have made very successful websites by using Google's Adsense and for some, it is now their sole job. When you are running a large site, a small change in the way that the Adsense code is placed on your site can make a substantial difference in your income.

The best way to find out where to place your Adsense banner, what colour and what type of banner to use is to try different combinations. Though it does not harm if you start out with the methods that another webmaster find good.

Never click your own Adsense Banner

If you can see the Adsense banner, it will work. Do not test if it, as Google is quite against this.

Never explicitly encourage Adsense Banner clicking

Do not ask friends or family to click your ads. Google not only dislikes it, but it can sometimes confuse the intelligence used to select advertisements.

Ad placement

The best location for the ads are within the content, but still visible without scrolling down the page.

Color

Adsense banners perform better when the border and background are the same colour as your page.

Blend with navigation

As an alternative placement, Adsense ads do well if they are blended in and look like your normal site navigation.

Size

The large 336x280 rectangle banner or 160x600 wide skyscraper seems to perform best.

Drawing the eye

Placing images next to ads or above ads helps in attracting user attention.

Ad overload

It is often said that more is less, and the same goes for placing ads on websites. If a website has too many ads, the user just ignores them and they all perform poorly. If a website has a few well placed ads, they can get a better click through.

Search Box

If you are going to use the search box, place it on the top right corner of every page. This is where people expect it to be.

Focus on content

Don't forget why users are visiting your site. They are there for the content and only the content. Why spend a week improving your Adsense click through then you can spend a week improving your site content and number of clicks as a result.

Be different

If your site is similar to many other sites, users will be used to ignoring your Adsense banner.

Moderate to low priced keywords

Do not create a site that targets the highest paying keywords as they often have the worst click through rates. Find a niche topic and don't care if your ads are getting $0.03 or $0.50. It all comes down to getting more traffic and a better click through rate, not more per click.

Whitespace

Make sure that your site is not cluttered and there is sections of your site with clear space. This can be achieved just by having a wide margin between page items. With skill, whitespace can be used to guide the users eyes to the Adsense banners.

One topic per page

If you have only one topic per page, it will help Adsense find the best ads to show

Simple design

Keep the design of your site simple. It will give the user less design elements or eye candy to look at.

No moving / blinking page elements

All moving and blinking pages elements attract the users eye and stop the user from seeing the Adsense ad. No matter how small it is, if it moves it will attract the users eye.

Monitor your website statistics

Watch your website statistics to see what pages are attracting the users and what is not. Create more pages similar to your high traffic pages.

Experiment

Try many different styles and methods of placing your ads. Never settle on just one style until you are sure it is the best.

What to do next

Create more content. Content is the biggest key to create a site that earns good money with Adsense.

0

How to pick the right website topic

Choosing the right website topic can make or break your website building success, so how can you make sure that you choose the correct topic?

There are two signs of a good topic:

Interest
Does the topic interest you and will you be able to stick with it?
Demand
Is this a common topic with few websites, or will you lack visitors due to competition?

As long as you have interest in the topic and there it demand for it, your website will be a success.

Defining Goals

Before you start choosing your website topic, you need to decide what your website is trying to achieve. Without specific goals, your website will not be as directed as it should be. Some possible goals are to:

  • Attract customers
  • Make sales
  • Make money through advertising
  • Make a statement
  • Obtain name or brand awareness
  • Learn how to make a website
  • Provide entertainment
  • Manage data

Once you have decided what you are trying to achieve with your website you can then start to focus on the topic of you website that will help achieve these goals.

What do you enjoy

The topic that you decided on for your websites needs to be something that you enjoy. If you do not enjoy the topic you have picked, you will find yourself reluctant to work on your website and will spend less time maintaining it. When you are really passionate about your websites topic, you are likely to spend more time on your website than you should and in return have a thriving website.

Website topics need to inspire creativity. Every time you sit down to work on your website, you need to flow with ideas and have sources for ideas when your ideas run dry. If the topic does not inspire creativity, you will find that your website will not be set apart from all the other sites.

Determining demand

Once you have a few topics in mind, but are unsure which one to go with, you can see how all of them perform by setting up a test website. On the test website, just start writing articles about your topics and use a web page counter to measure interest on each page. The more interest that a topic receives, the more likely that will be a good topic.

Room to grow

Your topic needs to cover enough areas so that you will not finish the site in less than one week. If your topic is too small you will be targeting a more specific demographic and your site will be less popular.

A good topic will be able to expand with you as your site grows. This should mean that there is always a new direction that you can take when other avenues are completed.

Importance of content

It is said that content is king and the most successful websites on the net are successful because the offer the best content. Make sure that your website topic allows your to create the best content that will appeal to your visitors.

What are your visitors looking for?

It the end, other than your enjoyment, your need to target a topic that your visitors will enjoy and find helpful. If you really get stuck on what to create your website on, keep a diary next to your computer and note down:

  • What you can not find
  • What sites do you find the most helpful
0

Unnecessary site registration

For me, there is nothing worse than hurrying to find something on Google, clicking a search result and then finding that the site you were looking for requires registration. You enter your details into the registration form and then have to wait for 5 to 10 minutes before you can access the site. It seems like a very time consuming method for a person to just read one web page.

Bogus data

One of the reasons for site registration is to get a better idea on the sites audience. The stupid thing is that many people like myself have and never will give the correct data to companies that we do not trust. When I do have to register for a site, I will just enter bad data. 

When the webmaster uses this data, his error rate must be so high that any deductions that are made from the data have a high likely hood of being wrong. 

Extra password

Another thing that a registration form gives me is yet another username and password combination. Someone would have to be very stupid to use the same username and password for every site that they use so I have many names and passwords. The problem with this is that when I forget what my username and password is and do not know which email account I used to create the account, it is quicker to create a new account that try and contact the webmaster. This means that on many sites, I am likely to have at least 2 or more accounts.

Humans only

One thing that registration forms are used for are to verify that a visitor is a human and not a program. This should not be the sole reason for using a registration form as humans can be verified through the use of a captch image verification instead. 

Less visitors

One side effect that sites may notice when using a registration form is that less visitors continue to use their site and they have a higher percentage of visitors that do not return. This is because most people see registration forms as a waste of time when they can get the same service from another site that does not have a registration form.

Bug Me Not

The registration form problem has been around for a while and it used to be solved by a site called Bug Me Not. This site described itself with the following:

You're browsing the web and you click a link to an article on a site (let's say nytimes.com) but instead of getting the article you get a screen asking you to login or register. Infuriated at the idea of pointlessly registering for yet another site you turn to your good buddy bugmenot.com

It also gave the following instructions on how to use the service:

STEP 1: Make a note of the website address your are trying to access. For example:
http://www.nytimes.com/cnet/CNET_2100-1024_3-5567274.html
Or even just:
www.nytimes.com
STEP 2: Visit http://bugmenot.com
STEP 3: Enter the address from step 1 into the box and press the "Get Logins" button
STEP 4: You should now be presented with at least one username and password. Make a note of them.
STEP 5: Go back to the site you were originally trying to access in step 1 and proceed to login with the username and password you noted in the previous step.
With any luck you should be able to access your article now!

Bug Me Not eventually succumbed to pressure. It now allows website to request that logins are not stored for their sites, and is no longer a solution.

0

Choosing a Content Management System (CMS)

It is very hard to choose the correct CMS. There are so many offered now days that to the uneducated, it can be a devastating mine field. After you have chosen a CMS to create your site with, it becomes harder to change latter and could involve a lot of time. This is why it is important to get it right first time.

Type of site

Before you choose which CMS you are going to user, you need to decide what type of site you are creating. Lets run through a few types of websites:

Blog
Blog is short for weblog. A weblog is a journal (or newsletter) that is frequently updated and intended for general public consumption. Blogs generally represent the personality of the author or the Web site.
News
Information the public expects to be factual and accurate. Non-fiction events reported to the public through print or electronic media.
Wiki
A wiki is a web application that allows users to add content, as on an Internet forum, but also allows anyone to edit the content. Wiki also refers to the collaborative software used to create such a website.
Business or commerce
A site to promote a business, service or to sell goods.
Information
A site that contains content that is intended to inform visitors, but not necessarily for commercial purposes; such as: RateMyProfessors.com, Free Internet Lexicon and Encyclopaedia. Most government, educational and non-profit institutions have an informational site.
Personal home page
Run by an individual or a small group (such as a family) that contains information or any content that the individual wishes to include.
Portal
A website that provides a starting point, a gateway, or portal, to other resources on the Internet or an Intranet.

Once you have decided the type of site that you are creating, you can start to look at some of the requirements and features.

Evaluate

Is is important that you try out as many CMS tools as you can so that you get a feel for what you need. Some CMS tools will allow you to do simple things fast, and other will allow you to do more at the sacrifice of speed and usability.

Download all the different CMS tools that you can and see if they can run on a machine similar to your web server.

If you are worried about how secure a CMS is, there is no better way to find out than to create a quick website on a free webhost using the CMS. Just name the CMS "Hack me" and post comments in forums requesting that the website is hacked. If it does get hacked, you know that the CMS was not secure enough for you.

Less is more

One trap that people often fall into when they are choosing a CMS is that they look for the CMS with the most features. The best CMS is in reality the CMS that satisfies your requirements with the least number of features possible. 

More features in a CMS will often bring:

  • Larger code base - The CMS takes longer to move, setup and backup.
  • More bugs - More features and a larger code base generally means that there is more chance of bugs being written into the system.
  • Complexity - The more functions that a CMS offers, the more crowded its administration screens will be.

Requirements

Web server
The most commonly used and recommended web server is Apache. It offers many more features than Microsoft's IIS and is free to download.
Database
The database is an application that is used by the CMS to speed up the website and to keep the information well organised. It is common for Apache webservers to have MySQL and IIS to have MSSQL server.
Operating system
Generally this is defined by the webserver and database, but some CMS tools will only work on Apache installed on Windows.
Programming language or framework
The programming language or platform define what runs your website. Examples are PHP, JSP and Java, ASP.net or Python to name a few.
If you are unsure of which programming language or platform to go with, I would recommend PHP. There are quite a few PHP CMS available compared to any other.
Approximate Cost
The approximate licensing cost of this CMS. Note that there are almost always hard and soft costs beyond licensing costs for any CMS
License
The type of license this CMS is distributed under
Root Access
Is root (or administrator) access required to install this application?
Shell Access
Is shell access required to install this application? In other words, do you need to be able to log in to the machine (other than through FTP) in order to install this application?

Features

Security

Audit Trail
Does the system keep track of who made additions, updates, or deletions?
Captcha
A challenge-response system designed to defeat bots from being able to use user-only features of a system. See http://en.wikipedia.org/wiki/Captcha for more information.
Content Approval
Does the system provide for some level of system-wide content approval?
Email Verification
Does the system send an activation key to users to make sure they've entered a valid email address?
Granular Privileges
Does the system allow read and write privileges on a per page or per content item basis, as well as separate privileges for other system functions?
Kerberos Authentication
Does the system support authentication via Kerberos?
LDAP Authentication
Does the system allow for LDAP-based authentication?
Login History
Does the system keep track of who logged in and when? Such systems also usually keep track of things like what browser the user was using and what IP address they came from, as well as unsuccessful attempts.
NIS Authentication
Does the system support authentication via NIS?
NTLM Authentication
Does the system support authentication via NTLM?
Pluggable Authentication
Does the system allow an administrator to plug in additional authentication schemes (from a vendor or home-grown) beyond the default proprietary authentication scheme and an LDAP authentication mechanism?
Problem Notification
Does the system provide a mechanism for alerting administrators (email, instant messenger, cell phone, etc) when it detects a problem? (Logging does not count.)
Sandbox
Does the system allow for a private area for content managers to try new content ideas without the worry of affecting the rest of the site?
Session Management
Does the system provide some facility for an administrator to see who is logged in, what they are doing, and log them out if necessary?
SMB Authentication
Does the system support authentication via SMB?
SSL Compatible
Can this system be used with an SSL certificate on the web server?
SSL Logins
Can this system be configured to switch to SSL mode (HTTPS) for logins, and then back to normal HTTP after the login? This kind of functionality protects user login information from being sniffed.
SSL Pages
Can this system be configured to switch to SSL mode for certain pages (or sections), and then back to straight HTTP for other pages (or sections)? You may want this if the system is used partially for regular site content and partially to distribute confidential data such as customer invoices or medical records.
Versioning
Does the system provide for some level of system-wide content versioning?

Support

Certification Program
Is there a professional certification or degree program for this CMS?
Code Skeletons
Does the system provide code skeletons or code templates to make it easy for new developers to write plugins for it?
Commercial Manuals
Are there books or other commercially available documentation for this CMS?
Commercial Support
Can support be purchased from a commercial organization with trained staff members?
Commercial Training
Can training be purchased from a commercial organization that has dedicated training staff for this CMS?
Developer Community
Is there a free online developer community specifically for this product?
Online Help
Is there an integrated context-sensitive help system built in to the CMS?
Pluggable API
Can the system be extended through an open and documented application programming interface (API)?
Professional Hosting
Is there a vendor supplied professionally tuned hosting environment (application service provider) or has a certified hosting partner program.
Professional Services
Are there commercially available professional services organizations to customize or provide administrative services for this CMS?
Public Forum
Is there a publicly available forum or message board for the system?
Public Mailing List
Is there a publicly available mailing list for the system?
Test Framework
Does the system have an automated test framework that can be used to test the codebase to ensure that it is functioning properly? This sort of framework is sometimes called Unit Tests or Smoke Tests.
Third-Party Developers
Are there third-party developers who manufacture plug-ins for this system?
Users Conference
Is there an annual users conference for this system where it's users can get together, discuss ideas, get training, etc?

Ease of Use

Drag-N-Drop Content
Does the product allow the user to position content in a drag and drop fashion?
Email To Discussion
Can messages be emailed to the system so that they automatically appear in community discussions (forums/message boards)?
Friendly URLs
Does the system have human-readable and search engine friendly URLs? (The alternative is that there are a bunch of symbols and numbers in the URL and the URLs are typically quite long.)
Image Resizing
Is the system capable of allowing users to resize uploaded images so they need not mess around with an external image editor?
Macro Language
Is there a macro language that allows content managers to place powerful functionality (like auto-generated navigation systems) without any programming knowledge?
Mass Upload
Does the system have a way of uploading/importing many images and other files all at once to save time?
Prototyping
Does the system allow the user to create custom default settings for the different kinds of content objects to save them extra clicks when creating those object types. For instance, if there is a particular template they like to use, can they set it as a default?
Server Page Language
Is there a server page language available like PHP, JSP, or ASP for easy one-off functionality?
Spell Checker
Does the system have an integrated spell checker?
Style Wizard
Does the system have a wizard for generating styles/themes/templates or whatever else a look and feel might be called in the system? These wizards would allow the user to step by step choose colors, layouts, logos, etc to create their own look and feel without knowing anything about HTML/CSS.
Subscriptions
Can the user subscribe to various sections of the site and receive notifications on new/updated content? These types of functions are typically found in the news feeds, forums, and blogs.
Template Language
Is there a templating language for powerful layout controls? (Note that templating languages are different from server page languages in that they are not capable of full programmatic functions, and are fully HTML compliant.)
UI Levels
Is there a means of "dumbing down" the publishing interface for less sophisticated publishers while keeping a more sophisticated interface for power users?
Undo
Does the system allow users to "undo" operations if they make a mistake?
WYSIWYG Editor
Is there a web-based rich text editor to allow publishers to create formatted content without knowing HTML, CSS, XML, or XSL?
Zip Archives
Does the system allow a user to upload a zip (or other compressed file) full of static content, which is then published to the site? This sort of feature is used to do web-based mass uploads of static content.

Management

Advertising Management
Does the CMS have a banner or other management system?
Asset Management
Is there a central repository for uploading images and other files so they can be reused through-out the site?
Clipboard
Is there a clipboard system that allows publishers to easily cut and paste content from one area of the site to another?
Content Scheduling
Does the system allow for content to be automatically added or removed from a site based upon date?
Content Staging
Can content be created on one server and easily "pushed" to another server?
Inline Administration
Is content edited directly in the page that it will be placed? (The alternative is that there is a wholly separate interface for managing content.)
Online Administration
Can the system be completely managed through a web browser? (The alternative is that there is some sort of offline client software that must be used to manage at least some components.)
Package Deployment
Can content and applications be packaged so that tedious repetitive publishing functions can be easily deployed time and time again without the repetition?
Sub-sites / Roots
Does the system allow for sub-sites within a site that are self-contained with their own navigation and content hierarchy?
Themes / Skins
Does the system have a mechanism to transport styles, templates, etc between sites so that you can create a theme on one site and then reuse it on many others?
Trash
Is there a trash system to allow administrators or publishers to recover content that has been removed from the site? Note that this is not the same as recovering items from a versioning archive.
Web Statistics
Does the system have built in web site statistics reporting for things such as pages/content items viewed, number of users per time period, etc?
Web-based Style/Template Management
Is there a web-based interface for adding styles and templates to the system for design and layout control?
Web-based Translation Management
Can language translations be managed through and easy web-based interface?
Workflow Engine
Is there a full-fledged workflow system integrated into the CMS that can be used for business process management (or other duties beyond just content approval)?

Interoperability

Content Syndication (RSS)
Can the system export RSS/XML feeds so that the content can be republished on other sites? Note that if it can only syndicate content from one function, such a "news" then it should be labelled as only limited support.
FTP Support
Does the system allow users to upload internal content and/or files via FTP?
UTF-8 Support
Does the system support UTF-8 character encoding to enable multi-lingual sites without the use of separate code pages for each language?
WAI Compliant
Does the system follow the W3C specification for WAI compliance?
WebDAV Support
Does the system allow users to upload internal content and/or files via WebDAV?
XHTML Compliant
Does the system follow the W3C specification for XHTML compliance?

Flexibility

CGI-mode Support
Can the system run in CGI mode for development purposes or on low-end systems?
Content Reuse
Does the system allow content to be mirrored (not copied, but reused) from one location to another on a site?
Extensible User Profiles
Does the system provide a user profiling that can be extended with new profile properties through an administrative interface?
Interface Localization
Is the system localized/internationalized so it can be translated into other languages and take locale preferences like date/time preferences into account?
Metadata
Does the system support the adding of arbitrary metadata properties to all the content objects? The metadata is typically then used for profiling, indexing, or even auxiliary display functions.
Multi-lingual Content
Does the system support the creation of sites with multiple languages?
Multi-lingual Content Integration
Does the system support a multi-lingual version of each content object without republishing the content object. For example, if you create an FAQ in English, then all that needs to be done to display the FAQ in Spanish or another language is to translate the content, not create another page with another FAQ content object. Then depending upon user preferences it either shows one version or the other.
Multi-Site Deployment
Is the system capable of hosting multiple sites from one software deployment? This means you can install the software once and host as many sites as you want. It also means that when it comes time to upgrade you only need to upgrade the software in one place, not for each separate site.
URL Rewriting
Is the system capable of rewriting URL or working with some other URL rewriting mechanism to provide shorter or friendlier URLs?
Wiki Aware
Does the system support wiki or wiki-like functionality? Wiki provides online collaboration functionality as well as a simple text formatting language.

Performance

Advanced Caching
Does the system have advanced caching mechanisms that go beyond simple page caching? For instance, navigation, template, or content object caching?
Database Replication
Can the system take advantage of database replication for better scalability? The system would need to be able to perform reads from slaves and writes to the database master.
Load Balancing
Does the system allow you to put a load balancer in front of it to split the load between multiple servers? This would require that user sessions can be passed between all the nodes transparently.
Page Caching
Does the system have a mechanism for caching the contents of a page so that if it's requested again it can skip most of the work to create the page?
Static Content Export
Does the system have the ability to export it's content as static HTML so it may be served up from regional cache servers, or from static HTML web servers?

Built-in Applications

Blog
Does the system have a blog or web log? (See slashdot.org for an example.)
Chat
Does the system have an application for real-time online chat?
Classifieds
Does the system have a classifieds application?
Contact Management
Does the system have a contact management or rolodex type of application?
Data Entry
Does the system have an application for creating arbitrary data entry applications?
Database Reports
Does the system have an application for creating database reports?
Discussion / Forum
Does the system have a message board?
Document Management
Does the system have an application for managing offline document storage and versioning?
Events Calendar
Does the system have an application for tracking events and displaying events calendars?
Events Management
Does the system have a way to create events and allow users to sign up for those events.
Expense Reports
Does the system have an application for tracking employee expense reports?
FAQ Management
Does the system have an application to organize frequently asked questions?
File Distribution
Does the system have an application for distributing files including privileges for who is allowed to view/download those files?
Graphs and Charts
Does the system have an application that will allow the user to generate graphs and charts based upon some data set (SQL, text file, xml file, etc)?
Groupware
Does the system have email and calendaring (group scheduling) applications?
Guest Book
Does the system have a guest book or graffiti application?
Help Desk / Bug Reporting
Does the system have an application for trouble ticketing or bug reporting?
HTTP Proxy
Does the system have a mechanism to proxy or mirror HTML and other content and applications from other web servers?
In/Out Board
An intranet application that allows staff to post their status. In the building. Out for the day, be back tomorrow. Etc.
Job Postings
Does the system have a mechanism for posting job listings?
Link Management
Does the system have an application to manage links?
Mail Form
Does the CMS have an application for creating customizable ?contact us? type forms?
Matrix
Does the system have a matrix application similar to what you see here on CMS Matrix?
My Page / Dashboard
Does the CMS have a dashboard application (sometimes called a portal)? (See my.yahoo.com for an example.)
Newsletter
Does the system have the ability to allow users to add/delete themselves to/from a list so that they can be sent email from the system on various topics?
Photo Gallery
Does the system have an application for displaying a thumbnail / image repository?
Polls
Does the system have an application for conducting simple single question polls?
Product Management
Does the system have an application for displaying organized product information?
Project Tracking
Does the system have an application for managing project tasks?
Search Engine
Does the system have an integrated search engine that can index the managed content and allow the user to search the indexed content?
Site Map
Can the system generate a tree showing all of the pages in the system dynamically so it doesn't have to be maintained separately by the content managers?
Stock Quotes
Does the system have an application for displaying stock ticker information?
Surveys
Does the CMS have an application for conducting complex multi-question surveys?
Syndicated Content (RSS)
Does the CMS have an application for retrieving and displaying RDF/RSS/XML syndicated content?
Tests / Quizzes
Does the system have an application for administering tests and quizzes?
Time Tracking
Does the system have an application for tracking employee time for payroll or billing purposes?
User Contributions
Does the CMS have a system for allowing a user community to contribute stories and other content to the site?
Weather
Does the system have a weather information system?
Web Services Front End
Does the system have an application for directly interfacing with arbitrary web services such as the Google API and the various available methods from X-Methods, and then creating a templated user interface without coding?

Commerce

Affiliate Tracking
Does the system have an affiliate tracking or referrals system for tracking partner sites that link in to the site?
Inventory Management
Does the system provide the site owner a way to manage inventory levels (quantities of product on hand)?
Pluggable Payments
Does the system allow the site owner to plug in new payment gateways so they may use whatever payment processing mechanism (PayPal, PayFlowPro, 2checkout, iTransact, Authorize.net, etc) they choose?
Pluggable Shipping
Does the system allow the site owner to plug in their own shipping calculator so that they can charge based upon their needs (weight, price, UPS, USPS, FedEx, etc)?
Pluggable Tax
Does the system allow the site owner to plug in new tax calculators?
Point of Sale
Does the system tie into (or have built in) a point of sale system to enable site owners to run a brick and mortar store from the same inventory?
Shopping Cart
Does the system have a mechanism for allowing the user to create a list of adhoc items to purchase, and then purchase all of them at once?
Subscriptions
Does the system have a way manage timed subscriptions that are tied into the commerce function? This requires recurring billing, billing cancellation, etc.
Wish Lists
Does the system allow users to create wish lists?

Custom solution

If you do not find that functionality that you want in a pre-made CMS, you could always create or have one created for you. Although the cost of developing such a system is high, it will be worth it as it means that your site is more unique.

A full CMS would take over a year to develop and will have constant security updates to keep the website secure.

Nukes

There is a group of CMS for portals that typically have "Nuke" in their name and are very common. Nukes work by putting content into blocks and putting the blocks on the page. They all seem to look essentially the same (Header and 3-column main body).

CMS list

If you would like a list of most available CMS, have a look at the Wikipedia site. They list many CMS, including many fee ones that run on a variety of platforms and programming languages.

Another website that is worth checking out is CMS Matrix. This site allows you to compare the functionality of CMS tools so that you can find one that suits your needs.

0

Target attribute on websites

The target attribute was originally designed for sites that use frames, but in recent years it has been abused.

There are 4 defined target presets which come in handy for many web designers of all levels. They are _blank, _self, _parent, and _top. You can also specify a descriptive name with the underscore( _ ).

  • _blank will open a new browser window with no name.
  • _self will replace the current html page, so if it is in a frame or frame set it will load within that frame. If it is the full browser, it will open to replace the page in the full browser.
  • _parent will replace the html page it came from.
  • _top will load in the current browser by replacing anything within the browser such as a frame set.

Retaining visitors

There is a misnomer in the web design industry that if all external links open in new windows, the user is more likely to come back to their site.

Anyone who has seen many people using the internet will know that this is false. Many users are not aware if the link they clicked opened a new window. They just carry on using the browser window that is in front of them.

Back button

When you open an external link in a new window, the back button will not take the user to the previous page. If they do try to return to your website, they do not understand why the back button does not work.

When a users back button does not work, they will often think that there is a problem with your site since other sites seem fine. You have lost another visitor.

Browsers supporting tabs

There is a new trend in web browsers to have all the browser windows in tab. When a web designer forces a link to open in a new window they break this idea.

User choice

Just because you always right click and select "Open in New Window" does not mean that your visitors will do the same. Firefox allows you to right mouse click to open in a new tab and other browsers let you use mouse gestures.

If your visitors want the link to open in a new window, let them do it as some people do not want the extra window.

0

Rewriting URLs with mod_rewrite (Apache URL rewrite tool)

``The great thing about mod_rewrite is it gives you all the configurability and flexibility of Sendmail. The downside to mod_rewrite is that it gives you all the configurability and flexibility of Sendmail.''
-- Brian Behlendorf
Apache Group
`` Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. ''
-- Brian Moore
[email protected]

The Apache module mod_rewrite is a killer one, i.e. it is a really sophisticated module which provides a powerful way to do URL manipulations. With it you can do nearly all types of URL manipulations you ever dreamed about. The price you have to pay is to accept complexity, because mod_rewrite's major drawback is that it is not easy to understand and use for the beginner. And even Apache experts sometimes discover new aspects where mod_rewrite can help.

In other words: With mod_rewrite you either shoot yourself in the foot the first time and never use it again or love it for the rest of your life because of its power.

Why use mod_rewrite

Hide original url and paths to scripts
Although obscurity is one of the lowest forms of security, you can use mod_rewrite to stop visitors seeing the full paths of your scripts. This includes the file extensions.
Tidy up URLs
Mod_rewrite allows you to take a hard to remember URL and tidy it up. The resulting URL can be something that the user can type out, rather that a really long mess.
Search Engine Optimisation
Search Engine will crawl your site with their bot scripts. Research shows that most Search Engines would prefer static pages rather than a Dynamic pages. 

For some examples on using mod_rewrite, see the Apache 1.3 URL Rewriting Guide

0

NVU HTML Editor

For a long time I have been searching for an HTML editor that I could use on both Microsoft Windows and Linux. The first editor that I came across was the Mozilla Composer. All though this program could do the job, I had to download the whole Mozilla Suite to use it.

When I came across NVU, I was expecting a small HTML editor with little functionality, but I was unexpectedly  surprised. NVU is the closest thing that I have found that runs on Linux and that can be compared to the likes of FrontPage and Dreamweaver

Nvu (pronounced N-view, for a "new view") makes managing a web site a snap.  Now anyone can create web pages and managea website with no technical expertise or knowledge of HTML.

  • WYSIWYG editing of pages, making web creation as easy as typing a letter with your word processor.
  • Integrated file management via FTP.  Simply login to your web site and navigate through your files, editing web pages on the fly, directly from your site.
  • Reliable HTML code creation that will work with all of today's most popular browsers.
  • Jump between WYSIWYG Editing Mode and HTML using tabs.
  • Tabbed editing to make working on multiple pages a snap.
  • Powerful support for forms, tables, and templates.
  • The easiest-to-use, most powerful Web Authoring System available for Desktop Linux users.
  • Makes CSS simple

Nvu is 100% open source.  This means anyone is welcome to download Nvu at no charge from nvu.com, including the source code if you need to make special changes.

Developers can get involved and help make Nvu even better.

Nvu was started from the Mozilla Composer code base.  The Mozilla Internet suite is in the process of being broken up into individual pieces (browser, email, etc.).  Nvu will pick up where Composer left off, adding additional features, functionality and ease of use.

0

CSS Usage


Overview

There are three ways of inserting style information:

  • In the header of a given HTML page (Internal Style)
  • Within a given tag (Inline Style)
  • In an separate file which is then linked to the HTML page by a reference in the page header (External Style)

[Top]


External Style Sheets

External style sheets are the best method when you want the style to be applied to many pages. With an external style sheet, you can change the look of an entire web site by changing one external style sheet file. Each HTML document that you want to apply these styles to must contain a link to the style sheet using the <link> tag inside the <head></head> section:

<head>
...
<link rel="stylesheet" type="text/css" href="mystyle.css" />
</head>

The browser will read the style definitions from the file mystyle.css, and format the HTML document accordingly.

An external style sheet can be written in any text editor and saved with a .css extension.

[Top]


Internal Style Sheet

An internal style sheet should be used when a single document has a unique style. You define internal styles in the <head></head> section by using the <style> tag, like this:

<head>
...
<style type="text/css">
body {background-image: url(images/back40.gif);}
hr {background: #ffffff;color: 0000ff;}
p {margin-left: 20px;}
</style>
</head>

The browser will now read the style definitions, and format the document according to it. If the document also contains a link to an external style sheet, the internal style declarations will over-ride any similar declarations within the external sheet.

This can be helful when you wish to re-adjust the style of a single page - for example, alter the padding on the body tag.

[Top]


Inline Style

An inline style loses many of the advantages of style sheets by mixing content with presentation.

Therefore, you should use this method sparingly, such as when a style is to be applied to a single occurrence of an element.

To use inline styles, you use the style attribute in the relevant tag. The style attribute can contain any CSS property. The example below shows how to change the font-style and the left margin of a paragraph:

<p style="font-style: italic; margin-left: 20px;">
This is a paragraph
</p>

Inline style will overide both internal and external style declarations.

[Top]


Multiple Style Sheets

If some properties have been set for the same selector in different style sheets, the final value will be inherited according to the rules of Cascading Style

For example, an external style sheet has these properties for the h3 selector:

h3 {text-align: left; font-style: italic; font-size: 200%;}

And an internal style sheet has these properties for the h3 selector:

h3 {text-align: right; font-size: 100%;}

And an inline style declaration reads:

<h3 style="font-size: 80%;">...</h3>

The final values will be:

  • text-align: right (from the internal style sheet over-riding the external sheet)
  • font-style: italic (from the external sheet)
  • font-size: 80% (from the inline style over-riding both the external and internal declarations for font-size)

[Top]

0

CSS Tutorial: Syntax


Selectors, properties & values

CSS syntax is made up of three parts:

  • selector (often the HTML element you wish to style)
  • property (the attribute you wish to change eg. background colour)
  • value (eg. the colour you want your background to be)

The way in which these are used is:

selector {property: value;}

You don't have to have each property/value pair on a separate line but it does increase readability - especially in long, complex style sheets.

For example, to set a black background, you would use:

body {background: #000000;}

where #000000 is the hexadecimal code for black.

If the value you want to use contains white space multiple words, put quotes around the value:

p {font-family: 'sans serif';}

You can specify more than one property in a given declaration. The example below shows how to define a center aligned paragraph of italicised text.

p {text-align:center; font-style: italic;}

You can group selectors by separate them with commas.

In the example below, all the header elements have been defined as white:

h1,h2,h3,h4,h5,h6 {color: #ffffff;}

However, whenever you do define a text colour, it is advisable to also define a background colour and vice versa. This can ensure that your text remain readable.

h1,h2,h3,h4,h5,h6 {color: #ffffff; background: #000000;}

Now your white header text will always be on a black background - even if the rest of your page has a white background.

[Top]


The class selector

With the class selector you can define different styles for the same type of HTML element.

For example, you want two types of paragraphs in your document: one italicised and one bold.

p.italic {font-style: italic;}
p.bold{font-weight: bold;}

Now, when you want to use either of the above styles in a web page, you can do the following

<p class="italic">This paragraph will be in italics.</p>
<p class="bold">This paragraph will be bold.</p>

However, you can only specify one class attribute per HTML element at any one time! The example below is the wrong way of trying to get bold, italicised, text:

<p class="italic" class="bold">This text is bold and italic.</p>

The correct method would be to define a third class selector.

p.bold-italic {font-style: italic; font-weight: bold;}

And then use:

<p class="bold-italic">This text is bold and italic.</p>

[Top]


Making selector classes available to multiple HTML elements

If you omit the tag name in a selector, you open it up to be used by any HTML element.

For example, the following class:

.center {text-align: center;}

can be used with any tag as appropriate.

<p class="center">...</p>
<span class="center">...</span>
<td class="center">...</td>
<div class="center">...</div>

can all be used in the same document.

Use class selectors where you think you will need to re-apply the same style more than once in a given document.

If you think that you will need to use the style with different HTML elements, don't include any tag names in the class selector declaration.

[Top]


The id selector

The id selector is different from the class selector.

While a class selector may be applied to many elements in a given document, an id selector can only be applied to only one element within a given document ie. it must be unique within the document.

The style rule below will match a p element that has the id value 'para1':

p#para1 {text-align: center; color: #ff0000; background: #000000;}

The style rule below will match the first element that has the id value 'green':

#green {color: 00ff00;background: #000000;}

So you could have:

<h1 id="green">...</h1>
<h2>...</h2>
<p id="para1">...</p>

in the same document.

But having:

<h1 id="green">...</h1>
<h2 id="green">...</h2>
<p id="para1">...</p>

would be illegal as you would have attempted to repeat the id selector '#green'.

Use id selectors for styles that you are sure you'll only need once in a given document.

[Top]


CSS Comments

You can insert comments in CSS to explain your code, which can help you when you edit the source code at a later date.

Comments are ignored by the browser and begin with "/*", and ends with "*/".

/* This is a comment */
p {text-align: center;}
/* This is another comment */
h1 {background: #ffffff; color: #000000;}

[Top]

0

XML is not (always) RSS

Recently RSS has become the "in thing" and an example of the Web 2.0 craze. Many webmasters are adding RSS feeds to their sites because of this. When an RSS feed is added to a site, the RSS icon is used so that it is globally recognised. Alternatively, the feed icon is used to link to RSS or Atom feeds.

This would be alright if only these 2 icons were used, but many webmasters thought "RSS is XML so lets use an XML logo". They preceded to place an XML logo on their websites. The are a few problems with this:

  • The user might recognise the XML logo and not the RSS icon or the feed icon. Why should the user be expected to recognise all three images?
  • User jumps to the conclusion that XML is RSS. They both are used to point to the same files so they must mean the same thing. Later on this causes problems when they decide that since an Office file is XML then it must be RSS.
  • Have you tried explaining what XML stands for?

If you do have a feed on your website, please use the RSS icon or the feed icon.

For those people who are still unsure of which is which, Wikipedia defines RSS with the following statement:

RSS is a simple XML-based system that allows users to subscribe to their favourite websites. Using RSS, webmasters can put their content into a standardized format, which can be viewed and organized through RSS-aware software.

A program known as a feed reader or aggregator can check a list of feeds on behalf of a user and display any updated articles that it finds. It is common to find web feeds on major websites and many smaller ones. Some websites let people choose between RSS or Atom formatted web feeds; others offer only RSS or only Atom.

and also says that:

RSS formats are specified in XML (a generic specification for data formats). RSS delivers its information as an XML file called an "RSS feed", "web feed", "RSS stream", or "RSS channel".

On a separate page, Wikipedia defines XML as the following:

The Extensible Mark-up Language (XML) is a W3C-recommended general-purpose mark-up language for creating special-purpose mark-up languages, capable of describing many different kinds of data. In other words, XML is a way of describing data. An XML file can contain the data too, as in a database. It is a simplified subset of Standard Generalized Mark-up Language (SGML). Its primary purpose is to facilitate the sharing of data across different systems, particularly systems connected via the Internet. Languages based on XML (for example, Geography Mark-up Language (GML), RDF/XML, RSS, Atom, MathML, XHTML, SVG, XUL, EAD, Klip and MusicXML) are defined in a formal way, allowing programs to modify and validate documents in these languages without prior knowledge of their particular form.

Another view is that XML is a wide standard to encode structured information.
0

Google Analytics failure

There was a huge rush to sign up for Google Analytics when it was first announced a few weeks ago. Online Web site traffic analysis services are not new - search the Web for them and you'll turn up dozens, both commercial and free. But Web-savvy people have come to expect great things from Google over the past couple of years.

Personally, I have found Google Analytics lacks the innovation that Google should have put into it.

Profiles

The first problem with Google Analytics is that each website must have its own profile if you want to view the results separately.

  • There is no way to compare 2 website profiles
  • Setting up website profiles, each with their own goals, is time consuming.
  • Setting things up this way means that you can not compare data from the 2 sites.
  • Each website needs its own tracking code.

Google Analytics does have the ability to track many websites under one profile, but this also has problems:

  • You can't look at a websites data individually.
  • Data just acts as it would for one website.

One script to track them all

When Google Analytics was released, it should not have needed separate scripts to track each website, but rather a single script that will work on any site.

Questions

After failing to do many things with Google Analytics, I have sent a list of questions to them as follows:

  • How do I track all my domains (and subdomains) so that I have the option to see data about all my sites together or about a specific domain?
  • If I track all my domains (and subdomains) in one profile, how do I view the keywords for only one subdomain?
  • If I track all my domains (and subdomains) in separate profiles, how do I compare the performance of my domains (and subdomains) to each other?
  • How do I track more than 2 custom variables?
  • How do I track which tags on my blog are most popular when there are only 2 custom variables?
  • How can I track the performance of Adsense on each page?
0

Difference between HTML and XHTML

One of the reasons that today's browsers are so large is that HTML documents can be constructed much more loosely than XML documents. For example, the following is a perfectly acceptable HTML document:

<html>
<head><title>Message of the Day</title></head>
<body>
There is no message of the day.
<p>
Try back tomorrow.
</BODY>
</HTML>

But because the <p> tag isn't closed and the <html> and <body> tags don't match their closing tags, this isn't a well-formed XML document.

XHTML takes HTML as defined in version 4.01 and applies the rules of well-formed XML documents. In order to be an XHTML document, our example above would have to read as follows:

<html>
<head><title>Message of the Day</title></head>
<body>
<p>There is no message of the day.</p>
<p>Try back tomorrow.</p>
</body>
</html>

Flavours

XHTML is also broken down into several "flavours":

XHTML 1.0 Transitional
XHTML 1.0 Transitional contains all of the elements and attributes defined in HTML 4.01, with the notable exception of those related to the use of frames.
XHTML 1.0 Strict
XHTML 1.0 Strict contains only those elements and attributes related to structure, and very few of those related to presentation. For example, the <center></center> element is not part of XHTML 1.0 Strict.
XHTML 1.0 Frameset
XHTML 1.0 Frameset includes all of the HTML 4.01 elements and attributes, including those related to frames.

Other changes

With XHTML replacing HTML, there are a few more changes that are coming through, other than enforcing well-formed XHTML:

  • The tags must be lower case, so instead of <IMG SRC="resource/frankisboat.gif" WIDTH="389" HEIGHT="227" BORDER="0" ALT="boat">, as we would do in HTML, we instead use: <img src="resource/frankisboat.gif" width="389" height="227" border="0" alt="boat" />
  • All tags must close, either by using a corresponding closing tag which has a slash, like paragraph ( <p></p> ) for example, or some tags are self closing like the above img src tag and line break ( <br /> ). In HTML, many of these tags were simply left open.
  • All tags must be properly nested, so if you start tag "a" and then start tag "b", you must close tag "b" before you close tag "a".
  • Some tags which were previously allowed are no longer allowed.
  • All attributes must also be lower-case.
  • All values for attributes must be encased in single or double quotes.
0

Google Sitemap hack together

A Sitemap file lets you tell Google about all the pages on your site, and optionally, information about those pages, such as which are most important and how often they change. By submitting a Sitemap file, you can take control of the first part of the Google  crawling / indexing processes: Google discovery of the pages.

This may be particularly helpful if your site has dynamic content, pages that aren't easily discovered by following links, or if your site is new and has few links to it. In general it offers:

  • Better crawl coverage to help people find more of your web pages
  • Fresher search results
  • A smarter crawl because you can provide specific information about all your web pages, such as when a page was last modified or how frequently a page changes.

When Google released their Google Sitemaps Program, there was a big influx in forums and news-groups, with questions such as

  • Do I need a sitemap?
  • How do I create a Sitemap file?
  • Is there a module for my program that can generate Google Sitemaps?
  • What is the quickest and simplest way to generate a sitemap for Google?

For me it seemed a lot of work for something that Google seemed to do alright already. I wanted a quick solution for my site that would be very useful for Google.

The result was to create an RSS feed with an unlimited number of entries, just for Google. As most websites and website systems allow RSS it was not hard to make a small change and allow the RSS feed that we give Google to have an entry for every news items that was ever posted.

Although the code may be different on your website, the general idea is to find the section of code that limits the number of items for each RSS feed. In my case it was along the lines of an SQL statement:

SELECT * FROM 'News' ORDER BY 'Date' LIMIT 20

By removing the LIMIT 20 from the SQL when the user-agent string contained 'Google', I allowed Google to get an RSS feed of every page on my site.

0

How colours affect your website

Since people associate particular colours with different emotions, the colours used on your website can have a psychological effect on visitors to your site. By using specific colours geared towards the emotion you want to invoke, you can actually increase product sales.

Here are some colours along with the emotions and symbols they stimulate:

White
Purity, innocence, peace, perfection, chastity, sterility, cleanliness. In general, white creates a cool and refreshing feeling.
Black
Night, space, authority, sturdiness, reliability, power, constancy, prudence, wisdom, classy, elegance, submission, mourning, demons, witches. Black is a controversial colour as it can symbolize both good and evil.
Red
Love, excitement, warmth, heat, fire, blood, passion, power, aggression, action. Use red as an attention grabber. It works better as an accent colour rather than a background one.
Pink
Love, excitement, warmth, heat, fire, blood, passion, power, aggression, action. Use red as an attention grabber. It works better as an accent colour rather than a background one.
Blue
Sky, ocean, water, temperature, ice, coolness, mist, shadow, travel, freedom, truth, solitude, wisdom, trust, loyalty, peaceful, calmness, intelligence, dedication, masculinity. Different shades of blue convey opposite meanings. Light blue is peaceful while dark blue is depressing.
Purple
Royalty, dignity, luxury, wealth, sophistication, feminine, passion, romance, sensitivity, coolness, mist, shadows, mysterious, mystic.
Green
Money, calm, envy, greed, nature, life, youth, renewal, hope, vigour, fertility, rebirth, freedom, guilt. Different shades of green have different meanings. Dark green-cool. masculine, conservative, wealth. Emerald green- immortality. Olive green- peace. Green is the easiest colour on the eye.
Yellow
Light, purity, understanding, brightness, warmth, playfulness, creativity. Lemon yellow is the most eye fatiguing colour. Yellow can increase irritability so yellow should not be used as a main colour, only as an accent. Yellow enhances concentration.
Orange
Autumn, youthful, fire, warmth, contentment, fruitfulness, wholesomeness, strong, generous, endurance, strength, ambition. Orange is the colour most associated with appetite so it would be a good colour choice for a website selling food products. Orange also makes a product seem more suitable for everyone and more affordable.
Brown
Wood, comfort, strength, earth, solid, reliable, credible, maturity, humility, conservancy. Light brown conveys genuineness.
Grey
Exclusivity. Enhances the psychological response of other colours.
In general, red, orange, and yellow are exciting colours while purple, blue and green are calming ones.

Use the colour that symbolizes the emotion you want to convey as the primary colour on your website. Add 1-2 other colours to reinforce this emotion. The colours used for your background, header, graphics, text, highlighting, headlines, etc. will all contribute to your website's influence on your visitors.

0

Adsense smart pricing: Better than the alternatives

After reading a blog entry on JenSense, about how "One poorly converting site can "smart price" an entire Adsense account", I got the opinion that many webmasters like yourself did not like the idea of smart pricing.

Here is the basis of how smart pricing works:

Google's smart pricing feature automatically adjusts the cost of a keyword-targeted content click. So if our data shows that a click from a content page is less likely to turn into actionable business results - such as online sales, registrations, phone calls, or newsletter sign ups - we reduce the price you pay for that click.

And this often used example explains how this works more precisely.

As an example of smart pricing, consider two websites, each related to digital photography. The first page features digital camera reviews, while the second offers photography tips. Clicks from the page of photography tips might be charged less, because they are expected to convert into sales less frequently, resulting in lower value for advertisers. Google data determines that clicks from the digital camera reviews convert better, so clicks from this page are not discounted.

Advantages of smart pricing

A while back, I went through a phase of looking for an alternative to Adsense. Some of the alternatives were good, but so many of them require you to explicitly state which sites you are going to place their advertisements on. This is alright for people who own one site, but it can be a big hassle for people who own more than one site.

As Adsense does not require each website to be explicitly stated, it has opened the doors to alternative models, like revenue sharing forums. It is just one thing that makes Adsense a lot simpler than the alternatives.

The problem with not explicitly stating the websites that Adsense will be on, is that it is hard to tell where one site stops and another site starts. From Google's point of view, every domain and sub domain is a new site, but there are sites out there that cross sub domains and even domains. So as a result, Adsense smart prices the entire account.

What separates your site from the others?

Your site is unique for one reason and one reason only; it has been created by you. You have put your foot print on the site and your views and opinions have made the site unique. Even across all my sites, there are similarities:

  • If I have a professional template created for one site, there is more chance that I will have professional templates for all my sites.
  • If one of my site is written in British English, there is little chance of my others are in US English.
  • If I have found an Adsense placement that works well, I will use it on most of my sites.

All these little differences affect Adsense and which advertisements work best on your site.

Facts about smart pricing

Keep sites with low click through ratios
The percentage of clicks that convert for an advertiser is the most important factor in an advertiser's ROI, so it's not only possible, but common, to have a low CTR and a high advertiser conversion rate. It's also possible to have a high CTR and a low conversion rate. Don't remove the Adsense code from your site just because it has a lower CTR - it may be one of your best converting sites.
Content is king
The best way to ensure you benefit from Adsense is to create compelling content for interested users. This also means driving targeted traffic to your site -- advertisers don't gain as much ROI when paying for generic clicks as they do for quality clicks that come from interest in your content. Good content usually equals a good experience for user plus advertiser, which can be much more valuable than CTR.
Google doesn't make money from 'smart pricing'
In fact, they make less money, since the cost to advertisers is reduced in order to provide a strong ROI. Ultimately, this leads to higher payouts for publishers by drawing a larger pool of advertisers and rewarding publishers who create high quality sites.
Many factors determine the price of an ad
More than conversion rate goes into determining the price of an ad: the advertiser's bid, the quality of the ad, the other ads competing for the space, the start or end of an ad campaign, and other advertiser fluctuations.

Contribute Related

Posts are independent and could be shown without the context of those above