Firefox Blocks Attack Site

Monday, June 23rd, 2008

Recently I downloaded the Firefox 3 web browser as part of the download day. I’ve been using Firefox since version 1, and have always like it. I find it is generally faster and more consistent than Internet Explorer, and also has fewer security holes.

Firefix Blocks AttackThis screen shot came up the day after I installed it. A link that I had followed from a trusted site took me to a site which apparently had been compromised.

Just another reason I enjoy using Firefox.

Using your analytics data to improve web site performance

Wednesday, February 20th, 2008

It’s one thing to look at your reports, its another to start to draw conclusions from your data. Different people will look at the data in different ways. Most often, the reports are looked at by the marketing department/person to see how to better market the site, what Search Engine optimization needs to occur, and measure the effectiveness of their pay-per-click ads. All of these are important uses of the web analytics, but they are not the only uses.

I want to look at a specific example of how I, as a web developer, recently went about making a site faster based upon the results of some analytics reports.

The 80/20 rule of the web

We’ve all heard of the 80/20 rule. On the web it would 80% of people only use 20% of your web site. In reality however, depending upon your site, it could be more like 90/10. A novice web developer will try to optimize all of the pages. An experienced web developer doesn’t bother with those pages that receive only the smallest amount of visitors.

On an Intranet web site I maintain, which tracks the employees’ internal education process, I was looking at the internal search feature. The search results are loaded into the same page. When you count the results from the searches, this page accounted for 24% of all of the page views, making it the second most visited page on the site. (The #1 page is mostly static text, so no real improvements could come from there.)

This means for every 2 people to visit the site, approximately 3 searches were performed in addition to the normal page load. So almost 1 out of every 4 page views was to this internal search engine, and some people were searching multiple times.

This became an area to consider improving. As a little improvement here, would have more effect than a large improvement on a page that is only viewed 1% or less of the time.

Too combat this, I decided to load the results in with AJAX instead of reloading the whole page. This process would improve search response in 3 ways.

Network Connections

Savings in Network ConnectionsEach time a file is downloaded over the Internet, the web browser checks to see if there is a newer version on the server, or if it can use a local file it has already downloaded (cached). Each time it checks to use a local version or downloads a new copy, the server is using up resources, and your end-user has to wait for the files to finish checking/downloading. Because the number of network connections has been reduced, other people can be accessing the site at a faster rate, and the end-user appears to be faster as they don’t have to have their computer do as much work.

The search page referenced 15 external files, plus itself. Of those 12 wouldn’t have to be called anymore. So I was able to reduce the number network connections by 80% for the search results. This was our biggest savings. The number of network connections on a web server is limited by both number and bandwidth speed, therefore the more connections, the slower each connection appears.

Processing of Files

Knowing in advance that it was going to be a popular page, I had tried to make the page as efficient as possible initially. However, with some of the features, like remembering the previous search criteria, because you never left the page, no longer needed, I was able to simplify the page.

The initial page load took about the same amount of time, however when the search results displayed, it appeared to be less than 1 hundredth of a second faster to process the file, about 4.45% faster. While individually it does not yield much savings, when applied as many times as it is with the popularity of the page, the savings adds up, especially during peak times.

Size of Results File Download

file download size savingsI knew I would save a lot in this area. The search interface, consisting of 6 controls, and a variety of other HTML sections, would no longer have to be duplicated in loading the results. This would mean faster downloads, and improved “perception” of the speed of the web page/server. Based on the same sample set of data, there was an 11K reduction in the overhead of the search results, or approximately 14% smaller download. This was for a search with over 100 results. However, many times fewer results (20-50) are returned. So the savings in bandwidth, while still approximately 11K, would be a much higher percentage (30-75%).

Final Thoughts

Because I could determine from our analytics package which files were being processed more, I was able to get the most bang for my buck. This update will take some load off the server, and allow all the pages to benefit from this enhancement. Likewise, almost every visitor will notice a performance improvement in the site because of how often this page is viewed.

This is how a web developer can effectively use web analytics to improve the performance of the web site.

How effective is your web site

Tuesday, January 1st, 2008

Learning how our web site works is an important task, which is often measured incorrectly. We have to look at not only the data, but we also need to know what questions to ask when looking at the data to put it into the correct perspective.

Without understanding how the data works, we can run into all types of problems by drawing the wrong conclusions.

In this section, I assume that we will be looking at data from some source such as Google Analytics and we are wanting people to purchase something from us. Not all web sites are built with purchasing in mind, some want to allow answers to be found, collect user registrations, etc. We will group all of these into a generic “end goal” that you have predetermined. It is important to know what your web site is supposed to do, so you know this end-goal. Is it selling products, providing information, getting someone to arrange an appointment with you, or letting people find answers on their own so they don’t have to call you?

Another key thing to note, is that your metrics information is going to have flaws. There are a wide variety of reasons for this, but you must know and be willing to accept this. We must be willing to assume a certain level reporting errors in our data. While I cannot go into all of the reasons why there might be errors, I will try to point out some obvious reasons why there might be errors as we go along the process.

The obvious measurement

There are a couple of “obvious” measurements. Everyone looks at these because they are often predominately displayed in your analytics tool. They would be:

  • Visits,
  • Page Views, and
  • Unique Visitors.

A Visit is one of the two most commonly looked at pieces of information which people look at. It is also one of the most useless pieces of information when it is looked at by itself. A visit is when a user goes to your site. Their entire experience there, be viewing only one page, or 100 pages, is summed up as a single visit. It generally assumes that this is an active process, and the user does not break for more than a few minutes between any two pages. If the user leaves the site, and returns the next day, or even an hour later, this is a second visit.

Why it is important to know: Without visitors, your web site sits idle and unproductive. By measuring visitors you can start to track other, more important, pieces of information. namely how many people are completing their “final goal”. By using the number of visits your web site has, vs. the number of final goals completed, you can start to determine what your conversion rate is.

Why it can be misleading: There are a couple of things that can get in the way of you understanding your visits metric. First, not every visitor is tracked. This is usually for technical reasons beyond your control. For example, if your software relies on use of a JavaScript, your visitor might have JavaScript disabled. If you have to send a cookie to a third party, these can be blocked by your web browser, of if it looks at log files from your web server, your pages might be cached and accessed by a Internet Service Provider. Each of these, and other reasons, are beyond your control, and can effect the quality of your numbers. You have to be willing to live with these errors, and work to establish the best information you can even with these problems, knowing that you don’t have 100% accurate data to work with.

Of course if there is a metric which someone loves more than Visitors, it has to be Page Views. This is approximately, see “Why it can be misleading” for visitor counts, how many web pages have been viewed by users. People love this number because it is often “big”. However, this can be the most misleading metric of all time. Why; because Page Views mean nothing by themselves. Page views, unless you are using an advertising based model, mean and show nothing. However, at the same time, Page Views are extremely important. For without them, you cannot move someone to the end goal. But you must remember that they are not the end goal.

Why it can be misleading: Number one, psychology. We love to see this number go up, and it can cause us to look solely at this number, without seeing how the end goal is affected. We cannot be distracted by the sirens call, and so the first problem with this metric is we cannot focus on it. Second, this number is often artificially low. Depending upon how your metric tool works, page reloads/revisits may not be calculated as they could be cached either by your end user’s computer and/or their web host to reduce the amount of bandwidth they use.

A Unique Visitor is someone who has gone to your web site. If they visit your site five times throughout the reporting period (day, week, month, etc), they should only be counted once.

Why it is important to know: By understanding how many unique people have visited our web site, we can start to determine if we are providing a site which users want/need to return to. Many web sites are built with this purpose. As people return to our site, we develop a sense of authority with this person, which can allow them to return, and/or encourage them to complete the end-goal.

Why it can be misleading: This number might be inaccurate however because we must track a person to a computer. So if I were to visit a site twice while at work, once on a mobile phone while commuting home, and twice later that evening, it would show as three unique visitors because I used three devices.

It can also be wrong because of technical reasons. For example: the cookie, which was used to track the user, was deleted between visits. Now the device, which was used to visit the site, appears to not have visited before, and we show a second unique user when in fact only one exist.

Once we realize that our data will never be complete, that is OK.  We can move forward a lot easier knowing we are 70-90% accurate, and just have to make decisions with that in mind.

In our next article we will  look at how many pages your visitors see, as well as how long they are on your site.

The three things that make up a website

Saturday, September 15th, 2007

As someone who works with getting companies on the web, often for the first time, this is a question I am asked all of the time. While it may seem straightforward “Make a web page”, there is a little more to it than that, although not a lot.

There are three things that go into getting a website published, beyond all of the details like, how to make it, what to put on it, etc.

  1. Have a domain name
  2. Get some web server space
  3. Publish the website file(s)

Let’s take a quick look at each piece to determine what this means. You will want to go in this order as well, but you don’t have to. As we go along, I’ll explain why I recommend following this order.

This will be a simple two part post, with part two coming shortly afterward.

Have a domain name

A domain name is what is typed into the web browser that lets you go where you want to go, such as <>.

Because only one person/company can own a specific domain name in the entire world, you may or may not be able to get the name you want. If you try to request a domain name, and you cannot get one, then you have two options.

Attempt to purchase the domain name from the existing owner. This is fairly common and depending upon the name, and its value, you may be able to get the name for anywhere from $50 on up to several million dollars. Only you can determine if you want to purchase the domain for that price.

Choose a different name. If money is tight, or the owner doesn’t want to relinquish the name (and there is little that can be done then) this is another viable option. I did this for a church not that long ago. The church’s name was Dayspring Community Church; however, DayspringCommunityChurch.Com was taken by another church with the same name in a different state. We tried numerous variations of the name and it never worked. We ended up using DayspringOrlando.com because it incorporated the location of the church in the domain name.

You should be able to purchase a .com domain name for under $10. Some times the specialized Top Level Domains (TLDs) (the end of the domain name such as .com, .org, etc) will cost more. .tv for example costs usually about $35.

If you go to purchase a .com name, and they want more than $10, you need to check what you are getting for that price. I’ve seen people swindled at over $100 a year. Always check with a third party, like your designer if you are not purchasing the domain from them, if you can. You can usually save yourself a decent amount of money this way.

You “purchase” a domain name’s rights a year at a time. At the end of the year, you can renew your rights to that domain name if you like, or walk away. As the current owner, you have the first dibs. To make some things easier, you can usually purchase several years at once, usually 2, 5, or 10 years. You may even receive a discount if you purchase several years at once.

Because only one person can have a domain name at a time, I recommend that you purchase this as soon as you have a name you like. It is quite possible for a name to be available one day, and not the next.

You should always note that your web designer, be a firm or an individual, should be able to help you pick the right name.  The name doesn’t have to be part of your company name, but it should be easy to use/say, and it should help describe your  business it’s not your name.  This will help convey what you do to your customers, and help your search engine efforts as well.

In the next part we’ll look at the server space you need, what it should cost, etc, and then also the files you need for your site.